面向信號(hào)自動(dòng)測(cè)試系統(tǒng)信號(hào)組件的設(shè)計(jì)
摘 要:面向信號(hào)測(cè)試技術(shù)可以為自動(dòng)測(cè)試系統(tǒng)提供更好的測(cè)試程序集可移植性和測(cè)試儀器可互換性。IEEEl641標(biāo)準(zhǔn)規(guī)范了信號(hào)定義和描述模型,但并未提出具體實(shí)現(xiàn)方法。為從技術(shù)上解決信號(hào)參數(shù)傳遞和需求存儲(chǔ)問題,分析了IEEEl641標(biāo)準(zhǔn),并根據(jù)該標(biāo)準(zhǔn)和工程實(shí)踐對(duì)信號(hào)進(jìn)行設(shè)計(jì),給出了信號(hào)模板,提出了面向信號(hào)自動(dòng)測(cè)試系統(tǒng)信號(hào)組件的設(shè)計(jì)方案,并進(jìn)行了驗(yàn)證。實(shí)驗(yàn)結(jié)果表明該設(shè)計(jì)方案先進(jìn)可行,可為該領(lǐng)域的研究提供參考。
關(guān)鍵詞:面向信號(hào);信號(hào)組件;自動(dòng)測(cè)試系統(tǒng);COM組件
0 引 言
IEEEl641是關(guān)于測(cè)試和信號(hào)定義的技術(shù)標(biāo)準(zhǔn)。它為用戶提供了描述和控制信號(hào)的能力,并允許用戶選用自己的操作系統(tǒng)和編程語言。用戶可以通過信號(hào)定義來描述測(cè)試需求和測(cè)試資源,而不必考慮使用哪一種編程語言。IEEEl641標(biāo)準(zhǔn)是一種層結(jié)構(gòu)模型,在模型中對(duì)每個(gè)層和它的功能進(jìn)行了描述,每一個(gè)層都建立在前一層的基礎(chǔ)之上。這種層結(jié)構(gòu)要求每一層必須根據(jù)它的前一層進(jìn)行全面定義。它包括信號(hào)建模語言層、基本信號(hào)組件層、測(cè)試信號(hào)框架層和測(cè)試過程語言層。對(duì)信號(hào)進(jìn)行描述的過程中IEEEl641標(biāo)準(zhǔn)分別從信號(hào)名稱、定義、角色、端口、參數(shù)對(duì)信號(hào)進(jìn)行說明,其中信號(hào)參數(shù)部分分別從參數(shù)名稱、定義、數(shù)據(jù)類型、單位、復(fù)位值、范圍、角色、限定詞對(duì)信號(hào)參數(shù)進(jìn)行說明。
l 信號(hào)設(shè)計(jì)
面向信號(hào)自動(dòng)測(cè)試系統(tǒng)信號(hào)組件的開發(fā)與信號(hào)類型定義息息相關(guān),信號(hào)類型定義參考了IEEEl641標(biāo)準(zhǔn)和工程實(shí)踐。信號(hào)組件的開發(fā)過程中信號(hào)是信號(hào)角色和信號(hào)類型的結(jié)合體,其中信號(hào)角色與儀器相關(guān),信號(hào)類型與信號(hào)本身特征有關(guān)。一個(gè)信號(hào)是至少由一個(gè)信號(hào)參數(shù)組成,信號(hào)參數(shù)內(nèi)部劃分為信號(hào)參數(shù)定義、信號(hào)參數(shù)角色和信號(hào)參數(shù)限定詞。
在IVI一3.11:IviSig Class Specification規(guī)范中主要定義了以下信號(hào)角色:Source,適用于“源”類儀器的信號(hào),包括信號(hào)發(fā)生器類、電源類儀器等;Sensor和Monitor,適用于“測(cè)量”類儀器的信號(hào),包括傳感器類、示波器類、萬用表類儀器等;Switch,適用于“通路”類儀器,包括開關(guān)、矩陣等。
信號(hào)參數(shù)角色是指信號(hào)參數(shù)針對(duì)某個(gè)儀器的信號(hào)能力。其中Controllable是指該信號(hào)參數(shù)可以被儀器控制,如電源輸出的電壓等;Measurable是指該信號(hào)參數(shù)可以被儀器測(cè)量,如數(shù)字萬用表測(cè)量直流電壓;Capa―bility是指不能被儀器測(cè)量或控制的信號(hào)能力,該能力對(duì)于某個(gè)信號(hào)類型必不可少,如輸入電阻等。
信號(hào)參數(shù)限定詞是指同一個(gè)信號(hào)參數(shù)的不同信號(hào)描述,它分為電壓和電流信號(hào)的限定詞、功率信號(hào)的限定詞以及頻率信號(hào)的限定詞。例如對(duì)于電壓來說其描述方式包括:峰峰值電壓、RMS電壓、平均電壓等。
本文定義的信號(hào)是根據(jù)IEEEl641劃分的,在使用時(shí)可以根據(jù)實(shí)際情況修改信號(hào)類型定義。下面定義的信號(hào)類型實(shí)際上是一個(gè)信號(hào)模板,包含了一個(gè)或多個(gè)信號(hào)類型。例如:AC SIGNAL包含了3種信號(hào)ACVoltage,AC Current,AC Power,對(duì)應(yīng)到源(Source)就是交流電壓源、交流電流源、交流功率源,對(duì)應(yīng)到傳感器(Sensor)就是交流電壓表、交流電流表、交流功率計(jì)。現(xiàn)以交流信號(hào)為例,對(duì)信號(hào)定義進(jìn)行說明。
2 信號(hào)組件的設(shè)計(jì)與開發(fā)
信號(hào)組件的本質(zhì)是COM組件,該類型組件的主要功能在于存儲(chǔ)信號(hào)參數(shù)信息,測(cè)試程序?qū)⑺栊盘?hào)信息傳遞給信號(hào)組件,數(shù)據(jù)將被暫存在緩存中,當(dāng)程序調(diào)用具體儀器驅(qū)動(dòng)時(shí)這些信號(hào)參數(shù)將被具體儀器驅(qū)動(dòng)所讀取,儀器動(dòng)作到相應(yīng)的狀態(tài)。每個(gè)信號(hào)組件對(duì)應(yīng)一種信號(hào),該組件為客戶程序提供了信號(hào)信息的公共存儲(chǔ)區(qū),同時(shí)測(cè)試返回的結(jié)果也在該組件下存儲(chǔ)。下面以ACVolt信號(hào)組件為例,描述信號(hào)組件的原理。對(duì)于ACVolt信號(hào)來說,其信號(hào)參數(shù)包括Ac ampl,F(xiàn)req,Dc_offset三種,信號(hào)組件中每個(gè)信號(hào)參數(shù)分別對(duì)應(yīng)4組方法,這些方法是:Setxx,ComGetxx,ComSetxx,Getxx,方法的功能見表2??蛻舫绦蚝途唧w儀器驅(qū)動(dòng)之間通過資源分配器交互,雙方的數(shù)據(jù)不能直接傳遞,因此信號(hào)組件成為兩者數(shù)據(jù)交互的橋梁。
面向信號(hào)自動(dòng)測(cè)試系統(tǒng)信號(hào)組件采用LabWin―dows/CVI 8.0作為開發(fā)環(huán)境,通過創(chuàng)建ActiveX服務(wù)器來完成信號(hào)組件的開發(fā)?,F(xiàn)以ACVolt信號(hào)為例進(jìn)行說明。首先創(chuàng)建ActiveX服務(wù)器。啟動(dòng)CVI8.0,創(chuàng)建新工程,命名為“AtpACVoltParam”;選擇菜單欄“tools”-“create ActiveX server”項(xiàng),CVI向?qū)?huì)自動(dòng)彈出,將服務(wù)器名稱命名為“AtpACVoltParam”,COM組件生成方式為動(dòng)態(tài)鏈接庫形式“dll”,其他設(shè)置不變。然后添加接口和接口方法。對(duì)于ACVolt信號(hào)來說其接口為“IAtpACVoltParam”,它的3個(gè)參數(shù)分別是幅值(Ampl)、頻率(Freq)、直流偏移量(Dc off―set),接口方法和接口參數(shù)如下:
其次要?jiǎng)?chuàng)建接口對(duì)象。選擇“Edit Objects”按鈕,創(chuàng)建“coAtpACVoltParam”對(duì)象并將其與接口“IAt―pACVoltParam”相關(guān)聯(lián),并創(chuàng)建回調(diào)函數(shù)“COAtpAC―VoltParam_Callback”。最后編輯接口方法實(shí)現(xiàn)代碼。將“.h”文件中的內(nèi)容拷貝到自己創(chuàng)建的文件“AtpAC―VoltParamImp.C”中,激活綠色標(biāo)注區(qū)內(nèi)容,并將接口方法的回調(diào)函數(shù)編輯為默認(rèn)的返回S OK,刪除帶有“Tag”標(biāo)志的結(jié)構(gòu)。Idl文件不需要修改。
3 信號(hào)組件的驗(yàn)證
采用Labwindows/cVI 8.0作為開發(fā)環(huán)境,通過SetAcAmpl函數(shù)存儲(chǔ)客戶程序輸入的幅值信息,然后用COMGetAcAmpl函數(shù)讀取客戶程序輸入的幅值信息,驗(yàn)證界面如圖1所示。這兩個(gè)函數(shù)完成了存儲(chǔ)信號(hào)參數(shù)信息的功能。通過COMSetAcAmpl函數(shù)存儲(chǔ)測(cè)試結(jié)果,最后用GetAcAmpl函數(shù)讀取測(cè)試結(jié)果,驗(yàn)證界面如圖2所示。通過以上驗(yàn)證說明ACVolt信號(hào)組件可以實(shí)現(xiàn)對(duì)信號(hào)信息的存儲(chǔ),為下一步面向信號(hào)自動(dòng)測(cè)試系統(tǒng)的實(shí)現(xiàn)提供參考。
評(píng)論