摘要:實現儀器可互換性和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) //指定信號頻率參數
mySigSource.Setup(SENSOR,"AcSignal",control)
//給定信號的角色、類型和參數,并產生信號
IVI信號組件控制一臺或多臺儀器產生客戶需要的信號,完成客戶的測試需求。它對儀器的控制是通過VISA、IVI驅動器、SCPI命令等實現的。程序執行過程中,IVI信號組件需要的服務由IVI共用組件(如IVI Factory、IVI Configuration Store、IVI Event Server)提供。
測試資源信息是一個數據模塊,用來存儲IVI信號組件的測試/激勵能力和配置信息,為用戶選擇儀器、設計測試方案提供參考;同時提供程序訪問功能,實現測試資源的自動分配和信號路徑的切換。它提供的IVI信號組件信息包括:
(1)組件支持的信號種類;
(2)每類信號需要的參數;
(3)每類信號的量程、精確定指標;
(4)IVI信號組件接口和儀器接口的連接關系等。
2.2 IVI-Signal Interface的信號類型標準
為了提高IVI信號組件的重用性和可移植性,組件開發者和使用者都迫切要求使用標準的接口信號信息,如信號類型、參數、物理意義等,因此信號類型的標準化問題亟待解決。IVI基金會沒有嚴格定義接口信號類型標準,這需要由面向儀器控制的用戶或其它組織來完成。在ATLAS測試語言標準中,用SMML定義了信號類型,筆者認為可以沿用這一定義。
2.3 儀器互換問題
更換儀器后,驅動器不再是困擾系統更新的難題,因為測試資源信息明確地描述了IVI信號組件的功能,標準的接口語義聲明也明確地描述了組件的接口實現。設計人員可根據這些描述進行新儀器的IVI信號組件開發,實現同樣的功能。
IVI信號組件提供了訪問綜合性儀器(Synthetic Instrument,即具備兩類或多類儀器功能的儀器或儀器集合)的功能。在滿足測試需求前提下,一個信號組件可以包含硬件儀器的部分或全部功能。這一切為儀器互換提供了廣闊的空間,不但可以實現同類儀器、異類儀器的互換,還可以實現綜合性儀器的互換。
3 基于信號接口的通用ATS軟件設計
由以上分析可知,ATLAS 2K和IVI-Signal Interface有很多相似和互補的功能。比如,在一個測試系統中,ATLAS 2K面向UUT,實現代碼移植和重用,而IVI-Signal Interface面向測試資源,實現了儀器互換;IVI-Signal Interface模型給ATLAS 2K代碼提供了執行機制,而其也可沿用ATLAS 2K用SMML語言對信號類型定義的方法;二者均基于COM技術,提供了標準信號接口等。因此,通過信號接口集成二者,可實現通用ATS軟件設計。
3.1 系統結構設計
基于信號接口的通用ATS軟件結構框架如圖4所示。
儀器信息模塊是一個文件,它記錄系統中所有儀器的測試功能信息,由IVI-Signal Interface模型提供。矩陣開關信息模塊和適與器信息模塊與儀器信息模塊類似,前者記錄了矩陣開關模塊的連接信息;后者記錄了適配器在UUT和矩陣開關之間的轉換信息。
ATLAS 2K TPS根據自己對UUT的測試需求的描述,從Run-Time System請求相應的信號對象。若ATS的測試能力允許,Run-Time System開始查詢從UUT到儀器端口的連接信息,并對其進行驗證。這一切完成后,Run-Time System開始例化IVI-Signal Interface信號組件和ATLAS 2K信號組件,執行測試操作。
IVI-Sinal Interface組件和矩陣開關驅動器通過VISA、IVI-C、SCPI命令等控制底層儀器,在TPS執行期間,Run-Time System應自動完成測試資源的分配和信號路徑的切換。
綜上,基于信號接口的ATS軟件設計可描述為:通過ATLAS 2K語言,將UUT的測試需求標定為對激勵/測量信號的需求,這個虛擬資源需求通過設備驅動器接口內部服務機制的解釋和定位轉換成真資源,再驅動儀器完成測試任務。
3.2 系統實現
圖5給出了基于信號接口開發ATS軟件的全過程。
ATLAS 2K TPS和IVI-Signal Interface組件由COTS產品開發,如VB、VC++等。IVI-Signal Interface組件由系統方案設計者給出,由系統集成者使用。
使用Windows寫字板記錄測試資源信息,如設備信號、適配器信息等,并隨同IVI信號組件一同發布。
IVI-Signal Interace標準和ATLAS 2K模型在功能上是互補的,二者的結合給通用ATS軟件設計提供了解決方案,工程應用前景非常廣闊。另外,二者均基于COM技術,不依賴于特定的開發工具,方便了系統的實現,節省了費用。同時,這一設計思想還可以有效地結合當前正在發展著的VXI、PXI、IVI-COM、VISA-COM等技術,為最終實現儀器互換和軟件移植打下堅實的基礎。當然,由于ATS設計的復雜性,有關細節仍需進一步論證,如資源自動分配的優化問題、信號路徑切換的選擇問題等。
相關推薦
評論
查看更多