



摘 要: 針對目前遠(yuǎn)程控制擴(kuò)展性弱的現(xiàn)狀,設(shè)計了一種基于myDAQ的遠(yuǎn)程多對象控制系統(tǒng),該系統(tǒng)將NI便攜式數(shù)據(jù)采集設(shè)備(myDAQ)上的各種信號源通過模擬開關(guān)技術(shù)拓展成六路信號,并通過單片機(jī)IAP技術(shù)實現(xiàn)六路信號之間的切換控制。上位機(jī)通過LabVIEW編寫制作便于人機(jī)交互的圖形操作界面,并通過LabVIEW的Web發(fā)布技術(shù)將前面板發(fā)布到網(wǎng)絡(luò)上。該系統(tǒng)在網(wǎng)絡(luò)環(huán)境下成功實現(xiàn)了利用任意一臺PC機(jī)對現(xiàn)場六種被控對象隨時隨地的交互式遠(yuǎn)程控制,并且通過攝像頭實時觀看控制現(xiàn)象。該系統(tǒng)已成功應(yīng)用于iLab實驗室的遠(yuǎn)程網(wǎng)絡(luò)實驗教學(xué)中,并且運(yùn)行可靠穩(wěn)定。
關(guān)鍵字: myDAQ; 模擬開關(guān)技術(shù); IAP技術(shù); Web發(fā)布技術(shù); LabVIEW
中圖分類號: TN915?34; TP39 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2013)19?0102?03
0 引 言
近年來,隨著因特網(wǎng)的日益普及和網(wǎng)絡(luò)遠(yuǎn)程控制技術(shù)的發(fā)展,利用網(wǎng)絡(luò)對實驗室或者工業(yè)現(xiàn)場中控制對象進(jìn)行遠(yuǎn)程控制,已經(jīng)越來越受到重視,應(yīng)用范圍也越來越廣泛。以Internet為基礎(chǔ)的遠(yuǎn)程控制方式,可以避免現(xiàn)場環(huán)境對用戶的不良影響,不需要建立特殊的操作站或者輔設(shè)專用線路,而是直接利用現(xiàn)有的網(wǎng)絡(luò)設(shè)施提供的價格低廉的通信線路作為系統(tǒng)構(gòu)架,硬件設(shè)備投資少,大大降低了遠(yuǎn)程控制系統(tǒng)的成本[1]。與傳統(tǒng)的控制技術(shù)相比,基于網(wǎng)絡(luò)的多對象遠(yuǎn)程控制系統(tǒng)利用計算機(jī)作為網(wǎng)絡(luò)信號傳輸終端,不僅能夠延長控制器與被控對象之間的空間距離,而且具有較高的故障診斷能力,安裝與維護(hù)簡單,可以提高系統(tǒng)的靈活性和可靠性。而且控制網(wǎng)絡(luò)技術(shù)正向體系結(jié)構(gòu)的開發(fā)性網(wǎng)絡(luò)互聯(lián)方向發(fā)展,開放性控制網(wǎng)絡(luò)具有標(biāo)準(zhǔn)化、可移植性、可擴(kuò)展性和可操作性[2]。
NI myDAQ是美國國家儀器有限公司(National Instruments,NI)推出的一款便攜式儀器,在輕巧的組成結(jié)構(gòu)中集成了8款最常用的軟件儀器,而且配有USB即插即用功能,可針對各種測量進(jìn)行快速方便的采集與顯示,方便了控制信號的輸入輸出。NI myDAQ將軟件與硬件集合成了一個整體。硬件上myDAQ集成多達(dá)20路的信號通道,其中包含了8路數(shù)字I/O,4路模擬I/O口以及示波器、數(shù)字萬用表、各類電源和伯德圖分析儀,一方面可以方便的利用這些數(shù)據(jù)通道采集被控對象狀態(tài)信息、發(fā)送控制命令,另一方面還可以將實驗結(jié)果借助于虛擬儀器形象化的表達(dá)出來。在軟件上myDAQ的開發(fā)采用圖形化系統(tǒng)設(shè)計軟件LabVIEW進(jìn)行編程設(shè)計,利用集成化、形象化、模塊化的圖形編程方式可以快速方便的編制出實驗程序。采用LabVIEW的基于Web發(fā)布工具可以方便的實現(xiàn)網(wǎng)頁的遠(yuǎn)程發(fā)布,為遠(yuǎn)程控制提供了可能。本項目研究的“基于myDAQ的遠(yuǎn)程多對象控制系統(tǒng)”可實現(xiàn)隨時隨地通過網(wǎng)絡(luò)訪問該平臺完成交流電機(jī)、直流減速電機(jī)、伺服電機(jī)、倒立擺、步進(jìn)電機(jī)、電阻爐的相關(guān)控制和任意切換,極大的方便了教學(xué)及實驗需要。
1 系統(tǒng)的整體設(shè)計與工作流程
基于Internet的遠(yuǎn)程控制系統(tǒng)的模式主要有C/S(Client/Server)結(jié)構(gòu)、B/S (Brower/Server)和C/S/B(Client/Server/Brower)結(jié)構(gòu)[3]。C/S/B常用于大型的集散控制系統(tǒng)的發(fā)布和遠(yuǎn)程控制,適用于虛擬儀器測控系統(tǒng)。C/S模式適合于局域網(wǎng)環(huán)境,但是使用用戶數(shù)量有限,系統(tǒng)擴(kuò)展維護(hù)較為復(fù)雜、軟件的開發(fā)成本也較高。B/S模式下,主要由現(xiàn)場過程控制實驗裝置、遠(yuǎn)程實驗代理服務(wù)器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器、遠(yuǎn)程實驗工作站等組成,通過實驗室的以太網(wǎng)和Internet將它們連接起來[4]。B/S模式具有客戶端數(shù)量不受限制、軟件開發(fā)相對簡單、系統(tǒng)擴(kuò)展維護(hù)簡單等優(yōu)點[5]。所以,本設(shè)計選擇B/S模式。
該系統(tǒng)主要由3大部分組成:遠(yuǎn)程客戶端、本地服務(wù)器端、現(xiàn)場被控端。其中又以現(xiàn)場被控端的設(shè)計最為復(fù)雜。遠(yuǎn)程客戶端是一臺連入因特網(wǎng)的計算機(jī)。本地服務(wù)器端是一臺裝有Web服務(wù)器的主機(jī),該主機(jī)需要安裝LabVIEW及相關(guān)驅(qū)動的軟件。該主機(jī)是使遠(yuǎn)程客戶端和本地服務(wù)器端進(jìn)行通信的橋梁。現(xiàn)場被控端又細(xì)分為三部分:信號源擴(kuò)展及切換控制平臺、多對象驅(qū)動控制臺(直流減速控制臺、交流電機(jī)控制臺、伺服電機(jī)控制臺、步進(jìn)電機(jī)控制臺、倒立擺控制臺、電阻爐控制臺)、攝像頭監(jiān)控。
該遠(yuǎn)程控制系統(tǒng)完成后,實驗者可以通過任意一臺接入因特網(wǎng)的計算機(jī)來登錄遠(yuǎn)程控制系統(tǒng)。通過鏈接進(jìn)入整個系統(tǒng)的網(wǎng)址,驗證操作者的身份后進(jìn)行操作,此時要求本地服務(wù)器端相關(guān)的LabVIEW軟件及VI程序是打開的。操作者進(jìn)入運(yùn)行界面后可選擇對應(yīng)的控制臺進(jìn)行遠(yuǎn)程控制。當(dāng)選擇某一個控制臺時本地服務(wù)器就會將相應(yīng)的命令信號通過串口和采集卡分別送到信號源擴(kuò)展及切換控制平臺上的單片機(jī)和myDAQ,這樣myDAQ就會切換到對應(yīng)的控制平臺上,此時該平臺上的所有信號也和myDAQ連通了,從而有效地進(jìn)行相關(guān)控制。其工作流程如圖1所示。
2 本地服務(wù)器
本地服務(wù)器主要包括實驗室服務(wù)器(Lab Server)和服務(wù)代理端(Service Broker),是實驗系統(tǒng)的基礎(chǔ),是連接實驗客戶端和實驗儀器設(shè)備的橋梁。服務(wù)器為用戶構(gòu)建一個遠(yuǎn)程實驗交互平臺,負(fù)責(zé)整個系統(tǒng)的任務(wù)調(diào)度和網(wǎng)絡(luò)管理等工作。系統(tǒng)采用B/S模式,絕大部分運(yùn)算和處理功能在Web服務(wù)器端實現(xiàn)[6]。
遠(yuǎn)程控制的發(fā)布實現(xiàn)過程如下:通過開啟LabVIEW的Web服務(wù)器,可以在網(wǎng)頁上發(fā)布LabVIEW程序,使本地或遠(yuǎn)程的客戶端計算機(jī)可以實時瀏覽或控制Web服務(wù)器中的遠(yuǎn)程面板,實現(xiàn)生產(chǎn)環(huán)境的遠(yuǎn)程控制。使用LabVIEW的Web發(fā)布工具:Tools/Options,在彈出的對話框中完成與Web服務(wù)器有關(guān)的設(shè)置和LabVIEW程序的發(fā)布通過Tools/Web Publishing Tools對話框,可以將Web內(nèi)存中的程序,以網(wǎng)頁的形式發(fā)布,在客戶端進(jìn)行瀏覽[7?8]。遠(yuǎn)程客戶端根據(jù)安裝軟件的不同可采取相應(yīng)的訪問登錄方式。
本設(shè)計選擇使用網(wǎng)頁瀏覽器在網(wǎng)頁中操作遠(yuǎn)程面板。當(dāng)進(jìn)入遠(yuǎn)程控制前面板之后,實驗者單擊鼠標(biāo)右鍵,然后在彈出的菜單中申請vi控制權(quán),當(dāng)多個遠(yuǎn)程客戶端同時申請控制權(quán)時,只能有一個客戶端有控制權(quán),其他的需在控制權(quán)釋放后重新申請并獲得控制權(quán)。
3 現(xiàn)場被控端設(shè)計
下位機(jī)被控端的設(shè)計是整個控制系統(tǒng)的核心部分,主要包括:信號源擴(kuò)展及切換控制模塊的設(shè)計、被控對象控制模塊、LabVIEW程序?qū)崿F(xiàn)。
3.1 信號源擴(kuò)展及切換控制模塊設(shè)計
為了保持與原有系統(tǒng)的兼容性,擴(kuò)展信號的通道與原有實驗平臺的數(shù)據(jù)通道保持一致,結(jié)合NI公司提供的內(nèi)部引腳資料進(jìn)行擴(kuò)展設(shè)計。設(shè)計中運(yùn)用模擬開關(guān)技術(shù),模擬開關(guān)是一種能夠按照控制指令對模擬信號傳輸進(jìn)行通斷控制的電路器件[9]。通過模擬開關(guān)芯片CD4053、CD4051將myDAQ上的信號擴(kuò)展成六路信號,然后將每一路信號匯總通過排線連接至六個控制分板。模擬開關(guān)在應(yīng)用中,一定要注意輸入信號不要超出規(guī)定的范圍。
對于切換控制模塊,將其與信號擴(kuò)展模塊做在同一塊電路板上,圖2是信號源擴(kuò)展及切換板的PCB圖。切換控制模塊主要采用AVR單片機(jī)系列中ATmega8,ATmega8是一款采用低功耗CMOS工藝生產(chǎn)的基于AVR RISC結(jié)構(gòu)的8位單片機(jī), 片內(nèi)集成了較大容量的非易失性程序和數(shù)據(jù)存儲器以及工作存儲器[10]。利用AVR單片機(jī)的軟編程技術(shù),在單片機(jī)FLASH底層固化一個Bootloader程序,來引導(dǎo)遠(yuǎn)程傳來的程序數(shù)據(jù)寫入FLASH應(yīng)用區(qū)。本設(shè)計就是利用該原理設(shè)計的單片機(jī)切換程序。
3.2 被控對象控制模塊設(shè)計
對于被控對象控制模塊,主要包括被控對象平臺板及被控對象(直流減速電機(jī)、交流電機(jī)、伺服電機(jī)、步進(jìn)電機(jī)、倒立擺、電阻爐)控制模塊的設(shè)計。被控對象平臺板是將擴(kuò)展板上分出的六路信號收集起來,然后在分至PCI口和拓展口。這里以交流電機(jī)的控制板設(shè)計為例進(jìn)行說明。
交直流電機(jī)的控制主要有電機(jī)的啟動、停止;電機(jī)的換向;電機(jī)的變頻調(diào)速。其控制原理圖如圖3所示。
3.3 LabVIEW程序?qū)崿F(xiàn)
編程實現(xiàn)采用LabVIEW軟件進(jìn)行編寫,這是一種圖形編程語言也叫G語言[11]。這一部分主要由實驗選擇切換界面、被控對象操作界面、攝像監(jiān)控界面三部分組成。實驗選擇切換界面包括選擇實驗預(yù)覽按鈕和操作按鈕,選擇某一實驗預(yù)覽按鈕,將彈出實驗介紹圖片,便于用戶了解和學(xué)習(xí)實驗原理并預(yù)覽實驗效果圖。選擇相應(yīng)被控對象開始試驗按鈕,則彈出對應(yīng)不同被控對象控制板的LabVIEW操作子VI。攝像監(jiān)控界面利用LabVIEW軟件自帶的工具包編寫然后嵌在每個被控對象控制程序里面。被控對象操作界面的編程設(shè)計是重點,倒立擺控制的操作界面如圖4所示。
4 遠(yuǎn)程客戶端設(shè)計
實驗客戶端是運(yùn)行在網(wǎng)絡(luò)終端的用戶計算機(jī)。因為控制平臺的程序都由服務(wù)器承載和執(zhí)行,并且提供了相應(yīng)的操作界面,任何連接在Internet上的PC機(jī)都可以使用瀏覽器登錄到網(wǎng)站進(jìn)行遠(yuǎn)程控制,在因特網(wǎng)上,遠(yuǎn)程面板地址格式為http://ipaddress:port/viname.html。此時要求本地服務(wù)器端相關(guān)的LabVIEW軟件及VI程序是打開的。操作者進(jìn)入運(yùn)行界面后可選擇對應(yīng)的被控對象控制臺進(jìn)行遠(yuǎn)程控制。當(dāng)多個客戶端同時監(jiān)控服務(wù)器端時,可以多個同時控制,但只能有一個客戶端有控制權(quán),其他的需等待釋放后獲得控制權(quán)。
5 結(jié) 論
該遠(yuǎn)程控制系統(tǒng)成功的結(jié)合了單片機(jī)IAP技術(shù)、模擬開關(guān)技術(shù)以及LabVIEW的Web發(fā)布技術(shù),實現(xiàn)了不拘于時間、地點、場地要求的多種被控對象遠(yuǎn)程控制系統(tǒng)。用戶只需一臺聯(lián)網(wǎng)的普通PC機(jī)即可完成相應(yīng)功能。通過本系統(tǒng)一方面可以遠(yuǎn)程控制現(xiàn)場的各種被控對象,另一方面通過攝像頭還可以對現(xiàn)場的運(yùn)行狀況進(jìn)行查看,增加了真實性。該系統(tǒng)已經(jīng)通過了測試在學(xué)校范圍內(nèi)穩(wěn)定運(yùn)行。而且底層平臺還具有很強(qiáng)的擴(kuò)展性,用戶可以根據(jù)自己的需要在被控端添加其他的被控對象,簡單快捷、實用性高。對工業(yè)方面的控制具有很好的借鑒價值。
參考文獻(xiàn)
[1] 尚曉峰,劉廷章,王世松.基于B/S結(jié)構(gòu)的電機(jī)遠(yuǎn)程系統(tǒng)設(shè)計[J].組合機(jī)床與自動化加工技術(shù),2011(1): 69?71.
[2] 周祖德.基于網(wǎng)絡(luò)環(huán)境的智能控制[M].北京:國防工業(yè)出版社,2004.
[3] 高峰.基于LabVIEW的網(wǎng)絡(luò)實驗室的研究[D].大連:大連理工大學(xué),2008.
[4] 張麗紅,唐鴻儒,梁文彬.基于Internet遠(yuǎn)程過程控制實驗系統(tǒng)設(shè)計[J].工業(yè)儀表與自動化裝置,2008(3):80?83.
[5] 黃慧萍,孟祥印,肖世德,等.基于B/S模式的步進(jìn)電機(jī)遠(yuǎn)程控制實驗平臺[J].實驗科學(xué)與技術(shù),2010(2):184?186.
[6] 孫道讓,劉蘊(yùn)紅.基于LabVIEW和IAP單片機(jī)的遠(yuǎn)程實驗系統(tǒng)[J].電子設(shè)計工程,2011,19(20): 177?180.
[7] 陳錫輝,張銀鴻.LabVIEW 8.20程序設(shè)計從入門到精通[M].北京:清華大學(xué)出版社,2007.
[8] 陳昌菊.遠(yuǎn)程網(wǎng)絡(luò)虛擬實驗系統(tǒng)研究[D].成都:西華大學(xué),2007.
[9] 宋吉江,牛軼霞,于春戰(zhàn),等. CMOS模擬開關(guān)及其選擇問題[J].微電子技術(shù),2001,29(3):58?60.
[10] 包秀榮,王楠.AVR單片機(jī)的特點與應(yīng)用[J].內(nèi)蒙古科技與經(jīng)濟(jì),2004(6):51?52.
[11] 楊樂平,李海濤,楊磊.LabVIEW程序設(shè)計與應(yīng)用[M].北京:電子工業(yè)出版社,2005.