LabVIEW環(huán)境下的GPIB總線(xiàn)虛擬儀器開(kāi)發(fā)
在LabVIEW中為實(shí)現與GPIB儀器通信有兩種方式,一種是利用函數模板中Instrument I/O子模板下的GPIB相關(guān)函數,另一種是利用函數模板中Instrument I/O子模板下的VISA相關(guān)函數,實(shí)際上VISA相關(guān)函數不僅能與GPIB總線(xiàn)通信,還能與許多其他接口類(lèi)型的儀器通信,如串口儀器、PXI接口儀器和TCPPIP接口儀器。本文采用VISA相關(guān)函數,每一個(gè)VISA函數都有一個(gè)VISA資源名稱(chēng)參數,用來(lái)指明該函數對應的硬件設備。本實(shí)例中的VISA資源名稱(chēng)為GPIB:12,其中GPIB用于指明指口的類(lèi)型,12是磁測量?jì)x器在GPIB總線(xiàn)上的地址(出廠(chǎng)設定值)。與磁測量?jì)x通信的第一步是建立計算機與儀器的連接,此任務(wù)可以通過(guò)VISA的OPEN函數來(lái)實(shí)現,接著(zhù)利用VISA的WRITE函數,可以根據需要向儀器發(fā)送各種命令,VISA的READ函數可以讀取儀器響應的任何數據,完成所有測試任務(wù)后,借助于VISA的CLOSE函數斷開(kāi)計算機與磁測量?jì)x的通信連接。值得注意的是,多數GPIB接口儀器基于字符串格式的,即使從儀器讀回的數字也是字符串格式的數字,為了進(jìn)行后續的分析處理必須將其轉化為數字類(lèi)型。
LabVIEW中的函數模板中String子模板下的Srting/Numbder Conversion下提供了一個(gè)專(zhuān)門(mén)從字符串中掃描數字的函數,利用此函數可以方便的將字符串格式的數字轉化成數字型。儀器的編程風(fēng)格有兩種方式:一種是非模塊化編程,即針對特定的需要編寫(xiě)特定的程序以滿(mǎn)足需要,此方法直接,容易實(shí)現,但其可擴充性差,不便于后續升級和更改。另一種是模塊化編程,即將儀器的各種功能模塊化,然后根據需要選擇相應的模塊來(lái)實(shí)現特定的要求,該方法前期工作投入大,但其后續工作簡(jiǎn)單,且便于升級和更改。本實(shí)例采用模塊編程風(fēng)格。
根據美國NI公司提出的“軟件就是儀器”的口號,一個(gè)LabVIEW就是一臺虛擬儀器,通常一個(gè)LabVIEW程序包括三個(gè)部分:前面板、框圖和圖標。圖2為實(shí)例虛擬儀器的框圖。
如圖2所示,本框圖包括三個(gè)模塊,即儀器設置模塊(CONFIG模塊)、單位顯示模塊(UNITDISPLAY模塊)和數據采集測試模塊(TEST模塊)。其中設置模塊主要用來(lái)完成測試相關(guān)參數的設定,如儀器GPIB地址、單位設置、量程模式選擇(自動(dòng)或手動(dòng))、量程范圍(如果量程模式為自動(dòng)則不需指定量程范圍,儀器將根據外磁場(chǎng)自動(dòng)變化到相應的量程)、磁場(chǎng)類(lèi)型(交流或直流),如果測量的是交流磁場(chǎng),可通過(guò)PeakPRMS按鈕選擇測量其峰值或平均值。單位顯示模塊主要用來(lái)指示測試結果的單位,由于磁場(chǎng)存在兩種單位,高斯(Gauss)和特斯拉(Tesla),而且對應不同的量程有不同的單位,如T或mT、kG或G,所以專(zhuān)門(mén)編寫(xiě)了一個(gè)單位顯示模塊,三個(gè)單位顯示分別為當前讀數的單位及最大值和最小值的單位。數據采集測試模塊是該虛擬儀器的核心模塊,主要完成磁場(chǎng)的測試,根據實(shí)際測量需要任意指定磁場(chǎng)采樣間隔,并將磁場(chǎng)的測量結果實(shí)時(shí)顯示,測試完成后可將全部測試結果以文件方式保存,以便后續分析處理。另外,本模塊只提供兩個(gè)最簡(jiǎn)單的分析功能,即測量結果的最大值和最小值。對于更復雜的數據分析處理,如譜分析,可利用LabVIEW豐富分析函數庫編寫(xiě)其他的模塊加以實(shí)現,本虛擬儀器暫不涉及。
此外,由圖2可以看出模塊化的編程,不僅使程序結構變得十分簡(jiǎn)單,而且編程者可以不必了解儀器的底層通信協(xié)議,因為與儀器通信的底層編程已封裝在模塊內部,從而進(jìn)一步簡(jiǎn)化了虛擬儀器的開(kāi)發(fā)。圖3(略)為實(shí)例虛擬器的前面板,左邊為測試結果顯示區,包括當前讀數、最大值、最小值和測試曲線(xiàn);右邊是參數設置區,右下方的“停止P開(kāi)始”開(kāi)關(guān)用于停止和開(kāi)始磁場(chǎng)的測試,“保存”按鈕用于將測試結果存盤(pán)。與臺式磁測量?jì)x相比,此虛擬儀器最大特點(diǎn)在于它能進(jìn)行實(shí)時(shí)采集測量,并將采集結果保存到文件,以供后續分析使用。嚴格意義上說(shuō),基于臺式儀器的虛擬儀器不僅可以實(shí)現臺式儀器的所有功能,而且還可以實(shí)現臺式儀器所不具備的功能,尤其是測試結果后續分析與處理,因為測試結果的分析處理不依賴(lài)于硬件,完全取決于實(shí)際的要求。此外,虛擬儀器還具有易升級,易更改等優(yōu)點(diǎn)。
結 論
文中介紹了采用LabVIEW虛擬儀器開(kāi)發(fā)平臺開(kāi)發(fā)基于GPIB總線(xiàn)的虛擬儀器的硬件及軟件要求。結合磁測量虛擬儀器開(kāi)發(fā)實(shí)例,介紹了開(kāi)發(fā)基于GPIB總線(xiàn)的虛擬儀器的全過(guò)程。實(shí)驗證明該虛擬儀器能很好地完成磁場(chǎng)的實(shí)時(shí)采集測量,并將測試結果存盤(pán)以供后續分析使用,此功能是臺式磁測量?jì)x所不具備的功能,從而大大擴充了臺式儀器的功能。
評論