权 赟
(西安欧亚学院 基础部,西安 710065)
飞机动态监视系统就是地空数据链地面应用系统的一个重要部分:通过空地数据链进行飞机飞行动态监视,有效解决了目前飞机起飞后,航空公司对其飞行情况知之甚少,甚至一无所知的情况;飞机飞行动态监视系统实现了飞机飞行全阶段(包括飞行滑出机位前至滑入机位后)的状态监视与空地双向数据通信与服务。当前航空公司数据链的使用情况是:国内三大航空公司及其子公司都已安装了地面处理系统,与网控中心通过专线进行连接,实现了地空数据链报文的地面传输,能够对航空公司80%以上的飞机飞行动态进行时实的监控,并进行机务、签派等日常事务处理。
2005年上半年开始,三家民营航空公司成功首航,民营航空公司走的是低成本路线,之后开始会有更多的小航空公司进入航空运输市场。民航总局规定实施定期客运飞行的承运人必须具备独立与空管部门的有效地空双向通讯手段,同时可对飞机进行全场的航班运行监控。鉴于这种情况,小航空公司有自己特殊的情况,租用专用链路对于小航空公司来说代价太高,小航空公司趋向于使用广域网对飞机实施动态监控。随着小航空公司的不断增多,他们迫切需要购买成本低、系统维护成本低、可靠性高、使用方便的飞机动态监控与双向通讯系统,当前国外有类似产品(如ARINC的WEBASD,以及基于铱星数据通讯的Advances Track Mapping Web Service),现在还没有进入中国。航空公司运行及控制部门需要随时监控飞机的位置,并能够与飞机进行通讯。飞机动态监控系统能够满足工作人员的需要,帮助他们高效的完成工作。
广域网飞机动态系统的实现,将会有更大的应用前景。无论是在大航空公司还是小航空公司,还是机场、或者是空管单位,都能得到广泛地应用,可为需要随时随地监控本公司飞机的航空公司管理人员提供专门的服务。
首先,我们来关心地理信息系统的中心问题,检查是否明确了系统数据的要求。
在飞机飞行监控系统里涉及三类数据,一类是动态的飞机信息;一类是动态的气象图片信息,包括云图、雾图;另一类是相对静态的情报资料数据。在地图上动态显示的飞机位置、高度信息,是解析空地通信报文位置信息的结果,而报文的获得是通过WebService与ACARS网关连接,实时收取报文来实现的。动态的云图是气象中心时实发布给航空公司用户的,用户将开放一个FTP文件服务端口,供本系统专门获取气象资料。情报资料的显示、是通过读取本地情报数据来实现的,要求在系统服务端具有情报资料编辑功能,同时能够通过WebService对本地情报数据进行同步更新。在本系统中,空间对象有三类:点、线、面。如航路点,飞机的动态位置点;国内航线,海岸线;扇区,限制区,情报区等。其中,线可看作是特殊的起、始点重合的面类型,在设计数据存储结构时可以考虑用同一种表示方法。
评审意见:从需求分析的结果来看,对数据的分析比较清楚,并且反应了系统实际数据的要求。
只有解决了系统“做什么”的关键问题,才可能为用户做出量体裁衣的系统,否则系统就会偏离用户期望。此阶段质量控制的内容主要是对需求进行确认,是否与用户期望相符。
评审意见:从系统需求简述来看,从功能及性能两方面描述了用户的需求,体现了软件需求质量特性的要求。如功能性,对系统要实现的功能进行了全面、详细的说明;可靠性:在用户权限管理和WEB服务中均有体现;可维护性,则是通过提供智能客户端来实现的;可使用性;通过提出人性化的地图操作来实现。
本阶段监理方应监督和协助承建方进行软件设计活动,同时对总体设计、详细设计的结果进行审核,对设计阶段的风险进行识别和预警。
系统采用客户端/服务器(client/server)模式,客户端通过调用服务器对外接口获取和处理数据。客户端为用户提供了友好的操作界面,通过使用服务器的服务实现对飞机的实时监控。服务器端提供了报文的收发、报文拆分、程序更新维护、Web Service服务、数据存储等功能,是整个系统的核心,承担了为所有客户端提供服务的任务。
图1 系统总体结构
从飞机信息的流程来看,实时的飞机通信报文经过网关接收到报文处理服务子系统,对处理后报文的拆分结果进行入库,客户端飞行动态显示系统通过WEB服务实时获取飞机当前最近报文,提取报文中与位置相关的信息,在地图上显示其位置和高度。从情报资料信息来看,是由飞行动态显示系统读取本地文件来实现显示;当后台地图更新了情报资料后,智通客户端会自动检测到更新,并自动更新本地文件,并在飞行动态显示系统中进行显示。
在本系统中,地图的显示逻辑比较复杂,一方面要显示不同类型的数据,另外,要对用户的各种请求进行响应,同时还要对各类消息进行处理,及时刷新显示。因此,对本系统而言,如何设计用户界面的显示是一个值得可虑的问题。这里,系统在对地图显示的设计进行了谨慎的考虑,使用MVC设计模式,有效地解决了用户界面逻辑混乱的问题。
图2 地图显示设计原理
飞行动态显示子系统从设计上看,分为三个部分,即数据部分、运行控制部分和显示部分。三部分的关系的作用如图2所示。这三个部分的区分,在代码中区分的并不是特别明显,它是编写代码时的一个思路,所有的功能模块都要按照这个思路进行程序设计的。举一个简单的例子,地图的移动,设计过程是这样的:地图显示(V)从数据部分(M)读入所需的数据,在这些数据中会包含一个全局的结构变量,记录了地图当前中心点的相关数据,显示部分(V)根据中心点的值决定地图的显示位置。地图移动时,用户拖动鼠标产生了dx,dy的偏移,控制部分(C)得到这个偏移,改变全局变量值,然后通知显示部分(V)需要重新画显示表面,于是地图的移动效果就产生了。
报文处理是后台服务的核心系统部分,由多个模块组成,负责报文的传输、拆分和保存。结构如图3所示。
图3 报文处理系统结构
其中,网关、通讯服务器、PC报文处理系统复用已有程序,数据服务器程序用来处理广域网飞机动态监控系统的特殊数据要求。数据服务器与通讯服务器相连,实现飞机实时数据的收发,使用消息队列接收WebService上发的数据,自身收到的数据存入数据库,以便用户随时使用。使用消息队列进行后台进程间的通信,能够快速、安全地发送消息。消息队列还能够在网络出现问题或者服务器重新启动的时候自动缓存消息,所以在后台使用消息队列可保证系统的稳定与高效。另外,这里使用MSMQ的最大优点就是B/S程序可以很容易地使用MSMQ对象。
评审意见:使用消息队列进行后台进程间的通信,能够快速、安全地发送消息。但报文处理是后台服务的核心系统部分,在设计时并没有考虑负载平衡的问题。如果单应用程序无法满足报文流量的要求时,系统将会出现隐患。
监理建议:在原有设计基础之上,可以通过开多个应用程序来侦听同一个消息队列的方式来实现负载平衡。消息队列可以保证队列中的消息以先进先出的机制平均分配到各个接收消息的终端中去。而且,假如某一个接收消息的终端出现问题,不会影响到其他的终端。使用MSMQ来实现负载平衡的优点首先是实现方便,基本上不用为负载平衡编写什么代码,而且支持在系统运行时动态地增加和减少终端的数量,即使所有的终端全部都处于不可用状态,系统仍然会为终端缓存报文,从而保证报文不会丢失。
本系统的服务能力主要取决于网络速度以及Web Service的最大负载。用户的网络速度可以建议用户使用较高带宽的网络解决,而且费用很低。Web Service的负载能力主要取决于业务逻辑层的处理能力,Web Service的客户支持能力是很强的,对于飞机动态监控系统这种专业应用,连接用户数完全可以满足需要。提高业务逻辑层的处理能力可以使用服务器集群的方式,将不同类型的业务放到不同的服务器上运行,可以大大提高Web Service的服务能力。
Web Service客户端升级服务保存了最新的程序文件和数据文件,用户通过比较版本信息,获取最新的文件替换本地文件,Web Service服务就是向用户提供了版本比较和文件下载的方法。
智能客户端提供了简单、可靠以及安全的部署方案。客户端的版本更新由系统自动实现。当智能客户端程序处于在线状态启动时,会自动检测服务器端的组件是否更新,如果更新的话,则会自动从服务器端下载到用户本地中。客户端对用户密码采用DES对称加密,密文与用户名相关,保证了不同用户即使采用了相同密码也会产生不同的密文。密文采用了两个密钥进行加密,对于保存在数据库和本地的密文使用一个密钥,在网络或内存中传输的密文采用了另一密钥,防止非法用户直接使用本地密文进行网络登录的不法行为。
系统要求电子地图占用资源尽量少,实时性强;要求屏幕刷新速度快,屏幕不能有闪烁,对空间对象数据的访问速度要求很高。考虑到系统中地理数据量相对较少,因此采用文件形式按照不同对象类型和显示图来组织和存储相对固定的地图数据有利于提高系统的运行性能。在系统启动时,可将地理数据文件全部读入内存,提高地图刷新速度。对于存放在oracle数据库中的飞机报文信息,在每一条报文信息中,分别存放飞机的经度、纬度信息及高度信息。由监控程序获取数据并显示。飞机报文量大,用数据库的方式统一存放在服务端,并提供给用户历史记录查询的功能。
系统使用分区表进行报文的存储是非常明智的作法,可以大大提高数据库性能。使用分区表的优点在于:
1)增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用;
2)维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可;
3)均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能;
4)改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度。而最主要的优点则是,对分区表进行操作与其它表是一样的,因此,不必担心使用了新的技术而增加数据库开发及维护的难度。
本文运用监理质量控制方法对广域网飞机动态监控系统严格按照监理质量控制框架,充分展现了监理质量控制的思路和具体实施方法,取到了良好的质量控制效果。
从航空事业发展的现状来看,空中交通地理信息系统将在未来几年取得更为广泛的应用。该套理论体系能否在以后的系统建设中发挥作用,值得期待。我国计划用15~20年的时间,建成新一代航行系统。在新系统中将同时使用ADS和雷达两种监视手段进行监视。如何利用现有的资源和系统,运用最先进的、最适用于本领域的技术开发出可靠性强、易维护、可扩展的新系统,是承建方、监理方都值得思考的问题,也是共同推进这一领域地理信息系统的应用研究与发展的源动力。
[1] 王明军.面向对象技术在空管地理信息系统中的应用[J],中国民航飞行学院学报.2004(3).
[2] 陆守一.地理信息系统[M], 高等教育出版社.