基于STD标准的ATS信号组件研究与设计

2017-08-30 00:01朱望纯邓志宏蒋汉林
计算机测量与控制 2017年7期
关键词:测试程序自动测试组件

朱望纯,邓志宏,蒋汉林

(1.桂林电子科技大学 电子工程与自动化学院,广西 桂林 541004; 2.陆军装备部武汉军代局驻八〇一厂军代室,广西 柳州 545012)

基于STD标准的ATS信号组件研究与设计

朱望纯1,邓志宏1,蒋汉林2

(1.桂林电子科技大学 电子工程与自动化学院,广西 桂林 541004; 2.陆军装备部武汉军代局驻八〇一厂军代室,广西 柳州 545012)

信号与测试定义(STD)标准从被测对象信号的测试需求出发,以信号的方式描述测试需求,可以为自动测试系统提供更好的程序可移植性;STD标准规范了信号的定义与描述模型,但没有提供具体的实现方法;为了从技术层面上解决测试信号参数传递与测试需求存储问题,分析了STD标准,并根据该标准对信号进行设计,提出了基于STD标准的自动测试系统信号组件设计方案,并以信号激励产生的过程介绍信号组件的交互;以交流AC_SIGNAL信号组件的构建为例,对信号组件的设计方案进行验证;实验结果证明该设计方案切实可行,可为自动测试系统的研究提供参考。

信号与测试定义标准;自动测试系统;信号组件

0 引言

随着武器装备的不断更新换代,大量的新兴技术被引入武器装备,大大提高了武器的作战效能,同时也使得武器装备的测试维修工作难度加大。分析我军武器装备的保障现状,军用装备ATS平台仍然是以面向仪器开发为主,这种方式的测试程序需要根据仪器编写,当更换仪器时,测试程序需要重新编写,存在可移植性差、通用化水平低等问题[1]。

鉴于目前军用装备ATS平台存上述问题,提出了一种基于STD标准的ATS软件平台。该软件平台以信号组件为核心,采用组件技术的模块化开发思想,通过各个信号组件之间的交互,完成从测试需求到信号需求的映射,并将信号参数信息传递给仪器资源管理器,仪器资源管理器将信号参数信息与仪器建模信息进行匹配,从而调用IVI仪器类驱动定位具体仪器完成测试任务。信号是测试的目标,而信号组件从被测对象信号测试需求出发,体现了测试的实质。基于信号组件开发的测试程序不涉及具体仪器,满足测试通用化的要求,符合武器装备保障测试的发展趋势[2]。本文在理论上和工程上对国内自动测试系统的发展具有一定的意义。

1 基于信号组件的自动测试系统软件平台

自动测试系统软件平台是实现自动测试系统的核心,包括用户程序、资源管理器、信号组件集合以及IVI仪器驱动机制等4个部分[3]。其中信号组件采用COM组件技术实现,以标准化接口的形式被测试程序调用,是实现测试程序可移植的关键。自动测试系统软件平台架构如图1所示。

图1 面向信号自动测试系统结构图

用户程序:通过录入测试需求信息,从而生成测试描述XML文件存储测试任务;测试程序通过解析测试描述XML文本测试信息后,将获取的信号需求信息传递给信号组件,信号组件获取信号需求信息后与仪器资源管理器进行信息交互。

仪器资源管理器:作为连接用户程序与IVI仪器类驱动的桥梁,通过检索仪器信号能力XML文件后,根据信号需求信息匹配合适的仪器驱动,完成测试信号到具体测试仪器的映射[4]。

信号组件集合:一方面通过基类信号组件完成具体信号组件对象实例的创建、初始化等操作,存储客户程序的信号需求信息,结合IVI仪器类驱动完成信号需求到测试仪器的映射;另一方面记录测试结果,供应用程序调用[5]。

IVI仪器驱动机制:测试的具体实现者,通过对底层仪器驱动函数进行封装,对外提供IVI仪器类驱动接口,与信号组件交互共同完成具体仪器测试功能[6]。

2 信号组件结构

STD标准不仅定义了基本信号的静态模型以及信号组件的动态交互模型,还对这些基本信号根据功能分成源、调理器、事件、测试、控制器、数字信号与连接器等七类信号。信号组件开发是基于信号的静态模型以及信号组件的动态模型完成的。下面将详细说明信号的静态模型以及信号组件动态交互模型。

2.1 信号的静态模型

信号的静态模型描述了基本信号的共有特征,是信号组件的设计原型[7]。基本信号静态模型反映了信号的名称、类型、属性、多个控制接口等特征,是作为信号组件对象实例化和动态描述模型正常运行的基础。图2为STD信号静态模型。

图2 STD信号静态模型

从静态模型可以看出信号受到Conn、In、Sync、Gate等接口控制。其中Conn用于多个BSC信号连接,是合成TSF复杂信号的关键。In表示信号的输入接口。Gate表示信号的门限信号。Sync表示信号的同步触发信号。Out表示为信号的输出接口。

模型中的属性为信号的可配置属性,例如交流信号中的幅度、频率与偏置电压。模型中得值用于保存测量信号的结果。

STD标准不仅对基本信号静态模型有明确的定义,而且还提供了由基本信号组件合成复杂信号组件的方法[8]。用户就可以根据实际测试需求构建所需要的复杂信号并开发复杂信号组件,完成测试任务。

2.2 基本信号组件的动态模型

在信号静态模型的基础上,STD标准定义了BSC基本信号组件与TSF信号组件的动态交互过程和通过使用编程语言编写控制接口组件的方法。动态模型描述了信号组件对象间的交互以及信号状态转换等内容。

STD标准中定义了基本信号组件由资源管理器IResourceManager、信号功能组件ISignalFunction、物理参数IPhysical、信号状态组件ISignal、数字脉冲串PulseDefn构成。其中资源管理器IResourceManager类是一个抽象的信号对象工厂类,用于创建信号功能组件对象以及连接器组件对象;信号功能组件ISignalFunction,用于设置信号对象的具体信号特征信息;物理参数IPhysical定义了一个信号物理量的集合;信号状态组件ISignal描述了信号组件状态的转换[9]。

STD标准中还使用了接口描述语言IDL描述信号组件,但是STD标准只给出了信号接口方法和属性的定义,需要开发者在研究这些定义的基础上,在工程应用中实现。

2.2.1 组件对象间的交互过程

信号组件对象交互过程描述了信号对象的创建、初始化等按照时间顺序的对象调用和配置过程。以激励信号产生过程为例,在测试过程中IResourceManager接口通过Require方法创建一个信号对象实例,从而获得ISignalFunction接口并根据信号需求信息设置信号实例对象;接着ISignalFunction接口与IPhysical接口进行交互,设置信号特征信息;然后IResourceManager接口通过Require方法创建一个信号连接器对象实例,设置信号对应到被测对象UUT的连接引脚,获得这个连接器的ISignalFunction接口。连接器ISignalFunction接口与ISignal接口交互,调用Run、Stop、Change方法与运行时引擎进行交互[10]。激励信号产生过程信号组件对象交互过程如图3所示。

图3 信号组件交互过程图

2.2.2 信号状态与状态转换操作

信号状态与状态转换操作分别是ISignal接口提供的属性和方法,一方面用于将测试需求配置信息传递给信号对象,实现测试需求信号到具体仪器的映射,从而控制对应测试仪器完成测试任务;另一方面指明输出信号处于信号对象对应的状态。信号具有基本的3个状态,需要调用相关的方法请求信号状态改变。

3个状态是指Stopped、Paused、Running。其中Stopped状态表示信号处于停止态,是所有信号的初态;Paused状态表示信号处于就绪态,等待外部的触发事件即可进入执行状态。Running 状态表示信号处于执行态,已经产生信号.

3种方法是指Stop、Change、Run。其中Stop方法保持停止状态不变或使信号从其他状态进入停止状态,并释放信号占用的仪器资源;Change方法重置信号的设置,用于改变信号的输出;Run方法使信号进入就绪态,等到外部触发后进入执行态,获取仪器资源从而完成测试任务。

可以通过上述原理绘制信号状态转换图,如图4所示。

图4 信号状态转换图

STD标准定义该信号状态控制机制有效减少测试执行的时间。由于以前进行ATS操作时,每次配置一台测试仪器发送信号是都需要频繁调用仪器的初始化函数,然后调用相关配置比如创建仪器句柄、仪器通道、配置设备、运行仪器等;而改变仪器输出过程与关闭仪器过程也需要调用一系列的相关仪器驱动函数。这3个过程,仪器驱动函数的重叠度大,浪费测试执行时间,所以STD标准提出了这种状态转换机制,有效缩短测试执行的时间,提高测试执行效率。

3 信号组件详细设计过程

在面向信号的自动测试系统信号组件模型中,IResourceManager资源管理器、ISignalFunction信号功能组件、IPhysical物理参数、ISignal信号状态组件和Engine运行时服务是测试的关键,下面就以IResourceManager资源管理器组件开发为例进行说明。

采用微软ATL技术对组件进行开发[11]。IResourceManager资源管理器组件是唯一能够创建信号接口实例的组件,仅具有Require方法,创建信号功能组件ISignalFunction。当信号组件升级或改变时,只需要修改资源管理器接口实现,测试程序不需要改动即可使用,提高了测试程序的可移植性。STD标准中资源管理器组件接口的IDL描述如下:

interface IResourceManager : IDispatch

{ [id(1), helpstring("method Require obtains a SignalFunction Interface")]

HRESULT Require([in]BSTRSignalDescripto,

[in,defaultvalue(0)]VARIANTUniqueId,

[out, retval] SignalFunction *pVal); };

Require方法的程序流程图:

图5 Require方法程序流程图

所有的具体信号组件都是由资源管理器组件的Require方法产生的,Require方法通过将转换的信号描述符与信号标识UUID进行比较,声明对应的信号接口指针,该指针实例化信号接口对象并返回接口指针从而完成信号组件对象实例化。其余信号组件的接口实现和上述过程类似,不再赘述。

4 信号组件设计验证

COM组件是一种不需要编译,可直接被测试程序调用的二进制可执行程序。测试人员在编写信号组件测试程序的时候,可以选择自己熟悉的编程语言进行开发,提高开发的效率。开发好的信号组件可以被多种编程语言开发的测试程序调用,例如从C++开发的测试程序移植到C#开发的测试程序,信号组件不需要做任何修改,提高了测试程序的可移植性。

图6给出了一个实际工程应用的信号组件模型,在某一被测对象UUT测试节点P1-1,P1-2上施加一个AC_Signal激励信号UML序列图。

图6 AC_Signal信号UML序列图

测试流程如图7所示。

通过资源管理器组件的Require方法实例化IPysical组件对象并保存AC_Signal信号的参数信息,实例化IAC_Signal组件对象获取IPhysical组件对象保存的信号参数信息,实例化ISignal对象并将对象赋给IAC_Signal对象的Out属性。使用Out属性的ISignal对象获取ITwoWire对象中被测对象

图7 测试程序流程图

引脚信息。并调用ISignal接口对象的Run方法匹配相应的仪器驱动从而控制仪器进行测试。

5 实验结果

经过实际测试,AC_SIGNAL信号组件对象实例化后可以有效保存信号参数并将信号参数传递给IVI仪器驱动机制。IVI仪器驱动机制根据AC_SIGNAL信号组件对象解析信号类型、信号参数等信息,并根据解析的信号信息调用相应的仪器驱动函数,从而控制仪器进行相应操作。根据实验结果得出,信号组件能有效保存信号参数信息并且通过IVI仪器驱动机制解析信号信息,从而控制相应仪器驱动,证明该信号组件设计模型可行,为解决信号参数传递与测试需求存储提供了技术支持。

6 结束语

本文在STD标准的基础上,研究信号组件静态模型与动态模型,给出信号组件的设计方案。以某激励信号为例,调用所设计的信号组件进行测试验证,达到了预期测试效果。该模型将COM组件技术有效地应用在自动测试系统软件平台中,以标准化接口的形式为测试程序提供服务。当信号组件升级时,只需要修改信号组件的接口实现,测试程序不需要做任何修改,提高测试程序可移植性。

[1] 于劲松,李行善.美国军用自动测试系统的发展趋势[J].测控技术,2001,12:1-3.

[2] 苏孝钐,田 凌.自动测试系统中面向信号的仪器UUT建模方法[J].仪表技术与传感器,2012,10:34-36.

[3] 戴豪民,牛双诚,张光轶,等.面向信号自动测试系统信号组件的设计[J].现代电子技术,2009(5):60-62.

[4] 马登武,马 羚,吕晓峰.面向信号ATS软件平台的信号组件研究与设计[J].计算机测量与控制,2012(4):1126-1128.

[5] 齐少华.TPS流程式开发环境与仪器管理模块的研究与实现[D].成都:电子科技大学,2013.

[6] 肖 杰.面向信号的自动测试系统中的仪器建模及控制功能实现[D].成都:电子科技大学,2012.

[7] 张 祯.面向信号测试系统中信号组件及运行时技术的研究与实现[D].成都:电子科技大学,2014.

[8] 张俊峰,赵锦成,刘金宁.基于XML的自动测试系统信号描述方法研究[J].测控技术,2011(1):87-89.

[9] 钱 锋,孟 晨,朱 俊. 基于STD标准的信号构建方法研究[J]. 仪表技术,2008(9):36-38.

[10] 钟建林,何 友,齐玉东.基于IEEE1641标准的自动测试系统体系结构[J].计算机测量与控制,2009(5):854-856.

[11] 罗 锦,苏振中,孟 晨.自动测试系统软件设计标准化研究[J].仪表技术,2009(8):71-73.

Research and Design of Signal Component for Signal-Oriented Automatic Test System

Zhu Wangchun1,Deng Zhihong1,Jiang Hanlin2

(1.School of Electronic Engineering and Automation, Guilin University of Electronic Technology, Guilin 541004, China;2.Army Equipment Department Office Stationed in Factory No.801, Liuzhou 545012, China)

The Signal and Test Definition (STD) standard takes the test requirements of the measured object signal as a starting point and describe the test requirements in a signal manner, which can provide better program portability for the automatic test system. STD standard defines the signal definition and description model, but did not provide a specific method of implementation. In order to solve the storage problem of test signal parameter and test requirement from the technical level, this article analyzes STD standard, designs the signals according to the standard, give out the signal component design scheme of the automatic test system based on STD standard and describes the interaction of signal components with the process of signal excitation. The design of the AC_SIGNAL signal component is taken as an example to validate the design of the signal component. Experimental results show that the design is feasible and can be a reference for the automatic test system.

STD standard;automatic test System; signal component

2016-12-30;

2017-02-27。

朱望纯(1976-),男,副教授,研究员,硕士生导师,主要从事自动测试总线VXI、PXI,自动测试系统及软件,虚拟仪器及可互换式虚拟仪器(IVI)方向的研究。

1671-4598(2017)07-0025-03

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

TP302

A

猜你喜欢
测试程序自动测试组件
无人机智能巡检在光伏电站组件诊断中的应用
新型碎边剪刀盘组件
U盾外壳组件注塑模具设计
JXG-50S型相敏轨道电路接收器自动测试台
基于Castle型机械手的三温量产测试平台实现
关于某型雷达自动测试系统的几点认识和建议
桥梁组件搭配分析
手机APP交互界面人因适合性测试程序的设计与实现
电气自动化控制设备可靠性测试探讨
基于ATE与BIT组合的NAMP自动测试与故障诊断系统设计