高速嵌入式遠(yuǎn)程監(jiān)控系統(tǒng)的研究與實(shí)現(xiàn)
摘要: 基于嵌入式網(wǎng)絡(luò)技術(shù),研究并實(shí)現(xiàn)了一種用于嵌入式設(shè)備的監(jiān)控系統(tǒng)。該系統(tǒng)采用客戶端)服務(wù)器架構(gòu)#通過在嵌入式設(shè)備中內(nèi)建一個(gè)嵌入式Web服務(wù)器,可使得相應(yīng)的嵌入式設(shè)備直接接入Internet。 同時(shí)用戶可使用標(biāo)準(zhǔn)的網(wǎng)絡(luò)瀏覽器#通過網(wǎng)絡(luò)對此設(shè)備進(jìn)行訪問%控制和管理。
本文引用地址:http://www.ex-cimer.com/article/149699.htm隨著Internet的廣泛普及和通信技術(shù)的高速發(fā)展,大量基于TCP/IP的Internet應(yīng)用可以被部署在嵌入式平臺之上,同時(shí)各種嵌入式設(shè)備可以和PC機(jī)一樣連入網(wǎng)絡(luò)之中。由此發(fā)展的嵌入式互聯(lián)網(wǎng)技術(shù)(EI)解決了不同網(wǎng)絡(luò)與Internet之間連通的問題,使得通過嵌入式互聯(lián)網(wǎng)對網(wǎng)絡(luò)中嵌入式設(shè)備的在線遠(yuǎn)程訪問、控制與管理成為可能。目前,對分布在Internet網(wǎng)絡(luò)中的嵌入式設(shè)備進(jìn)行高效、可靠的集中遠(yuǎn)程控制和管理成為嵌入式技術(shù)中較為高端的課題。
本文詳細(xì)論述了一種通過嵌入式互聯(lián)網(wǎng)技術(shù)控制在線嵌入式設(shè)備的遠(yuǎn)程監(jiān)控系統(tǒng)。本系統(tǒng)采用了客戶端/服務(wù)器(C/S)模式。通過簡化TCP/IP協(xié)議棧實(shí)現(xiàn)了嵌入式Web服務(wù)器(EWS)功能。將EWS安裝到設(shè)備中,從而使得嵌入式設(shè)備可以通過Internet互聯(lián),同時(shí)可提供網(wǎng)絡(luò)管理頁面,使用戶可用標(biāo)準(zhǔn)的網(wǎng)絡(luò)瀏覽器對眾多設(shè)備進(jìn)行在線遠(yuǎn)程訪問、控制和管理,將時(shí)間與距離的限制降到最低。
1 控制系統(tǒng)架構(gòu)
微處理器(MPU)和微控制器(MCU)用于嵌入式設(shè)備的監(jiān)視和控制,成為嵌入式系統(tǒng)的核心。為了在不同的MPU/MCU間相互通信,許多工業(yè)項(xiàng)目采用RS-232、RS-485及CAN等通信標(biāo)準(zhǔn),但這些途徑的通信速度和距離都有較大局限性,若要將其與Internet互聯(lián)需要特殊的嵌入式網(wǎng)關(guān)的支持,給實(shí)際使用造成很大的不便。EI是一種用于嵌入式設(shè)備接入Internet的互聯(lián)技術(shù),它可使嵌入式設(shè)備方便可靠地接入Internet中。
為了使嵌入式設(shè)備可以連接到Internet并讓用戶通過標(biāo)準(zhǔn)的Web瀏覽器對其進(jìn)行操作,EI的關(guān)鍵技術(shù)在于使嵌入式設(shè)備可以支持HTTP服務(wù)并具有Web服務(wù)器的功能。對于網(wǎng)絡(luò)用戶而言,EWS提供了一個(gè)基于Web的圖形界面,以便于其對接入Internet的多種嵌入式設(shè)備進(jìn)行統(tǒng)一的標(biāo)準(zhǔn)化管理,而不再需要特殊的專用協(xié)議和管理軟件。監(jiān)控系統(tǒng)的架構(gòu)如圖1所示。
在本系統(tǒng)中,EWS內(nèi)嵌于設(shè)備中并通過串口連接設(shè)備,每個(gè)設(shè)備都具有自身的IP地址,經(jīng)內(nèi)部EWS由RJ-45接口接入本地局域網(wǎng)(LAN)中(本實(shí)驗(yàn)中,LAN為以太網(wǎng))。一方面EWS讀取設(shè)備狀態(tài)信息并將其發(fā)送給本地或遠(yuǎn)程用戶;另一方面則接收控制指令并發(fā)送給設(shè)備。而更大范圍的廣局網(wǎng)通信則可通過Internet或移動(dòng)通信網(wǎng)絡(luò)實(shí)現(xiàn)。
2 EWS的設(shè)計(jì)與實(shí)現(xiàn)
2.1 軟件架構(gòu)
本系統(tǒng)采用瀏覽器/服務(wù)器的結(jié)構(gòu)實(shí)現(xiàn),其中包括兩部分——網(wǎng)絡(luò)瀏覽器與EWS,EWS通過嵌入式網(wǎng)絡(luò)技術(shù)實(shí)現(xiàn)其功能。在實(shí)際應(yīng)用中,EWS被配置在嵌入式設(shè)備中,作為設(shè)備的一部分而存在,這使得該設(shè)備無需更多改動(dòng)或配置即可直接接入網(wǎng)絡(luò)。與此同時(shí)EWS還內(nèi)建了TCP/IP協(xié)議棧、嵌入式文件系統(tǒng)、設(shè)備網(wǎng)關(guān)及硬件接口等組件,其基本架構(gòu)如圖2所示。
在該架構(gòu)中,嵌入式文件系統(tǒng)對事先配置的監(jiān)控頁面進(jìn)行存儲和管理。嵌入式設(shè)備網(wǎng)關(guān)實(shí)現(xiàn)了TCP/IP與實(shí)際使用的特定設(shè)備自身控制協(xié)議之間的相互轉(zhuǎn)換,從而實(shí)現(xiàn)了雙向透明通信。兩種不同結(jié)構(gòu)的網(wǎng)絡(luò)便可通過嵌入式設(shè)備相互連接,而硬件接口則負(fù)責(zé)EWS、硬件設(shè)備及網(wǎng)絡(luò)之間的連接。
當(dāng)本系統(tǒng)工作時(shí),首先EWS接收到來自局域網(wǎng)的客戶端基于網(wǎng)址的請求并回應(yīng)該請求。通過回應(yīng)事先配置好并存放在嵌入式文件系統(tǒng)中的監(jiān)控網(wǎng)頁界面,用戶可通過標(biāo)準(zhǔn)的瀏覽器向遠(yuǎn)端設(shè)備發(fā)送指令。該指令經(jīng)由互聯(lián)網(wǎng)傳送后被設(shè)備網(wǎng)關(guān)接收,設(shè)備網(wǎng)關(guān)將其翻譯為專用指令并進(jìn)一步傳遞給硬件設(shè)備本身。與此同時(shí),設(shè)備數(shù)據(jù)或信號也被傳輸給遠(yuǎn)程客戶端以供用戶查看。
2.2 簡化TCP/IP協(xié)議棧
嵌入式互聯(lián)網(wǎng)技術(shù)有效地解決了嵌入式設(shè)備接入因特網(wǎng)的問題,使得這些設(shè)備可通過普通的瀏覽器進(jìn)行遠(yuǎn)程訪問和控制,如何將TCP/IP協(xié)議棧內(nèi)嵌到設(shè)備中是解決問題的關(guān)鍵所在。傳統(tǒng)的TCP/IP協(xié)議棧相對比較龐大復(fù)雜并需要固定的系統(tǒng)資源支持,而大部分嵌入式設(shè)備都采用8位或16位MCU,其運(yùn)算能力和系統(tǒng)資源比較薄弱。若直接將傳統(tǒng)的TCP/IP協(xié)議棧接入設(shè)備,則大部分運(yùn)算時(shí)間和系統(tǒng)資源都將被占用,這對系統(tǒng)的整體性能影響很大。為了解決此矛盾,在設(shè)計(jì)該監(jiān)控系統(tǒng)時(shí)根據(jù)具體情況選用了成熟的LWIP協(xié)議棧以實(shí)現(xiàn)網(wǎng)絡(luò)功能,同時(shí)最大限度地減少系統(tǒng)資源消耗并提高了可靠性。
LWIP(Light-weight Internet Protocol)是瑞士計(jì)算機(jī)科學(xué)院的Adam、Dunkels等人開發(fā)出來的一套用于嵌入式系統(tǒng)的開放源代碼TCP/IP協(xié)議棧。從系統(tǒng)需求上,LWIP既可移植到操作系統(tǒng)上,又可在無操作系統(tǒng)的情況下獨(dú)立運(yùn)行。并且LWIP協(xié)議棧在保持了TCP/IP協(xié)議主要功能的基礎(chǔ)上, 減少了對RAM的占用。只需容量幾十KB的RAM和40 KB的ROM就可以運(yùn)行,使得LWIP協(xié)議非常適合在嵌入式系統(tǒng)中使用。其主要特點(diǎn)有:
(1)支持多網(wǎng)絡(luò)接口下的IP轉(zhuǎn)發(fā)。
(2)支持網(wǎng)間控制報(bào)文協(xié)議ICMP(Internet Control Messages Protocol)。
(3)包含有實(shí)驗(yàn)性擴(kuò)展的用戶數(shù)據(jù)報(bào)協(xié)議UDP(User Datagram Protocol)。
(4)包括阻塞控制、RTT估算和快速恢復(fù)及快速轉(zhuǎn)發(fā)的傳輸控制協(xié)議TCP(Transfer CONtrol Protocol)。
(5)具有專門提供的內(nèi)部回調(diào)應(yīng)用編程接口Raw API(Application Programming Interface),可用于提高應(yīng)用程序性能。
(6)帶有可選擇的Berkeley接口API(多線程情況下);能支持動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)和動(dòng)態(tài)分配IP地址。
LWIP協(xié)議棧的內(nèi)部分層結(jié)構(gòu)如圖3所示。經(jīng)分析和實(shí)際測試,該協(xié)議??稍?6位MCU順利運(yùn)行并可滿足本監(jiān)控系統(tǒng)的全部功能需求。
2.3 嵌入式文件系統(tǒng)
在實(shí)際工作時(shí),根據(jù)客戶端瀏覽器的請求,EWS將相應(yīng)的管理頁面發(fā)送至客戶端。因此對于本系統(tǒng)來說,必需要實(shí)現(xiàn)對這些頁面文件的存儲和訪問管理,為此在本系統(tǒng)中內(nèi)建了一個(gè)嵌入式文件系統(tǒng)以便于對Flash中的頁面文件及其他數(shù)據(jù)進(jìn)行管理和訪問控制。
本系統(tǒng)中,文件系統(tǒng)根據(jù)文件的名稱、長度及起始地址對其進(jìn)行管理。在結(jié)構(gòu)上,該文件系統(tǒng)并未采用多級目錄,而是將所有的文件都列于單個(gè)根目錄之下。這種目錄結(jié)構(gòu)雖然并不適合于容量快速增加的文件系統(tǒng),但定位和提取文件的速度有較大的優(yōu)勢。
當(dāng)本監(jiān)控系統(tǒng)的文件需要進(jìn)行較大的變更時(shí),可通過TFTP協(xié)議對文件系統(tǒng)進(jìn)行重構(gòu)。雖然這種文件系統(tǒng)的結(jié)構(gòu)和功能比較簡單,但可滿足絕大多數(shù)情況下嵌入式互聯(lián)網(wǎng)的需求,即頻繁地文件訪問和較少地文件變更。
3 實(shí)際應(yīng)用和測試
本監(jiān)控系統(tǒng)已在無線電信號監(jiān)測項(xiàng)目中得到應(yīng)用,其硬件平臺為遠(yuǎn)程無人監(jiān)測站,通過Internet網(wǎng)絡(luò)接收用戶指令并將監(jiān)測數(shù)據(jù)上傳。在這個(gè)項(xiàng)目中,測量儀器通過本監(jiān)控系統(tǒng)中的EWS接入互聯(lián)網(wǎng)中,測量儀器本機(jī)采用Megatec協(xié)議。遠(yuǎn)程用戶指令由EWS翻譯成Megatec協(xié)議格式再交由儀器執(zhí)行,同時(shí)將監(jiān)測數(shù)據(jù)回傳給客戶端。從功能上來說,客戶可執(zhí)行如下操作:
(1)實(shí)時(shí)或定時(shí)獲取遠(yuǎn)程無人站的測量數(shù)據(jù)。
(2)實(shí)時(shí)監(jiān)控遠(yuǎn)程無人站的狀態(tài)和參數(shù)。
(3)對遠(yuǎn)程無人站的運(yùn)行參數(shù)進(jìn)行配置,以便于滿足預(yù)定的或突發(fā)狀態(tài)的需求。
本項(xiàng)目中的主監(jiān)控界面如圖4所示。
本文研究并實(shí)現(xiàn)了一種基于EI的遠(yuǎn)程監(jiān)控系統(tǒng)。該系統(tǒng)采用客戶端/服務(wù)器的結(jié)構(gòu)。通過在嵌入式設(shè)備中內(nèi)建一個(gè)嵌入式Web服務(wù)器,本監(jiān)控系統(tǒng)可使嵌入式設(shè)備直接接入Internet,同時(shí)用戶可使用標(biāo)準(zhǔn)的網(wǎng)絡(luò)瀏覽器對嵌入式設(shè)備進(jìn)行遠(yuǎn)程管理和控制。本系統(tǒng)已在無線電監(jiān)測項(xiàng)目中得到實(shí)際應(yīng)用,成功地獲取了遠(yuǎn)程無人監(jiān)測站的監(jiān)測數(shù)據(jù)并可對監(jiān)測站進(jìn)行控制。由此,其設(shè)計(jì)功能全部得以實(shí)現(xiàn)。實(shí)際測量數(shù)據(jù)顯示本監(jiān)控系統(tǒng)的數(shù)據(jù)響應(yīng)時(shí)延為毫秒級,此項(xiàng)指標(biāo)可以滿足絕大多數(shù)遠(yuǎn)程監(jiān)控項(xiàng)目的需求。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論