朱望純,鄧志宏,蔣漢林
(1.桂林電子科技大學 電子工程與自動化學院,廣西 桂林 541004; 2.陸軍裝備部武漢軍代局駐八〇一廠軍代室,廣西 柳州 545012)
基于STD標準的ATS信號組件研究與設(shè)計
朱望純1,鄧志宏1,蔣漢林2
(1.桂林電子科技大學 電子工程與自動化學院,廣西 桂林 541004; 2.陸軍裝備部武漢軍代局駐八〇一廠軍代室,廣西 柳州 545012)
信號與測試定義(STD)標準從被測對象信號的測試需求出發(fā),以信號的方式描述測試需求,可以為自動測試系統(tǒng)提供更好的程序可移植性;STD標準規(guī)范了信號的定義與描述模型,但沒有提供具體的實現(xiàn)方法;為了從技術(shù)層面上解決測試信號參數(shù)傳遞與測試需求存儲問題,分析了STD標準,并根據(jù)該標準對信號進行設(shè)計,提出了基于STD標準的自動測試系統(tǒng)信號組件設(shè)計方案,并以信號激勵產(chǎn)生的過程介紹信號組件的交互;以交流AC_SIGNAL信號組件的構(gòu)建為例,對信號組件的設(shè)計方案進行驗證;實驗結(jié)果證明該設(shè)計方案切實可行,可為自動測試系統(tǒng)的研究提供參考。
信號與測試定義標準;自動測試系統(tǒng);信號組件
隨著武器裝備的不斷更新?lián)Q代,大量的新興技術(shù)被引入武器裝備,大大提高了武器的作戰(zhàn)效能,同時也使得武器裝備的測試維修工作難度加大。分析我軍武器裝備的保障現(xiàn)狀,軍用裝備ATS平臺仍然是以面向儀器開發(fā)為主,這種方式的測試程序需要根據(jù)儀器編寫,當更換儀器時,測試程序需要重新編寫,存在可移植性差、通用化水平低等問題[1]。
鑒于目前軍用裝備ATS平臺存上述問題,提出了一種基于STD標準的ATS軟件平臺。該軟件平臺以信號組件為核心,采用組件技術(shù)的模塊化開發(fā)思想,通過各個信號組件之間的交互,完成從測試需求到信號需求的映射,并將信號參數(shù)信息傳遞給儀器資源管理器,儀器資源管理器將信號參數(shù)信息與儀器建模信息進行匹配,從而調(diào)用IVI儀器類驅(qū)動定位具體儀器完成測試任務。信號是測試的目標,而信號組件從被測對象信號測試需求出發(fā),體現(xiàn)了測試的實質(zhì)。基于信號組件開發(fā)的測試程序不涉及具體儀器,滿足測試通用化的要求,符合武器裝備保障測試的發(fā)展趨勢[2]。本文在理論上和工程上對國內(nèi)自動測試系統(tǒng)的發(fā)展具有一定的意義。
自動測試系統(tǒng)軟件平臺是實現(xiàn)自動測試系統(tǒng)的核心,包括用戶程序、資源管理器、信號組件集合以及IVI儀器驅(qū)動機制等4個部分[3]。其中信號組件采用COM組件技術(shù)實現(xiàn),以標準化接口的形式被測試程序調(diào)用,是實現(xiàn)測試程序可移植的關(guān)鍵。自動測試系統(tǒng)軟件平臺架構(gòu)如圖1所示。
圖1 面向信號自動測試系統(tǒng)結(jié)構(gòu)圖
用戶程序:通過錄入測試需求信息,從而生成測試描述XML文件存儲測試任務;測試程序通過解析測試描述XML文本測試信息后,將獲取的信號需求信息傳遞給信號組件,信號組件獲取信號需求信息后與儀器資源管理器進行信息交互。
儀器資源管理器:作為連接用戶程序與IVI儀器類驅(qū)動的橋梁,通過檢索儀器信號能力XML文件后,根據(jù)信號需求信息匹配合適的儀器驅(qū)動,完成測試信號到具體測試儀器的映射[4]。
信號組件集合:一方面通過基類信號組件完成具體信號組件對象實例的創(chuàng)建、初始化等操作,存儲客戶程序的信號需求信息,結(jié)合IVI儀器類驅(qū)動完成信號需求到測試儀器的映射;另一方面記錄測試結(jié)果,供應用程序調(diào)用[5]。
IVI儀器驅(qū)動機制:測試的具體實現(xiàn)者,通過對底層儀器驅(qū)動函數(shù)進行封裝,對外提供IVI儀器類驅(qū)動接口,與信號組件交互共同完成具體儀器測試功能[6]。
STD標準不僅定義了基本信號的靜態(tài)模型以及信號組件的動態(tài)交互模型,還對這些基本信號根據(jù)功能分成源、調(diào)理器、事件、測試、控制器、數(shù)字信號與連接器等七類信號。信號組件開發(fā)是基于信號的靜態(tài)模型以及信號組件的動態(tài)模型完成的。下面將詳細說明信號的靜態(tài)模型以及信號組件動態(tài)交互模型。
2.1 信號的靜態(tài)模型
信號的靜態(tài)模型描述了基本信號的共有特征,是信號組件的設(shè)計原型[7]?;拘盘栰o態(tài)模型反映了信號的名稱、類型、屬性、多個控制接口等特征,是作為信號組件對象實例化和動態(tài)描述模型正常運行的基礎(chǔ)。圖2為STD信號靜態(tài)模型。
圖2 STD信號靜態(tài)模型
從靜態(tài)模型可以看出信號受到Conn、In、Sync、Gate等接口控制。其中Conn用于多個BSC信號連接,是合成TSF復雜信號的關(guān)鍵。In表示信號的輸入接口。Gate表示信號的門限信號。Sync表示信號的同步觸發(fā)信號。Out表示為信號的輸出接口。
模型中的屬性為信號的可配置屬性,例如交流信號中的幅度、頻率與偏置電壓。模型中得值用于保存測量信號的結(jié)果。
STD標準不僅對基本信號靜態(tài)模型有明確的定義,而且還提供了由基本信號組件合成復雜信號組件的方法[8]。用戶就可以根據(jù)實際測試需求構(gòu)建所需要的復雜信號并開發(fā)復雜信號組件,完成測試任務。
2.2 基本信號組件的動態(tài)模型
在信號靜態(tài)模型的基礎(chǔ)上,STD標準定義了BSC基本信號組件與TSF信號組件的動態(tài)交互過程和通過使用編程語言編寫控制接口組件的方法。動態(tài)模型描述了信號組件對象間的交互以及信號狀態(tài)轉(zhuǎn)換等內(nèi)容。
STD標準中定義了基本信號組件由資源管理器IResourceManager、信號功能組件ISignalFunction、物理參數(shù)IPhysical、信號狀態(tài)組件ISignal、數(shù)字脈沖串PulseDefn構(gòu)成。其中資源管理器IResourceManager類是一個抽象的信號對象工廠類,用于創(chuàng)建信號功能組件對象以及連接器組件對象;信號功能組件ISignalFunction,用于設(shè)置信號對象的具體信號特征信息;物理參數(shù)IPhysical定義了一個信號物理量的集合;信號狀態(tài)組件ISignal描述了信號組件狀態(tài)的轉(zhuǎn)換[9]。
STD標準中還使用了接口描述語言IDL描述信號組件,但是STD標準只給出了信號接口方法和屬性的定義,需要開發(fā)者在研究這些定義的基礎(chǔ)上,在工程應用中實現(xiàn)。
2.2.1 組件對象間的交互過程
信號組件對象交互過程描述了信號對象的創(chuàng)建、初始化等按照時間順序的對象調(diào)用和配置過程。以激勵信號產(chǎn)生過程為例,在測試過程中IResourceManager接口通過Require方法創(chuàng)建一個信號對象實例,從而獲得ISignalFunction接口并根據(jù)信號需求信息設(shè)置信號實例對象;接著ISignalFunction接口與IPhysical接口進行交互,設(shè)置信號特征信息;然后IResourceManager接口通過Require方法創(chuàng)建一個信號連接器對象實例,設(shè)置信號對應到被測對象UUT的連接引腳,獲得這個連接器的ISignalFunction接口。連接器ISignalFunction接口與ISignal接口交互,調(diào)用Run、Stop、Change方法與運行時引擎進行交互[10]。激勵信號產(chǎn)生過程信號組件對象交互過程如圖3所示。
圖3 信號組件交互過程圖
2.2.2 信號狀態(tài)與狀態(tài)轉(zhuǎn)換操作
信號狀態(tài)與狀態(tài)轉(zhuǎn)換操作分別是ISignal接口提供的屬性和方法,一方面用于將測試需求配置信息傳遞給信號對象,實現(xiàn)測試需求信號到具體儀器的映射,從而控制對應測試儀器完成測試任務;另一方面指明輸出信號處于信號對象對應的狀態(tài)。信號具有基本的3個狀態(tài),需要調(diào)用相關(guān)的方法請求信號狀態(tài)改變。
3個狀態(tài)是指Stopped、Paused、Running。其中Stopped狀態(tài)表示信號處于停止態(tài),是所有信號的初態(tài);Paused狀態(tài)表示信號處于就緒態(tài),等待外部的觸發(fā)事件即可進入執(zhí)行狀態(tài)。Running 狀態(tài)表示信號處于執(zhí)行態(tài),已經(jīng)產(chǎn)生信號.
3種方法是指Stop、Change、Run。其中Stop方法保持停止狀態(tài)不變或使信號從其他狀態(tài)進入停止狀態(tài),并釋放信號占用的儀器資源;Change方法重置信號的設(shè)置,用于改變信號的輸出;Run方法使信號進入就緒態(tài),等到外部觸發(fā)后進入執(zhí)行態(tài),獲取儀器資源從而完成測試任務。
可以通過上述原理繪制信號狀態(tài)轉(zhuǎn)換圖,如圖4所示。
圖4 信號狀態(tài)轉(zhuǎn)換圖
STD標準定義該信號狀態(tài)控制機制有效減少測試執(zhí)行的時間。由于以前進行ATS操作時,每次配置一臺測試儀器發(fā)送信號是都需要頻繁調(diào)用儀器的初始化函數(shù),然后調(diào)用相關(guān)配置比如創(chuàng)建儀器句柄、儀器通道、配置設(shè)備、運行儀器等;而改變儀器輸出過程與關(guān)閉儀器過程也需要調(diào)用一系列的相關(guān)儀器驅(qū)動函數(shù)。這3個過程,儀器驅(qū)動函數(shù)的重疊度大,浪費測試執(zhí)行時間,所以STD標準提出了這種狀態(tài)轉(zhuǎn)換機制,有效縮短測試執(zhí)行的時間,提高測試執(zhí)行效率。
在面向信號的自動測試系統(tǒng)信號組件模型中,IResourceManager資源管理器、ISignalFunction信號功能組件、IPhysical物理參數(shù)、ISignal信號狀態(tài)組件和Engine運行時服務是測試的關(guān)鍵,下面就以IResourceManager資源管理器組件開發(fā)為例進行說明。
采用微軟ATL技術(shù)對組件進行開發(fā)[11]。IResourceManager資源管理器組件是唯一能夠創(chuàng)建信號接口實例的組件,僅具有Require方法,創(chuàng)建信號功能組件ISignalFunction。當信號組件升級或改變時,只需要修改資源管理器接口實現(xiàn),測試程序不需要改動即可使用,提高了測試程序的可移植性。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方法產(chǎn)生的,Require方法通過將轉(zhuǎn)換的信號描述符與信號標識UUID進行比較,聲明對應的信號接口指針,該指針實例化信號接口對象并返回接口指針從而完成信號組件對象實例化。其余信號組件的接口實現(xiàn)和上述過程類似,不再贅述。
COM組件是一種不需要編譯,可直接被測試程序調(diào)用的二進制可執(zhí)行程序。測試人員在編寫信號組件測試程序的時候,可以選擇自己熟悉的編程語言進行開發(fā),提高開發(fā)的效率。開發(fā)好的信號組件可以被多種編程語言開發(fā)的測試程序調(diào)用,例如從C++開發(fā)的測試程序移植到C#開發(fā)的測試程序,信號組件不需要做任何修改,提高了測試程序的可移植性。
圖6給出了一個實際工程應用的信號組件模型,在某一被測對象UUT測試節(jié)點P1-1,P1-2上施加一個AC_Signal激勵信號UML序列圖。
圖6 AC_Signal信號UML序列圖
測試流程如圖7所示。
通過資源管理器組件的Require方法實例化IPysical組件對象并保存AC_Signal信號的參數(shù)信息,實例化IAC_Signal組件對象獲取IPhysical組件對象保存的信號參數(shù)信息,實例化ISignal對象并將對象賦給IAC_Signal對象的Out屬性。使用Out屬性的ISignal對象獲取ITwoWire對象中被測對象
圖7 測試程序流程圖
引腳信息。并調(diào)用ISignal接口對象的Run方法匹配相應的儀器驅(qū)動從而控制儀器進行測試。
經(jīng)過實際測試,AC_SIGNAL信號組件對象實例化后可以有效保存信號參數(shù)并將信號參數(shù)傳遞給IVI儀器驅(qū)動機制。IVI儀器驅(qū)動機制根據(jù)AC_SIGNAL信號組件對象解析信號類型、信號參數(shù)等信息,并根據(jù)解析的信號信息調(diào)用相應的儀器驅(qū)動函數(shù),從而控制儀器進行相應操作。根據(jù)實驗結(jié)果得出,信號組件能有效保存信號參數(shù)信息并且通過IVI儀器驅(qū)動機制解析信號信息,從而控制相應儀器驅(qū)動,證明該信號組件設(shè)計模型可行,為解決信號參數(shù)傳遞與測試需求存儲提供了技術(shù)支持。
本文在STD標準的基礎(chǔ)上,研究信號組件靜態(tài)模型與動態(tài)模型,給出信號組件的設(shè)計方案。以某激勵信號為例,調(diào)用所設(shè)計的信號組件進行測試驗證,達到了預期測試效果。該模型將COM組件技術(shù)有效地應用在自動測試系統(tǒng)軟件平臺中,以標準化接口的形式為測試程序提供服務。當信號組件升級時,只需要修改信號組件的接口實現(xiàn),測試程序不需要做任何修改,提高測試程序可移植性。
[1] 于勁松,李行善.美國軍用自動測試系統(tǒng)的發(fā)展趨勢[J].測控技術(shù),2001,12:1-3.
[2] 蘇孝釤,田 凌.自動測試系統(tǒng)中面向信號的儀器UUT建模方法[J].儀表技術(shù)與傳感器,2012,10:34-36.
[3] 戴豪民,牛雙誠,張光軼,等.面向信號自動測試系統(tǒng)信號組件的設(shè)計[J].現(xiàn)代電子技術(shù),2009(5):60-62.
[4] 馬登武,馬 羚,呂曉峰.面向信號ATS軟件平臺的信號組件研究與設(shè)計[J].計算機測量與控制,2012(4):1126-1128.
[5] 齊少華.TPS流程式開發(fā)環(huán)境與儀器管理模塊的研究與實現(xiàn)[D].成都:電子科技大學,2013.
[6] 肖 杰.面向信號的自動測試系統(tǒng)中的儀器建模及控制功能實現(xiàn)[D].成都:電子科技大學,2012.
[7] 張 禎.面向信號測試系統(tǒng)中信號組件及運行時技術(shù)的研究與實現(xiàn)[D].成都:電子科技大學,2014.
[8] 張俊峰,趙錦成,劉金寧.基于XML的自動測試系統(tǒng)信號描述方法研究[J].測控技術(shù),2011(1):87-89.
[9] 錢 鋒,孟 晨,朱 俊. 基于STD標準的信號構(gòu)建方法研究[J]. 儀表技術(shù),2008(9):36-38.
[10] 鐘建林,何 友,齊玉東.基于IEEE1641標準的自動測試系統(tǒng)體系結(jié)構(gòu)[J].計算機測量與控制,2009(5):854-856.
[11] 羅 錦,蘇振中,孟 晨.自動測試系統(tǒng)軟件設(shè)計標準化研究[J].儀表技術(shù),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,自動測試系統(tǒng)及軟件,虛擬儀器及可互換式虛擬儀器(IVI)方向的研究。
1671-4598(2017)07-0025-03
10.16526/j.cnki.11-4762/tp.2017.07.006
TP302
A