Web網絡傳感器的遠程數據采集系統設計
隨著網絡技術和嵌入式技術的發展,將嵌入式系統與Internet相結合對系統進行數據、圖像監控和管理,成為重要研究方向之一。嵌入式Web網絡傳感器技術是傳感器、嵌入式、分布式信息處理和Internet等相關技術交叉結合的技術,它是在智能傳感器的基礎上把TCP/IP協議作為一種嵌入式應用,嵌入現成智能服務器的ROM中,利用傳感器內建的Web服務器,用戶可以通過瀏覽器采集遠程監控對象的信息。
本文引用地址:http://www.j9360.com/article/161740.htm用戶通過瀏覽器訪問Web服務器上的數據,將遠程采集到的數據實時顯示到Internet網頁上。用戶需要實時看到數據的變化,而HTML網頁通常只能是靜態的數據,為此在Web服務器上應用動態網頁技術是必要的。動態網頁的實現技術有CGI和HTML腳本嵌入技術(如ASr、PHP、JSP等),由于網絡傳感器嵌入式系統采用的是單片機來實現,其資源有限,為此采用CGI技術來實現動態網頁。
1.1 CGI原理
CGI(Common Gateway Interface,公共網關接口)提供給Web服務器一個外部程序的通道,實現處理器與瀏覽器之間的通信。CGI是一種接口規范,可以處理客戶端(一般是瀏覽器)輸入的數據,完成瀏覽器和服務器之間的交互操作。CGI是運行在Web服務器上的程序,由瀏覽器的輸入觸發,是服務器和系統中其他程序的橋梁。CGI程序屬于一個外部程序,是運行在服務器端的一個可執行文件。
CGI程序的工作原理示意圖如圖1所示。
圖1 CGI程序的工作原理示意圖
客戶端的Web瀏覽器瀏覽到某個主頁后,利用一定的方式提交數據,并通過HTTP協議向Web服務器發出請求。服務器端的HTTP Daemon(守護進程)將描述的主頁信息通過標準輸入(STDIN)和環境變量(environment variable)傳遞給主頁指定的CGI程序,并啟動此應用程序進行處理(包括對數據庫的處理)。處理結果通過標準輸出(STDOUT)返回給HTTP Daemon,再通過HTTP協議返回給客戶端的瀏覽器,由瀏覽器負責解釋執行,將最終的結果顯示給用戶。
1.2 基于CGI的數據采集流程
CGI的數據采集流程如圖2所示。當用CGI實現遠程傳感器溫度數據采集時,CGI程序可以通過直接訪問硬件或調用驅動程序的方式獲得數據。當數據采集完畢后,CGI程序將數據組織成HTTP流并發送到Web服務器上,由Web服務器負責送到客戶端。
圖2 CGI的數據采集流程圖
評論