《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 業(yè)界動態(tài) > 基于信號接口的自動測試系統(tǒng)軟件的設(shè)計(jì)與實(shí)現(xiàn)

基于信號接口的自動測試系統(tǒng)軟件的設(shè)計(jì)與實(shí)現(xiàn)

2008-08-11
作者:劉金寧, 孟 晨, 楊鎖昌, 陳

  摘? 要: 實(shí)現(xiàn)儀器可互換性" title="互換性">互換性和TPS重用性、可移植性" title="可移植性">可移植性是通用自動測試系統(tǒng)(ATS)的發(fā)展方向。論述了ATLAS 2K語言和IVI-Signal Interface標(biāo)準(zhǔn)的特點(diǎn)、結(jié)構(gòu)和技術(shù)實(shí)現(xiàn)。給出了一種基于信號接口的自動測試系統(tǒng)軟件的設(shè)計(jì)方法。這一方案融合了當(dāng)前正在發(fā)展的各種測試系統(tǒng)軟件的設(shè)計(jì)技術(shù),為通用ATS設(shè)計(jì)提供了技術(shù)實(shí)現(xiàn)途徑。

  關(guān)鍵詞: 信號接口? ATLAS 2K語言? IVI-Signal Interface? 可移植性 ?可互換性

?

  自動測試系統(tǒng)(ATS,Automatic Test System)是裝備形成戰(zhàn)斗力的重要保證,儀器的可互換性和測試程序集(TPS,Test Program Set)的重用性、可移植性是通用ATS的重要指標(biāo)。當(dāng)前,ATS軟件的開發(fā)方式有“面向儀器”和“面向信號”兩種,面向儀器的TPS開發(fā)基于儀器,很難從本質(zhì)上反映被測設(shè)備的測試需求,加上儀器種類繁多,功能各異,因此很難實(shí)現(xiàn)互換,軟件通用性差;面向信號的開發(fā)方式基于被測對象[UUT,Unit Under Test]的測試需求和測試資源的測試/激勵(lì)能力,解決了需求與供應(yīng)之間的矛盾,通用性強(qiáng)。應(yīng)用在ATS中的軟件技術(shù)經(jīng)歷了過程編程語言(如C)、Windows DLL、面向?qū)ο缶幊?OO)、組件對象模型(COM)的漫長發(fā)展過程。COM采用面向?qū)ο蟮?a class="cblue" href="http://ihrv.cn/search/?q=軟件設(shè)計(jì)" title="軟件設(shè)計(jì)">軟件設(shè)計(jì)思想,以標(biāo)準(zhǔn)接口提供功能調(diào)用,實(shí)現(xiàn)了程序的模塊化、通用性設(shè)計(jì)。近期出現(xiàn)的ATLAS 2K(Abbreviated Test Language for All System 2000版本)語言和IVI-Signal Interface標(biāo)準(zhǔn)均基于COM技術(shù),二者結(jié)合,給通用ATS軟件設(shè)計(jì)提供了解決方案。

1 ATLAS 2K

  1962年,為了描述UUT的測試需求,美國的ARINC [Aeronautical Radio Incorporation]公司開始發(fā)展ATLAS(Abbreviated Test Language for Avionics System)語言,并于1968年定下ARINC Std 416-1標(biāo)準(zhǔn)。ATLAS獨(dú)立于測試設(shè)備,提供了一種在UUT工程師、TPS開發(fā)人員和TPS最終用戶之間明確傳遞信息的方式。ATLAS用標(biāo)準(zhǔn)信號和基于事件的表達(dá)方式描述UUT的測試需求,通過編譯器,這些描述代碼可在指定的ATS上執(zhí)行。有關(guān)ATLAS的編程信息見參考文獻(xiàn)[3]。

  進(jìn)入20世紀(jì)90年代以來,隨著技術(shù)更新的加快和測試需求的增長,ATLAS暴露出了很多問題,比如:更新速度慢;開發(fā)工具" title="開發(fā)工具">開發(fā)工具昂貴;ATLAS體系龐大、模糊等。這一切限制了ATLAS的進(jìn)一步發(fā)展。ATLAS 2K是由Test Description Sub-Committee of SCC 20在ATLAS的基礎(chǔ)上制訂的新標(biāo)準(zhǔn),它采用SMML(Signal and Method Modeling Language)語言和面向?qū)ο蠹夹g(shù),給ATLAS語言減了肥,優(yōu)化了程序結(jié)構(gòu),增強(qiáng)了對UUT測試需求描述的準(zhǔn)確性;并且可在任何支持COM技術(shù)的平臺上使用圖形工具進(jìn)行編程,簡化了程序設(shè)計(jì)。

1.1 ATLAS 2K模型

  ATLAS 2K模型建立在層狀信號組件" title="信號組件">信號組件模型之上,由信號基類、基本信號組件和復(fù)合信號組件三層組成。

  圖1給出了用SMML語言構(gòu)建的類名為SignalFunction的信號基類模型。SMML源于Haskell Function Language,提供了用于描述信號屬性和方法的機(jī)制,通過制定語法規(guī)則和大量預(yù)定義動作來實(shí)現(xiàn)對信號類的定義。通常情況下,信號基類包括信號輸入端(In)、事件輸入端(Sync)、信號輸出端(Out)、控制參數(shù)輸入端(屬性)、被測信號輸出端(Value)等功能接口。當(dāng)然,不同類型的信號也可以包括不同的接口,如激勵(lì)信號類可以沒有In接口、Value只對傳感器信號有效等。

?

  信號(Signal)和事件(Event)是標(biāo)準(zhǔn)化的信號類接口,組成元素包括屬性和方法。屬性標(biāo)志著信號對象的當(dāng)前狀態(tài),如運(yùn)行、暫停、停止等;方法則實(shí)現(xiàn)在狀態(tài)之間切換。

  信號基類模型提供了消息(連續(xù)的為信號,離散的為事件)傳遞機(jī)制,用來改變信號對象的狀態(tài)和行為。信號對象可以通過In/Sync接口接收其它對象送來的消息,也可以把消息通過Out接口傳遞給其它對象。例如,一個(gè)Ready事件可以把信號對象由停止(Stop)狀態(tài)變?yōu)檫\(yùn)行(Run)狀態(tài);一個(gè)Active事件可以讓傳感器信號對象執(zhí)行數(shù)據(jù)采集操作等。

  信號類經(jīng)例化后,可以仿真某些角色信號(如激勵(lì)信號、測試信號、事件調(diào)節(jié)器信號、信號調(diào)節(jié)器信號等)、UUT節(jié)點(diǎn)等。

ATLAS 2K模型的基本信號組件層提供了可重用、經(jīng)格式化描述的基本信號(底層信號),它們是基于COM技術(shù)的對信號類繼承、封裝并進(jìn)一步標(biāo)準(zhǔn)化的產(chǎn)物。每個(gè)基本信號組件都存在一個(gè)靜態(tài)SMML描述和一個(gè)抽象的運(yùn)行期控制模型,前者定義信號特征,后者在某一特定ATS中定義信號的行為。通過這些基本信號組件可以定義所有較高層的信號。

  ATLAS 2K模型的復(fù)合信號組件庫與ATLAS的EXTEND功能類似,通過定義基本信號組件產(chǎn)生的復(fù)合信號和使用這些信號的規(guī)則,實(shí)現(xiàn)了對信號的擴(kuò)展。圖2給出了由基本信號組件1和2實(shí)現(xiàn)復(fù)合信號n的示意圖。復(fù)合信號組件可以仿真復(fù)雜信號,如射頻(RF)信號、數(shù)據(jù)總線信號等。

?

1.2 ATLAS 2K的工程應(yīng)用

  在支持COM組件開發(fā)的編程平臺(如VC++、VB等)和相應(yīng)開發(fā)工具的支持下,ATLAS 2K可應(yīng)用在“面向信號”的ATS設(shè)計(jì)中。具體應(yīng)用如下:裝配信號組件實(shí)現(xiàn)對UUT的測試需求描述,生成ATLAS 2K TPS;通過編譯器編譯后,轉(zhuǎn)變成能在ATS上執(zhí)行的代碼;在充分考慮自身時(shí)序要求和儀器功能限制的前提下,實(shí)現(xiàn)與特定ATS的集成。

  下面的VB代碼給出了應(yīng)用信號組件在某一測試節(jié)點(diǎn)PL-1上建立和撤銷一個(gè)振幅為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″] ?      //建立節(jié)點(diǎn)

  cnx=″PL-1″

  Set cnx.in=mySig.out???????????????????????? //連接節(jié)點(diǎn)

  Set cnx=Nothing? ???????????????????????????? //節(jié)點(diǎn)初始化

  mySig.out.Run? ?????????????????????????????? //產(chǎn)生信號

  mySig.out.Stop?? ???????????????????????????? //撤銷信號

  mySig.in=Nothing

  mySig=Nothing

  ATLAS 2K作為測試標(biāo)準(zhǔn)語言,實(shí)現(xiàn)了代碼重用和移植。對于新ATS,只要結(jié)合新測試資源信息,對ATLAS 2K代碼重新編譯就可在新系統(tǒng)中運(yùn)行。

2 IVI-Signal Interface標(biāo)準(zhǔn)

  IVI-Signal Interface標(biāo)準(zhǔn)是IVI基金會在IVI-MSS模型的基礎(chǔ)上進(jìn)一步發(fā)展起來的,它對IVI-MSS的RCM進(jìn)一步封裝,以信號接口的形式對外提供測試服務(wù)。

2.1 IVI-Signal Interface模型

  IVI-Signal Interface模型的體系結(jié)構(gòu)如圖3所示。

?

  IVI信號組件是帶有標(biāo)準(zhǔn)信號接口的IVI-MSS角色組件,通過這些接口可用一系列方法執(zhí)行信號操作,如初始化、建立、連結(jié)、更改等。它允許客戶應(yīng)用程序控制儀器設(shè)備上的物理信號,如初始化、切換等操作。下面的VB代碼給出了在地址為1的某GPIB儀器上產(chǎn)生振幅為0.5V、頻率為1000Hz的正弦信號的全過程。

  Dim mySigSource as IviSignalSource

  mySigSource.Init(“GPIB:1:INSTR”)   //初始化

  Dim control as ParamValSet

  control.Add(“Amp”,0.5)????????????  //指定信號電流參數(shù)

  control.Add(“Freq”,1.0E6,2.0)???   //指定信號頻率參數(shù)

  mySigSource.Setup[SENSOR,“AcSignal”,control]

????         ????????????????   //給定信號的角色、類型和參數(shù),并產(chǎn)生信號

  IVI信號組件控制一臺或多臺儀器產(chǎn)生客戶需要的信號,完成客戶的測試需求。它對儀器的控制是通過VISA、IVI驅(qū)動器、SCPI命令等實(shí)現(xiàn)的。程序執(zhí)行過程中,IVI信號組件需要的服務(wù)由IVI共用組件(如IVI Factory、IVI Configuration Store、IVI Event Server)提供。

  測試資源信息是一個(gè)數(shù)據(jù)模塊,用來存儲IVI信號組件的測試/激勵(lì)能力和配置信息,為用戶選擇儀器、設(shè)計(jì)測試方案提供參考;同時(shí)提供程序訪問功能,實(shí)現(xiàn)測試資源的自動分配和信號路徑的切換。它提供的IVI信號組件信息包括:

  (1)組件支持的信號種類;

  (2)每類信號需要的參數(shù);

  (3)每類信號的量程、精確度指標(biāo);

  (4)IVI信號組件接口和儀器接口的連接關(guān)系等。

2.2 IVI-Signal Interface的信號類型標(biāo)準(zhǔn)

  為了提高IVI信號組件的重用性和可移植性,組件開發(fā)者和使用者都迫切要求使用標(biāo)準(zhǔn)的接口信號信息,如信號類型、參數(shù)、物理意義等,因此信號類型的標(biāo)準(zhǔn)化問題亟待解決。IVI基金會沒有嚴(yán)格定義接口信號類型標(biāo)準(zhǔn),這需要由面向儀器控制的用戶或其它組織來完成。在ATLAS測試語言標(biāo)準(zhǔn)中,用SMML定義了信號類型,筆者認(rèn)為可以沿用這一定義。

2.3 儀器互換問題

  更換儀器后,驅(qū)動器不再是困擾系統(tǒng)更新的難題,因?yàn)闇y試資源信息明確地描述了IVI信號組件的功能,標(biāo)準(zhǔn)的接口語義聲明也明確地描述了組件的接口實(shí)現(xiàn)。設(shè)計(jì)人員可根據(jù)這些描述進(jìn)行新儀器的IVI信號組件開發(fā),實(shí)現(xiàn)同樣的功能。

  IVI信號組件提供了訪問綜合性儀器(Synthetic Instrument,即具備兩類或多類儀器功能的儀器或儀器集合)的功能。在滿足測試需求的前提下,一個(gè)信號組件可以包含硬件儀器的部分或全部功能。這一切為儀器互換提供了廣闊的空間,不但可以實(shí)現(xiàn)同類儀器、異類儀器的互換,還可以實(shí)現(xiàn)綜合性儀器的互換。

3 基于信號接口的通用ATS軟件設(shè)計(jì)

  由以上分析可知,ATLAS 2K和IVI-Signal Interface有很多相似和互補(bǔ)的功能。比如,在一個(gè)測試系統(tǒng)中,ATLAS 2K面向UUT,實(shí)現(xiàn)了代碼移植和重用,而IVI-Signal Interface面向測試資源,實(shí)現(xiàn)了儀器互換;IVI-Signal Interface模型給ATLAS 2K代碼提供了執(zhí)行機(jī)制,而其也可沿用ATLAS 2K用SMML語言對信號類型定義的方法;二者均基于COM技術(shù),提供了標(biāo)準(zhǔn)信號接口等。因此,通過信號接口集成二者,可實(shí)現(xiàn)通用ATS軟件設(shè)計(jì)。

3.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)

  基于信號接口的通用ATS軟件結(jié)構(gòu)框架如圖4所示。

?

  儀器信息模塊是一個(gè)文件,它記錄系統(tǒng)中所有儀器的測試功能信息,由IVI-Signal Interface模型提供。矩陣開關(guān)信息模塊和適配器信息模塊與儀器信息模塊類似,前者記錄了矩陣開關(guān)模塊的連接信息;后者記錄了適配器在UUT和矩陣開關(guān)之間的轉(zhuǎn)換信息。

  ATLAS 2K TPS根據(jù)自己對UUT的測試需求的描述,從Run-Time System請求相應(yīng)的信號對象。若ATS的測試能力允許,Run-Time System開始查詢從UUT到儀器端口的連接信息,并對其進(jìn)行驗(yàn)證。這一切完成后,Run-Time System開始例化IVI-Signal Interface信號組件和ATLAS 2K信號組件,執(zhí)行測試操作。

  IVI-Signal Interface組件和矩陣開關(guān)驅(qū)動器通過VISA、IVI-C、SCPI命令等控制底層儀器,在TPS執(zhí)行期間,Run-Time System應(yīng)自動完成測試資源的分配和信號路徑的切換。

  綜上,基于信號接口的ATS軟件設(shè)計(jì)可描述為:通過ATLAS 2K語言,將UUT的測試需求標(biāo)定為對激勵(lì)/測量信號的需求,這個(gè)虛擬資源需求通過設(shè)備驅(qū)動器接口內(nèi)部服務(wù)機(jī)制的解釋和定位轉(zhuǎn)換成真實(shí)資源,再驅(qū)動儀器完成測試任務(wù)。

3.2 系統(tǒng)實(shí)現(xiàn)

  圖5給出了基于信號接口開發(fā)ATS軟件的全過程。

?

  ATLAS 2K TPS和IVI-Signal Interface組件由COTS產(chǎn)品開發(fā),如VB、VC++等。IVI-Signal Interface組件由系統(tǒng)方案設(shè)計(jì)者給出,由系統(tǒng)集成者使用。

  使用Windows寫字板記錄測試資源信息,如設(shè)備信息、適配器信息等,并隨同IVI信號組件一同發(fā)布。

  IVI-Signal Interface標(biāo)準(zhǔn)和ATLAS 2K模型在功能上是互補(bǔ)的,二者的結(jié)合給通用ATS軟件設(shè)計(jì)提供了解決方案,工程應(yīng)用前景非常廣闊。另外,二者均基于COM技術(shù),不依賴于特定的開發(fā)工具,方便了系統(tǒng)的實(shí)現(xiàn),節(jié)省了費(fèi)用。同時(shí),這一設(shè)計(jì)思想還可以有效地結(jié)合當(dāng)前正在發(fā)展著的VXI、PXI、IVI-COM、VISA-COM等技術(shù),為最終實(shí)現(xiàn)儀器互換和軟件移植打下堅(jiān)實(shí)的基礎(chǔ)。當(dāng)然,由于ATS設(shè)計(jì)的復(fù)雜性,有關(guān)細(xì)節(jié)仍需進(jìn)一步論證,如資源自動分配的優(yōu)化問題、信號路徑切換的選擇問題等。

?

參考文獻(xiàn)

1 Keith Ellis,Dick Delaney,Chris Gorringe. ATLAS 2K—The Framework For Precise and Extensible Signal Interface In Modern ATS. IEEE,2001:468~479

2 IVI Foundation. IVI-3.11: Signal Interface Specification?[EB/OL]. http://www.ivifoundation.org, 2000.10

3 IEEE Standards Coordinating Committee 20.C/ATLAS Test?Language. IEEE,1989

4 Alexander Cherfas,William Reeves. ATLAS 2000 Signal?and Method Classification and Modeling.IEEE,1998:139~144

5 Dr.Ion A.Neag,Narayanan Ramachandran. ATLAS 2K and?the IVI Signal Interface—the Framework for an Open Mod-

? ular and Distributed ATS Architecture. IEEE,2001:23~37

6 The TEDL Subcommittee of Standards Coordinating Committee 20. IEEE Standard for Test Equipment Description

? Language [TEDL]. IEEE,1997:1~64
本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。