關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于ARM和DS18B20設計網絡化的智能溫度傳感器

        基于ARM和DS18B20設計網絡化的智能溫度傳感器

        作者: 時間:2010-08-03 來源:網絡 收藏

          3.2.2 Web服務器的建立

          要在微處理器中建立Web服務器,主要需要實現TCP/IP協議棧的移植。設計中主要采用ZLG/IP軟件包,它是廣州周立功單片機發展有限公司開發的面向嵌入式系統開發的TCP/IP協議棧,是ZLG系列中間件的重要成員之一。ZLG/IP提供實現Internet網絡上IP接點的功能,是一種高性能的嵌入式TCP/IP協議棧軟件。它使用μC/OS—II實時操作系統的信號機制來實現一個多任務并行、可重入的協議棧,完全使用ANSI C編寫,可以像μC/OS—II那樣支持多種CPU。ZLG/IP還具有層次清晰、易于升級和修改等特點。該ZLG/IP軟件包具體可見參考文獻。

          ZLG/IP采用模塊化層次結構設計,其結構如圖5所示。

        ZLG

          圖5中,TCP/IP應用程序是用戶自己編寫的μC/OS—II任務,是ZLG/IP的使用者,位于整個程序的最高層。TCP/IP應用程序調用ZLG/IP提供的Socket API接口函數對網絡進行相應的操作。Socket API接口位于TCP/IP協議與應用程序之間,是用戶操作協議棧程序的工具,在應用程序中通過調用Socket API接口函數來對協議棧軟件進行操作。TCP、UDP處理模塊是協議棧程序中處理傳輸層協議的模塊,負責對傳輸層的數據進行封裝和解拆,保存傳輸層連接狀態。點劃線內部就是接收處理,包括IP報、ARP報、ICMP報的處理,及以太網層的數據接收驅動。接收驅動模塊在接收到數據后先進行分類,若是IP報就由IP處理模塊處理,若是ARP報就進行ARP協議處理。ARP請求報調用以太網發送模塊發送ARP應答報。IP處理模塊把數據分類,TCP或UDP報則轉由上層的傳輸層模塊處理,而ICMP協議處理模塊負責對IC—MP協議進行處理。IP發送模塊負責封裝IP報,并把封裝好的IP報傳送到下層發送模塊。IP發送模塊有4個上層模塊調用:分別是Socket API接口、UDP處理、TCP處理和ICMP處理。它們把相應的參數傳送給IP發送模塊,由IP發送模塊來封裝。Ethernet發送驅動模塊是屬于以太網層的處理模塊,負責封裝以太網報和數據的發送,調用它的模塊有ARP處理模塊和IP發送模塊。

          由于使用的是B/S結構,則編程是采用的是TCP通信的Socket API。編寫TCP通信的任務時分為服務器方式和客戶機方式兩種。服務器方式是需要監聽連接,只有在與客戶機建立連接后才能進行數據處理。客戶機方式是主動連接服務器,也是在連接成功后才能進行數據處理。圖6是TCP通信時服務器端和客戶機端通信的函數應用圖。

        TCP通信時服務器端和客戶機端通信的函數應用圖

          在編程時溫度傳感器有其唯一的一個IP地址,即192.168.O.174。子網掩碼是255.255.255.0,網關地址與IP地址相同。Web服務器建立在微處理器中,個人PC機為客戶端,當個人需要查詢溫度傳感器的值時,通過HTTP協議在瀏覽器中輸入該傳感器的IP地址(即ht—tp://192.168.O.174),便可進入該系統的網頁溫度瀏覽界面。

          Web服務器任務程序代碼如下:

        程序

        程序

          結 語

          本系統已經過測試運行良好,能方便地通過瀏覽器實時查詢溫度傳感器所采集的溫度值。是如今傳感器技術發展的一個新的方向,本系統采用嵌入式技術實現了一個基本的基于網絡的智能化傳感器,其中設計的重點主要是對TCP/IP通信協議的實現,即將TCP/IP協議棧移植到系統中,然后調用相關的API函數實現網絡通信。而Web功能的實現主要采用了B/S模式,通過上層的HTTP協議實現了瀏覽器與嵌入式網絡傳感器的交互。實現傳感器的網絡化控制可以很好地應用在對家電設備的控制或工業現場的控制中,具有良好的應用前景。

        tcp/ip相關文章:tcp/ip是什么



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 噶尔县| 莱芜市| 青川县| 贺州市| 萝北县| 新乡市| 靖安县| 蕉岭县| 黑水县| 贺州市| 屏南县| 颍上县| 杭锦旗| 清镇市| 龙海市| 和田县| 天等县| 汾阳市| 西乡县| 黑山县| 惠水县| 北京市| 光山县| 永仁县| 元江| 泉州市| 南川市| 扶风县| 石家庄市| 长顺县| 西乡县| 专栏| 阿城市| 黄大仙区| 静乐县| 香河县| 富蕴县| 桑日县| 山东省| 长春市| 措美县|