APP下载

地基增强系统数据解析软件的设计与实现

2019-06-27高虎王岸石胡耀坤

科技传播 2019年11期
关键词:文件类型数据文件解析

高虎 王岸石 胡耀坤

摘 要 地基增强系统(GBAS),是卫星导航系统的重要组成部分,其工作原理是通过差分定位提高卫星导航精度,并在此基础上增加了完好性监视算法,提高系统完好性、可用性、连续性的指标,使作用范围内具备相应能力的飞机获得达到I类精密进近(CAT I)甚至更高精密的位置信号,然后再引导飞机实施进近和着陆飞行。地基增强技术通过应用差分增强和完好性监测技术,可以满足民用航空精密进近着陆引导关于完好性、连续性和可用性的严格需求。记录数据解析软件是地基增强系统中的数据处理软件。它的主要用途是将记录数据单元保存下来的GNSS各类数据解析成为可以直接阅读或者有利于后端进一步处理分析的数据,并保存到磁盘中,用以支持系统的调试、测试以及分析工作。

关键词 卫星导航;地基增强;数据解析

中图分类号 TP3 文献标识码 A 文章编号 1674-6708(2019)236-0131-03

GNSS地基增强系统(Global Navigation Satellite System)是一種精确的、区域性的导航系统,主要应用于飞机在机场的精确着陆。GNSS地基增强系统可以通过实时广播差分修正信息来增强全球卫星导航系统GNSS(的精度来满足飞机精确着陆的要求。[1-3]GNSS地基增强系统地面设备的数据记录单元负责记录GNSS地基增强系统的运行数据。因此需要相应的工具将二进制数据转换为明文以提供给系统维护人员和用户。

记录数据解析软件是地基增强系统的解析处理软件,可以满足上述需求,它可以预处理GNSS地面设备存储的数据。数据记录单元保存的系统运行数据都是二进制码流,将文件导出后通过记录数据解析软件转换为一定格式的可读的文本文件。

1 软件原理与设计

数据解析软件是针对地基增强系统设计的维护软件。其原理就是将地基增强系统记录单元存储的运行数据进行读取、解析、显示以及存储。软件规定的输出是便于分析和后处理的固定格式,分析数据的用户要对解析结果直接查看,后处理数据的用户要对解析结果进一步运算分析。该软件为地基增强系统长期运行分析排故提供了数据方面的支持,给技术人员提供了快捷查看数据的便利方式。

数据解析软件由以下几个模块构成:

人机交互模块(InterAction)、大文件读取模块(ReadFile)、文件解析模块(DataParse)、解析输出模块(InputFile)

人机交互模块和大文件读取模块是软件的输入模块。人机交互模块提供给用户信息输入界面,通过界面进行软件运行的设定。大文件读取模块是将待解析的数据文件读入到内存映射区以供解析处理之用。

文件解析模块是核心处理模块,它将分门别类的对读取的数据进行解析处理。该模块的输入就是大文件读取模块内存映射的文件。

解析输出模块是整个软件运行结果的输出口,它将解析好的数据按照规定格式保存到本地文件中。该模块的输入就是文件解析模块输出的数据。

1.1 人机交互模块

该模块完成用户对软件信息的传递功能。提供给用户,这里包括调试、测试和后处理的用户。界面需要设计完备且分类清晰,具体包含文件的输入、文件的输出、文件输入输出位置选择三大类。

文件的输入提供给用户选择解析文件类型的能力,此项选择是单一的选择。

文件的输出提供给用户解析出的具体文件信息,文件的输出应该提供给用户多选的能力,也就是说输入文件与输出文件应该是一对一、一对多或者多对多的关系。

输入输出文件的位置提供给用户选择输入输出文件位置的能力。要求文件输入的选择可键盘键入也可鼠标点选,提供给用户在本地各个路径下鼠标点选的能力。输出文件根据用户输入的路径进行写入保存,如果用户没有填写输出路径的话,软件会自动选择默认路径进行写入保存。

人机交互模块中为了避免误操作,要当选择了输入文件类型后才可以进行输出文件类型的选择,输出文件类型是按照输入文件类型而提供给用户进行选择的,只有当选择了输出文件类型后才可以进行文件位置的设定。只有当文件的路径设定好之后,才能对文件进行解析。具体流程如图3:

1.2 大文件读取模块

由于解析的数据文件相对来说比较大(可能有上百兆的文件存在),考虑到大数据量的读写操作的流畅性[4],数据解析软件采用内存映射的方法来读文件。设置好文件分配粒度后,数据文件映射到文件映射对象中,为后续解析处理的操作作准备。

1.3 文件解析模块

该模块要对读取的文件数据进行分类筛选,读取的文件数据分类有GPS卫星接收机原始数据、Glonass卫星接收机原始数据、Galileo卫星接收机原始数据、北斗卫星接收机原始数据、VDB发送电台原始数据、VDB接收电台原始数据、设备工况数据、系统状态数据、电源状态数据、日志数据、服务监测报文数据、卫星可用性监测报文数据、完好性原始数据和监测计算过程数据。解析过程中要提供进度提示功能,为了不让用户在软件解析的过程中再次操作界面影响解析进程,数据解析软件在解析时会弹出进度条,如果解析没有完成,用户则不能进行任何操作。

在解析过程中,首先对读取的文件数据做一筛选分类。具体流程是查找数据的包头,获取消息ID,获取包的长度,再进行长度校验。

经过上面的流程分类好的数据流按照一整包的数据格式进行截断。将截断好的数据包传入各解析模块里做处理。解析模块针对接口协议对每一个信息位进行解析,即译码处理,翻译成明文信息。

在解析的各个实现模块中数据量值的完整性和输入数据的校验不符合规则时的处理方法是,程序会将错误的数据或校正信息保存在变量中,包括数值范围超限、循环冗余校验出错、累计和校验出错等信息,待到解析完成后将这段信息写入到输出文件的末尾。

1.4 文件输出模块

该模块要将解析的内容保存到本地磁盘中,文件类型为TXT文件。解析的输出文件按照输出数据类型单独保存在不同文件中。

解析完成的文件名命名规则为“设备名称+文件类型+年月日时分秒”。文件内容包括文件头、文件正文和文件统计信息。输出的文件可以一次解析出多个。

文件中具体内容的管理如下:

文件头包括文件详细信息、文件类型、文件夹时间、设备名称。

文件正文中,第一行为该类型解析的每一项名称,从第二行开始为解析的结果,每一项都排列成竖列,每一列以四个空格分隔。

文件统计信息包括解析的输入文件总包数,数据超限包数,数据项详细信息和校验出错包数。

2 软件的输入输出

根据用户界面控制,可以选择软件的输入输出,输入文件与输出文件是一对多的关系,输入一个文件可以选择输出多种类型的文件,即一种映射关系。具体是由操作者来决定的。

输入文件与输出文件对应关系如下:

设备工况数据文件——设备名称-facility年-月-日-时

系统状态数据文件——设备名称-sys年-月-日-时

电源状态数据文件——设备名称-powers年-月-日-时

日志数据文件——设备名称-log年-月-日-时

服务监测报文数据文件——设备名称-server_ av年-月-日-时

卫星可用性监测报文数据文件——设备名称-satellite_av年-月-日-时

监测计算过程数据文件——设备名称-monitor_ex年-月-日-时

完好性原始数据文件——设备名称-dif年-月-日-时

3 数据解析软件流程描述

1)用户根据需要输入解析的相关信息,包括输入文件信息,输出文件信息,输入输出文件本地存储位置等。

2)软件判断读取的文件与用户选择的文件类型是否一致,如若不一致,程序会终止解析流程,重新等待用户输入文件。

3)用户提交的信息送至软件进行处理,获得文件数据以供解析处理。

4)软件会判断文件中的数据是否满足完整性,范围符不符合规则要求。如若不满足上述规则,程序仍会继续进行解析流程,并提示用户出错信息。

5)软件进行解析处理,用户等待结果。

6)解析处理完成,文件保存在用户指定的路径下。软件回复到起始状态,等待用户下一次操作。

4 结论

数据解析软件能够便利的对地基增强系统运行数据进行解析查看,为系统后期的维护提供了分析的依据,在系统长期运行阶段,帮助技术组人员排查系统的故障和问题。

由于地基增强系统运行产生的数据量巨大,单个记录文件有可能达到上百兆,因此数据解析软件在实现上采用了内存文件映射的机制,很好的解决了从磁盘存取数据缓慢的问题,提高了解析分析数据的速率。采用CPU多核处理的机制,实现了单台计算机并行解析多个文件的能力。

参考文献

[1]谢钢.GPS原理与接收机设计[M].北京:电子工业出版社,2015.

[2]谢钢著.全球导航卫星系统原理-GPS、格洛纳斯和伽利略系统[M].北京:电子工业出版社,2013.

[3]黄丁发.卫星导航定位原理[M].武汉:武汉大学出版社,2015.

[4]劉平,贾林林.内存映射技术在大数据实时存储中的应用[J].河南科技,2017(5):39-41.

猜你喜欢

文件类型数据文件解析
基于文件签名的FAT32文件恢复技术原理与实践
三角函数解析式中ω的几种求法
快速替换文件类型的默认图标
把我的秘密藏起来
睡梦解析仪
数据文件恢复专题问答
数据文件安全管控技术的研究与实现
SQL数据文件恢复工具
电竞初解析
HDFS小文件读写优化策略*