基于LabWindows/CVI的虛擬示波器研究與設(shè)計
0 引言
隨著虛擬儀器技術(shù)的發(fā)展,采用“虛擬儀器”來取代傳統(tǒng)儀器的新的測量方法正在逐步取代傳統(tǒng)的測控系統(tǒng)。虛擬儀器技術(shù)就是利用計算機技術(shù)和儀器技術(shù),結(jié)合高效的各類軟件平臺來完成各種測量的技術(shù)。與傳統(tǒng)的儀器相比虛擬儀器具有開發(fā)成本低、開發(fā)周期短、升級、維護容易和增加了系統(tǒng)的靈活性等特點。
虛擬儀器利用各種通信端口完成對信號的采集和調(diào)理,利用計算機的強大處理能力對數(shù)據(jù)進行運算和分析,利用監(jiān)控軟件模擬各種儀器的操作界面。
虛擬儀器主要包括3 個組成部分:高效的應(yīng)用軟件、模塊化的I/O硬件和用于集成的軟硬件平臺。
本文虛擬示波器界面采用LabWindows/CVI平臺開發(fā)。LabWindows/CVI是NI公司推出的交互式C語言開發(fā)平臺。LabWindows/CVI將功能強大、使用靈活的C語言平臺與用于數(shù)據(jù)采集分析和顯示的測控專業(yè)工具有機的結(jié)合起來,利用它的集成開發(fā)環(huán)境、交互式編程方法、函數(shù)面板和豐富的庫函數(shù)大大增強了C 語言的功能,為設(shè)計人員編寫檢測系統(tǒng)、自動測試環(huán)境等應(yīng)用軟件提供了一個理想的軟件開發(fā)環(huán)境。
1 系統(tǒng)整體框架
1.1 系統(tǒng)組成
系統(tǒng)組成框圖如圖1所示。
1.2 數(shù)據(jù)采集系統(tǒng)的設(shè)計
數(shù)據(jù)采集卡是虛擬示波器的硬件基礎(chǔ),本文采用綠揚電子的數(shù)字示波器YB54500的內(nèi)部數(shù)據(jù)采集卡采集數(shù)據(jù)。其基本的工作原理為:被測量信號經(jīng)過通道送入數(shù)據(jù)采集電路,經(jīng)過數(shù)據(jù)采集板上的交直流選擇電路、濾波電路、衰減電路、放大電路再通過AD 采樣量化后送入到數(shù)據(jù)存儲卡中。
LabWindows/CVI通過LAN口獲取數(shù)據(jù)存儲卡中的的數(shù)據(jù),再通過虛擬界面顯示波形和數(shù)據(jù),從而獲得近似真實儀器的測試結(jié)果。
1.3 LAN接口設(shè)計
使用網(wǎng)絡(luò)化的虛擬儀器,可方便人們在異地交換數(shù)據(jù),與傳統(tǒng)儀器相比,在網(wǎng)絡(luò)化儀器環(huán)境條件下,被測對象可以通過測試現(xiàn)場的普通儀器設(shè)備將測得數(shù)據(jù)通過網(wǎng)絡(luò)傳輸給異地的高檔次的儀器去分析、處理;能實現(xiàn)測量信息的共享;可掌握網(wǎng)絡(luò)節(jié)點處信息的實時變化的趨勢。
本文上位機通過LAN與YB54500的內(nèi)部數(shù)據(jù)采集模塊相連,LAN 的傳輸速率高(10 Mb/s),且易于擴展,方便在同一臺計算機上控制多個設(shè)備。
數(shù)據(jù)采集端的網(wǎng)口硬件電路圖如圖2所示。
2 軟件設(shè)計
2.1 虛擬儀器的軟件開發(fā)工具
虛擬儀器必須要具有良好的操作環(huán)境和強大的處理能力。本系統(tǒng)選擇LabWindows/CVI 軟件平臺。
LabWindows/CVI的用戶界面編程器可以創(chuàng)建并編譯圖形用戶界面(GUI),用戶界面庫函數(shù)可以在程序中創(chuàng)建并控制GUI.LabWindows/CVI 中儀器庫包含GPIB、VXI和RS 232等儀器的驅(qū)動程序。LabWindows/CVI的功能強大還在于它提供了豐富的庫函數(shù),可以實現(xiàn)復(fù)雜的數(shù)據(jù)采集和儀器控制系統(tǒng)的開發(fā)。
2.2 波形顯示模塊
測量波形采用LabWindows/CVI中提供的Graphs來顯示,將采集的數(shù)據(jù)保存在動態(tài)數(shù)組中,對數(shù)據(jù)進行時域分析并畫出波形圖。數(shù)據(jù)也可經(jīng)過運算后再顯示,波形運算包括通道1和通道2的波形的相加、相減、相乘和相除。
2.3 波形分析模塊
波形分析是將時域信號通過一定的數(shù)學(xué)運算轉(zhuǎn)換成頻域信號,可以更加方便地對信號進行研究分析。
2.4 信號調(diào)節(jié)模塊
信號調(diào)節(jié)模塊主要完成信號的垂直增益和水平增益的調(diào)節(jié)。圖3為信號調(diào)節(jié)模塊程序流程圖。
2.5 程控命令樹
本系統(tǒng)中包含16個子程控命令樹,TIMEBASE根級子系統(tǒng)命令、CHANNEL1和CHANNEL2根級子系命令、TRIGGER根級子命令系統(tǒng)等。以波形運算程控命令樹為例,如圖4所示。
2.6 TCP協(xié)議與TCP庫
TCP 協(xié)議(Transmission Control Protocol,傳輸控制協(xié)議)在IP 協(xié)議之上。與IP 協(xié)議提供不可靠傳輸服務(wù)不同的是,TCP協(xié)議為其上的應(yīng)用層提供了一種可靠傳輸服務(wù)。這種服務(wù)的特點是:可靠、全雙工、流式和無結(jié)構(gòu)傳輸。
LabWindows/CVI 的TCP 庫函數(shù)提供了與平臺無關(guān)、面向連接的、字節(jié)流網(wǎng)絡(luò)通信協(xié)議編程接口。
下面是LAN通信代碼實例:
3 結(jié)果分析
根據(jù)上述的軟件設(shè)計思想,完成圖3虛擬界面的設(shè)計。以正弦波信號為例進行分析,結(jié)果如圖5所示。
虛擬示波器的功能包括:
(1)通道垂直偏轉(zhuǎn)系數(shù)開關(guān)(VOLTS/DIV):調(diào)節(jié)通道衰減檔位偏轉(zhuǎn)系數(shù);(2)顯示屏:顯示波形及相關(guān)信息的主要輸出界面;(3)通道功能鍵:用來打開或關(guān)閉對應(yīng)通道及菜單;(4)通道垂直位移旋鈕:用來調(diào)節(jié)通道波形垂直位移;(5)觸發(fā)電平調(diào)整旋鈕(LEVEL):根據(jù)觸發(fā)電平?jīng)Q定掃描開始的位置;(6)運行/停止功能鍵:按一次波形停止,再按一次波形運行;(7)自動功能鍵:按一下此鍵自動捕獲波形的相關(guān)數(shù)據(jù)在屏上準(zhǔn)確顯示;(8)運算功能鍵:按下該鍵打開或關(guān)閉運算功能及菜單;(9)LAN接口:外接網(wǎng)線。
4 結(jié)語
虛擬儀器的出現(xiàn),徹底打破了傳統(tǒng)儀器由廠家定義功能,用戶無法改變的模式。用戶可以根據(jù)自己的需求,設(shè)計儀器系統(tǒng)。隨著電子技術(shù)的不斷發(fā)展虛擬儀器正向著智能化、網(wǎng)絡(luò)化的形式邁進?;贚AN 設(shè)計的虛擬示波器滿足了工業(yè)智能控制系統(tǒng)的要求,有效的降低了監(jiān)控、測控工作的人力和財力投入。虛擬儀器結(jié)合了計算機技術(shù)與測量技術(shù),開創(chuàng)了個人計算機儀器時代,是測量儀器工業(yè)發(fā)展的一個里程碑。