一種基于虛擬儀器的通用測(cè)控系統(tǒng)
虛擬儀器技術(shù)是利用高性能的模塊化硬件,結(jié)合高效靈活的軟件來(lái)完成各種測(cè)試、測(cè)量和自動(dòng)化的應(yīng)用。自1986年問(wèn)世以來(lái),世界各國(guó)的工程師和科學(xué)家們都已將NI LabVIEW圖形化開(kāi)發(fā)工具用于產(chǎn)品設(shè)計(jì)周期的各個(gè)環(huán)節(jié),從而改善了產(chǎn)品質(zhì)量、縮短了產(chǎn)品投放市場(chǎng)的時(shí)間,并提高了產(chǎn)品開(kāi)發(fā)和生產(chǎn)效率。使用集成化的虛擬儀器環(huán)境與現(xiàn)實(shí)世界的信號(hào)相連,分析數(shù)據(jù)以獲取實(shí)用信息,共享信息成果,有助于在較大范圍內(nèi)提高生產(chǎn)效率。本文研究了一種基于虛擬儀器技術(shù)的自動(dòng)測(cè)試系統(tǒng),該系統(tǒng)的被測(cè)對(duì)象為信號(hào)處理設(shè)備,其任務(wù)是把輸入信號(hào)經(jīng)特定封裝后輸出,并通過(guò)GPIB和PCI接口控制各種儀器生成、接收多種類型信號(hào)、測(cè)試設(shè)備的各技術(shù)參量,進(jìn)而運(yùn)用軟件程序?qū)y(cè)試數(shù)據(jù)結(jié)果進(jìn)行分析,生成測(cè)試報(bào)告。和傳統(tǒng)的測(cè)量系統(tǒng)相比,該系統(tǒng)簡(jiǎn)化了測(cè)試流程、減少了測(cè)試中的人工誤差,測(cè)試過(guò)程程序化、自動(dòng)化、規(guī)范化,可以滿足多型號(hào)信號(hào)處理設(shè)備的測(cè)試需求。本文從總體設(shè)計(jì)、硬件和軟件設(shè)計(jì)與編程幾個(gè)方面,詳細(xì)探討了自主研發(fā)的自動(dòng)測(cè)試系統(tǒng)實(shí)現(xiàn)方法,并給出了相應(yīng)的實(shí)驗(yàn)結(jié)果。
1 系統(tǒng)總體設(shè)計(jì)
自動(dòng)測(cè)試系統(tǒng)的突出優(yōu)點(diǎn)是系統(tǒng)中各種設(shè)備都是可程控的,整個(gè)測(cè)試工作在預(yù)先編制好的測(cè)試程序的統(tǒng)一指揮下完成,因而速度快、量程大、誤差小,可大量節(jié)約人力和時(shí)間。現(xiàn)在發(fā)展到第三代,虛擬儀器概念的提出及其快速發(fā)展更加突顯了自動(dòng)測(cè)試系統(tǒng)硬件測(cè)試軟件化的趨勢(shì)。然而目前在中高端測(cè)試中,傳統(tǒng)儀器由于其高性能、高精度、高穩(wěn)定性仍占主導(dǎo)地位,短期內(nèi)是虛擬儀器無(wú)法取代的。
考慮到設(shè)計(jì)出一種滿足中高端應(yīng)用的測(cè)控系統(tǒng),在硬件設(shè)備選擇時(shí),既使用了安捷倫等公司的高精密示波器、頻譜儀等傳統(tǒng)測(cè)試儀器,也使用了IT公司基于PCI的模擬輸出卡等典型虛擬儀器。
1.1測(cè)試需求分析
為實(shí)現(xiàn)高效自動(dòng)測(cè)量,針對(duì)接入大量多種類型的數(shù)據(jù)需求,包括多種背景下的紅外圖像信號(hào)、各種模擬信號(hào)、開(kāi)關(guān)信號(hào)、總線數(shù)字信號(hào)(并行數(shù)據(jù)、RS232, ARINC429等),需要將這些信號(hào)封裝為特定結(jié)構(gòu)的PCM幀發(fā)送出去,由信號(hào)處理設(shè)備對(duì)接收到的數(shù)據(jù)結(jié)構(gòu)進(jìn)行處理。自動(dòng)測(cè)試系統(tǒng)工作主要有三項(xiàng),一是傳輸精度標(biāo)定;二是模擬輸人信號(hào)測(cè)試,三是射頻視頻信號(hào)測(cè)試。此外系統(tǒng)還要完成對(duì)各個(gè)模擬通道輸人端口靜態(tài)電阻的測(cè)量。
傳輸精度標(biāo)定包括產(chǎn)生交流、直流標(biāo)準(zhǔn)輸入信號(hào),接收并處理測(cè)試數(shù)據(jù),計(jì)算出輸入輸出信號(hào)誤差,生成傳輸系數(shù)方程。投入使用前,信號(hào)處理設(shè)備需要進(jìn)行通道精度標(biāo)定,隨著設(shè)備工作時(shí)間增加和周圍環(huán)境的變化,其通道參數(shù)會(huì)有所變化,需要對(duì)各個(gè)通道進(jìn)行重新標(biāo)定。
模擬輸人信號(hào)測(cè)試中需要利用儀器模擬信號(hào)處理設(shè)備所有需要的輸入信號(hào),這些信號(hào)要求可并行加載到輸入端對(duì)應(yīng)通道。其輸出的信號(hào)經(jīng)接收解調(diào)后,其中數(shù)字信號(hào)計(jì)算誤碼率,模擬信號(hào)計(jì)算峰值與頻率等參量并和輸入信號(hào)進(jìn)行比較,誤差在設(shè)計(jì)允許范圍內(nèi)則對(duì)應(yīng)通道測(cè)試通過(guò)。
射頻視頻信號(hào)測(cè)試需要向信號(hào)處理設(shè)備輸入信號(hào)源,測(cè)試發(fā)射機(jī)的各參數(shù)包括頻率、頻偏、功率等。
1.2系統(tǒng)的總體結(jié)構(gòu)
為了滿足信號(hào)處理設(shè)備的測(cè)試項(xiàng)目需求,自動(dòng)測(cè)試系統(tǒng)由軟硬件共同組成。該系統(tǒng)從結(jié)構(gòu)上劃分為控制模塊、信號(hào)發(fā)生模塊和信號(hào)接收處理模塊,每個(gè)結(jié)構(gòu)模塊內(nèi)部按功能劃分為標(biāo)定、模擬輸入信號(hào)測(cè)試和射頻視頻信號(hào)測(cè)試子模塊。結(jié)構(gòu)模塊間為串行關(guān)系,而功能子模塊間為并行關(guān)系。
控制模塊硬件以工控機(jī)為基礎(chǔ),軟件為系統(tǒng)的主控進(jìn)程負(fù)責(zé)記錄用戶測(cè)試參數(shù)設(shè)置,向信號(hào)發(fā)生和信號(hào)接收處理模塊發(fā)出命令控制硬件儀器的自檢,按用戶需要完成標(biāo)定和測(cè)試流程,進(jìn)行數(shù)據(jù)分析,自動(dòng)修改數(shù)據(jù)庫(kù)、生成標(biāo)定數(shù)據(jù)表格、生成測(cè)試報(bào)告。
圖1自動(dòng)測(cè)試系統(tǒng)總體框圖
信號(hào)發(fā)生模塊硬件由工控機(jī)和標(biāo)定、模塊信號(hào)測(cè)試與射領(lǐng)視頻信號(hào)測(cè)試中所需的信號(hào)發(fā)生儀器組成。軟件由信號(hào)發(fā)生進(jìn)程和儀器驅(qū)動(dòng)組成負(fù)責(zé)接收控制模塊發(fā)出命令,控制儀器進(jìn)行對(duì)應(yīng)的操作、產(chǎn)生測(cè)試或標(biāo)定所需信號(hào)。
信號(hào)接收解調(diào)模塊硬件由工控機(jī)、信號(hào)接收解調(diào)卡(接收、解調(diào)標(biāo)定和模擬信號(hào)輸入測(cè)試過(guò)程中信號(hào)處理設(shè)備輸出的幀信號(hào))和射頻視頻信號(hào)參數(shù)測(cè)試儀器組成,軟件由信號(hào)接收解調(diào)進(jìn)程、主控進(jìn)程中的射頻視頻信號(hào)測(cè)試模塊和儀器驅(qū)動(dòng)組成負(fù)責(zé)接收控制主控程序發(fā)出的命令,返回給主控程序接收解調(diào)后的信號(hào)數(shù)據(jù)和射頻視頻信號(hào)測(cè)試參數(shù)。
2 系統(tǒng)硬件設(shè)計(jì)
整個(gè)硬件系統(tǒng)包括兩臺(tái)工控機(jī)、12臺(tái)測(cè)試儀器。本系統(tǒng)中的儀器設(shè)備主要有兩類,一是GPIB接口設(shè)備,二是PCI接口設(shè)備。在標(biāo)定與射頻視頻測(cè)試中,對(duì)設(shè)備的速度與實(shí)時(shí)性要求不高,但需要控制多臺(tái)儀器,因而選擇了GPIB接口設(shè)備。GP1B接口是并行雙向總線,通行速率小于1 MHz ,利用GPIB的一個(gè)接口可以連接巧個(gè)或更多的儀器并和它們進(jìn)行通信。另外加上兩條USB-GPIB線,通過(guò)對(duì)儀器設(shè)置不同的GPIB地址,用兩臺(tái)工控機(jī)上的各個(gè)USB口就實(shí)現(xiàn)了對(duì)6臺(tái)儀器的控制。在模擬信號(hào)測(cè)試中,對(duì)儀器傳輸速度有很高的要求,為了模擬測(cè)試信號(hào)處理設(shè)備在真實(shí)工作環(huán)境下能實(shí)時(shí)處理數(shù)十路模擬信號(hào)及多種高速傳輸?shù)臄?shù)字信號(hào),本系統(tǒng)中除了單路的高速正弦信號(hào)是用GPIB接口的任意函數(shù)發(fā)生器產(chǎn)生,其它信號(hào)發(fā)生卡均選擇了PCI接口設(shè)備。PCI總線高達(dá)132MB的傳輸速率,滿足了測(cè)試對(duì)儀器傳輸速度的要求。
在標(biāo)定模塊中,由于傳輸精度標(biāo)定不要求實(shí)時(shí)性,但對(duì)輸入信號(hào)精度有較高要求,因此使用了精密電源和任意函數(shù)發(fā)生器產(chǎn)生單路直流和交流標(biāo)準(zhǔn)信號(hào)。對(duì)多通道依次標(biāo)定,使用了數(shù)據(jù)采集/開(kāi)關(guān)單元用于自動(dòng)切換標(biāo)準(zhǔn)信號(hào)到被標(biāo)定信號(hào)通道。此外數(shù)據(jù)采集/開(kāi)關(guān)單元有自帶歐姆表可實(shí)現(xiàn)輸入端靜態(tài)電阻測(cè)試。
在模擬箱入信號(hào)側(cè)試模塊中,采用了2塊NI623模擬輸出卡,每塊可提供32路的模擬信號(hào)輸出,設(shè)計(jì)要求60路緩變信號(hào)和8路窄脈沖信號(hào),但由于實(shí)際側(cè)試中不可能同時(shí)使用所有通道信號(hào),因此其中有4路信號(hào)是緩變信號(hào)和窄脈沖信號(hào)復(fù)用的。任意函數(shù)發(fā)生器用于產(chǎn)生精確的高速正弦信號(hào),其余數(shù)字信號(hào)發(fā)生器見(jiàn)圖1。由于信號(hào)處理設(shè)備要求信號(hào)幅度范圍大于儀器可提供范圍,因此增加了匹配器放大模擬信號(hào)與正確模擬信號(hào)處理設(shè)備的輸入信號(hào)。
在射頻視頻信號(hào)側(cè)試模塊中,使用了任意函數(shù)發(fā)生器產(chǎn)生信號(hào)源,聯(lián)合使用了領(lǐng)譜儀、示波器對(duì)信號(hào)處理設(shè)備發(fā)射機(jī)的各參數(shù)進(jìn)行側(cè)試,使用了功率計(jì)對(duì)信號(hào)處理設(shè)備的工作功率進(jìn)行側(cè)試。標(biāo)定模塊、模擬信號(hào)側(cè)試模塊、射預(yù)視孩信號(hào)討試模塊中均使用了任意函數(shù)發(fā)生器,但由于3項(xiàng)工作不會(huì)同時(shí)進(jìn)行,因此任意函數(shù)發(fā)生器只需一臺(tái),3個(gè)模塊復(fù)用。
不同型號(hào)的信號(hào)處理設(shè)備輸入端通道數(shù)不同,要求不同參數(shù)的信號(hào)。信號(hào)通過(guò)控制儀器產(chǎn)生,為了滿足現(xiàn)有多種型號(hào)設(shè)備和未來(lái)發(fā)展的需求,系統(tǒng)所選信號(hào)發(fā)生儀器可產(chǎn)生的信號(hào)參數(shù)范圍和通道數(shù)均大于現(xiàn)有各型號(hào)設(shè)備浦試需要。不同型號(hào)信號(hào)處理設(shè)備通過(guò)定制不同的電纜與自動(dòng)側(cè)試系統(tǒng)相連,實(shí)現(xiàn)了自動(dòng)側(cè)試系統(tǒng)的通用性,滿足不同型號(hào)信號(hào)處理設(shè)備的側(cè)試需求,也降低了測(cè)試成本。
3 系統(tǒng)軟件設(shè)計(jì)
本自動(dòng)側(cè)試系統(tǒng)軟件在windows 2000下開(kāi)發(fā),采用了Labwindows/CVI作為軟件開(kāi)發(fā)平臺(tái)。
3.1系統(tǒng)軟件框架結(jié)構(gòu)
按照系統(tǒng)框圖連接好設(shè)備,工控機(jī)通過(guò)GPIB和PCI接口對(duì)儀器進(jìn)行設(shè)置,之后控制儀器獲得所需的輸出數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行分析,打印測(cè)試結(jié)果。系統(tǒng)主界面如圖2所示。軟件工作的基本流程如圖3所示。
3.2軟件設(shè)計(jì)
軟件系統(tǒng)由3個(gè)進(jìn)程組成,主控進(jìn)程、信號(hào)發(fā)生進(jìn)程和信號(hào)接收處理進(jìn)程,其中主控進(jìn)程和信號(hào)接收處理進(jìn)程運(yùn)行在一臺(tái)工控機(jī)上,信號(hào)發(fā)生進(jìn)程運(yùn)行在另一臺(tái)工控機(jī)上。進(jìn)程間的通信是軟件設(shè)計(jì)的一個(gè)重點(diǎn)。由于主控進(jìn)程與信號(hào)發(fā)生進(jìn)程不在一臺(tái)工控機(jī)上,兩者用交叉線相連,進(jìn)程間的通信利用了Labwindows/CVI的TCP支持?jǐn)?shù)據(jù)庫(kù)提供的庫(kù)函數(shù),主控程序發(fā)送TCP數(shù)據(jù)包到信號(hào)發(fā)生進(jìn)程,信號(hào)發(fā)生進(jìn)程通過(guò)數(shù)據(jù)包的首字節(jié)判斷不同的數(shù)據(jù)包,做出對(duì)應(yīng)的操作控制儀器,并返回消息到主機(jī)進(jìn)程以確認(rèn)數(shù)據(jù)包被正確發(fā)送。主控進(jìn)程與信號(hào)接收處理進(jìn)程間的命令傳送利用了Windows操作系統(tǒng)提供的基本通信工具“消息”。進(jìn)程間的數(shù)據(jù)交互利用了Windows提供的文件映射內(nèi)核對(duì)象,信號(hào)接收處理進(jìn)程把接收信號(hào)數(shù)據(jù)寫(xiě)入文件映射內(nèi)核后,發(fā)送消息通知主控進(jìn)程,主控進(jìn)程讀取數(shù)據(jù)進(jìn)行一系列數(shù)據(jù)分析,以判斷信號(hào)處理設(shè)備狀態(tài)。
圖2 系統(tǒng)主界面
圖3 軟件基本流程圖
紅外圖像信號(hào)與并行信號(hào)發(fā)生卡驅(qū)動(dòng)及應(yīng)用程序的設(shè)計(jì)是軟件設(shè)計(jì)的另一個(gè)重點(diǎn)。紅外圖像信號(hào)與并行信號(hào)發(fā)生卡是自行研制的,與其它購(gòu)買的儀器提供驅(qū)動(dòng)相比,需要開(kāi)發(fā)驅(qū)動(dòng)。使用了DDK工具包開(kāi)發(fā)WDM驅(qū)動(dòng)程序,其代碼簡(jiǎn)潔、結(jié)構(gòu)清晰、效率也比較高。讀寫(xiě)速度是驅(qū)動(dòng)開(kāi)發(fā)的關(guān)鍵,紅外圖像信號(hào)生成要求寫(xiě)速度達(dá)到15MB/s,為了滿足速度使用DMA讀寫(xiě)方式,硬件中使用的PCI9054橋接芯片提供了兩個(gè)獨(dú)立的DMA通道,紅外圖像信號(hào)和并行信號(hào)可以同時(shí)獨(dú)立讀寫(xiě)。此外紅外圖像信號(hào)要求按幀頻發(fā)出連續(xù)圖像,為了控制幀頻的準(zhǔn)確,由硬件按幀頻發(fā)出中斷,軟件收到一個(gè)中斷則硬件寫(xiě)入一幅圖像,軟硬件相互配合連續(xù)產(chǎn)生紅外圖像信號(hào)。應(yīng)用程序不直接調(diào)用驅(qū)動(dòng),把調(diào)用驅(qū)動(dòng)的接口函數(shù)封裝在DLL(動(dòng)態(tài)連接庫(kù))中使用DeviceIoControl函數(shù)調(diào)用驅(qū)動(dòng),使用Event內(nèi)核對(duì)象與驅(qū)動(dòng)同步中斷,方便應(yīng)用程序調(diào)用。
圖4 模擬信號(hào)涓試結(jié)果
4 測(cè)試結(jié)果
圖4是模擬信號(hào)通過(guò)示波器觀察的結(jié)果,圖5是ARINC429信號(hào)通過(guò)接收以后的結(jié)果。結(jié)果表明本系統(tǒng)比較好的實(shí)現(xiàn)了設(shè)計(jì)要求,但是需要注意的是由于模擬信號(hào)的數(shù)據(jù)大量存儲(chǔ)在內(nèi)存之中,因此當(dāng)啟動(dòng)模擬信號(hào)軟件以后,內(nèi)存通過(guò)PCI總線不斷的將數(shù)據(jù)發(fā)送至板卡的緩沖區(qū),經(jīng)過(guò)計(jì)算,數(shù)據(jù)量高達(dá)12.8M,此時(shí)若設(shè)置其它板卡將得不到響應(yīng),因此需要首先設(shè)置數(shù)字信號(hào)板卡,NI板卡需要最后設(shè)置并啟動(dòng),如此,系統(tǒng)可以相當(dāng)穩(wěn)定的運(yùn)行。
圖5 數(shù)字信號(hào)測(cè)試結(jié)果
5 結(jié)束語(yǔ)
綜上所述,由多臺(tái)精密儀器聯(lián)合和ANSI C語(yǔ)言編寫(xiě)控制程序組成的自動(dòng)控制系統(tǒng),可以完成對(duì)信號(hào)處理設(shè)備的傳輸標(biāo)定、模擬信號(hào)調(diào)試和射頻視頻信號(hào)測(cè)試,并且可以滿足該信號(hào)處理設(shè)備的多個(gè)型號(hào)的測(cè)試要求,該自動(dòng)湄試平臺(tái)硬件配置方便,軟件界面友好,在信號(hào)處理設(shè)備的實(shí)際測(cè)試中取得良好的效果。