基于FC-AE-ASM总线的通用分析软件的开发

2019-10-18 07:26李珊珊吴传贵
测控技术 2019年9期
关键词:数据信号物理量总线

李珊珊,吴传贵

(1.中国人民解放军第5720工厂航空设备测控与逆向工程实验室,安徽芜湖 241007;2.中国人民解放军第5720工厂,安徽芜湖 241007)

传统的总线数据分析多是嵌入在各产品的专用测试系统中,主要存在以下两点问题[1]:一是在不同产品的测试系统之间,总线数据分析代码无法共用,针对不同产品的接口控制文件(ICD)需要分别编写解析代码,降低了测试系统的通用性;二是当接口控制文件发生变化时,需要重新开发测试系统的接口数据解析代码,降低了测试系统的测试效率和可靠性。

针对这一现状,近年来行业内开展了多种总线基于ICD配置文件的通用化总线解析流程研究,研制了多种总线的通用分析软件[2-6],如 ARINC429、MILSTD-1553B等。随着航空电子产品对通信速率和可靠程度要求的不断提高,FC-AE-ASM总线已广泛应用于各型号中。但目前针对该类总线的通用解析研究还较少。

基于以上问题,本文开发了一种FC-AE-ASM总线数据通用分析软件,根据配置的ICD数据库,采用通用化处理流程,可实现对不同航空电子产品FC-AEASM数据的自动分析及显示。

1 软件总体开发框架

1.1 开发思想

通用分析软件对不同航空电子产品的ICD进行格式化处理,转换成统一的数据库文件后,将总线数据与ICD数据库相关联,自动查找其映射关系及逻辑,并根据ICD数据库中的定义对采集到的总线数据进行实时分析[7],最后将分析结果送到人机交互界面显示。这种基于ICD数据库开发总线数据分析软件的方法,使总线数据分析过程完全独立于航电产品测试系统,避免了不同航空电子产品、即不同ICD的麻烦,具有通用性。

1.2 设计需求

通用分析软件采用结构化设计,应具有以下3个功能:① ICD数据库管理功能,包括新建ICD数据库和导入已有ICD数据库;② 总线数据分析功能,即依据导入的ICD数据库自动分析总线数据;③数据管理及显示功能,即可对分析结果进行显示和保存。通用分析软件各功能模块具体设计需求如图1所示。1.3 ICD数据库分析

图1 通用分析软件功能框图

ICD是FC-AE-ASM分析总线数据的基础,定义了信号类型、参数物理意义等一整套总线系统数据[8]。ICD一般采用数据库形式管理[9],由于航空电子产品FC-AE-ASM总线ICD文件的编制方式不一致,因此,为实现总线数据分析流程通用化,设计具有统一格式和数据结构的ICD数据库是关键。

根据对航空电子系统典型总线ICD定义的分析得出,ICD中包含两种基本接口类型:消息块和信号。消息块是由若干信号组成,且至少包含一个信号,具有唯一的标识(ID)、源地址(SID)和目的地址(DID)。信号是总线上传输信息的最小数据单位,可分为数据信号和离散信号,数据信号代表具体物理量的值,离散信号又可包含多个物理量的状态属性。因此,一个通用的ICD数据模型应包含“ICD-Block-Signal-Filed”四级信息[10]:ICD定义机载设备的一些属性信息;Block即消息块,定义通信规范信息;Signal即信号,是通信的基本单元,定义信号的属性信息;Filed即离散域,定义具体离散值的属性意义。同时,为提高总线数据分析效率,避免不同信号类型或同信号类型不同长度的总线数据之间的差异,应在各级信息中提取共性特征。

2 ICD数据库管理模块开发

2.1 ICD数据库实现

根据1.3节分析,设计了由消息块描述表、数据信号描述表、各离散信号独立描述表组成的数据库,各描述表结构独立、逻辑关联[11]。

消息块描述表中包含了总线上传输的所有消息块,每个消息块的数据结构即说明如表1所示。

表1 消息块数据结构

数据信号用16/32位串行数字信号表示某个具体物理量的值,数据信号描述表中包含了所有数据信号,每个数据信号的数据结构及说明如表2所示。在数据结构中,针对数据信号最高有效位、最低有效位的区别,建立了最高位和最低位字段,根据两字段的值实现不同长度数据信号分析算法的一致性。

表2 数据信号描述表数据结构

离散信号与数据信号不同,离散信号用16位串行数字信号表示产品的几项物理量状态,每个离散信号包含的物理量名称和个数均不相同,因此需要为每一个离散信号建立独立的描述表,描述表内每个产品物理量数据结构及说明如表3所示。针对不同离散信号包含的物理量状态的个数、每个物理量状态所占有效位的不同,建立了所占位数、最高位、最低位字段,根据字段值实现不同离散信号分析算法的一致性。

表3 离散信号描述表中产品物理量数据结构

2.2 ICD数据库管理

ICD数据库生成界面如图2所示,通过依次输入消息块信息的方式,软件将自动生成遵循本设计要求、格式统一的数据库文件。

图2 ICD数据库生成界面

数据库文件生成或导入后,每个消息块与软件中定义的结构体相关联,实现对ICD的管理。结构体具体如下:

struct ElementInfo

{

CString name; //信号名

CString type; //信号类型

long length; //信号长度

long value; //未解码的16/32bit信号值

}Element[N]; //N为消息块的信号数量

3 总线数据分析模块开发

总线数据分析模块以消息块为单位,按照消息块信息获取和信号解码两步对总线数据进行解析。

消息块信息获取流程如图3所示,通过将总线数据MsgID与消息块描述表消息块号字段记录值相比较,获取一包完整总线数据对应的物理意义和包含的信号信息,并存入结构体Element。

信息解码流程如图4所示,数据信号和离散信号采用的解码方法不同,软件根据Element[].type内的值选择不同的解码流程。数据信号根据数据信号描述表中对应记录各字段的定义,计算出所代表物理量的名称和数值;离散信号根据对应离散信号描述表中各字段的定义,计算出所代表的多个产品物理状态。

4 数据管理及显示模块开发

数据显示与信息解码同步,信息解码过程中,每分析出一个有用信息,结果显示界面将同步更新,有用信息包括消息块名称、信号名称,数据信号的物理量值及离散信号的物理状态。分析结果以树形图的形式显示被分析总线上的所有消息块信息,并以.txt格式保存,树形图结构如图5所示。

图3 消息块信息获取流程图

5 测试验证

本文基于FC-AE总线测试平台,以FC-AE-ASM总线上3个消息为例,利用ICD数据库生成工具转化为分析软件规定的数据库格式后,对通用性和高效性进行了测试验证。

5.1 通用性验证

通用性即分析软件可对不同产品的FC-AE-ASM总线数据进行解析,解算结果仅与导入的产品ICD数据库中有关。

①利用FC-AE总线测试平台,自环发送一帧完整的FC-AE-ASM总线数据,数据帧ASM帧头和数据域字段具体如下。

图4 信号解码流程图

图5 分析结果显示结构图

②导入产品1的ICD数据库文件,产品1的ICD数据库中定义了消息号为1,消息名为长机目标分配的消息,基于该ICD数据库文件对以上帧解算后的结果如图6所示。

③导入产品2的ICD数据库文件,产品2的ICD数据库中定义了消息号为1,消息名为任务分配信息的消息,基于该ICD数据库文件对以上帧结算后的结果如图7所示。

图6 解算结果1

图7 解算结果2

5.2 高效性验证

总线数据的解算,即将总线上包含的每条信号根据ICD中的定义转换为其物理意义的过程,以10条FC-AE-ASM总线信号的分析为例,采用传统方法和通用分析软件所耗费的时间如图8所示。按照传统方法将总线数据解算过程嵌入在产品专用测试系统中,则需要针对每条信号编写对应的数据计算代码,因FCAE-ASM数据量大、解算过程复杂,每条信号的解算代码编写需40~60 min,则整个产品的总线分析软件约7 h左右时间完成。采用本文开发的通用分析软件,只需在ICD数据库生成界面中录入待测产品的每条总线信号后,形成符合规定的数据库格式,再以动态导入的形式实现对产品的解算。每条总线信号的录入最多需2 min,则整个产品的总线分析软件在10 min内完成。

图8 解算程序编程时间对比图

6 结束语

本文基于传统的总线分析软件的不足,开发了基于ICD数据库的FC-AE-ASM总线通用解析软件,并对其进行测试验证,测试验证表明其有效性。所开发的软件可广泛应用于含FC-AE-ASM总线数据的产品测试中。

猜你喜欢
数据信号物理量总线
Xilinx FPGA 高速信号数据处理系统研究与设计
跨时钟域传递位数据的同步方法
AIS数据接收与应用分析
一种基于CAN总线的误码测试方法
巧用求差法判断电路中物理量大小
化学用语及常用物理量
电场中六个常见物理量的大小比较
基于小波变换通信数据信号的分析与研究
CAN总线并发通信时下位机应用软件设计
基于CAN总线的水下通信系统设计