基于myDAQ的遠(yuǎn)程多對(duì)象控制系統(tǒng)的設(shè)計(jì)方案
0 引言
近年來,隨著因特網(wǎng)的日益普及和網(wǎng)絡(luò)遠(yuǎn)程控制技術(shù)的發(fā)展,利用網(wǎng)絡(luò)對(duì)實(shí)驗(yàn)室或者工業(yè)現(xiàn)場中控制對(duì)象進(jìn)行遠(yuǎn)程控制,已經(jīng)越來越受到重視,應(yīng)用范圍也越來越廣泛。以Internet為基礎(chǔ)的遠(yuǎn)程控制方式,可以避免現(xiàn)場環(huán)境對(duì)用戶的不良影響,不需要建立特殊的操作站或者輔設(shè)專用線路,而是直接利用現(xiàn)有的網(wǎng)絡(luò)設(shè)施提供的價(jià)格低廉的通信線路作為系統(tǒng)構(gòu)架,硬件設(shè)備投資少,大大降低了遠(yuǎn)程控制系統(tǒng)的成本。與傳統(tǒng)的控制技術(shù)相比,基于網(wǎng)絡(luò)的多對(duì)象遠(yuǎn)程控制系統(tǒng)利用計(jì)算機(jī)作為網(wǎng)絡(luò)信號(hào)傳輸終端,不僅能夠延長控制器與被控對(duì)象之間的空間距離,而且具有較高的故障診斷能力,安裝與維護(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即插即用功能,可針對(duì)各種測(cè)量進(jìn)行快速方便的采集與顯示,方便了控制信號(hào)的輸入輸出。NI myDAQ將軟件與硬件集合成了一個(gè)整體。硬件上myDAQ集成多達(dá)20路的信號(hào)通道,其中包含了8路數(shù)字I/O,4路模擬I/O口以及示波器、數(shù)字萬用表、各類電源和伯德圖分析儀,一方面可以方便的利用這些數(shù)據(jù)通道采集被控對(duì)象狀態(tài)信息、發(fā)送控制命令,另一方面還可以將實(shí)驗(yàn)結(jié)果借助于虛擬儀器形象化的表達(dá)出來。在軟件上myDAQ的開發(fā)采用圖形化系統(tǒng)設(shè)計(jì)軟件LabVIEW 進(jìn)行編程設(shè)計(jì),利用集成化、形象化、模塊化的圖形編程方式可以快速方便的編制出實(shí)驗(yàn)程序。采用LabVIEW的基于Web發(fā)布工具可以方便的實(shí)現(xiàn)網(wǎng)頁的遠(yuǎn)程發(fā)布,為遠(yuǎn)程控制提供了可能。本項(xiàng)目研究的“基于myDAQ的遠(yuǎn)程多對(duì)象控制系統(tǒng)”可實(shí)現(xiàn)隨時(shí)隨地通過網(wǎng)絡(luò)訪問該平臺(tái)完成交流電機(jī)、直流減速電機(jī)、伺服電機(jī)、倒立擺、步進(jìn)電機(jī)、電阻爐的相關(guān)控制和任意切換,極大的方便了教學(xué)及實(shí)驗(yàn)需要。
1 系統(tǒng)的整體設(shè)計(jì)與工作流程
基于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)程控制,適用于虛擬儀器測(cè)控系統(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ā)相對(duì)簡單、系統(tǒng)擴(kuò)展維護(hù)簡單等優(yōu)點(diǎn)。所以,本設(shè)計(jì)選擇B/S模式。
該系統(tǒng)主要由3 大部分組成:遠(yuǎn)程客戶端、本地服務(wù)器端、現(xiàn)場被控端。其中又以現(xiàn)場被控端的設(shè)計(jì)最為復(fù)雜。遠(yuǎn)程客戶端是一臺(tái)連入因特網(wǎng)的計(jì)算機(jī)。本地服務(wù)器端是一臺(tái)裝有Web 服務(wù)器的主機(jī),該主機(jī)需要安裝LabVIEW及相關(guān)驅(qū)動(dòng)的軟件。該主機(jī)是使遠(yuǎn)程客戶端和本地服務(wù)器端進(jìn)行通信的橋梁?,F(xiàn)場被控端又細(xì)分為三部分:信號(hào)源擴(kuò)展及切換控制平臺(tái)、多對(duì)象驅(qū)動(dòng)控制臺(tái)(直流減速控制臺(tái)、交流電機(jī)控制臺(tái)、伺服電機(jī)控制臺(tái)、步進(jìn)電機(jī)控制臺(tái)、倒立擺控制臺(tái)、電阻爐控制臺(tái))、攝像頭監(jiān)控。
該遠(yuǎn)程控制系統(tǒng)完成后,實(shí)驗(yàn)者可以通過任意一臺(tái)接入因特網(wǎng)的計(jì)算機(jī)來登錄遠(yuǎn)程控制系統(tǒng)。通過鏈接進(jìn)入整個(gè)系統(tǒng)的網(wǎng)址,驗(yàn)證操作者的身份后進(jìn)行操作,此時(shí)要求本地服務(wù)器端相關(guān)的LabVIEW軟件及VI程序是打開的。操作者進(jìn)入運(yùn)行界面后可選擇對(duì)應(yīng)的控制臺(tái)進(jìn)行遠(yuǎn)程控制。當(dāng)選擇某一個(gè)控制臺(tái)時(shí)本地服務(wù)器就會(huì)將相應(yīng)的命令信號(hào)通過串口和采集卡分別送到信號(hào)源擴(kuò)展及切換控制平臺(tái)上的單片機(jī)和myDAQ,這樣myDAQ 就會(huì)切換到對(duì)應(yīng)的控制平臺(tái)上,此時(shí)該平臺(tái)上的所有信號(hào)也和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)建一個(gè)遠(yuǎn)程實(shí)驗(yàn)交互平臺(tái),負(fù)責(zé)整個(gè)系統(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ì)算機(jī)可以實(shí)時(shí)瀏覽或控制Web服務(wù)器中的遠(yuǎn)程面板,實(shí)現(xiàn)生產(chǎn)環(huán)境的遠(yuǎn)程控制。
使用LabVIEW 的Web 發(fā)布工具:Tools/Options,在彈出的對(duì)話框中完成與Web服務(wù)器有關(guān)的設(shè)置和LabVIEW程序的發(fā)布通過Tools/Web Publishing Tools對(duì)話框,可以將Web內(nèi)存中的程序,以網(wǎng)頁的形式發(fā)布,在客戶端進(jìn)行瀏覽。遠(yuǎn)程客戶端根據(jù)安裝軟件的不同可采取相應(yīng)的訪問登錄方式。
本設(shè)計(jì)選擇使用網(wǎng)頁瀏覽器在網(wǎng)頁中操作遠(yuǎn)程面板。當(dāng)進(jìn)入遠(yuǎn)程控制前面板之后,實(shí)驗(yàn)者單擊鼠標(biāo)右鍵,然后在彈出的菜單中申請(qǐng)vi控制權(quán),當(dāng)多個(gè)遠(yuǎn)程客戶端同時(shí)申請(qǐng)控制權(quán)時(shí),只能有一個(gè)客戶端有控制權(quán),其他的需在控制權(quán)釋放后重新申請(qǐng)并獲得控制權(quán)。
3 現(xiàn)場被控端設(shè)計(jì)
下位機(jī)被控端的設(shè)計(jì)是整個(gè)控制系統(tǒng)的核心部分,主要包括:信號(hào)源擴(kuò)展及切換控制模塊的設(shè)計(jì)、被控對(duì)象控制模塊、LabVIEW程序?qū)崿F(xiàn)。
3.1 信號(hào)源擴(kuò)展及切換控制模塊設(shè)計(jì)
為了保持與原有系統(tǒng)的兼容性,擴(kuò)展信號(hào)的通道與原有實(shí)驗(yàn)平臺(tái)的數(shù)據(jù)通道保持一致,結(jié)合NI公司提供的內(nèi)部引腳資料進(jìn)行擴(kuò)展設(shè)計(jì)。設(shè)計(jì)中運(yùn)用模擬開關(guān)技術(shù),模擬開關(guān)是一種能夠按照控制指令對(duì)模擬信號(hào)傳輸進(jìn)行通斷控制的電路器件。通過模擬開關(guān)芯片CD4053、CD4051將myDAQ 上的信號(hào)擴(kuò)展成六路信號(hào),然后將每一路信號(hào)匯總通過排線連接至六個(gè)控制分板。模擬開關(guān)在應(yīng)用中,一定要注意輸入信號(hào)不要超出規(guī)定的范圍。
對(duì)于切換控制模塊,將其與信號(hào)擴(kuò)展模塊做在同一塊電路板上,圖2是信號(hào)源擴(kuò)展及切換板的PCB圖。
切換控制模塊主要采用AVR 單片機(jī)系列中ATmega8,ATmega8 是一款采用低功耗CMOS 工藝生產(chǎn)的基于AVR RISC結(jié)構(gòu)的8位單片機(jī),片內(nèi)集成了較大容量的非易失性程序和數(shù)據(jù)存儲(chǔ)器以及工作存儲(chǔ)器。利用AVR 單片機(jī)的軟編程技術(shù),在單片機(jī)FLASH 底層固化一個(gè)Bootloader程序,來引導(dǎo)遠(yuǎn)程傳來的程序數(shù)據(jù)寫入FLASH應(yīng)用區(qū)。本設(shè)計(jì)就是利用該原理設(shè)計(jì)的單片機(jī)切換程序。
3.2 被控對(duì)象控制模塊設(shè)計(jì)
對(duì)于被控對(duì)象控制模塊,主要包括被控對(duì)象平臺(tái)板及被控對(duì)象(直流減速電機(jī)、交流電機(jī)、伺服電機(jī)、步進(jìn)電機(jī)、倒立擺、電阻爐)控制模塊的設(shè)計(jì)。被控對(duì)象平臺(tái)板是將擴(kuò)展板上分出的六路信號(hào)收集起來,然后在分至PCI口和拓展口。這里以交流電機(jī)的控制板設(shè)計(jì)為例進(jìn)行說明。
交直流電機(jī)的控制主要有電機(jī)的啟動(dòng)、停止;電機(jī)的換向;電機(jī)的變頻調(diào)速。其控制原理圖如圖3所示。
3.3 LabVIEW程序?qū)崿F(xiàn)
編程實(shí)現(xiàn)采用LabVIEW 軟件進(jìn)行編寫,這是一種圖形編程語言也叫G 語言[11].這一部分主要由實(shí)驗(yàn)選擇切換界面、被控對(duì)象操作界面、攝像監(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)被控對(duì)象開始試驗(yàn)按鈕,則彈出對(duì)應(yīng)不同被控對(duì)象控制板的LabVIEW 操作子VI.攝像監(jiān)控界面利用LabVIEW 軟件自帶的工具包編寫然后嵌在每個(gè)被控對(duì)象控制程序里面。被控對(duì)象操作界面的編程設(shè)計(jì)是重點(diǎn),倒立擺控制的操作界面如圖4所示。
4 遠(yuǎn)程客戶端設(shè)計(jì)
實(shí)驗(yàn)客戶端是運(yùn)行在網(wǎng)絡(luò)終端的用戶計(jì)算機(jī)。因?yàn)榭刂破脚_(tái)的程序都由服務(wù)器承載和執(zhí)行,并且提供了相應(yīng)的操作界面,任何連接在Internet上的PC機(jī)都可以使用瀏覽器登錄到網(wǎng)站進(jìn)行遠(yuǎn)程控制。
此時(shí)要求本地服務(wù)器端相關(guān)的LabVIEW軟件及VI程序是打開的。操作者進(jìn)入運(yùn)行界面后可選擇對(duì)應(yīng)的被控對(duì)象控制臺(tái)進(jìn)行遠(yuǎn)程控制。當(dāng)多個(gè)客戶端同時(shí)監(jiān)控服務(wù)器端時(shí),可以多個(gè)同時(shí)控制,但只能有一個(gè)客戶端有控制權(quán),其他的需等待釋放后獲得控制權(quán)。
5 結(jié)論
本文的基于myDAQ的遠(yuǎn)程多對(duì)象控制系統(tǒng)的設(shè)計(jì)方案, 該方案中的遠(yuǎn)程控制系統(tǒng)成功的結(jié)合了單片機(jī)IAP技術(shù)、模擬開關(guān)技術(shù)以及LabVIEW 的Web 發(fā)布技術(shù),實(shí)現(xiàn)了不拘于時(shí)間、地點(diǎn)、場地要求的多種被控對(duì)象遠(yuǎn)程控制系統(tǒng)。用戶只需一臺(tái)聯(lián)網(wǎng)的普通PC 機(jī)即可完成相應(yīng)功能。通過本系統(tǒng)一方面可以遠(yuǎn)程控制現(xiàn)場的各種被控對(duì)象,另一方面通過攝像頭還可以對(duì)現(xiàn)場的運(yùn)行狀況進(jìn)行查看,增加了真實(shí)性。該系統(tǒng)已經(jīng)通過了測(cè)試在學(xué)校范圍內(nèi)穩(wěn)定運(yùn)行。而且底層平臺(tái)還具有很強(qiáng)的擴(kuò)展性,用戶可以根據(jù)自己的需要在被控端添加其他的被控對(duì)象,簡單快捷、實(shí)用性高。