李趙春,程玉柱
(南京林業(yè)大學(xué),江蘇 南京 210037)
近年來,隨著計(jì)算機(jī)技術(shù)、通信技術(shù)以及儀器技術(shù)的發(fā)展,虛擬儀器(Virtual Instruments,VI)技術(shù)得到前所未有的迅猛的發(fā)展,鑒于其技術(shù)層面上的多樣性,虛擬儀器技術(shù)也成為當(dāng)前國內(nèi)外測試技術(shù)和儀器制造界十分關(guān)注的熱門話題[1-4]。
對于虛擬儀器測試實(shí)驗(yàn)室來說,要達(dá)到一定數(shù)量的設(shè)備才能滿足教學(xué)實(shí)驗(yàn)的要求,因此要求所有的計(jì)算機(jī)軟硬件、儀器設(shè)備、前端裝置都要購置或開發(fā)多套[5]。為了節(jié)約成本,采用網(wǎng)絡(luò)技術(shù),構(gòu)建基于網(wǎng)絡(luò)的虛擬儀器測試實(shí)驗(yàn)系統(tǒng)成為必要手段[6-8]。同時(shí),網(wǎng)絡(luò)化的測試系統(tǒng)也為遠(yuǎn)程測試和監(jiān)控提供了方法和技術(shù)途徑。
網(wǎng)絡(luò)化的虛擬儀器系統(tǒng)通常采用兩種結(jié)構(gòu)模型:客戶機(jī)/服務(wù)器(C/S)模式和瀏覽器/服務(wù)器(B/S)模式。
C/S模式是網(wǎng)絡(luò)通信中常用的一種模式,通常集散控制系統(tǒng)多采樣這種結(jié)構(gòu)。它一般有多個(gè)客戶端來采集數(shù)據(jù),而通常有一個(gè)服務(wù)器充當(dāng)數(shù)據(jù)庫的角色,客戶端通過通信協(xié)議把測試數(shù)據(jù)寫入遠(yuǎn)程服務(wù)器數(shù)據(jù)庫。C/S模式需要做兩個(gè)方面的開發(fā),一是服務(wù)器端數(shù)據(jù)采集和處理程序以及遠(yuǎn)程通訊數(shù)據(jù)傳輸?shù)确矫娴某绦蛟O(shè)計(jì);二是客戶端數(shù)據(jù)接收程序的設(shè)計(jì)。
B/S模式是方便用戶在 Web下發(fā)布數(shù)據(jù)。通常用戶端只需安裝一個(gè)瀏覽器,直接訪問虛擬儀器測試節(jié)點(diǎn)的網(wǎng)絡(luò)地址,就可監(jiān)視遠(yuǎn)程測控節(jié)點(diǎn)的數(shù)據(jù)變化情況。它的主要工作在服務(wù)器端程序開發(fā),不存在客戶端程序的開發(fā)和維護(hù)。
鑒于以上兩種模式各自的優(yōu)缺點(diǎn),本系統(tǒng)中采用兩種模式混用的方式,取長補(bǔ)短,以達(dá)到最佳的網(wǎng)絡(luò)應(yīng)用效果。
作為測試儀器設(shè)備和數(shù)據(jù)等資源的共享的平臺,該教學(xué)實(shí)驗(yàn)系統(tǒng)應(yīng)該具有如下的一些特點(diǎn):教師或者學(xué)生可以方便的操作實(shí)驗(yàn)室的各種虛擬儀器設(shè)備,進(jìn)行各種實(shí)驗(yàn);服務(wù)器和各客戶端可同時(shí)進(jìn)行測量,可以互相進(jìn)行數(shù)據(jù)傳輸和通訊;測試環(huán)境友好,方便對被測量進(jìn)行數(shù)據(jù)采集、分析、存儲及顯示等等;教師可以根據(jù)需要自行設(shè)計(jì)各種虛擬儀器;學(xué)生自由選擇實(shí)驗(yàn)內(nèi)容,制定實(shí)驗(yàn)方案。
在測試環(huán)境中,各個(gè)獨(dú)立的虛擬儀器測試節(jié)點(diǎn)及虛擬儀器遠(yuǎn)程測試節(jié)點(diǎn)之間通過局域網(wǎng)互聯(lián),虛擬儀器測試節(jié)點(diǎn)配置相應(yīng)虛擬儀器設(shè)備及測試主機(jī),而遠(yuǎn)程測試節(jié)點(diǎn)僅僅配置測試主機(jī),通過軟件可對網(wǎng)絡(luò)上的測試節(jié)點(diǎn)進(jìn)行遠(yuǎn)程監(jiān)視或測試,遠(yuǎn)程測試節(jié)自由接入或退出測試網(wǎng)絡(luò),提高了系統(tǒng)配置的靈活性,同時(shí)也方便了系統(tǒng)的擴(kuò)展,系統(tǒng)框圖如圖1所示。
圖1 基于網(wǎng)絡(luò)的虛擬儀器測試教學(xué)系統(tǒng)結(jié)構(gòu)圖
本系統(tǒng)中的各虛擬儀器測試節(jié)點(diǎn)是以通用計(jì)算機(jī)為核心,具有虛擬面板,其測試功能由各節(jié)點(diǎn)測試軟件實(shí)現(xiàn)的計(jì)算機(jī)儀器系統(tǒng)。虛擬儀器測試節(jié)點(diǎn)的硬件包括計(jì)算機(jī)、數(shù)據(jù)采集模塊、信號調(diào)理模塊等。綜合考慮各種形式的性價(jià)比和系統(tǒng)的靈活性等因素,選擇PC-DAQ作為虛擬儀器測試節(jié)點(diǎn)的硬件最為合適,測試節(jié)點(diǎn)組成框圖如圖2所示。
圖2 虛擬儀器測試節(jié)點(diǎn)組成框圖
(1)測試監(jiān)視主機(jī)軟件模塊
與系統(tǒng)硬件結(jié)構(gòu)相對應(yīng),系統(tǒng)測試監(jiān)視主模塊是系統(tǒng)監(jiān)視測試情況的中樞,連接和控制各虛擬儀器測試節(jié)點(diǎn)模塊,集中監(jiān)視各測試節(jié)點(diǎn)的測試狀態(tài),在必要的情況下,啟動測試節(jié)點(diǎn)投入測試網(wǎng)絡(luò),或者停止測試節(jié)點(diǎn)以退出測試網(wǎng)絡(luò),監(jiān)視該測試局域網(wǎng)上所有的虛擬信號源、虛擬示波器和虛擬萬用表等模塊,可以遠(yuǎn)程控制各虛擬儀器測試節(jié)點(diǎn),給測試對象提供激勵(lì)信號。通過測試監(jiān)視主機(jī),可以將某測試節(jié)點(diǎn)的測試數(shù)據(jù)實(shí)時(shí)傳送至多媒體系統(tǒng),結(jié)合多媒體系統(tǒng)進(jìn)行多媒體教學(xué)。測試監(jiān)視主機(jī)同時(shí)也可以作為遠(yuǎn)程虛擬儀器測試節(jié)點(diǎn),其軟件功能模塊組成示意圖如圖3所示。
圖3 測試監(jiān)視主機(jī)軟件模塊組成框圖
(2)虛擬儀器測試節(jié)點(diǎn)軟件模塊
虛擬儀器的核心思想是利用計(jì)算機(jī)的硬件和軟件資源,將硬件實(shí)現(xiàn)的功能軟件化(虛擬化),最大限度的降低系統(tǒng)成本,增強(qiáng)系統(tǒng)的功能,增加系統(tǒng)靈活性。VPP系統(tǒng)聯(lián)盟提出了系統(tǒng)框架、驅(qū)動程序、VISA、軟面板、部件知識庫等一系列VPP軟件標(biāo)準(zhǔn),推動了軟件標(biāo)準(zhǔn)化的進(jìn)程。虛擬儀器的軟件框架從底層到頂層包括三部分:VISA庫、儀器驅(qū)動程序、儀器開發(fā)軟件(應(yīng)用程序)。
虛擬儀器測試節(jié)點(diǎn)軟件模塊實(shí)現(xiàn)對各種模擬量和開關(guān)量數(shù)據(jù)的采集和處理,網(wǎng)絡(luò)通信模塊承擔(dān)該測試節(jié)點(diǎn)與測試監(jiān)視主機(jī)或者遠(yuǎn)程測試節(jié)點(diǎn)之間的數(shù)據(jù)傳輸與通信的任務(wù),每個(gè)虛擬儀器測試節(jié)點(diǎn)模塊內(nèi)部都封裝了對應(yīng)儀器的控制命令集、數(shù)據(jù)采集命令集、數(shù)據(jù)處理模型以及通信協(xié)議等處理子模塊。虛擬儀器本地測試節(jié)點(diǎn)軟件功能模塊組成如圖4所示。
圖4 虛擬儀器本地測試節(jié)點(diǎn)軟件模塊組成框圖
(3)虛擬儀器遠(yuǎn)程測試節(jié)點(diǎn)軟件模塊
虛擬儀器遠(yuǎn)程測試節(jié)點(diǎn)并沒有配置虛擬儀器設(shè)備,通過軟件的方法,該節(jié)點(diǎn)遠(yuǎn)程控制局域網(wǎng)內(nèi)符合其功能要求的虛擬儀器測試節(jié)點(diǎn),從而獲得需要的測試數(shù)據(jù)。
實(shí)現(xiàn)該實(shí)驗(yàn)系統(tǒng)的重點(diǎn)是軟件設(shè)計(jì),包括以下兩個(gè)方面:
(1)測試網(wǎng)絡(luò)中測試監(jiān)視節(jié)點(diǎn)、虛擬儀器測試節(jié)點(diǎn)、虛擬儀器遠(yuǎn)程測試節(jié)點(diǎn)這三種測試
角色之間的網(wǎng)絡(luò)通信處理模塊的實(shí)現(xiàn),各測試節(jié)點(diǎn)之間數(shù)據(jù)在網(wǎng)絡(luò)上的傳輸形式;
(2)虛擬儀器測試節(jié)點(diǎn)中數(shù)據(jù)采集卡的驅(qū)動實(shí)現(xiàn),為了節(jié)約整個(gè)實(shí)驗(yàn)系統(tǒng)開發(fā)的成本,一般采樣價(jià)格較低的國產(chǎn)普通板卡,能滿足各種傳感器的測試要求即可。
在LabVIEW中實(shí)現(xiàn)了對采集卡的驅(qū)動,就可以利用軟件對已獲得的測試數(shù)據(jù)進(jìn)行各種處理和變換顯示最終結(jié)果,從而得到測試結(jié)果,配合網(wǎng)絡(luò)數(shù)據(jù)處理模塊,局域網(wǎng)內(nèi)的其他虛擬儀器測試節(jié)點(diǎn)或遠(yuǎn)程虛擬儀器測試節(jié)點(diǎn)以及測試監(jiān)視主機(jī)通過網(wǎng)網(wǎng)絡(luò)便捷地獲取數(shù)據(jù)和其他相關(guān)測試信息。
構(gòu)建基于網(wǎng)絡(luò)的虛擬儀器測試教學(xué)系統(tǒng),使得電子技術(shù)類相關(guān)課程的實(shí)驗(yàn)配置更靈活,實(shí)驗(yàn)資源得到更大程度的應(yīng)用,便于拓展,節(jié)約資源,
同時(shí)也有利于學(xué)生更感性的認(rèn)識和應(yīng)用各種實(shí)驗(yàn)設(shè)備,更好地理解和學(xué)習(xí)實(shí)驗(yàn)中相關(guān)的傳感器的工作原理和特性及電子電路的知識。有利于綜合性、設(shè)計(jì)性實(shí)驗(yàn)的開設(shè),激發(fā)學(xué)生的實(shí)驗(yàn)興趣和創(chuàng)新精神,提高電子實(shí)驗(yàn)課程的效率。
[1]陸綺榮.基于虛擬儀器技術(shù)個(gè)人實(shí)驗(yàn)室的創(chuàng)建[M].北京:電子工業(yè)出版社,2006.
[2]Stefanovic M.,Cvijetkovic V.,Matijevic M.et al.A LabVIEW-based remote laboratory experiments for control engineering education [J].Computer Applications in Engineering Education,2011,19(03):538-549.
[3]柏林,劉小峰,秦樹人.網(wǎng)絡(luò)化虛擬儀器的研究與開發(fā)[J].現(xiàn)代科學(xué)儀器,2007,(03):5-7.
[4]盧超,任吉林,鄔冠華.測試技術(shù)與虛擬儀器綜合性實(shí)驗(yàn)教學(xué)的探索實(shí)踐[J].實(shí)驗(yàn)技術(shù)與管理,2006,23(1):73-76.
[5]徐朝輝,宋紅權(quán),吳定允.基于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)大學(xué)物理實(shí)驗(yàn)教學(xué)模式的探索和實(shí)踐[J].大學(xué)物理實(shí)驗(yàn),2011(4):90-92.
[6]董湘,鄒國奎.基于LabVIEW的遠(yuǎn)程測控方法研究[J].自動化儀表,2006,27(1):6-8.
[7]林曉瓏,姜永桓,白炳蓮,等.大學(xué)物理演示實(shí)驗(yàn)網(wǎng)絡(luò)教學(xué)管理平臺構(gòu)建與實(shí)施[J].大學(xué)物理實(shí)驗(yàn),2012(4):120-122.
[8]劉志廣,王雅彬,張永策.液相色譜網(wǎng)絡(luò)虛擬儀器與虛擬實(shí)驗(yàn)室的構(gòu)建[J].實(shí)驗(yàn)室研究與探索,2006,(6):617-620.