Web網(wǎng)絡(luò)傳感器的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-設(shè)計(jì)應(yīng)用_第1頁(yè)
Web網(wǎng)絡(luò)傳感器的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-設(shè)計(jì)應(yīng)用_第2頁(yè)
Web網(wǎng)絡(luò)傳感器的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-設(shè)計(jì)應(yīng)用_第3頁(yè)
Web網(wǎng)絡(luò)傳感器的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-設(shè)計(jì)應(yīng)用_第4頁(yè)
Web網(wǎng)絡(luò)傳感器的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-設(shè)計(jì)應(yīng)用_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

精品文檔-下載后可編輯Web網(wǎng)絡(luò)傳感器的遠(yuǎn)程數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)-設(shè)計(jì)應(yīng)用隨著網(wǎng)絡(luò)技術(shù)和嵌入式技術(shù)的發(fā)展,將嵌入式系統(tǒng)與Internet相結(jié)合對(duì)系統(tǒng)進(jìn)行數(shù)據(jù)、圖像監(jiān)控和管理,成為重要研究方向之一。嵌入式Web網(wǎng)絡(luò)傳感器技術(shù)是傳感器、嵌入式、分布式信息處理和Internet等相關(guān)技術(shù)交叉結(jié)合的技術(shù),它是在智能傳感器的基礎(chǔ)上把TCP/IP協(xié)議作為一種嵌入式應(yīng)用,嵌入現(xiàn)成智能服務(wù)器的ROM中,利用傳感器內(nèi)建的Web服務(wù)器,用戶可以通過瀏覽器采集遠(yuǎn)程監(jiān)控對(duì)象的信息。

1Web網(wǎng)絡(luò)傳感器數(shù)據(jù)采集系統(tǒng)工作原理

用戶通過瀏覽器訪問Web服務(wù)器上的數(shù)據(jù),將遠(yuǎn)程采集到的數(shù)據(jù)實(shí)時(shí)顯示到Internet網(wǎng)頁(yè)上。用戶需要實(shí)時(shí)看到數(shù)據(jù)的變化,而HTML網(wǎng)頁(yè)通常只能是靜態(tài)的數(shù)據(jù),為此在Web服務(wù)器上應(yīng)用動(dòng)態(tài)網(wǎng)頁(yè)技術(shù)是必要的。動(dòng)態(tài)網(wǎng)頁(yè)的實(shí)現(xiàn)技術(shù)有CGI和HTML腳本嵌入技術(shù)(如ASr、PHP、JSP等),由于網(wǎng)絡(luò)傳感器嵌入式系統(tǒng)采用的是單片機(jī)來實(shí)現(xiàn),其資源有限,為此采用CGI技術(shù)來實(shí)現(xiàn)動(dòng)態(tài)網(wǎng)頁(yè)。

1.1CGI原理

CGI(CommonGatewayInterface,公共網(wǎng)關(guān)接口)提供給Web服務(wù)器一個(gè)外部程序的通道,實(shí)現(xiàn)處理器與瀏覽器之間的通信。CGI是一種接口規(guī)范,可以處理客戶端(一般是瀏覽器)輸入的數(shù)據(jù),完成瀏覽器和服務(wù)器之間的交互操作。CGI是運(yùn)行在Web服務(wù)器上的程序,由瀏覽器的輸入觸發(fā),是服務(wù)器和系統(tǒng)中其他程序的橋梁。CGI程序?qū)儆谝粋€(gè)外部程序,是運(yùn)行在服務(wù)器端的一個(gè)可執(zhí)行文件。

CGI程序的工作原理示意圖如圖1所示。

圖1CGI程序的工作原理示意圖

客戶端的Web瀏覽器瀏覽到某個(gè)主頁(yè)后,利用一定的方式提交數(shù)據(jù),并通過HTTP協(xié)議向Web服務(wù)器發(fā)出請(qǐng)求。服務(wù)器端的HTTPDaemon(守護(hù)進(jìn)程)將描述的主頁(yè)信息通過標(biāo)準(zhǔn)輸入(STDIN)和環(huán)境變量(environmentvariable)傳遞給主頁(yè)指定的CGI程序,并啟動(dòng)此應(yīng)用程序進(jìn)行處理(包括對(duì)數(shù)據(jù)庫(kù)的處理)。處理結(jié)果通過標(biāo)準(zhǔn)輸出(STDOUT)返回給HTTPDaemon,再通過HTTP協(xié)議返回給客戶端的瀏覽器,由瀏覽器負(fù)責(zé)解釋執(zhí)行,將終的結(jié)果顯示給用戶。

1.2基于CGI的數(shù)據(jù)采集流程

CGI的數(shù)據(jù)采集流程如圖2所示。當(dāng)用CGI實(shí)現(xiàn)遠(yuǎn)程傳感器溫度數(shù)據(jù)采集時(shí),CGI程序可以通過直接訪問硬件或調(diào)用驅(qū)動(dòng)程序的方式獲得數(shù)據(jù)。當(dāng)數(shù)據(jù)采集完畢后,CGI程序?qū)?shù)據(jù)組織成HTTP流并發(fā)送到Web服務(wù)器上,由Web服務(wù)器負(fù)責(zé)送到客戶端。

圖2CGI的數(shù)據(jù)采集流程圖

2實(shí)時(shí)數(shù)據(jù)采集技術(shù)

2.1連續(xù)數(shù)據(jù)采集的實(shí)現(xiàn)方法

由于HTTP是基于請(qǐng)求/響應(yīng)模式的,客戶端和服務(wù)端進(jìn)行交互時(shí),開始于客戶提出的一個(gè)請(qǐng)求,并在服務(wù)器給出響應(yīng)后結(jié)束。而交互只能得到一組數(shù)據(jù),那么如何實(shí)現(xiàn)連續(xù)的數(shù)據(jù)采集呢?一般有兩種方法:即客戶端牽引和建立TCP連接。

客戶端牽引就是在網(wǎng)頁(yè)中插入定時(shí)刷新功能,它的數(shù)量級(jí)為s,可以使用戶看到數(shù)據(jù)的變化,但不能滿足強(qiáng)實(shí)時(shí)性的要求,而且其中會(huì)漏掉一些中間的數(shù)據(jù)。

建立TCP連接就是通過在網(wǎng)頁(yè)中嵌入ActiveX控件或JavaApplet小程序來增強(qiáng)客戶機(jī)的功能。其中,ActiveX控件只能在windows環(huán)境下運(yùn)行,而JavaApplet通用性強(qiáng),可以實(shí)現(xiàn)跨平臺(tái)操作。所以本系統(tǒng)采用JavaApplet來進(jìn)行遠(yuǎn)程數(shù)據(jù)的實(shí)時(shí)采集。

2.2JavaApplet

Applet是用Java編寫的,含有可視化內(nèi)容的,并被嵌入Web頁(yè)面中用來產(chǎn)生特殊頁(yè)面效果的小程序,經(jīng)常被用于增加網(wǎng)頁(yè)多媒體效果,并使網(wǎng)頁(yè)產(chǎn)生互動(dòng)功能。

當(dāng)用戶訪問帶有JavaApplet的網(wǎng)頁(yè)時(shí),Applet被到用戶計(jì)算機(jī)上執(zhí)行,但前提是用戶使用的是支持Java的網(wǎng)絡(luò)瀏覽器。由于Applet是在用戶計(jì)算機(jī)上執(zhí)行的,因此它的執(zhí)行速度是不受網(wǎng)絡(luò)寬帶或者M(jìn)ODEM存取速度的限制,用戶可以更好地查看網(wǎng)頁(yè)上Applet產(chǎn)生的多媒體效果。

Applet必須將HTML的和一對(duì)標(biāo)記或者嵌入到Web網(wǎng)頁(yè)中,使用瀏覽器才能運(yùn)行。在IE中用標(biāo)簽取代標(biāo)簽,在Netscape4使用標(biāo)簽取代,但是和都必須遵循JavaPlug-in中的格式。

3實(shí)時(shí)數(shù)據(jù)采集的具體實(shí)現(xiàn)

3.1硬件實(shí)現(xiàn)

嵌入式Web網(wǎng)絡(luò)傳感器的數(shù)據(jù)采集系統(tǒng)的硬件結(jié)構(gòu)如圖3所示。

圖3嵌入式Web網(wǎng)絡(luò)傳感器的數(shù)據(jù)采集系統(tǒng)的硬件結(jié)構(gòu)圖

ADuC832是ADI公司推出的混合信號(hào)單片微控制器,是真正意義上完整的數(shù)據(jù)采集系統(tǒng)芯片,是集數(shù)據(jù)轉(zhuǎn)換電路、微控制器、閃存于一體的數(shù)據(jù)采集系統(tǒng)。它的主要特性有:8通道模擬I/O,247ksps、12位ADC,2個(gè)12位(單調(diào)的)電壓輸出DAC片內(nèi)溫度傳感器;62KB片內(nèi)閃速/電擦除程序存儲(chǔ)器,4KB片內(nèi)閃速/電擦除數(shù)據(jù)存儲(chǔ)器,2304字節(jié)的片內(nèi)數(shù)據(jù)RAM。

主芯片通過74LS138譯碼器來進(jìn)行片選外部數(shù)據(jù)存儲(chǔ)器KM62256,或者網(wǎng)卡控制器RTL8019AS。通過74HC573地址鎖存器進(jìn)行當(dāng)前地址的鎖存,使得輸出端的狀態(tài)不會(huì)隨輸入端的狀態(tài)變化而變化,僅在有鎖存信號(hào)時(shí)輸入的狀態(tài)被保存到輸出,直到下一個(gè)鎖存信號(hào)到來時(shí)才改變,也是為了實(shí)現(xiàn)地址的復(fù)用。

在主電路上主要設(shè)計(jì)了一個(gè)信號(hào)輸入接口,用來接工業(yè)現(xiàn)場(chǎng)的4~20mA信號(hào)的變送器;設(shè)計(jì)了一個(gè)RJ45的網(wǎng)口接口,通過網(wǎng)口可以直接接到Internet上,進(jìn)行現(xiàn)場(chǎng)數(shù)據(jù)的上傳和共享;還設(shè)計(jì)了RS485接口和RS232接口,作為工業(yè)現(xiàn)場(chǎng)特殊情況下的數(shù)據(jù)接入和處理。

現(xiàn)場(chǎng)傳感器將采集的4~20mA信號(hào)傳送給信號(hào)調(diào)理板,將其信號(hào)轉(zhuǎn)換為0~2.5V的電壓信號(hào),然后通過ADuC832轉(zhuǎn)換為數(shù)字量,再通過程序轉(zhuǎn)換為相應(yīng)的溫度值,實(shí)時(shí)地將溫度值顯示在嵌有JavaApplet的網(wǎng)頁(yè)上。

3.2軟件實(shí)現(xiàn)

3.2.1操作系統(tǒng)和協(xié)議棧的選用

在嵌入式Web服務(wù)器上,選用μC/OS-II作為嵌入式實(shí)時(shí)操作系統(tǒng)。它是一個(gè)可移植、可固化、可裁剪、搶占式的實(shí)時(shí)操作系統(tǒng),比傳統(tǒng)的前后臺(tái)程序可靠性更高,效率更高。

TCP/IP是個(gè)協(xié)議簇,是諸多開放的協(xié)議的集合,但是單片機(jī)是個(gè)小型的微處理器,內(nèi)部資源有限,因此必須要對(duì)協(xié)議進(jìn)行裁剪。本系統(tǒng)采用精簡(jiǎn)的小型TCP/IP協(xié)議棧——μIP協(xié)議棧。μIP協(xié)議代碼中包括了一些基本的通信協(xié)議:ARP協(xié)議、IP協(xié)議、ICMP協(xié)議和TCP協(xié)議,UDP協(xié)議、HTTP協(xié)議、Telnet協(xié)議、SMTP協(xié)議等。其中,ARP、IP、ICMP、TCP這4個(gè)協(xié)議就能實(shí)現(xiàn)網(wǎng)絡(luò)連接和通信的基本的功能,同時(shí)還能實(shí)現(xiàn)CGI技術(shù)。其應(yīng)用層就是HTTP協(xié)議,采集數(shù)據(jù)嵌入在Web服務(wù)器網(wǎng)頁(yè)中以網(wǎng)頁(yè)的形式發(fā)布到Internet。

對(duì)于μC/OS-II和μIP的移植,詳見參考文獻(xiàn)。整個(gè)系統(tǒng)的軟件結(jié)構(gòu)如圖4所示。

圖4系統(tǒng)的軟件結(jié)構(gòu)圖

3.2.2JavaApplet嵌入網(wǎng)頁(yè)的實(shí)現(xiàn)

應(yīng)用Applet實(shí)現(xiàn)嵌入式Web傳感器實(shí)時(shí)監(jiān)控程序RealtimeMonitor.java,主要結(jié)構(gòu)如下:

其中,0是嵌入式Web服務(wù)器的IP地址,data.txt是傳感器經(jīng)處理器處理后的數(shù)據(jù),“wly.sleep(1000);”表示設(shè)置采集的時(shí)間間隔為1s。

通過JDK軟件包,使用命令javacRealtimeMonitor.java將Java程序編譯成RealtimeMonitor.class,然后使用“”嵌入到HTML網(wǎng)頁(yè)中。

,在已加載μC/OS-II和μIP程序的Web服務(wù)器上添加嵌入Applet的Monitotor.html網(wǎng)頁(yè),將Monitor.html網(wǎng)頁(yè)的文本轉(zhuǎn)換成十六進(jìn)制代碼,放置在μIP的fsdata.c文件中并嵌入到處理的ROM中,通過Keil將所有程序編譯生成HEX文件,到嵌入式Web處理器里。

打開瀏覽器輸入IP地址0,訪問嵌入式Web服務(wù)器上的采集數(shù)據(jù)。網(wǎng)絡(luò)傳感器實(shí)時(shí)數(shù)據(jù)采集結(jié)果如圖5所示。

圖5網(wǎng)絡(luò)傳感器實(shí)時(shí)數(shù)據(jù)采集結(jié)果

結(jié)語

本文介紹了Web服務(wù)器的工作原理,將CGI和JavaApplet技術(shù)內(nèi)嵌在嵌入式服務(wù)器上,通過客戶端的瀏覽器可以實(shí)現(xiàn)嵌入式Web網(wǎng)絡(luò)傳感器的實(shí)時(shí)數(shù)據(jù)采集,節(jié)約了諸多的硬件資源和人力資源,使得對(duì)遠(yuǎn)程數(shù)據(jù)自動(dòng)采集變得更加具有通用性,同時(shí)可以適合任何內(nèi)建嵌入式Web網(wǎng)絡(luò)傳感器,具有一定的現(xiàn)實(shí)意義。

參考文獻(xiàn):

[1].ROMdatasheet/datasheet/ROM_1188413.html.[2].ADuC832datasheet/datasheet/ADuC832_124916.html.[3].74LS138datasheet/datasheet/74LS138_1054480.html.[4].KM62256datasheet/datasheet/KM62256_438905.ht

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論