沈峙宇
摘 要:伴随着航天科技的不断发展,关于航天器各部件的信息物理测试在实际工程中应用的越来越广泛。针对各类仿真模型和实物硬件之间的通信数据不能便捷交互的问题,设计了一种基于航天器信息物理测试系统的数据交互标准,采用JSON语言将多类数据进行组包解包,将协议封装成库,随时调用,进一步提高数据交互的灵活性。
关键词:数据交互 组包解包 协议设计
中图分类号:TP399 文献标识码:A 文章编号:1003-9082(2020)08-000-01
引言
多种类仿真模型与不同实物硬件之间的数据交互是开发和测试各类航天器的重要组成部分。准确地判断出数据交互体现的内容为把握航天器的运行状态、有效载荷、故障模式等提供了强有力的数据支撑。各类仿真模型与硬件实物执行任务时发出了错综复杂的数据格式,为防止形成“信息孤岛”,需要设计出符合每个任务数据的协议,来进行多对多的信息交互。
一、信息物理测试系统简介
信息物理测试系统是针对航天器的一套仿真测试系统,其中模型分为三大种类:FMU模型、协议模型和硬件模型。通过三种模型可搭建仿真测试任务,同时可通过板卡和总线与实物硬件相连接,以达到对工程实物进行测试的目的,极大地丰富了系统的功能性,提升了用户使用的友好度。
二、模型硬件数据交互标准
国外航天系统流行应用的标准是基于扩展标记语言XML的卫星遥测数据处理方法XTCE(XML Telemetric and Command Exchange),该标准是由对象管理组织协会OMG(Object Management Grou)提出的。借鉴XTCE数据交互标准,根据航天器信息物理测试系统的实际情况,本文采用新兴的数据交换语言JSON,摆脱国内应用较多的基于文本约定的描述方式。通过JSON代码的结构和内容使得数据的描述具有了统一的方式,在各类航天器模型和硬件数据交互过程中,避免了因数据格式产生通信障碍。使信息交互灵活地应用在航天器的开发测试任务中,使各类仿真模型和实物硬件之间数据识别无缝对接,做到系统的快速修改和调整。
三、协议的设计与构建
在航天器信息物理测试平台中,采用树结构的节点层次,支持用户构建自己的传输协议。包结构分为root包、子包和条件包,其中root包作为总包有且只有一个,通过组包解包协议的确立,保证交互数据的实时性、有效性,实现模型仿真与连接硬件的统一性,满足用户各种需求的同时还可以对测试数据进行保护。
根据测试平台的工程需求,首先明确列出实际数据交互过程有可能遇到的各种类型包结构,通过归纳整理,设计统一的构建数据交互协议的方式,例如包头是否存在,如果存在,需要填写名称、内容和长度;支持填写包长的范围;有无校验码,其校验范围包括哪里,等等。如表1所示,构建root包的协议设计所考虑的各类需求。
在协议构建中首先是进行组包协议创建,对名称、大小端、字节序、包类型进行填写。然后需要完成包头、包长、数据、功能码、校验的包结构设计,最后根据包结构的数据位置填写相应的数据值。协议包经平台用户配置完成后,包中数据由可视化模型连接进行数据匹配,组包由FMU模型所运算生成的数值填入数据包中,而解包由硬件傳入数据。
四、协议的实验结果与应用
根据信息物理测试平台中用户构建的协议配置,使用本文所设计基于JSON配置文件的遥测遥控数据交换标准,所生成的包属性的部分实验数据如下所示。
“RootPackage”: { //root包属性
“name”: “root”, //包名称
“endian”: “big”, //大小端
“bit_order”: “little_bit_first”, //字节序
“protocol_type”: “none”} //协议类型
在实现FMU模型和硬件结合的联合仿真实验中,通过解包协议进行数据交互,其实验结果如图1所示。
通过构建协议体系的形成使基于信息物理测试技术的半实物仿真平台可以真正应用到工程实践中,推动其在航空航天领域联合仿真技术的更广泛应用。使信息物理测试系统可以快速响应仿真测试系统中任务的变化,极大地提高了仿真的效率。
结语
本文简要介绍航天器信息物理测试系统中数据交互研究的必要性,同时展现了自定义构建协议包的设计思路。在解决自定义协议过程中,借鉴了XTCE标准,根据实际情况采用了更适合本测试系统开发的JSON语言,作为数据交换语言。使各类软硬件之间的数据交互打破壁垒,极大地提高了测试系统的灵活性。
参考文献
[1]刘洋,李宗德,丁雪静,戴媛媛,何晓苑.基于XTCE的卫星遥测数据处理方法[J].遥测遥控,2017,38(1):27-31.