<div align=center>云曉旭, 趙春宇, 陳大躍<BR> (上海交通大學(xué)信息檢測(cè)技術(shù)與儀器系, 上!200030)<BR> 摘要:Xport 是Lantronix 公司研制的嵌入式設(shè)備服務(wù)器,它能使串口嵌入式設(shè)備快速、方便地增加聯(lián)網(wǎng)能力。本文介紹了嵌入式設(shè)備服務(wù)器Xport 的功能和原理,并給出了基于Xport 的遠(yuǎn)程室溫監(jiān)測(cè)系統(tǒng)的實(shí)現(xiàn)方案。<BR> 關(guān)鍵詞:嵌入式系統(tǒng); Xport ; 遠(yuǎn)程監(jiān)測(cè); TCP/ IP 中圖分類(lèi)號(hào): TP27415 文獻(xiàn)標(biāo)識(shí)碼: B 文章編號(hào): 100327241 (2004) 0720028203<BR> The Ap plicatio n of Xp ort in Remot e Temp e rat ureS up e rvisio n S ys t emYUN Xiao - xu ,ZHAO Chun - yu , CHEN Da - yue(Department of Information Measurement Technology andInstruments , Shanghai Jiao Tong University , Shanghai 200030 ,China)Abstract :The XPort embedded device server was developed by Lantronix company. It can make embedded device quickly and easily connect to inter2net . The paper introduces the function and principle of Xport and the design of remote temperature monitoring and controlling system based<BR> on Xport is also given.<BR> Key words :Embedded system; Xport ; Remote monitoring system; TCP/ IP<BR> 1 引言<BR> 隨著Internet 技術(shù)發(fā)展的日益成熟,使得基于分組交換技術(shù)的通信性能、通信質(zhì)量和可靠性得到了穩(wěn)步提高,借助Internet傳送各種測(cè)量和控制信息,具有快速、方便、可靠的特點(diǎn),嵌入式系統(tǒng)與Internet 技術(shù)結(jié)合實(shí)現(xiàn)遠(yuǎn)程控制,已成為目前嵌入式系統(tǒng)研究的新熱點(diǎn)。嵌入式系統(tǒng)與internet 相結(jié)合,要求嵌入式設(shè)備要能夠接入internet ,同時(shí)還要能夠提供網(wǎng)絡(luò)服務(wù),實(shí)現(xiàn)這些服務(wù)的關(guān)鍵是滿(mǎn)足TCP/ IP 等網(wǎng)絡(luò)協(xié)議。對(duì)TCP/ IP 協(xié)議的處理通常有兩種方法,一種是采用實(shí)時(shí)操作系統(tǒng)ROTS ,用軟件的方式直接處理TCP/ IP協(xié)議;另一種方法是采用固化了的TCP/ IP 協(xié)議的硬件芯片通過(guò)外部硬件電路處理TCP/ IP 協(xié)議。這兩種方法要求開(kāi)發(fā)人員對(duì)實(shí)[/align]時(shí)操作系統(tǒng)(RTOS) 和TCP/ IP 協(xié)議都要十分熟悉,并且軟件的實(shí)現(xiàn)往往需要高檔的微控制器提供更快的速度,更大的存儲(chǔ)量,還要配備專(zhuān)門(mén)的接口,因此常常使簡(jiǎn)潔的嵌入式系統(tǒng)變得非常臃<BR> 腫,同時(shí)帶來(lái)的是開(kāi)發(fā)成本和復(fù)雜程度的增加,開(kāi)發(fā)周期的延長(zhǎng)。此外,當(dāng)前大量存在的是用8 和16 位的微控制器開(kāi)發(fā)成的嵌入式系統(tǒng),若在它們有限的系統(tǒng)資源下加入實(shí)時(shí)操作系統(tǒng)或固化TCP/ IP 等Internet 協(xié)議是比較困難的[5 ] 。如果使用Xport進(jìn)行系統(tǒng)開(kāi)發(fā),便可以使這些低檔的MCU 系統(tǒng)通過(guò)串口快速方便地具有聯(lián)網(wǎng)功能了。<BR> 2 嵌入式設(shè)備服務(wù)器Xport [1 ]<BR> 美國(guó)Lantronix 公司的Xport 嵌入式設(shè)備服務(wù)器是一種單芯片、專(zhuān)為面向嵌入式系統(tǒng)而設(shè)計(jì)的網(wǎng)絡(luò)服務(wù)器。它是一種從串口到以太口(RJ45) 的轉(zhuǎn)換設(shè)備,開(kāi)發(fā)人員可以不必考慮復(fù)雜的網(wǎng)絡(luò)協(xié)議,也不用對(duì)自己已經(jīng)開(kāi)發(fā)好的系統(tǒng)進(jìn)行全面改動(dòng),只需在原應(yīng)用系統(tǒng)上增加小段接口程序即可實(shí)現(xiàn)上網(wǎng)功能,降低了系統(tǒng)開(kāi)發(fā)的復(fù)雜程度,并能大大縮短了開(kāi)發(fā)周期。<BR> 2. 1 嵌入式設(shè)備網(wǎng)絡(luò)服務(wù)器Xport 系統(tǒng)結(jié)構(gòu)Xport 為嵌入式系統(tǒng)提供了完整的集成方案,其一端是輸出<BR> 為3. 3 伏COMS 電平的高速串口,另一端是傳輸率為10/ 100Mbps自適應(yīng)以太網(wǎng)口(RJ45) ;內(nèi)部集成了可靠成熟的操作系統(tǒng)、嵌入式WEB 服務(wù)器、完整的TCP/ IP 協(xié)議棧,還具有email 報(bào)警功能。<BR> Xport 的系統(tǒng)結(jié)構(gòu)圖如圖1 所示。Xport 利用其一端的串口與底層MCU 的( I/ O 節(jié)點(diǎn)相連) ,上層用另一端的以太網(wǎng)接口RJ45 可直接接入Internet ,可以使串行設(shè)備具有聯(lián)網(wǎng)能力,并允許授權(quán)用戶(hù)在internet 上用瀏覽器對(duì)現(xiàn)場(chǎng)進(jìn)行遠(yuǎn)程監(jiān)控。<BR> 圖1 Xport 系統(tǒng)結(jié)構(gòu)原理圖<BR> Xport 總體上是基于Lantronix 公司自主設(shè)計(jì)的16 位DSTni -Lx186 CPU ,該CPU 具有2K字節(jié)的ROM大于5K字節(jié)的SRAM、Watchdaog 以及UART、SPI、Ethernet 網(wǎng)等外圍設(shè)備接口。Xport 內(nèi)部還有512K字節(jié)的Flash ROM,用戶(hù)可以存放按自己用途開(kāi)發(fā)的網(wǎng)頁(yè)和Java 小程序,也可以用來(lái)給系統(tǒng)進(jìn)行軟件升級(jí)。為了防止電磁干擾,Xport 內(nèi)部增加了隔離濾波模塊,保證數(shù)據(jù)安全正確的傳輸,此外Xport 還具有外部重啟動(dòng)功能。<BR> 2. 2 嵌入式設(shè)備網(wǎng)絡(luò)服務(wù)Xport 協(xié)議架構(gòu)<BR> Xport 所采用的實(shí)時(shí)多任務(wù)操作系統(tǒng)SuperTask 以及其所支持的Internet 協(xié)議都存放在DSTni - Lx186 CPU 的256K 字節(jié)SRAM中。SuperTask 是由Lantronix 公司自主開(kāi)發(fā)的實(shí)行操作系<BR> 統(tǒng),它以MultiTask 為內(nèi)核開(kāi)放型的操作系統(tǒng),易于操作修改和維護(hù),同時(shí)SuperTask 具有穩(wěn)定性好,具有遠(yuǎn)程維護(hù)和遠(yuǎn)程監(jiān)視的能力和優(yōu)越的處理性能等特點(diǎn),加強(qiáng)了網(wǎng)絡(luò)互聯(lián)通信、協(xié)議和管理等方面的功能。Xport 具有比較完備的網(wǎng)絡(luò)協(xié)議棧,其結(jié)構(gòu)如圖2 所示:圖2 Xport 的TCP/ IP 協(xié)議棧結(jié)構(gòu)<BR> 這些協(xié)議按照分層協(xié)議棧的方式精心組織,應(yīng)用層有SN2MP、SMTP、Telnet 、HTTP 協(xié)議。HTTP 協(xié)議用以實(shí)現(xiàn)和瀏覽器通訊提供各種類(lèi)型資源,如HTML、圖片等;SMTP 協(xié)議實(shí)現(xiàn)簡(jiǎn)單郵件傳輸,用來(lái)發(fā)送E - mail 告警信息。傳輸層有TCP、UDP 兩種協(xié)議可選擇,其中TCP 是面向連接的傳輸協(xié)議,它支持出錯(cuò)重傳機(jī)<BR> 制,為用戶(hù)提供可靠的數(shù)據(jù)流,但實(shí)時(shí)性較差,可以用于對(duì)可靠性要求較嚴(yán)格的文件傳輸,而UDP 是面向無(wú)連接的傳輸協(xié)議,它不保證數(shù)據(jù)傳輸100 %可靠,但提供了很高的實(shí)時(shí)性,用戶(hù)可根據(jù)自己的需要選擇其一。還有網(wǎng)絡(luò)層的IP、ICMP 協(xié)議通過(guò)數(shù)據(jù)鏈路層和物理層的Ethernet 進(jìn)行Internet 數(shù)據(jù)交互[2 ] 。<BR> 2. 3 Xport 參數(shù)設(shè)置及地址分配<BR> 每個(gè)Xport 都有一個(gè)唯一的MAC 地址,接入網(wǎng)絡(luò)之前必須根據(jù)MAC 地址給它分配有效的IP 地址,并且對(duì)高速串口所使用的協(xié)議、握手信號(hào)、E - mail 觸發(fā)方式等參數(shù)進(jìn)行設(shè)置。所有這些參數(shù)都可以通過(guò)Xport Installer 軟件調(diào)用內(nèi)嵌參數(shù)網(wǎng)頁(yè)進(jìn)行簡(jiǎn)單直觀設(shè)置, 其中高速串口支持RS232 協(xié)議, 波特率有4800bps、9600bps、19200bps 等11 種可選,其他參數(shù)如數(shù)據(jù)位、奇偶校驗(yàn)位、停止位,都可以在此設(shè)置。Xport 還有一個(gè)很實(shí)用的功能,就是Email 告警,當(dāng)監(jiān)控對(duì)象發(fā)生異常時(shí)Xport 就會(huì)發(fā)E2mail 給主機(jī)監(jiān)控頁(yè)面,以便管理人員能及時(shí)采取措施。Email 觸發(fā)條件有兩種選擇,可根據(jù)應(yīng)用任選其一:第一種是當(dāng)串口收到特定的字符時(shí)觸發(fā);第二種是當(dāng)Xport 的三個(gè)可編程的引腳電平滿(mǎn)足所設(shè)定的條件時(shí)即可觸發(fā)。<BR> 3 遠(yuǎn)程室溫監(jiān)測(cè)系統(tǒng)的構(gòu)成<BR> 遠(yuǎn)程監(jiān)測(cè)的實(shí)質(zhì)是將前端傳感設(shè)備信號(hào)轉(zhuǎn)化符合TCP/ IP協(xié)議的網(wǎng)絡(luò)信號(hào),使用戶(hù)通過(guò)局域網(wǎng)或Internet 端就能訪問(wèn)到監(jiān)測(cè)數(shù)據(jù),并把終端的調(diào)節(jié)控制命令轉(zhuǎn)化程MCU 所能接受的串口數(shù)據(jù),再由MCU 控制執(zhí)行器產(chǎn)生相應(yīng)動(dòng)作從而達(dá)到調(diào)節(jié)控制的目的。在整個(gè)系統(tǒng)的構(gòu)建中按照監(jiān)測(cè)功能和監(jiān)測(cè)參數(shù)頁(yè)面均“分散化”的設(shè)計(jì)思想,監(jiān)測(cè)系統(tǒng)采用基于嵌入式設(shè)備服務(wù)器的B/ S系統(tǒng)結(jié)構(gòu)[6 ] ,系統(tǒng)的構(gòu)成如圖3 所示。整個(gè)系統(tǒng)分為三層:管理層、中間層和設(shè)備層。其中管理層負(fù)責(zé)整個(gè)系統(tǒng)溫度歷史數(shù)據(jù)的收集、顯示,調(diào)節(jié)系統(tǒng)監(jiān)測(cè)參數(shù),發(fā)送調(diào)節(jié)控制命令,這些功能由管理層中的數(shù)據(jù)庫(kù)服務(wù)器和Web 服務(wù)器來(lái)實(shí)現(xiàn)。Web 服務(wù)器用來(lái)生成整個(gè)監(jiān)控系統(tǒng)頁(yè)面,并通過(guò)與Xport 交互來(lái)顯示監(jiān)測(cè)到的數(shù)據(jù),同時(shí)向各監(jiān)測(cè)點(diǎn)發(fā)送各種調(diào)節(jié)控制命令,它相當(dāng)于一<BR> 個(gè)門(mén)戶(hù)站點(diǎn),遠(yuǎn)程授權(quán)用戶(hù)可以通過(guò)internet 對(duì)其進(jìn)行訪問(wèn)。數(shù)據(jù)庫(kù)服務(wù)器和WEB 服務(wù)器在邏輯上是相互獨(dú)立的,它們可以存在于同一臺(tái)機(jī)器上,也可以存在于不同機(jī)器上。由于它們之間的這種相互獨(dú)立,一些高級(jí)的應(yīng)用就可以運(yùn)行而不會(huì)影響系統(tǒng)的性能。<BR> 中間層實(shí)際上成為管理層與設(shè)備層之間的一個(gè)連接,它主要作用是協(xié)議轉(zhuǎn)換和數(shù)據(jù)傳遞,設(shè)備層是由溫度傳感器、執(zhí)行器以及微控制器(MCU) 組成的底層數(shù)據(jù)采集控制模塊。采樣獲得的數(shù)據(jù)由MCU 判斷,一旦所測(cè)的數(shù)據(jù)超出安全范圍,MCU 立刻觸發(fā)Xport 的Email 告警功能,通知管理層采取措施。如果在安全范圍內(nèi),數(shù)據(jù)則經(jīng)串口傳給Xport ,由嵌入到Xport 中的Java 小程序來(lái)訪問(wèn),通過(guò)Socket 連接傳到管理層并在監(jiān)測(cè)頁(yè)面上顯示。由管理層通過(guò)監(jiān)測(cè)頁(yè)面發(fā)出的調(diào)節(jié)控制命令也通過(guò)Socket 連接傳給Xport ,MCU 接到串口發(fā)來(lái)的數(shù)據(jù)后控制執(zhí)行器產(chǎn)生相應(yīng)的動(dòng)作,對(duì)室溫進(jìn)行調(diào)控。<BR> 圖3 遠(yuǎn)程室溫監(jiān)測(cè)系統(tǒng)結(jié)構(gòu)圖<BR> 這種系統(tǒng)結(jié)構(gòu)有以下優(yōu)點(diǎn):<BR> 第一, 采用監(jiān)測(cè)功能與監(jiān)測(cè)參數(shù)頁(yè)面均“分散化”的設(shè)計(jì)思想構(gòu)建系統(tǒng),使整個(gè)系統(tǒng)對(duì)管理層的依賴(lài)性大大降低,提高了系統(tǒng)的安全性和穩(wěn)定性。<BR> 第二, 在已有的應(yīng)用系統(tǒng)基礎(chǔ)上只需增加一段與Xport 通訊的接口程序,其他無(wú)需作大的改動(dòng)便可以使原系統(tǒng)接入Inter2net ,實(shí)現(xiàn)遠(yuǎn)程網(wǎng)絡(luò)化監(jiān)測(cè),大大提高了系統(tǒng)的擴(kuò)展性。<BR> 第三, 這種結(jié)構(gòu)對(duì)MCU 的要求較低,無(wú)論是運(yùn)行速度、硬件配置和存儲(chǔ)容量等方面均無(wú)非常特殊的要求,降低了系統(tǒng)的開(kāi)發(fā)成本。<BR> 第四, 系統(tǒng)在統(tǒng)一了各層接口的情況下,管理層、中間層和<BR> 設(shè)備層三層可以同時(shí)進(jìn)行開(kāi)發(fā),可以縮短系統(tǒng)的開(kāi)發(fā)周期。<BR> 4 管理層、中間層通訊軟件實(shí)現(xiàn)<BR> 整個(gè)系統(tǒng)基于嵌入式設(shè)備服務(wù)器的B/ S 系統(tǒng)結(jié)構(gòu),并且要求監(jiān)測(cè)主頁(yè)面要實(shí)時(shí)動(dòng)態(tài)地顯示不同監(jiān)測(cè)點(diǎn)的數(shù)據(jù)并要和Xport 進(jìn)行動(dòng)態(tài)交互。在軟件開(kāi)發(fā)方面,Java 語(yǔ)言具有面向?qū)ο笈c操作平臺(tái)無(wú)關(guān)、多線程執(zhí)行的特點(diǎn),此外它還具有擴(kuò)展HTML語(yǔ)言(超文本標(biāo)記語(yǔ)言) 的功能,這些特點(diǎn)能很好的滿(mǎn)足遠(yuǎn)程室溫監(jiān)測(cè)系統(tǒng)的要求[3 ] 。遠(yuǎn)程室溫監(jiān)測(cè)系統(tǒng)管理層與中間層通信的軟件結(jié)構(gòu)如圖4 所示。本系統(tǒng)中間層的Xport 與管理層的通信軟件主要由Xport 初始化設(shè)置、數(shù)據(jù)接受、數(shù)據(jù)發(fā)送、數(shù)據(jù)處理等模塊組成。在程序中加入基于TCP/ IP 協(xié)議的用戶(hù)自定義數(shù)據(jù)通信協(xié)議,這樣使終端客戶(hù)機(jī)能與Xport 服務(wù)器進(jìn)行自定義的通信,如發(fā)送升溫、降溫命令、采集參數(shù)初始命令等。<BR> 圖4 中間層與管理層通信的軟件結(jié)構(gòu)圖<BR> Xport 初始化完成后,授權(quán)用戶(hù)通過(guò)瀏覽器向WEB 服務(wù)器發(fā)出HTTP 請(qǐng)求,然后Java 小程序隨同HTML 文件下載到客戶(hù)端,并由客戶(hù)端的Java 虛擬機(jī)來(lái)執(zhí)行,同時(shí)Java 小程序和Xport建立Socket 連接,該連接把采集到的數(shù)據(jù)傳給WEB 服務(wù)器,同時(shí)還傳給數(shù)據(jù)庫(kù)服務(wù)器[4 ] 。在整體數(shù)據(jù)流動(dòng)的過(guò)程中Xport 起到了從以太網(wǎng)數(shù)據(jù)流到SPI 數(shù)據(jù)流的轉(zhuǎn)換作用,MCU 從串口發(fā)來(lái)的數(shù)據(jù)存在數(shù)據(jù)緩沖區(qū),“接受數(shù)據(jù)”程序一旦查詢(xún)到緩沖區(qū)<BR> 有新的數(shù)據(jù)傳來(lái),便將數(shù)據(jù)交給“數(shù)據(jù)處理”程序處理!皵(shù)據(jù)處理”程序主要是對(duì)此數(shù)據(jù)根據(jù)所選的協(xié)議幀格式進(jìn)行打包處理,數(shù)據(jù)打包后上傳到管理層顯示。如果室溫需要調(diào)節(jié)時(shí),管理員可通過(guò)監(jiān)測(cè)頁(yè)面下達(dá)的調(diào)節(jié)控制命令,這些命令包經(jīng)“數(shù)據(jù)處理”程序?qū)ζ溥M(jìn)行解析,最終由“發(fā)送數(shù)據(jù)”程序傳遞給MCU 來(lái)執(zhí)行。<BR> 5 結(jié)束語(yǔ)<BR> 通過(guò)瀏覽器對(duì)現(xiàn)場(chǎng)的環(huán)境進(jìn)行監(jiān)測(cè)是將Internet 引入監(jiān)測(cè)領(lǐng)域的一種新技術(shù)。本文所介紹的基于Xport 的網(wǎng)絡(luò)化遠(yuǎn)程室溫監(jiān)測(cè)方案正是應(yīng)用這一嵌入式Internet 新技術(shù)來(lái)構(gòu)建的,該系統(tǒng)硬軟件設(shè)計(jì)簡(jiǎn)單、靈活性好、使用方便,可根據(jù)需要應(yīng)用到其他的監(jiān)測(cè)領(lǐng)域,具有一定的推廣價(jià)值。<BR> 6 參考文獻(xiàn):<BR> [1 ] Lantronix corporation. Xport user manual [ EB/ OL ] . www. lantronix.com . 2003<BR> [2 ] [美]Douglas E. Comer 著林瑤等譯. 用TCP/ IP 進(jìn)行網(wǎng)絡(luò)互聯(lián) . 北京:電子工業(yè)出版社, 1998<BR> [3 ] 王克宏主編, 徐劍軍, 徐鵬編著. Java 嵌入式技術(shù)[M] . 北京:清華大學(xué)出版社,1998<BR> [4 ] 廖衛(wèi)東編著. Java 程序設(shè)計(jì)[M] . 北京:機(jī)械工業(yè)出版社,1997<BR> [5 ] 王懷宜編著. 單片機(jī)原理及其嵌入式應(yīng)用教程[M] . 北京:北京希望電子出版社, 2002<BR> [6 ] JOEL P. KANTER 編著, 李杰亮李志譯. 全面理解瘦客戶(hù)/ 服務(wù)器計(jì)算技術(shù)[M] . 北京: 清華大學(xué)出版社,1999<BR> 作者簡(jiǎn)介:云曉旭(1978 - ) ,男,上海交通大學(xué)信息檢測(cè)技術(shù)與儀器系碩士研<BR> 究生, 主要從事現(xiàn)場(chǎng)總線和嵌入式設(shè)備網(wǎng)絡(luò)化技術(shù)研究。</div></P><P> ps:如果有任何疑問(wèn)或者需要,請(qǐng)和我聯(lián)系:020-87579017 聯(lián)系人:李霖
|