基于GPIB總線的虛擬頻譜儀設(shè)計
引言
頻譜儀是測量電磁干擾頻譜的一種設(shè)備。在測試項目中,單一的利用頻譜儀有很多弊端,如數(shù)據(jù)無法快速保存,頻譜圖無法提取,人機界面不夠友好等,因此,本文決定用虛擬儀器的概念來進行系統(tǒng)設(shè)計。虛擬儀器是指在以計算機為硬件的平臺上,利用顯示屏上的虛擬面板來模擬傳統(tǒng)儀器的控制面板,利用鼠標(biāo)、鍵盤來操作儀器,從而完成特定測試的計算機系統(tǒng)。此系統(tǒng)利用GPIB卡實現(xiàn)PC機與頻譜儀之間的通信。GPIB卡是一種比較成熟的總線,即IEEE488總線,它是一種并行的外總線。當(dāng)用GPIB標(biāo)準(zhǔn)建立一個由計算機控制的測試系統(tǒng)時,不需要再加一大堆復(fù)雜的控制電路。GPIB系統(tǒng)以機架疊式智能儀器為主要器件,構(gòu)成開放式的積木測試系統(tǒng)。因此,GPIB總線是當(dāng)前工業(yè)上應(yīng)用最廣泛的通信總線之一。
1 GPIB總線
1.1 GPIB總線的使用約定
GPIB的數(shù)據(jù)傳輸速率一般能達到250kB/s?500kB/s,最高可達8m/s;連接在總線上的設(shè)備(包括作為主控器的微型機)W15個;設(shè)備間的最大距離<20m;整個系統(tǒng)的電纜總長度<220m,若電纜的長度超過220m,則會因延時而改變定時關(guān)系,從而造成工作的不可靠。這種情況應(yīng)加調(diào)制解調(diào)器。所有的交換都必須是數(shù)字化的。總線規(guī)定使用24線的組合插頭,并且采用負(fù)邏輯,即用小于+0.8V的電平表示邏輯“1”,用大于2V的電平表示邏輯“0”。利用GPIB總線可將微型計算機和其他若干設(shè)備連接在一起。連接時,既可以釆用串行連接,也可以釆用星形連接。
1.2 GPIB端口介紹
GPIP總線連接器的端排列見圖1,其接口線由16條信號線和8條接地線組成。這16條信號線是各儀器裝置信號傳送的唯一通路。
GPIB接口總線的16條信號線可分為三類,這16條線由數(shù)據(jù)線、握手線和接口管理線組成。
GPIB的數(shù)據(jù)線共8條,為8位DIO1—DI08的雙向總線,用于接口上傳遞器件與器件間的信息。一般情況下使用7位的ASCII碼,若有需要,剩下的一位可以當(dāng)同位碼使用。該8條線傳遞的信息包括插件接口指令、地址及與器件有關(guān)的數(shù)據(jù)等。
GPIB的握手線有3條(DAV,NRFD,NDAC),此3條線用以協(xié)調(diào)總線上從講者至聽者的數(shù)據(jù)流動,可以確保數(shù)據(jù)傳輸無誤。
其余的是接口管理線有5條,專門負(fù)責(zé)監(jiān)視與管理總線的運作,使信息能有序的流通,現(xiàn)將這5條線說明如下:
ATN(Attention)是監(jiān)視線。在總線控制器的驅(qū)動下,使用ATN的不同狀態(tài)能對數(shù)據(jù)總線上的信息做出解釋和響應(yīng);
IFCdnterfaceclear)是接口清零線。此線由系統(tǒng)控制者用來對總線上的所有運作(包括所有講者,接收者)進行査詢;
REN(RemoteEnable)為遠程遙控使能控線。此線由系統(tǒng)控者控制,可用來使總線上的各裝置進入遠程使能;
SRQ(ServiceRequest)為服務(wù)請求線。用來指出某個器件請求控制器的服務(wù);
EOICEndorIdentify)是結(jié)束或識別線。
1.3 Agilent 82350BGPIB卡
Agilent 82350B是適用于Windows的高性能PCIGPIB接口,它可將PCI總線和GPIB總線上的傳輸相互轉(zhuǎn)換。其緩沖可提供直接存儲器訪問(DMA)的I/O和系統(tǒng)性能。為實現(xiàn)容易的硬件安裝,其硬件可由軟件配置,并與即插即用標(biāo)準(zhǔn)兼容。該GPIB接口卡一般可插入PC底板的5VPCI插槽中。
2 系統(tǒng)組成
2.1 硬件結(jié)構(gòu)
本系統(tǒng)主要由天線前端、N16009數(shù)據(jù)采集卡、外部觸發(fā)器.HP8951E頻譜儀.GPIB卡及PC機組成。
首先,利用數(shù)據(jù)釆集卡可對頻譜儀的功能進行補充,使其滿足設(shè)計要求,并大幅度提高采樣點數(shù)量。其次利用GPIB卡可實現(xiàn)頻譜儀和PC機之間的數(shù)據(jù)交換,GPIB卡是Agilent公司生產(chǎn)的一種用于頻譜儀和PC機之間數(shù)據(jù)通信的高性能卡,在Agilent公司提供的VASA與DAQmx中提供有對GPIB設(shè)備的控制程序庫,直接調(diào)用庫中的函數(shù),即可以實現(xiàn)對GPIB設(shè)備的控制,同時實現(xiàn)底層頻譜儀和PC機之間的通信。其硬件結(jié)構(gòu)圖如圖2所示。
2.2 軟件結(jié)構(gòu)
系統(tǒng)軟件以LabWindows/CVI為平臺編寫。LabWindows/CVI是NI公司推出的交互式C語言開發(fā)平臺。LabWindows/CVI將功能強大、使用靈活的C語言平臺與用于數(shù)據(jù)采集分析和顯示的測控專業(yè)工具有機地結(jié)合起來,利用它的集成化開發(fā)環(huán)境、交互式編程方法、函數(shù)面板和豐富的庫函數(shù)可以大大增強C語言的功能,為熟悉C語言的開發(fā)設(shè)計人員編寫檢測系統(tǒng)、自動測試環(huán)境、數(shù)據(jù)采集系統(tǒng)、過程監(jiān)控系統(tǒng)等應(yīng)用軟件提供了一個理想的軟件開發(fā)環(huán)境。系統(tǒng)軟件框架如圖3所示。
軟件系統(tǒng)由參數(shù)設(shè)置模塊、數(shù)據(jù)采集模塊、底層控制模塊、數(shù)據(jù)處理模塊、報表模塊和主界面模塊組成。其需要實現(xiàn)的功能有項目的管理,項目參數(shù)、頻譜儀參數(shù)的設(shè)定與傳送,頻譜儀、采集卡的控制,釆集數(shù)據(jù)的處理、顯示及保存。圖4所示是一個測試項目的程序流程圖。
2.3 VISA介紹
VISACVirtualInstrumentationSoftwareArchi-tecture)是虛擬儀器軟件結(jié)構(gòu)的縮寫,是VPP系統(tǒng)聯(lián)盟制定的I/O接口軟件標(biāo)準(zhǔn)及其相關(guān)規(guī)范的總稱。VISA為虛擬儀器提供了標(biāo)準(zhǔn)化的I/O接口軟件規(guī)范。它駐留在計算機系統(tǒng)中,可用來處理儀器與控制程序之間的通信,是計算機與儀器之間的軟件層連接,VISA庫可為用戶提供簡捷的函數(shù)接口,以實現(xiàn)對儀器的控制。VISA控制儀器的一般流程見圖5所示。
從圖5可以看出,用VISA控制儀器的第一步就是啟動VISA。即用VISA的viOpenDefaultRM功能對VISA系統(tǒng)進行初始化和起動。viOpenDefaul-tRM功能必須在調(diào)用其他VISA功能之前執(zhí)行,該功能的參數(shù)是起動信息;
第二步為連接,即通過VISA的viOpen功能進行與規(guī)定儀器的連接,viOpen功能返回某個值,可使得VISA功能應(yīng)用于規(guī)定儀器,這個功能的參數(shù)是起動信息、規(guī)定儀器的地址信息;
第三步為通信,VISA的viPrintf以一定的字符串格式轉(zhuǎn)換、格式化、發(fā)送命令參數(shù)給制定的儀器會話;VISA的viQuery函數(shù)則可向儀器發(fā)送一定字符串命令,隨后從儀器的輸出隊列讀取數(shù)據(jù);
第四步是斷開,即通過VISA的viClose功能將通信中斷并使VISA系統(tǒng)終結(jié)。
3 系統(tǒng)測試
通過GPIB卡構(gòu)建的虛擬頻譜儀測試效果如圖6所示。
與傳統(tǒng)的頻譜儀直接掃描相比,虛擬頻譜儀具有以下幾個優(yōu)點:
(1) 具有更高的采樣率,可使頻譜圖的數(shù)據(jù)點大大增加,從而可以繪制出更精確地頻譜圖;
(2) 具有強大的數(shù)據(jù)處理能力,可以結(jié)合VC++ 對數(shù)據(jù)進行進一步的處理,從而得到滿足用戶要求的圖形。
(3) 增加了頻譜儀測量功能,如圖6中,頻譜的測量采用最大軌跡保持方式,可以測量出一段時間內(nèi)干擾的頻率及最大值。此外,通過其干擾的空間分布,還可以快速確定干擾的位置及頻率。
4 結(jié)論
通過GPIB總線構(gòu)建的虛擬頻譜儀可以建立快速、高效的干擾頻譜測試系統(tǒng)。且其人機界面更加友好,測試功能更為強大,用戶還能根據(jù)需求設(shè)置虛擬頻譜儀操作界面和附加功能,以便快速、方便、準(zhǔn)確的完成測試任務(wù)。