APP下载

基于C#的民航新版报文格式前置转换系统的设计与实现

2018-03-30孟飞常胜君

电子技术与软件工程 2017年16期
关键词:自动化系统

孟飞 常胜君

摘要:为适应全球统一执行的新版飞行计划格式标准和空中交通服务电报程序,本软件系统通过利用C#语言实现了新版报文的转换、存储等功能,实现了空管自动化系统对新版报文的实时识别处理功能,在民航AFTN网络和自动化系统之间起到了重要的承接关系。

【关键词】新版飞行计划 自动化系统 报文AFTN网络

1 航空固定业务电信网

航空固定业务电信网(即AFTN,全称Aeronautical Fixed Telecommunication Nenvork)是由各有关航空固定电路组成的全球性系统,为具有相同或相兼容的通信特性的航空固定各电台之间提供电报或者数字数据的交换。我国民航目前建成的电报网符合国际民航对AFTN电路、通信中心的技术要求,并且与国际AFTN相连接,也属于全球AFTN网络的一部分。

2 航管自动化系统

航管自动化系统是对监视数据(空管一次、二次雷达、AD S/B等监视数据)和飞行数据进行实时数据接收、处理、发送、显示的一体化系统,完成多路监视信号的实时数据传输、转换、处理和合成,以及飛行计划相关、空中态势及飞行数据显示等主要功能,是管制员实施对空指挥的主要工具和主要工作界面。

2008年6月,国际民航组织对《航行服务程序,空中交通管理》第十五版进行了第一次修订。文件中规定了新版飞行计划标准格式和空中交通服务电报程序。同时,国际民航组织要求:此次修订内容将于2012年11月15日在全球统一执行。

中国民用航空桂林空中交通管理站(以下简称桂林空管站)在用的备用自动化系统ATC3000无处理新版报文格式的能力,需要采用前置处理的方式对报文进行新版格式向现行格式的转换,以确保在接收到新版格式报文后,仍能够被现有系统正常处理,不影响日常工作。基于此,作者通过利用C#语言实现了民航新版报文格式前置转换系统的研发,该前置转换系统处于民航AFTN网络和自动化系统之间,起到了承接关系。该软件系统于2012年9月通过由中南空管局组织的测试验收工作,满足工作需要,并己正式应用于日常工作当中,运行可靠稳定。

3 系统设计

系统总体架构如图1所示。前置转换系统位于AFTN网络与自动化系统之间,将来自AFTN网络的新版格式报文,按照转换规则转换为自动化系统所需报文格式后,发送给自动化系统进行处理。

为了实现设备运行的安全可靠,系统采用双机并行运行机制。当主机故障时,可通过人工方式将所有报文通道切换至备机运行。主备两台前置系统可提供8个通道的报文转换能力。

根据新版报文规范,该前置转换系统主要由以下功能模块组成:

3.1 报文网关模块

具备与AFTN网络进行互联、接收、发送报文的能力;同时,具备错报删除、定时拍发报文、流水号检测及重新排序功能。

报文网关模块主要提供前置转换系统和AFTN网络、自动化系统之间的接口,实现数据的正确收发。它主要由报文实时接收、报文定时读取、报文定时发送三个功能模块构成,三个功能模块之间的关系如图2所示。系统通过实时接收模块接收来自AFTN网络的数据,然后由报文转换模块进行处理判断。此后报文的处理大致分为两类:可以直接发送的报文,发送至缓冲区,由定时发送模块进行发送;需要存储的报文,存储在指定目录下的DOF文件中。通过定时读取模块将符合时间条件的飞行计划读取至缓冲区,再由发送模块进行发送。

报文实时接收模块提供了AFTN网络和前置转换系统的接口。在物理上,系统采用MOXA多串口卡,使用串口通信的方式与AFTN网络连接。在软件方面,系统采用VS2008中的SerialPort组件,利用事件驱动(DataReceived)实现数据接收。表1表示SerialPort组件参数设置。

前置转换系统定时检测当前时间。在每天的UTC时间0时,即北京时的8点,系统查询指定目录下的DOF文件。如果存在以当天时间命名的文本数据则读取其中的内容发送至缓冲区。

系统主要根据报文的结构特点,使用StreamReader类中的ReadLine()方法来实现每一份报文的读取。

报文定时发送模块中,系统定义了字符串数组com_aftn[10000],作为报文输出的缓冲区。由报文转换模块发送来的报文和定数读取模块发送来的数据均存储在该缓冲区内。

在定时发送模块,系统以1.5秒时间间隔,定时依次读取缓冲区中的数据,发送至串口的输出缓冲。发送数据使用了SerialPort类中的SerialPort.Write()方法。

3.2报文转换模块

整个前置转换处理系统的核心部分。如图3所示,该模块包含了报文解析、编组处理、内容修改、格式修改、DOF处理、选择输出等多个部分。

主要流程如下:

(1)报文网关模块接收一份报文后,首先输送给报文解析模块进行报文初步分析:排除错报和非AFTN报文,如果报文不是AFTN报,则选择不作处理,直接输出至缓冲区;并对接收的AFTN报文进行类型区分及编组拆分;系统定义结构体STRUCT_AFTN,根据报文类型将各个编组的赋值给结构体。结构体如表2所示。

(2)按照《新版飞行计划格式标准》要求,对报文内容和格式进行修改,最终进行报文重组。国际民航组织在新版报文规范中要求,当计划的递交时间提前EOBT时间超过24小时,必须在报文第18编组的“DOF/”数据项后标注航班的执行日期(世界协调时),因此需要对DOF进行专门处理。

3.3系统日志模块

系统主要在三个时刻对数据进行记录存储:接收、发送、经过DOF处理。三种类型数据分别存储于指定目录,并以日期和串口号命名。报文查询功能正是基于上述三种类型的数据。另外,该模块提供了日期、串口号、报文类型、航班号、流水号、DOF标志等关键字进行精确或模糊查询,并且可以将转换前报文数据和转换后报文数据进行对比显示。

3.4系统监控和告警模块

为保证在故障情况下,系统能够及时发出告警提醒。系统根据设备运行可能存在两种故障,设计了本端监控和远程监控两种告警机制:

软件故障:前置转换系统遇到某些特殊情况,可能会导致软件故障退出,从而导致转报路由中断。此种情况下,工作在本机上的监控软件,发挥本端监控功能,进行告警提醒。

硬件故障:当前置机硬件故障时,前置转换系统和工作在本机上的监控软件同时故障。此时工作在另一台前置机上的监控软件,发挥远程监控功能,进行告警提醒。

监控告警功能功能框图和监控窗口如图4、5所示。

4 开发环境及运行平台

系统软件使用Microsoft Visual Studio 2008作为开发工具,编程语言使用C#。系统硬件使用研华工控机,配置MOXA8串口卡作为4个通道的输入输出接口。

5 结束语

系统测试通过人工发送新版格式报文,经过前置转换系统后,在自动化系统上观察接收报文,对比检查报文内容格式转换情况。系统测试主要分为三部分:内容转换测试、格式转换测试、DOF处理测试。测试用例均根据《国际民航组织新版飞行计划格式标准指导材料》进行设计。经过测试,均符合新版飞行计划标准格式,并通过中南空管局组织的测试验收,最终应用于实际工作当中。

参考文献

[1]民用航空行业标准MH/T4007-2012.民用航空飞行动态固定电报格式[Z].中国民用航空局,2012.

[2]汪万维,王晓亮,章涛等.民航空管自动化系统[M].清华大学出版社,2016.

[3]张卫华,周忠丽,周笑庭.基于C/S结构的航行电报系统的实现[J].中国民航飞行学院学报,2004,15(02):48-50.

[4]刘长青,石磊.新一代航空报转发系统的设计和实现[J].气象水文海洋仪器,2010,27(03):32-33.

[5]唐中元.民航空管电报自动处理系统的设计[J].计算机系统应用,1997,23(08):2-4.

[6]张学军,张其善.中国民航AFTN电报网网关系统的开发[J].电子技术应用,2000,8(02):27-39.

猜你喜欢

自动化系统
电网调度自动化系统可靠性分析