计量检测产品嵌入式软件测试工具研究
设备组成
Etest_CPS系统主要包含硬件组件和软件组件。硬件组件则包括PCI机箱、PCI控制器以及多种PCI接口插件。其中包含了测试设计用例管理模块、运行服务代理模块等核心功能块;此外还包含曲线数据自动生成器、CRC插件制作工具及诊断分析功能;最后还有测试数据存储查询功能及应用协议自动化生成工具和模板管理功能。
各模块主要功能
(1)硬件部分
Etest系统的硬件架构采用了标准化的机柜布置方案。主控制单元采用了PCI industrial control computer架构,并结合多种 PCI 接口板卡实现模块化设计。各类型接口模块均采用了基于 PCI 总线的标准接口卡进行连接配置。主要硬件部分的指标如下:
① 机箱
标准尺寸为19英寸的4U desktop case
②控制器
处理器组:Intel GM45 + ICH9M
内存规格:8GB DDR III 1066MHz,支持额外扩展
硬盘组件:500GB支持拆卸更换
③ARINC429模块
提供通道配置:发送与接收通道各有两个
包括100千巴特、50千巴特、48千巴特以及用户可自行设置的波特率
提供两类发送模式:FIFO与调度表
采用时间戳技术进行记录
处理中断事件与外部触发信号
④1553B模块
严格遵循MIL-STD-1553B标准
设备支持双通道功能,并具备BC、RT、BM等多种功能模块
可实现1,000 kbps至4,000 kbps的标准波特率以及用户可定制的波特率
每通道均配备双冗余的A、B通道配置
允许通过软件配置帧间隔和消息间隔的时间值
设备具备时间戳功能,并支持1微秒分辨率的时间记录
提供自测试接口及错误注入测试功能
支持中断处理和外触发事件检测功能
⑤ RS232/422/485串口模块
通讯协议支持配置功能(RS口系列)
⑥ CAN模块
该系统支持主流协议(CAN2.0A/CAN2.0B),具备标准帧和扩展帧处理能力;
通道数设定为4个;
提供完整的双向通信功能(包括CAN发送与接收);
实现精确的时间分辨率(1微秒级);
具备DC 2500V电气隔离保护功能;
支持数据传输格式包括标准数据帧与远程数据帧;
其中CAN控制器的波特率可选范围为5Kbps至1Mbps,并支持灵活配置设置。
⑦ AD模块
64路同相输入与32路反相差分输入;最大采样速率为单通道可达1 MSPS;支持±10V、±40V及±100V的输入范围;ADC分辨率设定为16位;通过手动调节实现量程范围设置;每个通道的FIFO深度为32 KByte;外设触发功能已集成
⑧ DA模块
采用多路独立信号链路实现数据传输
⑨ 光隔离离散量I/O模块
该模块支持64个光隔离离散量输入/输出通道;每个通道均具备光电隔离特性;可支持从-60伏到+60伏的宽幅输入电压范围;最高可承受±60伏的开关电压;具有自恢复断路保护功能
(2)测试设计软件模块
测试设计软件模块对待测系统及其对外接口进行建模,进行协议编辑及分析、创建测试监控、建立硬件规划、创建及管理测试用例,确定测试要准备的接口设备数量。其主要功能包括:
进行测试方案管理,针对测试方案的操作有:新建方案、打开方案、保存方案。
每个测试方案中,可以包含一个到多个测试项目,多个测试项目的存在使得每个测试方案可以完成多个测试项目的设计,便于开展多个配置项到系统的集成测试。
测试项目有新建、重命名、删除和查看属性的操作。
用图形化的方式对被测系统、外围系统及被测系统对外接口进行描述,包括接口数量和接口类型,包括RS422、1553B、CAN、AD、DA、DI、DO、CT、Freq-CT、TCP等类型;能够设定接口参数。
创建接口协议,并使用协议描述语言进行协议描述,包括报文包头、包尾、校验等,描述各个字段类型及编码方式,以及分支、循环等结构。
为了适应各种数据通信的需要,协议字段具有丰富的类型,包括:整形(无符号和有符号,8位/16位/32位/自定义长度)、浮点型、布尔类型、条件语句类型、分支语句类型、计算字段、校验字段、数组字段。
创建测试监控,描述实时数据监控的监控内容和显示形式,并可设定报警条件。
用户可以在测试监控模块添加测试监控并在监控面板上添加数据监控仪器,通过不同的类型监控仪器绑定协议字段或者字段按照某种公式运算的结果,从而在运行时通过监控仪器指针或数值的改变直观地显示出测试通讯时数据的变化。
测试监控工具栏管理所有的测试监控仪表,包括数字表仪器,圆盘仪表,曲线图,枚举类型等。选择合适的监控仪表,将其拖拽到监控面板的合适的位置,即可添加该监控仪表到监控面板上。用鼠标拖拽监控仪表的边缘,即可调整其大小。
打开“属性”标签页,可以修改测试仪表的属性。其中最重要的属性是“协议段”属性,表明了该监控仪表的数据来源。
通过“协议段”属性右侧的展开按钮,可以打开“绑定数据协议”对话框,其中显示当前项目中的仿真模型中的所有的协议和协议段。
测试仪表的数据源,既可以是一个协议字段,也可以是若干个协议字段组成的公式。
在“绑定数据协议”对话框下部的输入框中输入协议字段,或协议字段组成的公式。双击需要的字段名称,可以添加该字段名称到自定义公式的光标所在位置。
创建测试硬件规划,确定测试需要使用的接口板卡设备,以及接口板卡设备对应的资源。
创建测试用例,并提供测试用例的管理方式,包括分组、删除、重命名等。
创建测试用例的内容,包括使用测试脚本描述测试的过程,包括变量定义、条件语句、循环语句、输出语句、数学运算、函数定义等。
提供测试脚本的扩展接口,能够实现向待测件的数据交互和数据自动解析,将比特流解析成具有意义的用户数据。
提供时序控制的方式,能够按照一定的时序进行规定的操作。
提供运行环境设置方式,设置测试运行期间的仿真模型服务器、数据中心服务器、测试执行服务器和客户端的IP地址和端口号。
提供对标准输入输出监控进行配置的功能,确定标准输入输出监控的类别配置。
提供测试脚本执行方式,能够运行用户选择的测试脚本;用户能够选择终止脚本运行。
能够查看输出信息及错误信息。
(3)测试执行服务软件模块
测试执行软件模块为自动化测试执行软件的主要部分,与客户端软件相配合,驱动测试数据,进行自动化测试执行。主要实现以下功能:
提供进程调度服务后台运行程序,在进程调度代理的帮助下,根据测试设计软件的设计,在PCI控制器上启动测试执行、客户端、服务器等进程,并通过进程调度服务协调各个软件的运行逻辑。
提供仿真模型服务器后台运行程序,通过仿真模型服务器解析测试设计所建立的仿真模型,实现测试执行时数据收发的仿真解析服务。
提供数据中心服务器后台运行程序,在测试用例执行过程中,在数据中心服务器中集中统一处理通道中的收发收据,确保数据监控的分布式实现。
提供用例服务器后台运行程序,解析处理测试设计中所编写测试用例的执行过程。
提供标准输入输出监控窗口程序,可以显示仿真模型服务器、数据中心服务器、客户进程以及用例服务器运行过程中的调试信息。
解析测试脚本中的变量定义、条件语句、循环语句、输出语句、数学运算、函数定义等语句,进行相应的操作。
解析测试脚本扩展接口,实现向待测系统进行数据发送/接受和数据解析。
解析测试脚本,按照时序控制要求进行操作。
向客户端软件发送的测试数据注入包;接收客户端软件所发送的测试数据输出包。
按照用户要求即时停止测试用例的执行。
记录并显示测试用例的执行结果。
(4)测试执行客户进程及数据监控模块
测试执行客户进程及数据监控模块运行PCI控制器上。主要支持以下功能:
提供设备驱动能力,并支持1553B、CAN、RS422、RS232、AD/DA/DI/DO等接口板卡的驱动操作。
测试执行客户软件与测试执行软件均运行在PCI控制器内,并采用内存机制进行数据交换共享。
与被测设备通信时采用预先在测试设计软件中配置好的通信参数设置。
提供便捷的硬件板卡扩展接口,并支持快速集成新增硬件组件的能力。
收集并接收自测试执行软件发送的测试数据注入包,并对数据格式进行转换处理后通过通信接口传递至待测设备系统中进行分析评估工作。
收集并接收自被测设备系统发送的测试数据输出包,并将这些数据内容转发给测试执行软件系统进行后续处理应用操作。
登录后进入测试服务软件系统后端管理界面,在界面上可直观展示并选择预设好的全部测试监控界面布局方案,默认情况下会展示全部配置好的多个监控面板供用户选择使用与管理维护工作流程选项设置界面并展开详细配置参数设置操作选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设置界面并展开详细配置参数设置工作流程选项设定好相关参数后即可开始运行指定的任务模块以完成相应的功能服务请求任务模块运行完成后系统会自动切换至等待状态直到下一个任务模块被激活启动状态等待状态下如果没有任何任务模块被激活启动则会进入空闲状态等待下一次任务模块被激活启动状态等待状态下如果没有任何任务模块被激活启动则会进入空闲状态等待下一次任务模块被激活启动状态等待状态下如果没有任何任务模块被激活启动则会进入空闲状态等待下一次任务模块被激活启动状态等待状态下如果没有任何任务模块被激活启动则会进入空闲状态等待下一次任务模块被激活启动状态等待状态下如果没有任何任务模块被激活启动则会进入空闲状态等待下一次任务模块被激活启动状态等待状态下如果没有任何任务模块被激活启动则会进入空闲状态等待下一次任务模块被激活启动状态
(5)设备资源管理软件模块
该软件模块对测试环境的支持包括以下功能:一方面实现了相应的系统支持以管理测试设备和通信通道;另一方面通过接口实现了系统扩展功能。具体实现包括:新增或移除系统设备;调整系统规模;新增或删除相关通信通道;配置通信通道个数及其属性;将相关数据存储至设备资源文件中,并在测试设计软件中调用这些数据。
(6)辅助工具
工具软件提供了嵌入式系统测试所需的软件工具包,并包含以下功能模块:
- 曲线数据分析与管理模块;
该模块集成了曲线数据分析与编辑能力,并支持曲线数据读取与存储功能,在测试执行过程中可配合测试执行软件完成数据生成任务。 - 应用协议调试助手;
该助手基于串口通信(RS232/422/485)提供协议解析功能,并支持串口接口配置、数据收发操作以及自动生成上层应用接口的数据包功能。 - 测试数据分析记录模块;
在测试运行过程中可实时记录相关数据信息,并提供协议选择、数据过滤以及报警条件设置等功能,在测试结束后可查看并分析相关记录内容。 - 应用协议编辑器;
该工具采用表格化界面设计,允许用户根据需求设置协议字段组成、字段类型以及字段默认值等参数配置项。 - 协议模板管理平台;
该平台支持应用协议的模板化存储与管理功能,在实现协议复用的同时提供了模板库的创建与维护操作包括模板导入导出以及版本更新等功能项。 - CRC算法诊断与生成工具;
该工具集成了自定义CRC算法的设计与验证功能,并能通过设计的CRC算法实现最终的协议描述语言中的CRC字段算法插件生成过程。 - 测试报告自动化生成系统;
该系统不仅支持测试报告模板的编辑与管理还具备基于模板自动生成完整报告的功能
