民航珠海空管站,广东 珠海 519015
摘要:作为空中交通管制自动化系统的重要功能之一,电子移交(AIDC)功能的运用越来越广泛,这取决于中国民航事业的飞速发展以及航班流量的井喷式增长,不同空管单位之间的航班移交越发频发,使用概率也随之提升。本文重点论述了空中交通管制AIDC模式交互测试,旨在为今后的空管维护测试人员提供一定的便利性。
关键词:空中交通管制;AIDC;自动化;模拟
1AIDC简介
AIDC(Air Trafic Services Inter-facility Data Communication),即空中交通服务设施之间的通信,是由亚太民航组织制定的亚太地区相邻管制区间进行航班管制电子移交的标准协议[1]。AIDC协议将一个完整的管制移交过程分解为三个阶段:通知阶段、协调阶段和移交阶段,其主要作用是在不同阶段通过报文数据的交互来完成相邻管制单位之间的航班管制移交,相对电话移交大大提升了管制移交效率。在简约模式下,主要的AIDC报文有ABI(预计边界报,可不发),EST(预计飞越报),ACP(协调接受报),TOC(管制移交报)以及AOC(移交接受报)。除此之外,还有LAM(逻辑确认报),用于通报对方已对相应报文进行处理。
2系统功能需求
AIDC交互测试系统设计的主要目的是和空管自动化系统进行AIDC报文交互以测试自动化系统的AIDC功能。因此,必须具备以下功能:
(1)RS232协议的报文接口,可接收发送异步报文。
(2)符合MH/T4007《民用航空飞行动态固定电报格式》[2]和MH/T4008《空管雷达及管制中心设施间协调移交数据规范》[3]的AIDC报文解析处理,以及生成组装。
(3)简单飞行计划手动或自动生成(根据EST报)和显示,以及状态颜色更新。
(4)接收和发送报文的显示、存储和查询。
3系统结构和运行流程
根据功能需求,遵循模块化的设计原则,将系统划分为下面几个模块:计划生成模块、显示模块、报文处理模块、报文组装模块、报文发送模块、报文接收模块、存储和查询模块。
AIDC测试流程从创建计划开始,系统支持人工创建一份计划,或者收到自动化系统拍发的EST报,按照EST报文中的内容自动生成计划。生成计划后,用户可人工点击界面上的计划,在菜单中选择手动发报至自动化系统,或者勾选自动回复按钮后,系统将自动响应自动化系统拍发的报文,譬如自动化系统发送EST报至测试系统,测试系统自动回复LAM报和ACP报完成协调状态。在显示模块上,每条计划有EST,ACP,TOC和AOC四个图标状态,每个图标有三种颜色,蓝色代表未收到或者发送该报,黄色代表该报已经收到或者发出,但未发出或者收到对应的LAM报,绿色代表报文已经收到或者发出,且已经回复或者收到LAM报。
4主要模块实现
本系统采用C#作为开发语言,SQL server作为数据管理软件。接下来简要介绍几个核心模块的功能实现。
4.1报文接收模块
C#自带Serial Port函数,可以控制串口的关闭以及读写串口数据。系统启动后将读取运行电脑的串口信息,显示在串口选择菜单中。用户选择串口后,系统打开相应串口,并将报文接收函数作为事件添加到Serial Port的Data Received的委托中。每收到一个字符,就触发一次报文接收函数。报文接收函数将字符存储在字符串中,并判断字符串的是否包含一份AIDC报文的头尾,如果包含头尾,则将该份报文截出,发送给报文处理模块。
4.2报文处理模块
报文处理模块取得报文接收模块发送过来的报文后,按照MH/T4008《空管雷达及管制中心设施间协调移交数据规范》以及ICAO(国际民航组织)规范文件《ICDAIDCver3.0》的标准,将报文解析为各个编组及数据项。以一份ACP(协调接受报)报文为例:
DRB4372251641FFZGACADAC251641ZGJDADTM
2.347492
-3.ZGAC231036
-4.181225164114
-5.0ED4
-(ACP-CSZ9910/A7035-ZSWZ-ZGSZ)
该报文可划分为六个部分,按照上述排版,每行即为一个部分(此处仅为方便区分,与实际报文排版不同)。第一部分按照AIDCver3.0的标准进行组装,此处不做赘述。
分别代表报文冠字及流水号、转发时间、电报等级、收报地址、始发时间、发报地址;第二部分2.后跟发报方内部编号;第三部分3.后跟收报方地址前四个字符,以及所回复报文的第二部分内部编号,以此ACP报文为例,所回复的EST报文第二部分应为2.231036;第四部分4.后跟精确到秒的UTC时间,此处时间代表UTC时间2018年12月25日16时41分14秒;第五部分为5.0后跟CRC16校验码,校验对象为第六部分括号以及括号内的内容,即报文正文;第六部分括号内为报文正文,以“-”分割为各个编组,符合MH/T4008和MH/T4007规范标准,本例中解析如下:编组3报文类别为ACP协调接受报,编组7航班号CSZ9910,A模式二次代码7035,编组13起飞机场四字码ZSWZ,编组16预计落地机场四字码ZGSZ。
报文处理模块完成报文解析后,先对报文进行CRC校验,校验不通过则不处理,校验通过后根据不同报文类别触发不同事件。详情见表1。
表1系统收到不同类型报文的响应
报文类型 | 触发事件 |
EST | 判断报文中的计划是否在计划列表中存在,不存在则调用计划生成模块生成计 划,调用报文发送模块回复LAM报,并根据配置回复ACP报,同时修改计划状 态 |
ACP | 根据报文第三部分与EST的第二部分、航班号等条件进行计划匹配,匹配成功后调用报文发送模块回复LAM报,同时修改计划状态 |
TOC | 根据航班号等条件进行计划匹配,匹配成功后调用报文发送模块回复LAM报,并根据配置回复AOC报,同时修改计划状态 |
AOC | 根据报文第三部分和TOC的第二部分、航班号等条件进行计划匹配,匹配成功后调用报文发送模块回复LAM报,同时修改计划状态 |
LAM | 根据报文第三部分和发出报文的第二部分进行匹配,匹配成功后修改计划状态 |
4.3报文组装模块
系统可人工或者自动发送AIDC报文,发送前需要进行报文组装。报文内容组装时同样按照MH/T4007和MH/T4008、ICD试对象自动化系统的编码要求。以美国Telephonics自动化系统为例,配置的AIDC码型为IA5码[4],因此整份报文必须以16进制码0x01(SOH:start of headline)开始,以16进制码0x03(ETX end of text)结束,除此之外同时要在报文中四个正确位置加入连续三个字节0x0d(回车),0x0d,0x0a(换行)方能被正常解析。因此在完成报文内容的组装之后,需要对待测自动化系统的AIDC报文转化为16进制编码进行分析,套用其中的编码规则对系统完成报文发送前的最后组装。
5结束语
本文简要介绍了AIDC交互模拟测试系统的设计思路和几个核心模块实现方法。该系统是以辅助设备维护人员进行对自动化系统进行AIDC功能测试为目标,结合民航规章规范标准和实际工作经验,基于C#和SQL编写的一套测试工具,能从一定程度上满足现行自动化系统的AIDC功能测试需求,具备广泛的普适性,以及很大的扩展空间。
参考文献
[1]姜明明.空管自动化系统AIDC报文处理逻辑[J].硅谷,2013,6(19):43+42.
[2]MH/T4007-2006,民用航空飞行动态固定电报格式[S].
[3]MH4008-2000,空管雷达及管制中心设施间协调移交数据规范[S].
[4]于坚.ITA2和IA5两种国际电报编码相互转换的方法[J].空中交通管理,2009(02):30-31.
作者简介:陈冠宇,男,广东阳江人,本科,助理工程师,研究方向:通信工程。