Web網(wǎng)絡(luò )傳感器的遠程數據采集系統設計 2011-07-29
2.1 連續數據采集的實(shí)現方法
由于HTTP是基于請求/響應模式的,客戶(hù)端和服務(wù)端進(jìn)行一次交互時(shí),開(kāi)始于客戶(hù)提出的一個(gè)請求,并在服務(wù)器給出響應后結束。而一次交互只能得到一組數據,那么如何實(shí)現連續的數據采集呢? 一般有兩種方法:即客戶(hù)端牽引和建立TCP連接。
客戶(hù)端牽引就是在網(wǎng)頁(yè)中插入定時(shí)刷新功能,它的數量級為s,可以使用戶(hù)看到數據的變化,但不能滿(mǎn)足強實(shí)時(shí)性的要求,而且其中會(huì )漏掉一些中間的數據。
建立TCP連接就是通過(guò)在網(wǎng)頁(yè)中嵌入ActiveX控件或Java Applet小程序來(lái)增強客戶(hù)機的功能。其中,ActiveX控件只能在windows環(huán)境下運行,而Java Applet通用性強,可以實(shí)現跨平臺操作。所以本系統采用Java Applet來(lái)進(jìn)行遠程數據的實(shí)時(shí)采集。
2.2 Java Applet
Applet是用Java編寫(xiě)的,含有可視化內容的,并被嵌入Web頁(yè)面中用來(lái)產(chǎn)生特殊頁(yè)面效果的小程序,經(jīng)常被用于增加網(wǎng)頁(yè)多媒體效果,并使網(wǎng)頁(yè)產(chǎn)生互動(dòng)功能。
當用戶(hù)訪(fǎng)問(wèn)帶有Java Applet的網(wǎng)頁(yè)時(shí),Applet被下載到用戶(hù)計算機上執行,但前提是用戶(hù)使用的是支持Java的網(wǎng)絡(luò )瀏覽器。由于A(yíng)pplet是在用戶(hù)計算機上執行的,因此它的執行速度是不受網(wǎng)絡(luò )寬帶或者M(jìn)ODEM存取速度的限制,用戶(hù)可以更好地查看網(wǎng)頁(yè)上Applet產(chǎn)生的多媒體效果。
Applet必須將HTML的applet>和/applet>一對標記或者object>/object>嵌入到Web網(wǎng)頁(yè)中,使用瀏覽器才能運行。在IE中用obje-ct>標簽取代applet>標簽,在Netscape 4使用embed>標簽取代applet>,但是object>和embed>都必須遵循Java Plug-in中的格式。
3 實(shí)時(shí)數據采集的具體實(shí)現
3.1 硬件實(shí)現
嵌入式Web網(wǎng)絡(luò )傳感器的數據采集系統的硬件結構如圖3所示。
ADuC832是ADI公司推出的混合信號單片微控制器,是真正意義上完整的數據采集系統芯片,是集數據轉換電路、微控制器、閃存于一體的數據采集系統。它的主要特性有:8通道模擬I/O,247 ksps、12位ADC,2個(gè)12位(單調的)電壓輸出DAC片內溫度傳感器;62 KB片內閃速/電擦除程序存儲器,4 KB片內閃速/電擦除數據存儲器,2 304字節的片內數據RAM。
主芯片通過(guò)74LS138譯碼器來(lái)進(jìn)行片選外部數據存儲器KM62256,或者網(wǎng)卡控制器RTL8019AS。通過(guò)74HC573地址鎖存器進(jìn)行當前地址的鎖存,使得輸出端的狀態(tài)不會(huì )隨輸入端的狀態(tài)變化而變化,僅在有鎖存信號時(shí)輸入的狀態(tài)被保存到輸出,直到下一個(gè)鎖存信號到來(lái)時(shí)才改變,也是為了實(shí)現地址的復用。
在主電路上主要設計了一個(gè)信號輸入接口,用來(lái)接工業(yè)現場(chǎng)的4~20 mA信號的變送器;設計了一個(gè)RJ45的網(wǎng)口接口,通過(guò)網(wǎng)口可以直接接到Internet上,進(jìn)行現場(chǎng)數據的上傳和共享;還設計了RS485接口和RS232接口,作為工業(yè)現場(chǎng)特殊情況下的數據接入和處理。
現場(chǎng)傳感器將采集的4~20 mA信號傳送給信號調理板,將其信號轉換為0~2.5 V的電壓信號,然后通過(guò)ADuC832轉換為數字量,再通過(guò)程序轉換為相應的溫度值,實(shí)時(shí)地將溫度值顯示在嵌有Java Applet的網(wǎng)頁(yè)上。
3.2 軟件實(shí)現
3.2.1 操作系統和協(xié)議棧的選用
在嵌入式Web服務(wù)器上,選用μC/OS-II作為嵌入式實(shí)時(shí)操作系統。它是一個(gè)可移植、可固化、可裁剪、搶占式的實(shí)時(shí)操作系統,比傳統的前后臺程序可靠性更高,效率更高。
TCP/IP是個(gè)協(xié)議簇,是諸多開(kāi)放的協(xié)議的集合,但是單片機是個(gè)小型的微處理器,內部資源有限,因此必須要對協(xié)議進(jìn)行裁剪。本系統采用精簡(jiǎn)的小型TCP/IP協(xié)議?!蘄P協(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í)現網(wǎng)絡(luò )連接和通信的最基本的功能,同時(shí)還能實(shí)現CGI技術(shù)。其應用層就是HTTP協(xié)議,采集數據嵌入在Web服務(wù)器網(wǎng)頁(yè)中以網(wǎng)頁(yè)的形式發(fā)布到Internet。
對于μC/OS-II和μIP的移植,詳見(jiàn)參考文獻。整個(gè)系統的軟件結構如圖4所示。
評論