基于myDAQ的遠(yuǎn)程多對象控制系統(tǒng)的設(shè)計方案
0 引言
近年來,隨著因特網(wǎng)的日益普及和網(wǎng)絡(luò)遠(yuǎn)程控制技術(shù)的發(fā)展,利用網(wǎng)絡(luò)對實(shí)驗(yàn)室或者工業(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)的成本。與傳統(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ò)展性和可操作性。
NI myDAQ 是美國國家儀器有限公司(National In-struments,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ā)送控制命令,另一方面還可以將實(shí)驗(yàn)結(jié)果借助于虛擬儀器形象化的表達(dá)出來。在軟件上myDAQ的開發(fā)采用圖形化系統(tǒng)設(shè)計軟件LabVIEW 進(jìn)行編程設(shè)計,利用集成化、形象化、模塊化的圖形編程方式可以快速方便的編制出實(shí)驗(yàn)程序。采用LabVIEW的基于Web發(fā)布工具可以方便的實(shí)現(xiàn)網(wǎng)頁的遠(yuǎn)程發(fā)布,為遠(yuǎn)程控制提供了可能。本項(xiàng)目研究的“基于myDAQ的遠(yuǎn)程多對象控制系統(tǒng)”可實(shí)現(xiàn)隨時隨地通過網(wǎng)絡(luò)訪問該平臺完成交流電機(jī)、直流減速電機(jī)、伺服電機(jī)、倒立擺、步進(jìn)電機(jī)、電阻爐的相關(guān)控制和任意切換,極大的方便了教學(xué)及實(shí)驗(yàn)需要。
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)場過程控制實(shí)驗(yàn)裝置、遠(yuǎn)程實(shí)驗(yàn)代理服務(wù)器、Web服務(wù)器、數(shù)據(jù)庫服務(wù)器、遠(yuǎn)程實(shí)驗(yàn)工作站等組成,通過實(shí)驗(yàn)室的以太網(wǎng)和Internet將它們連接起來。B/S模式具有客戶端數(shù)量不受限制、軟件開發(fā)相對簡單、系統(tǒng)擴(kuò)展維護(hù)簡單等優(yōu)點(diǎn)。所以,本設(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)行通信的橋梁?,F(xiàn)場被控端又細(xì)分為三部分:信號源擴(kuò)展及切換控制平臺、多對象驅(qū)動控制臺(直流減速控制臺、交流電機(jī)控制臺、伺服電機(jī)控制臺、步進(jìn)電機(jī)控制臺、倒立擺控制臺、電阻爐控制臺)、攝像頭監(jiān)控。
該遠(yuǎn)程控制系統(tǒng)完成后,實(shí)驗(yàn)者可以通過任意一臺接入因特網(wǎng)的計算機(jī)來登錄遠(yuǎn)程控制系統(tǒng)。通過鏈接進(jìn)入整個系統(tǒng)的網(wǎng)址,驗(yàn)證操作者的身份后進(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ù)器主要包括實(shí)驗(yàn)室服務(wù)器(Lab Server)和服務(wù)代理端(Service Broker),是實(shí)驗(yàn)系統(tǒng)的基礎(chǔ),是連接實(shí)驗(yàn)客戶端和實(shí)驗(yàn)儀器設(shè)備的橋梁。服務(wù)器為用戶構(gòu)建一個遠(yuǎn)程實(shí)驗(yàn)交互平臺,負(fù)責(zé)整個系統(tǒng)的任務(wù)調(diào)度和網(wǎng)絡(luò)管理等工作。系統(tǒng)采用B/S模式,絕大部分運(yùn)算和處理功能在Web服務(wù)器端實(shí)現(xiàn)。
遠(yuǎn)程控制的發(fā)布實(shí)現(xiàn)過程如下:通過開啟Lab-VIEW 的Web 服務(wù)器,可以在網(wǎng)頁上發(fā)布LabVIEW 程序,使本地或遠(yuǎn)程的客戶端計算機(jī)可以實(shí)時瀏覽或控制Web服務(wù)器中的遠(yuǎn)程面板,實(shí)現(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)行瀏覽。遠(yuǎn)程客戶端根據(jù)安裝軟件的不同可采取相應(yīng)的訪問登錄方式。
本設(shè)計選擇使用網(wǎng)頁瀏覽器在網(wǎng)頁中操作遠(yuǎn)程面板。當(dāng)進(jìn)入遠(yuǎn)程控制前面板之后,實(shí)驗(yà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í)驗(yàn)平臺的數(shù)據(jù)通道保持一致,結(jié)合NI公司提供的內(nèi)部引腳資料進(jìn)行擴(kuò)展設(shè)計。設(shè)計中運(yùn)用模擬開關(guān)技術(shù),模擬開關(guān)是一種能夠按照控制指令對模擬信號傳輸進(jìn)行通斷控制的電路器件。通過模擬開關(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ù)存儲器以及工作存儲器。利用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)
編程實(shí)現(xiàn)采用LabVIEW 軟件進(jìn)行編寫,這是一種圖形編程語言也叫G 語言[11].這一部分主要由實(shí)驗(yàn)選擇切換界面、被控對象操作界面、攝像監(jiān)控界面三部分組成。實(shí)驗(yàn)選擇切換界面包括選擇實(shí)驗(yàn)預(yù)覽按鈕和操作按鈕,選擇某一實(shí)驗(yàn)預(yù)覽按鈕,將彈出實(shí)驗(yàn)介紹圖片,便于用戶了解和學(xué)習(xí)實(shí)驗(yàn)原理并預(yù)覽實(shí)驗(yàn)效果圖。選擇相應(yīng)被控對象開始試驗(yàn)按鈕,則彈出對應(yīng)不同被控對象控制板的LabVIEW 操作子VI.攝像監(jiān)控界面利用LabVIEW 軟件自帶的工具包編寫然后嵌在每個被控對象控制程序里面。被控對象操作界面的編程設(shè)計是重點(diǎn),倒立擺控制的操作界面如圖4所示。
4 遠(yuǎn)程客戶端設(shè)計
實(shí)驗(yàn)客戶端是運(yùn)行在網(wǎng)絡(luò)終端的用戶計算機(jī)。因?yàn)榭刂破脚_的程序都由服務(wù)器承載和執(zhí)行,并且提供了相應(yīng)的操作界面,任何連接在Internet上的PC機(jī)都可以使用瀏覽器登錄到網(wǎng)站進(jìn)行遠(yuǎn)程控制。
此時要求本地服務(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é)論
本文的基于myDAQ的遠(yuǎn)程多對象控制系統(tǒng)的設(shè)計方案, 該方案中的遠(yuǎn)程控制系統(tǒng)成功的結(jié)合了單片機(jī)IAP技術(shù)、模擬開關(guān)技術(shù)以及LabVIEW 的Web 發(fā)布技術(shù),實(shí)現(xiàn)了不拘于時間、地點(diǎ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)行查看,增加了真實(shí)性。該系統(tǒng)已經(jīng)通過了測試在學(xué)校范圍內(nèi)穩(wěn)定運(yùn)行。而且底層平臺還具有很強(qiáng)的擴(kuò)展性,用戶可以根據(jù)自己的需要在被控端添加其他的被控對象,簡單快捷、實(shí)用性高。