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