繆 韡
青海大學(xué)機(jī)械工程學(xué)院,青海西寧 810016
虛擬儀器(Virtual Instrument,簡稱VI)是現(xiàn)代計(jì)算機(jī)技術(shù)和儀器技術(shù)深層次結(jié)合的產(chǎn)物,是當(dāng)今計(jì)算機(jī)輔助測試(CAT)領(lǐng)域的一項(xiàng)重要技術(shù)。它解決了傳統(tǒng)儀器設(shè)備面臨的許多難題,改善了傳統(tǒng)儀器設(shè)備配套固定、應(yīng)用狹窄、功能單一的缺點(diǎn),虛擬儀器系統(tǒng)可以靈活地應(yīng)用于各種測量控制環(huán)境,而且實(shí)現(xiàn)了功能用途多元化,可以從軟件方面改善許多傳統(tǒng)儀器設(shè)備無法實(shí)現(xiàn)的功能[2]。本文應(yīng)用虛擬儀器開發(fā)平臺(tái)LabWindows 開發(fā)了一種數(shù)據(jù)采集系統(tǒng),本系統(tǒng)不僅具有一定的實(shí)用價(jià)值,也有很大的功能擴(kuò)展性,只需知道采集板卡的基本參數(shù),用戶就可以自行設(shè)計(jì)程序,實(shí)現(xiàn)其他功能。
綜觀目前國內(nèi)外虛擬儀器開發(fā)的現(xiàn)狀,虛擬儀器總體結(jié)構(gòu)有以下兩種形式:
1)系統(tǒng)集成式虛擬儀器系統(tǒng):將測試儀器儀表設(shè)計(jì)成為PC 機(jī)的I/O 插卡,直接插入計(jì)算機(jī)的I/O 擴(kuò)展槽中,這樣可將不同儀器儀表集成在一個(gè)系統(tǒng)內(nèi),從而大大降低成本。所有的這些儀器插卡均在符合統(tǒng)一標(biāo)準(zhǔn)的軟件支持下供用戶操作,共享計(jì)算機(jī)資源。因此這樣的系統(tǒng)具有成本上的優(yōu)勢,儀器插卡具有很強(qiáng)的抗干擾能力,在虛擬儀器系統(tǒng)設(shè)計(jì)中應(yīng)用十分廣泛;
2)基于總線技術(shù)式虛擬儀器系統(tǒng):此類虛擬儀器則是做成具有總線結(jié)構(gòu)的測試儀器的主機(jī)板,在總線底板插槽上插入模擬量輸入/輸出、數(shù)字量輸入/輸出、頻率或脈沖量輸入/輸出等功能插件,可組成具有不同規(guī)模和功能的測試系統(tǒng),測控機(jī)箱與計(jì)算機(jī)通過互連總線相連,各測試設(shè)備與計(jì)算機(jī)網(wǎng)絡(luò)通過現(xiàn)場總線相連,從而構(gòu)成一個(gè)自動(dòng)測控系統(tǒng)。這類虛擬儀器由于采用標(biāo)準(zhǔn)的總線結(jié)構(gòu),系統(tǒng)比較靈活方便,可以連接多種設(shè)備,而且其測控機(jī)箱獨(dú)立,可以減少干擾,具有較高的精度。但系統(tǒng)成本較高并且在跨總線連接設(shè)備時(shí)會(huì)增加軟件開發(fā)的工作量。
綜合比較上述兩種方案的優(yōu)缺點(diǎn),考慮到設(shè)計(jì)要求和成本等因素,本次虛擬儀器系統(tǒng)的設(shè)計(jì)采用plug-in DAQ 的硬件平臺(tái),即以標(biāo)準(zhǔn)的PC 機(jī)為基本框架平臺(tái),通過插入數(shù)據(jù)采集卡獲得具有信號的輸入/輸出功能的硬件平臺(tái),利用不同的軟件模塊實(shí)現(xiàn)不同的功能。本方案的優(yōu)點(diǎn)是成本較低,軟件決定系統(tǒng)的功能,真正體現(xiàn)了虛擬儀器的靈活性和成本較低的優(yōu)勢。
數(shù)據(jù)采集及處理系統(tǒng)的總體結(jié)構(gòu)如圖1 所示,硬件平臺(tái)選用PC 機(jī)為總體框架,數(shù)據(jù)采集卡為UN105N 型A/D 多功能數(shù)據(jù)采集卡,虛擬儀器系統(tǒng)運(yùn)行環(huán)境為WINDOWS XP,開發(fā)語言選擇為LabWindows。
圖1 數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)框圖
數(shù)據(jù)采集系統(tǒng)程序主要是利用C 語言進(jìn)行編程,借助Labwindows 進(jìn)行界面設(shè)計(jì),實(shí)現(xiàn)了三路數(shù)據(jù)的高速采集,各通道數(shù)據(jù)和波形顯示,數(shù)據(jù)存儲(chǔ)及打印的功能。系統(tǒng)軟件程序采用模塊化設(shè)計(jì)思想,主要由四個(gè)部分組成,分別是采集函數(shù)、顯示函數(shù)、儲(chǔ)存函數(shù)以及打印函數(shù)。
數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)中,硬件選用的是優(yōu)采公司UA105N型多功能數(shù)據(jù)采集卡,由于該卡未帶WINDOWS 下驅(qū)動(dòng),沒有Win32 接口函數(shù)供調(diào)用。故在編程時(shí)需要自己編寫采集代碼。數(shù)據(jù)采集系統(tǒng)的采集控制有多種方法,分別說明如下:
1)軟件觸發(fā),軟件通道選擇:這種方法是由程序指令觸發(fā)A/D 轉(zhuǎn)換板進(jìn)行數(shù)據(jù)采集,由程序指令任意選擇A/D 轉(zhuǎn)換板采樣通道,是一種比較靈活的采集控制方法;
2)定時(shí)觸發(fā),軟件通道選擇:這種方法是采用定時(shí)器定時(shí)觸發(fā)采集,即是通過對板上定時(shí)器8253 通道0 的控制編程,使之發(fā)出等間隔的脈沖觸發(fā)A/D 轉(zhuǎn)換板采集,可以在單通道采集時(shí)獲得準(zhǔn)確的采樣頻率。但由于軟件轉(zhuǎn)換通道不能實(shí)現(xiàn)最佳時(shí)序,所以在多通道采集時(shí)不能達(dá)到采集要求;
3)手動(dòng)觸發(fā),自動(dòng)通道掃描:可實(shí)現(xiàn)最高頻率下通道順序遞增快速循環(huán)采集,也可設(shè)置不連續(xù)的通道。
根據(jù)設(shè)計(jì)的要求,本程序采用了定時(shí)觸發(fā),自動(dòng)通道掃描的方式進(jìn)行數(shù)據(jù)采集,為便于數(shù)據(jù)處理,通道設(shè)置為自動(dòng)順序遞增。
對采集到的數(shù)據(jù)進(jìn)行數(shù)據(jù)處理,最有效的方法是將其繪制成波形圖,從波形中直觀的看出數(shù)據(jù)變化規(guī)律,是否有明顯的干擾,是何種信號,還可以直觀的判斷出采集過程是否有誤。但這種方法顯示的波形圖不夠精確,因此,本程序設(shè)計(jì)中考慮到上述因素,選擇了在顯示波形的同時(shí),也顯示采集到的數(shù)據(jù)。
虛擬儀器在測量領(lǐng)域的一大優(yōu)勢就是可以很方便的利用計(jì)算機(jī)方便且廉價(jià)的存儲(chǔ)能力,將大量數(shù)據(jù)以及波形存儲(chǔ)在磁盤中,不僅可以很方便的查找,還可以很方便的還原數(shù)據(jù)與波形,應(yīng)用于其他處理。本采集程序中數(shù)據(jù)的存儲(chǔ)十分簡單易行,可以任意選擇通道進(jìn)行數(shù)據(jù)與波形的保存,數(shù)據(jù)存儲(chǔ)格式采用ASCII 的存儲(chǔ)格式,可根據(jù)需要輸入相應(yīng)的文件名,并可以自由選擇存儲(chǔ)路徑。
圖2 數(shù)據(jù)采集系統(tǒng)操作界面
數(shù)據(jù)采集系統(tǒng)操作界面如圖2 所示,設(shè)計(jì)總體上包括兩個(gè)部分,參數(shù)設(shè)置部分及圖形數(shù)據(jù)顯示部分。參數(shù)設(shè)置部分包括起始通道號、各通道采集頻率、各通道采集點(diǎn)數(shù)及需要繪圖的通道設(shè)置。在設(shè)置好三個(gè)基本參量后,用戶可點(diǎn)擊【采集】按鈕開始采集。此時(shí)系統(tǒng)將在后臺(tái)進(jìn)行操作,完成對各參量的初始化,以及數(shù)據(jù)的采集工作。在采集完成以前【繪圖】、【保存】、【打印】為隱藏按鈕,點(diǎn)擊也不起作用,當(dāng)采集完成以后,彈出【采集完成】的提示對話并激活這三個(gè)按鈕。需要觀察波形和數(shù)據(jù)時(shí),先在參數(shù)設(shè)置中選擇需要繪圖的通道,然后點(diǎn)擊【繪圖】按鈕,便可在右邊的圖表中繪制波形圖,并且在文本框中顯示采集的數(shù)據(jù),不同通道的波形可用不同的顏色繪制。波形中,橫坐標(biāo)表示采集到的點(diǎn)的順序,縱坐標(biāo)表示相應(yīng)點(diǎn)對應(yīng)的電壓值,考慮到一般需要,繪圖和數(shù)據(jù)顯示時(shí)均顯示全部采集到的數(shù)據(jù)。圖3 為某此數(shù)據(jù)采集后得到的波形圖,圖4 為某次數(shù)據(jù)采集后得到的采集數(shù)據(jù)。
圖3 某次數(shù)據(jù)采集后得到的波形圖
圖4 某次數(shù)據(jù)采集后得到的采集數(shù)據(jù)
本文設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)實(shí)現(xiàn)了多通道數(shù)據(jù)采集、顯示、存儲(chǔ)及打印的功能,并生成執(zhí)行文件,使得用戶不需在PC 機(jī)上安裝LabWindows/CVI 軟件,只需安裝并運(yùn)行執(zhí)行文件即可進(jìn)行數(shù)據(jù)的采集。實(shí)際應(yīng)用表明,該數(shù)據(jù)采集系統(tǒng)具有成本低、功能強(qiáng)、操作簡單、使用方便等特點(diǎn),同時(shí)虛擬儀器“軟件決定系統(tǒng)功能”的思想也使得本系統(tǒng)具有很高的靈活性和可擴(kuò)展性,用戶可在本系統(tǒng)的基礎(chǔ)上通過改變或增加軟件程序,改變或者擴(kuò)展系統(tǒng)的功能,可增加示波器、數(shù)據(jù)處理及濾波、標(biāo)定等功能。
[1]張毅剛,喬力巖.LabWindows/CVI 6.0編程指南[M].北京:機(jī)械工業(yè)出版社,2002,8.
[2]王建新,隋美麗.LabWindows/CVI虛擬儀器測試技術(shù)及工程應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2011,9.