基于LPC2210的網(wǎng)絡化控制的智能溫度傳感器
圖5中,TCP/IP應用程序是用戶自己編寫的μC/OS―II任務,是ZLG/IP的使用者,位于整個程序的最高層。TCP/IP應用程序調(diào)用ZLG/IP提供的Socket API接口函數(shù)對網(wǎng)絡進行相應的操作。Socket API接口位于TCP/IP協(xié)議與應用程序之間,是用戶操作協(xié)議棧程序的工具,在應用程序中通過調(diào)用Socket API接口函數(shù)來對協(xié)議棧軟件進行操作。TCP、UDP處理模塊是協(xié)議棧程序中處理傳輸層協(xié)議的模塊,負責對傳輸層的數(shù)據(jù)進行封裝和解拆,保存?zhèn)鬏攲舆B接狀態(tài)。點劃線內(nèi)部就是接收處理,包括IP報、ARP報、ICMP報的處理,及以太網(wǎng)層的數(shù)據(jù)接收驅動。接收驅動模塊在接收到數(shù)據(jù)后先進行分類,若是IP報就由IP處理模塊處理,若是ARP報就進行ARP協(xié)議處理。ARP請求報調(diào)用以太網(wǎng)發(fā)送模塊發(fā)送ARP應答報。IP處理模塊把數(shù)據(jù)分類,TCP或UDP報則轉由上層的傳輸層模塊處理,而ICMP協(xié)議處理模塊負責對IC―MP協(xié)議進行處理。IP發(fā)送模塊負責封裝IP報,并把封裝好的IP報傳送到下層發(fā)送模塊。IP發(fā)送模塊有4個上層模塊調(diào)用:分別是Socket API接口、UDP處理、TCP處理和ICMP處理。它們把相應的參數(shù)傳送給IP發(fā)送模塊,由IP發(fā)送模塊來封裝。Ethernet發(fā)送驅動模塊是屬于以太網(wǎng)層的處理模塊,負責封裝以太網(wǎng)報和數(shù)據(jù)的發(fā)送,調(diào)用它的模塊有ARP處理模塊和IP發(fā)送模塊。
由于使用的是B/S結構,則編程是采用的是TCP通信的Socket API。編寫TCP通信的任務時分為服務器方式和客戶機方式兩種。服務器方式是需要監(jiān)聽連接,只有在與客戶機建立連接后才能進行數(shù)據(jù)處理??蛻魴C方式是主動連接服務器,也是在連接成功后才能進行數(shù)據(jù)處理。圖6是TCP通信時服務器端和客戶機端通信的函數(shù)應用圖。
在編程時溫度傳感器有其唯一的一個IP地址,即192.168.O.174。子網(wǎng)掩碼是255.255.255.0,網(wǎng)關地址與IP地址相同。Web服務器建立在微處理器中,個人PC機為客戶端,當個人需要查詢溫度傳感器的值時,通過HTTP協(xié)議在瀏覽器中輸入該傳感器的IP地址(即ht―tp://192.168.O.174),便可進入該系統(tǒng)的網(wǎng)頁溫度瀏覽界面。
Web服務器任務程序代碼如下:
結 語
本系統(tǒng)已經(jīng)過測試運行良好,能方便地通過瀏覽器實時查詢溫度傳感器所采集的溫度值。網(wǎng)絡化智能傳感器是如今傳感器技術發(fā)展的一個新的方向,本系統(tǒng)采用嵌入式技術實現(xiàn)了一個基本的基于網(wǎng)絡的智能化傳感器,其中設計的重點主要是對TCP/IP通信協(xié)議的實現(xiàn),即將TCP/IP協(xié)議棧移植到系統(tǒng)中,然后調(diào)用相關的API函數(shù)實現(xiàn)網(wǎng)絡通信。而Web功能的實現(xiàn)主要采用了B/S模式,通過上層的HTTP協(xié)議實現(xiàn)了瀏覽器與嵌入式網(wǎng)絡傳感器的交互。實現(xiàn)傳感器的網(wǎng)絡化控制可以很好地應用在對家電設備的控制或工業(yè)現(xiàn)場的控制中,具有良好的應用前景。
評論