APP下载

航空电子设备自动测试系统的软件架构设计

2016-11-17段海军赵根学

计算机测量与控制 2016年9期
关键词:测试软件自动测试电子设备

段海军,赵根学,陈 福,成 博

(中国航空计算技术研究所,西安 710119)



航空电子设备自动测试系统的软件架构设计

段海军,赵根学,陈 福,成 博

(中国航空计算技术研究所,西安 710119)

为检测和定位航空电子设备的故障,研究并设计了一种自动测试系统的软件架构;该架构包含了测试软件和测试数据库,测试数据库存储有测试被测设备的相关数据,测试软件将其作为输入,通过自动测试设备输送给被测设备,最终测试软件接收被测设备的输出并将其与测试数据库的预期数据相比较得出测试的结果;测试软件由手动测试模块、自动测试模块、系统自检测模块、测试记录读取和测试结果记录模块4个功能模块组成,自动测试和手动测试可以自由切换;该系统不仅能使用自动测试功能仿真被测设备的飞行环境,还可以使用手动测试功能具体定位分析故障,降低了设备的维护成本,缩短了维修时间。

自动测试;故障;测试

0 引言

现代战斗机作战任务和作战环境越来越复杂,航空电子设备可靠性的要求随之提高。对电子设备的测试需要从最初的设计到生产贯穿到最后的维护[1-4]。支持测试电子设备的硬件状态和软件设计,以及模拟最终的飞行状态测试电子设备的软件架构是急需解决的问题。

针对航空电子系统的特点,设计了一种能够测试电子设备硬件和软件设备的软件架构,该架构能够模拟设备最终的飞行状态,完成对飞行状态的设备的测试。该架构包含测试软件和测试数据库,测试软件将测试数据库中记录飞行数据通过自动测试设备输入给被测系统,仿真系统的飞行状态,有利于故障的复现,降低了系统的故障率。

1 测试数据库

测试数据库包括五部分:测试输入数据库、预测输出数据库、实测输出数据库、测试诊断数据库和测试指令集数据库[5-6]。测试软件将测试输入数据库中的数据输入到被测设备中,并从被测设备中获取输出数据记录在实测输出数据库中,最终由测试软件根据实测输出数据库、预测输出数据库和测试诊断数据库得出最终的测试结果,如图1所示。

1.1 测试输入数据库

测试输入数据库存储着被测设备的输入数据以及输入规则,测试软件依据输入规格将输入数据一条一条的输入给被测设备。一般输入规则表达式为:

Do{

If(发送条件满足)

{

从端口N向发送一包数据

}

}while(还有数据未发送)

比如发送条件是20 Hz,端口N是第一路422串口设备,则表示每50 ms自动测试设备由第一路422串口设备向被测设备发送一条测试输入数据库中的数据,直到数据库中的数据发送完为止。

图1 测试框图

1.2 实测输出数据库

实测输出数据库存储被测设备的输出给自动测试设备数据以及输出规则,测试软件依据输出规格将从被测设备中获取输出数据,并将其一条一条记录在实测输出数据库中。一般的输出规则表达式为:

Do{

If(接收条件满足)

{

从端口M向接收一包数据

If(接收成功)

{

存储在实测输出数据库中

}

}

}while(继续接收)

比如发送条件是50 Hz,端口M是第二路422串口设备,则表示每20 ms自动测试设备从第二路422串口设备接收一条被测设备的输出数据,并将其记录在实测输出数据库,直到不需要接收为止。

1.3 预测输出数据库

预测输出数据库为测试诊断提供依据,根据对被测设备的输入和被测系统的正常功能,预测出被测设备返回给测试设备的输出。测试软件的测试诊断部件根据预测输出、实测输出以及测试诊断数据库中的诊断规则,对最终的测试结果做出判断。一个预测输出数据库对应一个实测输出数据库。

1.4 测试诊断数据库

测试诊断数据库中存储着输入和输出对应的测试结果,测试软件根据相应的输入数据库和输出库中的数据,依据诊断数据库中存储的诊断规则,得出最终的测试结果并分析故障信息。诊断的规格如下:

If(输入1 &&输入2)

{

If(实测结果1与预测结果1相比在有效范围内)

{

返回测试正常;

}else

{

列出预测结果和实测结果;

}

}

比如在输入1和输入2下,预测结果为1,实测结果为1,比较预测结果1和实测结果1,如果在有效范围内,则认为系统的软硬件运行正常满足要求;如果超过有效的范围,则列出超过有效值的部分预测结果和实测结果,供开发人员分析。

1.5 测试指令集数据库

测试指令集是一组测试指令的集合,包含多条测试指令,如表1示,测试软件根据测试指令集中的指令从1到W顺序执行,按照“执行完一条测试指令后,在执行下一条测试指令,以此类推直到最后一条测试指令执行完成”的原则,完成测试指令集中的所有测试指令。一条测试命令对应多个输入数据库和预测输出数据库,一个预测输出数据库对应一个实测输出数据库和一个诊断数据库,完成一条测试指令后,由测试软件将预测数据库和实测数据库做比较,依据对应的诊断规格数据库得出该条测试指令的测试结果,并列出差别较大的数据,分析其原因。

表1 测试指令集的数据格式

2 测试软件

测试控制着被测设备的输入,并根据被测设备的输出判断被测设备的功能和性能。测试软件提供图形化的界面,根据用户的选择以及测试数据库中的数据或者测试指令集,测试被测设备的功能和性能。整个测试过程,根据用户的选择,可以进行手动测试,也可以进行全自动测试[7]。测试软件依据数据库中提供的输入数据依据相应的输出判断依据得出测试的结果,将测试结果显示在测试界面上,并将测试结果存储记录;根据测试指令集中的指令依次完成每一条指令的测试,并得出测试结果并分析故障原因。

测试软件一般包含4个部分:手动测试模块、自动测试模块、系统自检测模块、测试记录读取和测试结果记录模块。如图2所示。

图2 测试软件模块组成图

手动测试模块:由用户从测试界面中给被测设备输入,并将被测设备的输出显示在用户界面,由用户判断测试的结果。手动测试模块可以很好测试系统的某一个部件,准确的得出该部件对输入的反馈,不适合做系统的集成测试。

自动测试模块:根据用户指定的测试指令集,将测试指令集中的所有测试,在做测试过程中不需要用户的交互,便可以完成全部测试,并最终得出测试结果。航空电子系统在飞行过程中将外部设备给航电设备的输入存储在数据库中,将数据库中的数据作为自动测试模块的输入,自动测试设备可以完整的模拟飞机在飞行过程中航电设备的状态,有助于飞行过程中的航空电子系统软硬件故障的复现,自动测试系统的输出数据库可以为开发人员提供更多的信息,有助于排查故障,并在故障解决后,验证航空电子系统。

系统自检测模块:由测试设备发出自检测命令,被测设备对自身的软硬件做自检测,并将检测的结果返回给用户。该模块可以获取航电系统的上电PBIT、周期BIT和维护BIT的结果,判断系统硬件是否健康,软件是否正常运行。可以向航空电子系统设备注入故障,测试系统的故障处理机制,比如测试热备份的主从模块切换、系统重构等。该模块依赖于航空电子系统的自检测系统。

测试记录的读取和存储:测试软件应具备记录存储测试结果,并根据用户的需求,将测试记录以条目的形式显示在测试界面的功能。

3 实验与验证

对某电子设备的12路422串口的测试结果如图3所示,测试结果显示在右下角的位置,其中包含了测试值、期望值、输出结果及测试结果,保存测试结果按钮可以将显示出的测试结果保存文件中,导入测试结果可以将以前保存的测试数据显示在右边的显示框中。

图3 电子设备的硬件测试图

测试系统模拟飞机运行状态测试电子设备的导航功能,测试结果如图4所示,图左侧显示的飞机的飞行轨迹,右侧显示当前飞机的经纬度、高度和速度。

4 小结

自动测试系统软件架构由测试软件和测试数据库组成,测试软件包含了手动测试模块、自动测试模块、系统自检测模块、测试记录读取和测试结果记录模块,该系统不仅能够手动的测试被测系统的基本的硬件资源,还可以将被测系统飞行状态时记录的输入作为测试系统的输入,仿真被测系统的飞行环境,有助于飞行故障的复现,降低了维护成本。

图4 电子设备的导航功能测试图

[1] 史彦斌, 段哲民. 航空电子综合测试系统的发展现状及趋势[J].计测技术,2005,25(4):1-2.

[2] 杜 里,张其善. 电子装备自动测试系统发展综述[J].计算机测量与控制,2009,17( 6):1019-1021.

[3] 杨艾兵,张锡恩,郭 利. 某型导弹控制系统的自动测试研究[J].微计算机信息,2007,23(31):77-78.

[4] 连光耀,黄考利,张晓龙. 基于专家系统的导弹自动测试与故障诊断系统研究[J].计算机测量与控制,2004,12(4):449-450.

[5] 夏 锐,肖明清,王承孝,并行测试系统数据库的设计与应用[J].微计算机信息,2008,24(12):139-141.

[6] 杨艾兵,任卫武,彭 伟.基于数据库的导弹自动测试系统软件设计[J].仪表技术,2011,30(2):8-10.

[7] 董勤鹏, 熊华钢. 基于某航空电子设备的自动测试系统设计与实现[J].现代电子技术,2008,31(21):146-149.

Software Architecture Design of Automatic Test System for Avionics

Duan Haijun,Zhao Genxue,Chen Fu,Cheng Bo

(Aeronautical Computing Technique Research Institute, Xi’an 710119, China)

To detect and locate fault of Aviation Electronic System, research and design a kind of software architecture of automatic test system. Software architecture includes test software and test database. Related data is stored in the test databases, will be putted into the tested equipment by test software. Test software receives the output of the test device and compares it with the expected results of the test database. Eventually it will get the test results. Test software is composed of four functional modules: manual testing module, automatic test module, system self checking module, test record reading and test result record module. Automatic test and manual test can be free to switch. This system not only can use the automatic test function to simulate the flight environment of the equipment, but also can use the manual test function to analyze the fault, reduce the maintenance cost and shorten the maintenance time.

automatic-test;fault;test

2016-04-06;

2016-04-18。

国家重大专项资助项目(2012ZX01041-002,2012ZX01041-003,2012ZX01041-006);国家航空科学基金资助项目(2013ZC31003,2013ZC31005)。

段海军(1986-),男,陕西富县人,工程师,主要从事计算机软件与理论方向的研究。

1671-4598(2016)09-0167-03

10.16526/j.cnki.11-4762/tp.2016.09.046

TM319

A

猜你喜欢

测试软件自动测试电子设备
江苏泰斯特电子设备制造有限公司
有机硅灌封材料对计控电子设备的保护应用
某型机载敏感电子设备电磁干扰抑制技术研究
网络自适应测试软件运行方法设计
JXG-50S型相敏轨道电路接收器自动测试台
关于某型雷达自动测试系统的几点认识和建议
自动化检测EPU10A板卡系统设计与实现
BIT技术在星载电子设备的应用
基于ATE与BIT组合的NAMP自动测试与故障诊断系统设计
远程开放教育学生自主学习能力评价的研究