關(guān)于模擬自動(dòng)測(cè)試儀的硬件平臺(tái)組成原理
隨著現(xiàn)代計(jì)算機(jī)技術(shù)和儀器技術(shù)的迅速發(fā)展,美國(guó)國(guó)家儀器公司(NationalInstrument)在20世紀(jì)80年代中期提出了虛擬儀器的概念。虛擬儀器利用計(jì)算機(jī)的強(qiáng)大的計(jì)算能力、圖形接口環(huán)境和通信功能,建立虛擬儀器面板,完成對(duì)儀器的控制、數(shù)據(jù)處理和顯示,代替了傳統(tǒng)的儀器并改變了傳統(tǒng)儀器的使用方法,用戶可以根據(jù)自己的需求靈活定義儀器的功能,提高儀器使用效率,大幅地降低儀器的價(jià)格和研制周期。
某型導(dǎo)彈的電路模塊是該型導(dǎo)彈的關(guān)鍵部件之一,用以完成制導(dǎo)信號(hào)的放大、濾波和增益控制等功能。檢驗(yàn)這類模塊的各項(xiàng)性能指標(biāo)是否符合設(shè)計(jì)要求是導(dǎo)彈在研制及生產(chǎn)過(guò)程中的關(guān)鍵環(huán)節(jié)。該電路模塊性能測(cè)試項(xiàng)目多樣,測(cè)試環(huán)境嚴(yán)格,測(cè)試結(jié)果精度要求很高。為滿足以上的要求,研制一套全方位的導(dǎo)彈電路模塊自動(dòng)測(cè)試儀(以下簡(jiǎn)稱自動(dòng)測(cè)試儀)是該電路模塊性能和可靠性的重要保證。
自動(dòng)測(cè)試儀硬件平臺(tái)設(shè)計(jì)虛擬儀器需要以相應(yīng)的硬件平臺(tái)來(lái)支持其虛擬儀器軟件的運(yùn)行。本自動(dòng)測(cè)試儀主要采用基于PCI總線的插卡式儀器和基于GPIB總線的臺(tái)式儀器構(gòu)成其硬件平臺(tái)。自動(dòng)測(cè)試儀的硬件平臺(tái)組成原理圖如所示。臺(tái)式儀器主要包括:程控信號(hào)源,程控?cái)?shù)字萬(wàn)用表。插卡式儀器主要為:多功能數(shù)據(jù)采集卡,功率開關(guān)繼電器板卡,多路開關(guān)繼電器板卡,繼電器控制I/O板卡。除此之外,自動(dòng)測(cè)試儀的硬件資源還包括多功能穩(wěn)壓電源、測(cè)試適配器、輔助的功能電路以及外部測(cè)試接口。自動(dòng)測(cè)試儀軟件系統(tǒng)設(shè)計(jì)NI公司開發(fā)的虛擬儀器編程環(huán)境LabWindows/CVI(Cforvirtualinstrument)以ANSIC語(yǔ)言為內(nèi)核,并與C++兼容,集成了許多測(cè)試應(yīng)用開發(fā)的高級(jí)功能函數(shù)庫(kù),如:488庫(kù)、串行通信庫(kù)、VISA庫(kù)、數(shù)據(jù)處理函數(shù)庫(kù)、DDE庫(kù)等。LabWindows/CVI支持動(dòng)態(tài)鏈接庫(kù)技術(shù)(DLL),支持微軟的ActiveX控件技術(shù),具有強(qiáng)大的儀器控制、數(shù)據(jù)采集與分析處理、網(wǎng)絡(luò)編程以及數(shù)據(jù)庫(kù)編程的功能。
考慮到自動(dòng)測(cè)試儀的測(cè)試需求不僅包含大量的信號(hào)檢測(cè)和數(shù)據(jù)處理,而且涉及大量的軟件界面圖形處理,結(jié)合虛擬儀器技術(shù)的特點(diǎn),在其開發(fā)過(guò)程中選擇LabWindows/CVI作為其軟件開發(fā)工具。為了實(shí)現(xiàn)自動(dòng)測(cè)試儀軟件的強(qiáng)大的數(shù)據(jù)處理及分析的功能,將數(shù)據(jù)庫(kù)技術(shù)引入開發(fā)過(guò)程中,采用了微軟的SQLSever2000數(shù)據(jù)庫(kù)管理系統(tǒng)來(lái)對(duì)測(cè)試過(guò)程的各種相關(guān)信息進(jìn)行管理。
自動(dòng)測(cè)試儀軟件系統(tǒng)采用了結(jié)構(gòu)化、模塊化的軟件設(shè)計(jì)思想,其結(jié)構(gòu)圖如所示。將所有硬件資源的驅(qū)動(dòng)程序重新以驅(qū)動(dòng)程序庫(kù)的形式加以組織,測(cè)試應(yīng)用程序通過(guò)訪問(wèn)驅(qū)動(dòng)程序庫(kù)函數(shù)實(shí)現(xiàn)對(duì)各種硬件資源的操作;通過(guò)微軟的數(shù)據(jù)庫(kù)ADO(activedataobject)接口,測(cè)試應(yīng)用程序與SQLSever2000數(shù)據(jù)庫(kù)連接,實(shí)現(xiàn)對(duì)各種測(cè)試相關(guān)信息的訪問(wèn)操作;自動(dòng)測(cè)試儀的測(cè)試應(yīng)用程序則負(fù)責(zé)自動(dòng)測(cè)試儀各種軟件功能的實(shí)現(xiàn),它是以程序功能模塊的形式來(lái)進(jìn)行編寫的,主要包括以下的功能模塊:測(cè)試主界面模塊,用戶管理模塊,數(shù)據(jù)管理模塊,電路自動(dòng)測(cè)試模塊,電路手動(dòng)測(cè)試模塊,指標(biāo)設(shè)定模塊以及測(cè)試儀軟件的聯(lián)機(jī)幫助模塊。測(cè)試應(yīng)用程序的功能模塊示意圖如所示。
測(cè)試應(yīng)用程序的主界面模塊是測(cè)試程序的公共入口,用戶通過(guò)它來(lái)訪問(wèn)測(cè)試應(yīng)用程序的各個(gè)功能模塊。測(cè)試應(yīng)用程序的用戶管理模塊實(shí)現(xiàn)對(duì)用戶的分級(jí)管理。測(cè)試程序的用戶被分為3個(gè)級(jí)別:系統(tǒng)管理員、工程師和一般操作員。每一個(gè)用戶級(jí)別的用戶權(quán)限和所能進(jìn)行的操作種類各不相同。系統(tǒng)管理員是自動(dòng)測(cè)試儀軟件的最高權(quán)限用戶,能運(yùn)行測(cè)試儀軟件實(shí)現(xiàn)的全部功能,測(cè)試儀軟件只有而且僅有一個(gè)系統(tǒng)管理員;工程師是高級(jí)的測(cè)試儀軟件用戶,能夠進(jìn)行所有的與測(cè)試相關(guān)的操作,但不具有管理測(cè)試儀軟件用戶的權(quán)限,測(cè)試儀軟件允許有多個(gè)工程師用戶;一般操作員是測(cè)試儀軟件的最低權(quán)限的用戶,無(wú)管理測(cè)試儀軟件用戶的權(quán)限,只能進(jìn)行一般的測(cè)試相關(guān)操作,不能進(jìn)行手動(dòng)測(cè)試模塊實(shí)現(xiàn)的操作,測(cè)試儀軟件允許有多個(gè)一般操作員用戶。
自動(dòng)測(cè)試儀軟件系統(tǒng)結(jié)構(gòu)圖測(cè)試應(yīng)用程序功能模塊示意圖測(cè)試應(yīng)用程序的數(shù)據(jù)管理模塊實(shí)現(xiàn)對(duì)各種測(cè)試相關(guān)信息的統(tǒng)一管理。用戶可以對(duì)保存在數(shù)據(jù)庫(kù)內(nèi)的所有測(cè)試數(shù)據(jù)進(jìn)行瀏覽、查詢、刪除和打印等一系列操作。測(cè)試應(yīng)用程序中的電路自動(dòng)測(cè)試模塊實(shí)現(xiàn)導(dǎo)彈電路模塊全部性能的自動(dòng)測(cè)試功能。該模塊支持用戶對(duì)電路模塊性能進(jìn)行部分及全部的測(cè)試,連續(xù)及單步測(cè)試等測(cè)試方式,在測(cè)試過(guò)程中,測(cè)試結(jié)果會(huì)自動(dòng)動(dòng)態(tài)顯示出來(lái)。實(shí)現(xiàn)電路自動(dòng)測(cè)試模塊的軟件界面圖如所示。測(cè)試應(yīng)用程序的電路手動(dòng)測(cè)試模塊以儀器軟面板的形式把自動(dòng)測(cè)試儀所有的硬件資源暴露給用戶,用戶可以按照幫助系統(tǒng)的相關(guān)說(shuō)明按一定的操作順序?qū)ο嚓P(guān)資源進(jìn)行操作,從而以手動(dòng)方式實(shí)現(xiàn)測(cè)試功能。
用戶還可以在測(cè)試適配器的引出接口上外接相應(yīng)的測(cè)試設(shè)備輔助上述的手動(dòng)測(cè)試操作。測(cè)試應(yīng)用程序的指標(biāo)設(shè)定模塊用來(lái)設(shè)定與電路模塊性能測(cè)試相關(guān)的指標(biāo)參數(shù)范圍,便于用戶修改電路模塊的性能指標(biāo)要求。自動(dòng)測(cè)試儀軟件算法舉例在所構(gòu)造的虛擬儀器硬件平臺(tái)基礎(chǔ)上,導(dǎo)彈電路模塊的幾十項(xiàng)測(cè)試項(xiàng)目都是用相應(yīng)的虛擬儀器軟件來(lái)實(shí)現(xiàn)的,而這類軟件功能的實(shí)現(xiàn)又是以相應(yīng)的算法或程序流程為基礎(chǔ)的。限于本文的篇幅,下文僅以一個(gè)實(shí)例來(lái)說(shuō)明這類算法或程序流程的設(shè)計(jì)過(guò)程。
在自動(dòng)測(cè)試儀的測(cè)試功能中有一項(xiàng)功能是測(cè)試導(dǎo)彈電路模塊的工作帶寬。通常進(jìn)行帶寬測(cè)試需要用到頻譜分析儀這樣高級(jí)的測(cè)試儀器。下面介紹一種在硬件平臺(tái)的基礎(chǔ)上軟件實(shí)現(xiàn)電路模塊帶寬測(cè)試的方法。
從電路的工作原理上來(lái)說(shuō),該導(dǎo)彈電路模塊屬于放大電路,其帶寬測(cè)試原理如所示。圖中橫坐標(biāo)是輸入信號(hào)的頻率,縱坐標(biāo)是電路的放大倍數(shù)(K)。
fN是電路的額定工作頻率;fL是電路的帶寬下限;fH是電路的帶寬上限。它們之間的關(guān)系如下KfN=2KfL=2KfH電路模塊帶寬測(cè)試原理圖電路帶寬測(cè)試方法的前提是:fN、fL和fH的理論設(shè)計(jì)值是已知的,并且fN的理論值被認(rèn)為是實(shí)際的電路的額定工作頻率。要保證每次測(cè)試時(shí),信號(hào)源產(chǎn)生的激勵(lì)信號(hào)的幅值完全一致,設(shè)為A.則求取fL值的循環(huán)搜索算法如下:
(1)用數(shù)字萬(wàn)用表檢測(cè)電路模塊在信號(hào)源產(chǎn)生的幅值為A,頻率為fN的激勵(lì)信號(hào)作用下,輸出信號(hào)的電壓值uN,則通帶邊沿的輸出電壓期望值為uideal=uN/2.設(shè)定循環(huán)操作的最大步數(shù)M,每次調(diào)整信號(hào)源輸出頻率的步長(zhǎng)k,并且循環(huán)的步數(shù)m設(shè)為0.此外將算法中測(cè)量電壓值臨時(shí)變量u1、u2初值設(shè)為0.
(2)用數(shù)字萬(wàn)用表檢測(cè)電路在信號(hào)源產(chǎn)生的幅值為A,頻率為fL理論值的激勵(lì)信號(hào)作用下,輸出信號(hào)的電壓值uL,并把uL值賦給變量u2。
(3)開始循環(huán)。將變量u2的值賦給變量u1,并且讀取當(dāng)前信號(hào)源的激勵(lì)信號(hào)的頻率賦值給變量Fre.
(4)如果u1值小于通帶邊沿電壓期望uideal值,則Fre=Fre+k;否則Fre=Fre-k.
(5)信號(hào)源重新產(chǎn)生幅值為A,頻率為當(dāng)前頻率值Fre的激勵(lì)信號(hào)。用數(shù)字萬(wàn)用表測(cè)量當(dāng)前電路模塊的輸出電壓值uFre,并把uFre值賦給變量u2。循環(huán)步數(shù)m加1.
(6)檢查循環(huán)條件:m%M;|u2-uideal|%|u1-uideal|.若條件滿足繼續(xù)從第3步開始循環(huán)。若條件不滿足,則跳出循環(huán)。若因?yàn)闂l件m>M跳出循環(huán),說(shuō)明fL值沒(méi)有找到,操作失。蝗粢?yàn)闂l件|u2-uideal|>|u1-uideal|跳出循環(huán),并且m%M,則fL值找到,操作成功。
在求取fL和fH的算法中還存在一個(gè)問(wèn)題,就是如何嚴(yán)格保證求取算法的前提,即每一次信號(hào)源產(chǎn)生的激勵(lì)信號(hào)的幅值完全一致。這里所指的信號(hào)不是信號(hào)源的輸出,而是加載到被測(cè)電路模塊的輸入端的信號(hào)。隨著信號(hào)源設(shè)定的信號(hào)頻率發(fā)生變化,由于測(cè)試儀的傳輸特性的影響,如果信號(hào)源輸出信號(hào)的幅度的設(shè)定值不發(fā)生變化,則實(shí)際上加載到電路模塊信號(hào)輸入端的信號(hào)幅值是會(huì)發(fā)生變化的。為了保證測(cè)試的準(zhǔn)確,必須設(shè)計(jì)一個(gè)信號(hào)源輸出的微調(diào)算法,保證當(dāng)信號(hào)源輸出的頻率發(fā)生變化時(shí),電路模塊輸入端的信號(hào)幅值不發(fā)生變化。這個(gè)信號(hào)源輸出的微調(diào)算法也采用了與上面介紹的搜索算法相類似的設(shè)計(jì)。
自動(dòng)測(cè)試儀硬、軟件聯(lián)試的關(guān)鍵技術(shù)在自動(dòng)測(cè)試儀的硬、軟件聯(lián)試的過(guò)程中,主要針對(duì)以下列舉的一些關(guān)鍵問(wèn)題采用了針對(duì)性的技術(shù),使問(wèn)題得到了較好的解決。
(1)自動(dòng)測(cè)試儀的抗干擾及誤差消除設(shè)計(jì)。
針對(duì)自動(dòng)測(cè)試儀系統(tǒng)的抗干擾及誤差消除設(shè)計(jì),23基于虛擬儀器的導(dǎo)彈電路專用模塊自動(dòng)測(cè)試儀主要在硬、軟件兩方面的設(shè)計(jì)中加以體現(xiàn)。硬件方面:采用適當(dāng)?shù)钠帘魏徒拥丶夹g(shù),包括:電路模塊測(cè)試工作環(huán)境的屏蔽,電路模塊信號(hào)傳輸?shù)钠帘危粶y(cè)試儀系統(tǒng)的各種接地點(diǎn)的選擇。軟件方面:采用了適當(dāng)?shù)目垢蓴_及消除誤差的軟件算法,包括:各種測(cè)試結(jié)果補(bǔ)償算法以及上文提到的保證電路模塊輸入端信號(hào)幅度的信號(hào)源輸出微調(diào)算法等。
(2)LabWindows/CVI訪問(wèn)數(shù)據(jù)庫(kù)的接口設(shè)計(jì)。
LabWindows/CVI編程環(huán)境下對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)操作通常是通過(guò)NI公司的軟件開發(fā)包SQLToolKits提供給軟件開發(fā)者的。但是,該軟件開發(fā)包數(shù)據(jù)庫(kù)操作的流程使用不夠靈活而且操作程序語(yǔ)法較為抽象,不便于開發(fā)者的使用。為此,在本自動(dòng)測(cè)試儀的軟件開發(fā)過(guò)程中,使用了微軟的ADO(activedataobject)數(shù)據(jù)庫(kù)接口技術(shù)。在LabWindows/CVI編程環(huán)境所生成的ADO對(duì)象的驅(qū)動(dòng)程序庫(kù)的基礎(chǔ)上,編寫自定義的通用數(shù)據(jù)庫(kù)訪問(wèn)接口函數(shù)并且通過(guò)這些接口函數(shù)實(shí)現(xiàn)自動(dòng)測(cè)試儀軟件對(duì)數(shù)據(jù)庫(kù)的各種的訪問(wèn)操作。
(3)自動(dòng)測(cè)試儀數(shù)據(jù)報(bào)表設(shè)計(jì)。
LabWindows/CVI編程環(huán)境自帶的報(bào)表開發(fā)功能比較有限,為此將微軟的自動(dòng)化服務(wù)器技術(shù)應(yīng)用于自動(dòng)測(cè)試儀軟件的開發(fā)過(guò)程中。通過(guò)在LabWindows/CVI編程環(huán)境中調(diào)用Excel報(bào)表對(duì)象驅(qū)動(dòng)程序庫(kù)函數(shù),實(shí)現(xiàn)了將Excel強(qiáng)大的報(bào)表功能嵌入到自動(dòng)測(cè)試儀軟件環(huán)境中。
自動(dòng)測(cè)試儀運(yùn)行結(jié)果本自動(dòng)測(cè)試儀很好地滿足了導(dǎo)彈電路模塊的幾十項(xiàng)測(cè)試項(xiàng)目的測(cè)試需求,各種測(cè)試參數(shù)的指標(biāo)均達(dá)到了設(shè)計(jì)要求,并且相對(duì)于原先用戶進(jìn)行手工測(cè)試操作大大地節(jié)省了操作時(shí)間,同時(shí)測(cè)試操作的準(zhǔn)確度也大大提高。
在構(gòu)建導(dǎo)彈電路模塊自動(dòng)測(cè)試儀硬件平臺(tái)的過(guò)程中,盡可能地采用了一些知名廠商的成熟的貨架產(chǎn)品,保證了測(cè)試儀硬件平臺(tái)的通用性和可靠性。測(cè)試儀軟件開發(fā)過(guò)程中,充分利用各種軟件算法實(shí)現(xiàn)測(cè)試儀的功能,實(shí)踐了虛擬儀器技術(shù)的軟件即儀器的思想。同時(shí),將數(shù)據(jù)庫(kù)管理系統(tǒng)引入了軟件的開發(fā)過(guò)程中,通過(guò)數(shù)據(jù)庫(kù)來(lái)管理大量的測(cè)試結(jié)果和被測(cè)對(duì)象的測(cè)試信息,使測(cè)試程序與測(cè)試數(shù)據(jù)分離,既提高了測(cè)試軟件的可維護(hù)性、可移植性和可靠性又實(shí)現(xiàn)了測(cè)試技術(shù)與數(shù)據(jù)庫(kù)技術(shù)的有機(jī)結(jié)合。本自動(dòng)測(cè)試儀經(jīng)過(guò)用戶實(shí)際使用的檢驗(yàn),使用方便,用戶界面友好,能夠很好地滿足用戶的各種測(cè)試需求。并且自動(dòng)測(cè)試儀的軟件具有良好的可移植性,只要稍做改動(dòng)就可以滿足導(dǎo)彈后繼型號(hào)的電路模塊性能測(cè)試的需求。中國(guó)糧油儀器網(wǎng) http://www.feta-virtual.com/



