基于信號接口的自動(dòng)測試系統軟件的設計與實(shí)現
摘要:實(shí)現儀器可互換性和TPS重用性、可移植性是通用自動(dòng)測試系統(ATS)的發(fā)展方向。論述了ATLAS 2K語(yǔ)言和IVI-Signal Interface標準的特點(diǎn)、結構和技術(shù)實(shí)現。給出了一種基于信號接口的自動(dòng)測試系統軟件的設計方法。這一方案融合了當前正在發(fā)展的各種測試系統軟件的設計技術(shù),為通用ATS設計提供了技術(shù)實(shí)現途徑。
自動(dòng)測試系統(ATS,Automatic Test System)是裝備形成戰斗力的重要保證,儀器的可互換性和測試程序集(TPS,Test Program Set)的重用性、可移植性是通用ATS的重要指標。當前,ATS軟件的開(kāi)發(fā)方式有“面向儀器”和“面向信號”兩種,面向儀器的TPS開(kāi)發(fā)基于儀器,很難從本質(zhì)上反映被測設備測試需求,加上儀器種類(lèi)繁多,功能各異,因此很難實(shí)現互換,軟件通和性差;面向信號的開(kāi)發(fā)方式基于被測對象(UUT,Unit Under Test)的測試需求和測試資源的測試/激勵能力,解決了需求與供應之間的矛盾,通用性強。應用在A(yíng)TS中的軟件技術(shù)經(jīng)歷了過(guò)程編程語(yǔ)言(如C)、Windows DLL、面向對象編程(OO)、組件對象模型(COM)的漫長(cháng)發(fā)展過(guò)程。COM采用面向對象的軟件設計思想,以標準接口提供功能調用,實(shí)現了程序的模塊化、通用性設計。近期出現的ATLAS 2K(Abbreviated Test Language for All System 2000版本)語(yǔ)言和IVI-Signal Interface標準均基于COM技術(shù),二者結合,給通用ATS軟件設計提供了解決方案。
1 ATLAS 2K
1962年,為了描述UUT的測試需求,美國的ARINC(Aeronautical Radio Incorporation)公司開(kāi)始發(fā)展ATLAS(Abbreviated Test Language for Avionics System)語(yǔ)言,并于1968年定下ARINC Std 416-1標準。ATLAS獨立于測試設備,提供了一種在UUT工程師、TPS開(kāi)發(fā)人員和TPS最終用戶(hù)之間明確傳送信息的方式。ATLAS用標準信號和基于事件的表達方式描述UUT的測試需求,通過(guò)編譯器,這些描述代碼可在指定的ATS上執行。
進(jìn)入20世紀90年代以來(lái),隨著(zhù)技術(shù)更新的加快和測試需求的增長(cháng),ATLAS暴露出了很多問(wèn)題,比如:更新速度慢;開(kāi)發(fā)工具昂貴;ATLAS體系龐大、模糊等。這一切限制了ATLAS的進(jìn)一步發(fā)展。ATLAS 2K是由Test Description Sub-Committee of SCC 20在A(yíng)TLAS的基礎上制訂的新標準,它采用SMML(Signal and Method Modeling Language)語(yǔ)言和面向對象技術(shù),給ATLAS語(yǔ)言減了肥,優(yōu)化了程序結構,增強了對UUT測試需求描述的準確性;并且可在任何支持COM技術(shù)的平臺上使用圖形工具進(jìn)行編程,簡(jiǎn)化了程序設計。
1.1 ATLAS 2K模型
ATLAS 2K模型建立在層狀信號組件模型之上,由信號基類(lèi)、基本信號組件和復合信號組件三層組成。
圖1給出了用SMML語(yǔ)言構建的類(lèi)名為SignalFunction的信號基類(lèi)模型。SMML源于Haskell Function Language,提供了用于描述信號屬性和方法的機制,通過(guò)制定語(yǔ)法規則和大量預定義動(dòng)作來(lái)實(shí)現對信號類(lèi)的定義。通常情況下,信號基類(lèi)包括信號輸入端(In)、事件輸入端(Sync)、信號輸出端(Out)、控制參數輸入端(屬性)、被測信號輸出端(Value)等功能接口。當然,不同類(lèi)型的信號也可以包括不同的接口,如激勵信號類(lèi)可以沒(méi)有In接口、Value只對傳器信號有效等。
信號(Signal)和事件(Event)是標準化的信號類(lèi)接口,組成元素包括屬性和方法。屬性標志著(zhù)信號對象的當前狀態(tài),如運行、暫停、停止等;方法則實(shí)現在狀態(tài)之間切換。
信號基類(lèi)模型提供了消息(連續的為信號,離散的為事件)傳送機制,用來(lái)改變信號對象的狀態(tài)和行為。信號對象可以通過(guò)In/Sync接口接收其它對象送來(lái)的消息,也可以把消息通過(guò)Out接口傳遞給其它對象。例如,一個(gè)Ready事件可把信號對象由停止(Stop)狀態(tài)變?yōu)檫\行(Run)狀態(tài);一個(gè)Active事件可以讓傳感器信號對象執行數據采集操作等。
信號類(lèi)經(jīng)例化后,可以仿真某些角色信號(如激勵信號、測試信號、事件調節器信號、信號調節器信息等)、UUT節點(diǎn)等。
ATLAS 2K模型的基本信號組件層提供了可重用、經(jīng)格式化描述的基本信號(底層信號),它們是基于COM技術(shù)的對信號類(lèi)繼承、封裝并進(jìn)一步標準化的產(chǎn)物。每個(gè)基本信號組合件都存在一個(gè)靜態(tài)SMML描述和一個(gè)抽象的運行期控制模型,前者定義信號特片,后者在某一特定ATS中定義信號的行為。通過(guò)這些基本信號組件可以定義所有較高層的信號。
ATLAS 2K模型的復合信號組件庫與ATLAS的EXTEND功能類(lèi)似,通過(guò)定義基本信號組件產(chǎn)生的復合信號和使用這些信號的規則,實(shí)現了對信號的擴展。圖2給出了由基本信號組件1和2實(shí)現復合信號n的示意圖。復合信號組件可以仿真復雜信號,如射頻(RF)信號、數據總線(xiàn)信號等。
1.2 ATLAS 2K的工程應用
在支持COM組件開(kāi)發(fā)的編程平臺(如VC++、VB等和相應開(kāi)發(fā)工具的支持下,ATLAS 2K可應用在“面向信號”的ATS設計中。具體應用如下:裝配信號組件實(shí)現對UUT的測試需求描述,生成ATLAS 2K TPS;通過(guò)編譯器編譯后,轉變成能在A(yíng)TS上執行的代碼;在充分考慮自身時(shí)序要求和儀器功能限制的前提下,實(shí)現與特定ATS的集成。
下面的VB代碼給出了應用信號組件在某一測試節點(diǎn)PL-1上建立和撤銷(xiāo)一個(gè)振幅為0.5V、頻率為1000Hz的信號的全過(guò)程。
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") //建立節點(diǎn)
Cnx="PL-1"
Set cnx.in=mySig.out //連接節點(diǎn)
Set cnx=Nothing //節點(diǎn)初始化
mySig.out.Run //產(chǎn)生信號
mySig.out.Stop //撤銷(xiāo)信號
mySig.in=Nothing
mySig=Nothing
ATLAS 2K作為測試標準信號,實(shí)現了代碼重用和移植。對于新ATS,只要結合新測試資源信息,對ATLAS 2K代碼重新編譯就可在新系統中運行。
2 IVI-Signal Interface標準
IVI-Signal Interface標準是IVI基金會(huì )在IVI-MSS模型的基礎上進(jìn)一步發(fā)展起來(lái)的,它對IVI-MSS的RCM進(jìn)一步封裝,以信號接口的形式對外提供測試服務(wù)。
2.1 IVI-Signal Interface模型
IVI-Signal Interface模型的體系結構如圖3所示。
IVI信號組件是帶有標準信號接口的IVI-MSS角色組件,通過(guò)這些接口可用一系列方法執行信號操作,如初始化、建立、連結、更改等。它允許客戶(hù)應用程序控制儀器設備上的物理信號,如初始化、切換等操作。下面的VB代碼給出了在地址為1的某GPIB儀器上產(chǎn)生振幅為0.5V、頻率為1000Hz的正弦信號的全過(guò)程。
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) //指定信號頻率參數
評論