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