APP下载

民航机场预报编发报系统的研究与设计∗

2018-03-31赵晔晖

舰船电子工程 2018年3期
关键词:报文号码编码

赵晔晖

1 引言

准确及时发布气象预报是保障飞行安全的重要手段之一[1~3],如何简化发报流程降低预报员发报失误率是民航系统内的热点和难点。目前,民航系统内部使用的发报系统存在诸多缺陷:线路缺陷,发报终端使用单一链路,容易造发生因链路故障导致的漏报、迟报事件,由链路故障造成的迟报漏报现象在民航内部发生多起,严重影响飞行安全;报文确认方式不科学,无法确认转报机是否将报文发送至数据库;报文验证规则不准确,发报软件对报文验证规则不准确,无报文纠错功能,增加预报员工作失误率。

为解决上述问题,本文对当前民航系统存在的发报系统,进行大量的测试和研究,提出采用双链路进行发报的设计思想。同时分析民用航空气象资料《民用航空行业气象标准第2 部分:预报》[4~6],从预报类型标志、地名代码、预报的发布日期和时间、预报有效日期和时段、地面风、能见度、天气现象、云等要素进行逻辑分析,研究各要素之间的内在联系,理清各要素之间的逻辑关系,提取预报发报验证规则,建立民航机场预报发报系统的逻辑模型,分析AFTN二号码与五号码之间的转换关系[7~9],研究 IBMWebsphere MQ[10~13]运行原理,开发设计采用双链路,同时基于规则验证的民航机场预报编发报系统。测试结果表明,采用双链路基于规则验证的民航机场预报发报系统具有较高的可靠率,从而证明了采用双链路基于规则验证进行研究设计的可行性和有效性。

2 系统整体结构及流程

2.1 系统整体框架

民航机场预报编发报系统整体功能架构如图1所示,从设计上分为三个层次:展示层、报文及规则处理层和报文采集管理层,三层之间相互支持与协作,共同完成气象报文的发送和管理工作。

图1 民航机场预报编发报系统架构图

展示层包括编发报文、规则验证、发布报文、索取查询四个部分内容,是用户发布数据的入口,是进行报文编辑、验证、发布、查询的人机交互平台。报文及规则处理层主要功能是将从展示层接收到的报文进行拆分、验证,匹配后将符合条件的报文按照要求转发出去。

报文采集及管理层主要功能是提取从报文及规则处理层收到的报文,将报文发给通信系统进行验证、检测,合格后对比配置(如报告收集、区域索引,转发等),以决定报文入库规则,最后将信息发给数据库系统,验证合格后入库。

2.2 系统整体业务处理流程

民航机场预报编发报系统从业务流程上分为四部分:民航发报终端、民航转报系统、通信系统以及气象数据库系统。预报员在发报终端将报文发送后,选择使用AFTN线路或者MQ线路进行发送,若选择AFTN线路,报文首先进入转报系统,转报系统对报文进行分解验证后将报文传递给上级节点,最后经数据库系统进入数据库,并返回AFTN报文确认信息。若选择使用MQ线路进行发送,报文进入通信系统,经过格式处理、转发查看、入库匹配后进入数据库系统,并返回入库信息。四部分相互协作,共同完成气象报文的发送,其流程如图2所示。

如图2所示,民航机场预报编发报系统业务处理流程如下。

1)预报员在民航发报终端编发报文,发送之前对报文进行验证,若不正确则回到原点重新编发报文;若正确进入步骤2);

2)若不发送报文回到开始起点,若发送进入步骤3);

3)选择发送线路,选择AFTN进入步骤4),选择MQ线路进入步骤5);

4)报文发送至民航转报系统,将AFTN报文发送成功确认信息转发给客户端,一次报文发送过程结束;

5)报文发送至通信系统,通信系统查看报文是否转发,若不是丢弃,否则进入步骤6);

6)查看报文是否入库,若不入库将报文丢弃,否则进入步骤7);

7)数据库系统对收到的报文进行入库匹配,若不匹配查看是否重新入库,若不重新入库则丢弃,否则进入步骤8);

8)写入日志,报文进入气象数据库,同时返回MQ线路发送成功确认信息,一次报文发送过程结束。

3 系统设计

3.1 预报报文规则验证模块设计

依据《民用航空行业气象标准第2部分:预报》资料,分析研究预报类型标志、地名代码、预报的发布日期和时间、预报有效日期和时段、地面风、能见度、天气现象、云等要素,理清各要素之间逻辑关系,提取趋势预报、FC、FT、FC AMD、FCCNL、FTCOR、FTAMD等各类型报文发报验证规则,构建规则逻辑流程图,预报报文规则验证流程图如图3所示。

本模块主要实现报文验证、报文纠错功能,把验证未通过的报文中的错误部分用红色标识出来,其具体的功能有字段提取、时间验证、风向风速验证、能见度检测、有效时段检验、报文纠错等功能,各主要功能具体如下。

图2 民航机场预报编发报系统业务处理流程图

图3 预报报文规则验证流程图

1)字段提取,负责分解提取用户输入的报文,分解成有效时段、风向风速、能见度、天气现象、最高最低气温等字段。

2)逻辑判断:根据提取的字段,分析判断报文逻辑关系,将结果返回给用户。

3)报文分类:由于不同报文判断规则不一致,需要将输入的报文进行分类如分成FT、FC、AMD等。

4)报文纠错:经过逻辑判断后,若报文不正确,将报文中错的部分标记出来,提醒用户报文要重新编写。

3.2 AFTN发报模块设计

预报终端发送的编码为国际二号码,转报机采用的编码为五号码,只有实现五号码和二号码的相互转换才能正确解析报文。IA5编码中的0~32号和第127号控制字符中,只有3个字符LF、CR、SP可以转换为ITA2编码。由于IAT2编码表中无对应的小写字母,IAT2编码转换为IA5编码时,要把小写英文字母转换为大写字母,ITA2编码和IA5编码之间并不是严格的一一对应关系,没有对应关系的编码相互转换时用空字符“NUL“代替。

ITA2国际二号码编码分为数字编码和字母编码,数字编码表如表1所示。

表1 ITA2数字编码

ITA2字母编码表如表2所示。IA5国际五号码又称ASII码,其编码如表3所示。

本模块主要实现串口发报、日志留底等功能,通过返回的报文判断报文成功发送至转报机,其具体的功能有串口发报、二号码转换成五号码、五号码转换成二号码、报文留底等功能,各主要功能具体如下:

表2 ITA2字母编码

1)串口发报,负责打开用户端串口,使用串口协议将报文发送给转报服务器。

2)二号码转换成五号码:转报机将接收到的二号码解析成五号码。

3)五号码转换成二号码:客户端将接收到的二号码转换成五号码等。

4)报文留底:报文发送成功后,系统自动将报文进行留底,便于查询。

五号码转换成二号码实现:步骤分为单个字符和字符串由五号码转换为二号码,单个字符转换成二号码方法:将表3中序号0x25~0x5A所对应的总计54个IA5编码表所对应的字符在表1和表2编码表中找出ITA2对应的编码值,按照顺序存储在一个整形数组中。由于IAT2编码表1和表2有六个字符是一样的,所以整形数组中包括表1和表2的全部编码(空格、回车、换行三个字符外),54个五号码中不能转换二号码的符号用NUL代替;字符串转换成二号码方法:首先判断是数字串还是字符串,若是数字串,在数字串前面加“0x1B”(数字标志:FIGS),若是字符串,在字符串前面加“0x1F”(字母标志LTRS)。

二号码转换成五号码实现:步骤分为单个字符和字符串由二号码转换为五号码,单个字符转换成五号码方法:定义两个整形数(0x00-0x1F),分别存在表1数字编码和表2字符编码所对应的字符在表3中的编码值,按照顺序进行存储。其中,二号码中“0x05”(所有格)、“0x14”(符号)、“0x1A”(符号)没有对应的五号码值,用nul(0x1B)表示。若ITA2编码的第一个转义字符是“0x1B”(FIGS)时,表示是数字字符,对应表1编码值。若ITA2编码的第一个转义字符是“0x1F”(LTRS)时,表示是字母字符,对应表2编码值;字符串转换方法:二号码字符串转换成五号码字符串,必须去掉表示数字和字母的转义字符。截取字母转义字符(0x1F)和数字转义字符之间(0x1B)的字符串,将字符串进行转换,若只找到字母转义字符或者数字转义字符,则直接截取字符串进行转换。

3.3 IBM Websphere MQ发报模块设计

IBM Websphere MQ技术可以在不同网络协议、不同的计算机操作系统之间进行传递信息。本文中发报终端采用win7操作系统,通信机采用red⁃hat操作系统,数据库服务器使用aix操作系统,设计时采用目前主流的JMS框架编程技术。在通信机建立本地队列、传输队列、发送队列以及死信队列,本地数据远程数据库建立接收队列、本地队列,系统设计如图4所示。

图4 IBM Websphere MQ发报系统设计图

如图4所示,本模块主要实现通过MQ线路进行报文发送,通过检索远程数据库判断报文成功发送,其具体的功能有连接远程队列、ftp报文推送、报文验证、报文检索等功能,各主要功能具体如下。

1)连接远程队列:负责与通信服务器进行连接,将报文发送至远程队列。

2)ftp报文推送:使用ftp技术将报文推送至通信服务器特定目录下。

3)报文验证:验证要发送的报文,必须正确才能进行发送。

4)报文检索:分为本地检索和远程检索,确认报文已经入库。

4 实验结果与分析

系统运行环境为Win7操作系统,在软件工程面向对象思想指导下,采用开发平台Visual studio 2012,运用面向对象语言C#,结合javascirpt脚本语言,开发完成该系统,实现报文的验证和发送。

为了检验基于规则验证的报文发布系统对报文的验证是否符合设计的要求,我们进行了验证实验。实验周期为8个月,分别测试系统对FC、FT、FCAMD、 FCCNL、 FTCOR、 FTAMD、 SPECI、AIRMET、SIGMET、GAMET等各种不同类型的报文验证的准确率,每种报文的测试样本数量为3000份,测试人员为预报员,对比现有发报系统,测试数据如表4所示。

表4 各类型报文验证准确率

实验结果表明,对FT和FTAMD报文的验证准确率,民航机场预报编发报系统与现有发报系统持平;对FCCNL报文的验证准确率,民航机场预报编发报系统略高于现有发报系统;对FC、FCAMD、FT⁃COR、SPECI、AIRMET、SIGMET、GAMET等类型报文的验证准确率,民航机场预报编发报系统高于现有发报系统。可以得出结论,在相同条件下相比现有发报系统,民航机场预报编发报系统报文验证准确度更高。

民航机场预报编发报系统采用AFTN和IBM Websphere MQ双链路进行发报,现有发报系统使用AFTN单链路进行发报,线路故障时,发报成功率如表5所示。

表5 链路中断时成功率

如表5,结果表明AFTN线路故障时,机场预报编发报系统发报成功率100%,高于现有发报系统的0%;网络线路故障时,机场预报编发报系统和现有发报系统发报成功率均为100%;AFTN线路和网络同时故障时,机场预报编发报系统现有发报系统的成功率均为0%。线路故障时,机场预报编发报系统发送报文成功的概率大于现有发报系统,证明机场预报编发报系统的可靠性。

5 讨论

本文研究资料选取《民用航空行业气象标准第2部分:预报》,将预报员日常发送的报文进行分类统计,分析不同类型报文各个元素之间的逻辑关系,分别提取各类型报文验证规则,设计验证算法。采用双链路设计思想,重点研究AFTN线路二号码与五号码之间的转换关系,着重分析IBM Websphere MQ线路报文发送流程。本文实验中,选取不同类型报文各3000份,对比现有发报系统,分别测试系统对FC、FT、FCAMD、FCCNL、FTCOR、FTAMD、SPECI、AIRMET、SIGMET、GAMET等各种不同类型的报文验证的准确率。报文验证结果显示,在相同条件下相比现有发报系统,采用报文规则验证的民航机场预报编发报系统报文验证准确度更高,表明报文规则是提高报文验证准确率的重要因素,与“提高气象报文验证准确度的因素有两个:第一,行业标准的完善;第二,对行业标准和气象报文规则的熟悉程度,其中对气象报文规则的掌握程度是核心因素,对报文验证准确度的提高起决定性作用[14]”相符合。文中设计的发报系统采用双链路进行发报,线路故障时,机场预报编发报系统发送报文成功的概率远远大于现有发报系统,表明采用双链路设计的思路对提高业务保障能力、降低漏报风险具有重要作用,这一结论支持了“结果表明,采用双链路进行数据传输和调度,极大地提高了气象区域自动网络数据保障能力[15]”的观点。

6 结语

基于报文规则验证的民航机场预报发报系统自开始运行以来,对报文验证准确率高,降低了预报员发报失误率,由于采用双链路进行发报,系统可靠性高,极大提高了预报业务保障能力,系统运行稳定,操作简单,得出的结论具体如下。

1)根据资料《民用航空行业气象标准第2部分:预报》,将报文分成FC、FT、FCAMD、FCCNL、FTCOR、 FTAMD、 SPECI、 AIRMET、 SIGMET、GAMET等进行分类研究,分析各元素之间的逻辑关系,提取各类型报文验证规则,报文规则对提高报文验证准确率起决定作用。

2)报文发送时采用双链路,其中一条链路故障时仍能成功发送报文,提高了业务保障能力,双链路是提高系统可靠性、保障数据传输的重要因素。

3)从报文确认方式来看,改变以往通过回报进行确认的方式,直接从远程数据库检索确定报文是否发送成功,确认方式简单有效,操作性和实用性强。

[1]宁贵财,康彩燕,陈东辉等.2005—2014年我国不利天气条件下交通事故特征分析[J].干旱气象,2016,34(5):753-762.

[2]王娜,王冀,王琦等.陕西冬季气温变化特征及其成因[J]. 干旱气象,2016,34(4):604-609.

[3]中国民用航空局.中华人民共和国民用航空行业标准[M].北京:气象出版社,2008:38-46.

[4]中国民用航空局.中华人民共和国民用航空行业标准[M].北京:气象出版社,2008:18-26.

[5]毕心安.航空电信网建设简论之一[J].中国民用航空,1994;18(20):26-31.

[6]毕心安.ITA2和IA5两种国际电报编码相互转换的方法[J].空中交通管理,2009;20(12):30-31.

[7]曹怀春.AFTN电报自动处理系统研究[J].中国民用航空飞行学院,2011,30(4):33-37.

[8]李林奔.民航空中交通管理自动化系统的分析与设计[J].云南大学学报,2013,20(3):40-45.

[9]智俊平.中国民航AFTN报文解析方法探究[J].内蒙古科技与经济,2011,23(2):51-55.

[10]米永胜.IBM Websphere MQ原理及在民航气象数据库中的应用[J].中国气象学会气象通信与信息技术学术会,2012,31(4):63-67.

[11]赵普洋,刘敏.IBM WebSphere MQ技术在民航气象数据库系统中的应用[J].计算机光盘软件与应用,2012,17(4):69-70.

[12]孙宁,丁艳丽.Websphere MQ在业务中的错误分析及解决方法[J].空中交通管理,2010;17(8):41-42.

[13]岳光.IBMWebsphere MQ的原理与应用[J].计中国科技信息,2011(12):68-68.

[14]曹闪,张仁波.基于决策树的民航气象报文分类统计规则的研究与应用[J].百度学术,2016,16(12):47-53.

[15]鲁莉炳,鲁霞.区域自动气象站单站数据远程访问流程及技术[J].电脑编程技巧与维护,2014,20(16):11-17.

猜你喜欢

报文号码编码
基于J1939 协议多包报文的时序研究及应用
以太网QoS技术研究及实践
生活中的编码
《全元诗》未编码疑难字考辨十五则
说号码 知颜色
一个号码,一个故事
子带编码在图像压缩编码中的应用
猜出新号码
浅析反驳类报文要点
Genome and healthcare