基于信号接口的自动测试系统软件的设计与实现

时间:2012-02-08来源:网络

摘要:实现仪器可互换性和TPS重用性、可移植性是通用自动测试系统(ATS)的发展方向。论述了ATLAS 2K语言和IVI-Signal Interface标准的特点、结构和技术实现。给出了一种基于信号接口的自动测试系统软件的设计方法。这一方案融合了当前正在发展的各种测试系统软件的设计技术,为通用ATS设计提供了技术实现途径。

自动测试系统(ATS,Automatic Test System)是装备形成战斗力的重要保证,仪器的可互换性和测试程序集(TPS,Test Program Set)的重用性、可移植性是通用ATS的重要指标。当前,ATS软件的开发方式有“面向仪器”和“面向信号”两种,面向仪器的TPS开发基于仪器,很难从本质上反映被测设备测试需求,加上仪器种类繁多,功能各异,因此很难实现互换,软件通和性差;面向信号的开发方式基于被测对象(UUT,Unit Under Test)的测试需求和测试资源的测试/激励能力,解决了需求与供应之间的矛盾,通用性强。应用在ATS中的软件技术经历了过程编程语言(如C)、Windows DLL、面向对象编程(OO)、组件对象模型(COM)的漫长发展过程。COM采用面向对象的软件设计思想,以标准接口提供功能调用,实现了程序的模块化、通用性设计。近期出现的ATLAS 2K(Abbreviated Test Language for All System 2000版本)语言和IVI-Signal Interface标准均基于COM技术,二者结合,给通用ATS软件设计提供了解决方案。

1 ATLAS 2K

1962年,为了描述UUT的测试需求,美国的ARINC(Aeronautical Radio Incorporation)公司开始发展ATLAS(Abbreviated Test Language for Avionics System)语言,并于1968年定下ARINC Std 416-1标准。ATLAS独立于测试设备,提供了一种在UUT工程师、TPS开发人员和TPS最终用户之间明确传送信息的方式。ATLAS用标准信号和基于事件的表达方式描述UUT的测试需求,通过编译器,这些描述代码可在指定的ATS上执行。

进入20世纪90年代以来,随着技术更新的加快和测试需求的增长,ATLAS暴露出了很多问题,比如:更新速度慢;开发工具昂贵;ATLAS体系庞大、模糊等。这一切限制了ATLAS的进一步发展。ATLAS 2K是由Test Description Sub-Committee of SCC 20在ATLAS的基础上制订的新标准,它采用SMML(Signal and Method Modeling Language)语言和面向对象技术,给ATLAS语言减了肥,优化了程序结构,增强了对UUT测试需求描述的准确性;并且可在任何支持COM技术的平台上使用图形工具进行编程,简化了程序设计。

1.1 ATLAS 2K模型

ATLAS 2K模型建立在层状信号组件模型之上,由信号基类、基本信号组件和复合信号组件三层组成。

图1给出了用SMML语言构建的类名为SignalFunction的信号基类模型。SMML源于Haskell Function Language,提供了用于描述信号属性和方法的机制,通过制定语法规则和大量预定义动作来实现对信号类的定义。通常情况下,信号基类包括信号输入端(In)、事件输入端(Sync)、信号输出端(Out)、控制参数输入端(属性)、被测信号输出端(Value)等功能接口。当然,不同类型的信号也可以包括不同的接口,如激励信号类可以没有In接口、Value只对传器信号有效等。

信号(Signal)和事件(Event)是标准化的信号类接口,组成元素包括属性和方法。属性标志着信号对象的当前状态,如运行、暂停、停止等;方法则实现在状态之间切换。

信号基类模型提供了消息(连续的为信号,离散的为事件)传送机制,用来改变信号对象的状态和行为。信号对象可以通过In/Sync接口接收其它对象送来的消息,也可以把消息通过Out接口传递给其它对象。例如,一个Ready事件可把信号对象由停止(Stop)状态变为运行(Run)状态;一个Active事件可以让传感器信号对象执行数据采集操作等。

信号类经例化后,可以仿真某些角色信号(如激励信号、测试信号、事件调节器信号、信号调节器信息等)、UUT节点等。

ATLAS 2K模型的基本信号组件层提供了可重用、经格式化描述的基本信号(底层信号),它们是基于COM技术的对信号类继承、封装并进一步标准化的产物。每个基本信号组合件都存在一个静态SMML描述和一个抽象的运行期控制模型,前者定义信号特片,后者在某一特定ATS中定义信号的行为。通过这些基本信号组件可以定义所有较高层的信号。

ATLAS 2K模型的复合信号组件库与ATLAS的EXTEND功能类似,通过定义基本信号组件产生的复合信号和使用这些信号的规则,实现了对信号的扩展。图2给出了由基本信号组件1和2实现复合信号n的示意图。复合信号组件可以仿真复杂信号,如射频(RF)信号、数据总线信号等。

1.2 ATLAS 2K的工程应用

在支持COM组件开发的编程平台(如VC++、VB等和相应开发工具的支持下,ATLAS 2K可应用在“面向信号”的ATS设计中。具体应用如下:装配信号组件实现对UUT的测试需求描述,生成ATLAS 2K TPS;通过编译器编译后,转变成能在ATS上执行的代码;在充分考虑自身时序要求和仪器功能限制的前提下,实现与特定ATS的集成。

下面的VB代码给出了应用信号组件在某一测试节点PL-1上建立和撤销一个振幅为0.5V、频率为1000Hz的信号的全过程。

Dim mySig as Source

Set mySig=A2K.Require("SinusoidalVoltage") //建立信号

mySig.Amp.Units=V

mySig.Amp=0.5

mySig.Freq="1000Hz"

Set cnx=A2K.Require("OneWire") //建立节点

Cnx="PL-1"

Set cnx.in=mySig.out //连接节点

Set cnx=Nothing //节点初始化

mySig.out.Run //产生信号

mySig.out.Stop //撤销信号

mySig.in=Nothing

mySig=Nothing

ATLAS 2K作为测试标准信号,实现了代码重用和移植。对于新ATS,只要结合新测试资源信息,对ATLAS 2K代码重新编译就可在新系统中运行。

2 IVI-Signal Interface标准

IVI-Signal Interface标准是IVI基金会在IVI-MSS模型的基础上进一步发展起来的,它对IVI-MSS的RCM进一步封装,以信号接口的形式对外提供测试服务。

2.1 IVI-Signal Interface模型

IVI-Signal Interface模型的体系结构如图3所示。

IVI信号组件是带有标准信号接口的IVI-MSS角色组件,通过这些接口可用一系列方法执行信号操作,如初始化、建立、连结、更改等。它允许客户应用程序控制仪器设备上的物理信号,如初始化、切换等操作。下面的VB代码给出了在地址为1的某GPIB仪器上产生振幅为0.5V、频率为1000Hz的正弦信号的全过程。

Dim mySigSource as IviSignalSource

MySigSource.Init("GPIB:1:INSTR") //初始化

Dim control as ParamValSet

control.Add("Amp",0.5) //指定信号电流参数

control.Add("Freq",1.0E6,2.0) //指定信号频率参数

1 2

关键词: 信号接口 自动测试 系统软件 设计

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版