Android與ZigBee的遠程控制無線網關設計
3.2.3 網關系統協議模型
在網關系統層的ZigBee協議棧和TCP/IP協議棧之上添加一個應用地址適配層和應用協議層。應用地址適配層的作用在于將ZigBee地址(MAC值或短地址)、以太網地址(IP地址)與應用層地址形成映射關系,即將不同類型的網絡地址適配到應用地址上來,使得節點在應用層同屬于一個網絡;應用協議層是在應用地址適配層的基礎上通過制定統一的應用協議,規范節點間數據交換的格式,從而實現ZigBee網絡與IP網絡之間的數字信息交換功能,即實現ZigBee網關的功能。
無線網絡中的ZigBee節點接收指令將數據打包,簡單封裝后向上發送給本地ARP,通過ARP解析出該節點的網絡MAC地址,確定要發送的以太網地址;然后向上發送給網關應用程序,經分析后發送到對應的以太網UDP或TCP處理,向下發送到以太網端口MAC地址。這樣就完成了數據從ZigBee網絡向以太網協議的轉換過程。網關系統協議模型如圖7所示。
3.3 網關應用程序
網關應用程序主要指的是在網關應用協議層的規范基礎上,傳遞的信息數據以Android任務的形式組織運行,在以太網與ZigBee網絡的數據通信中,信息是以數據包的形式發送和接收的,數據包發送流程如圖8所示。
在無線WiFi網絡中,通過以太網與無線AP相連接的PC機是服務器端,而無線網關作為Android客戶端通過TCP/IP協議與PC服務器建立網絡連接,通過Socket通信,可以在實現服務器和客戶端網絡連接的基礎上,完成數據的轉發、傳輸和接收。
因此,無線網關應用程序要實現下面的功能:
①建立客戶端(無線網關)和服務器(PC機)的Socket,網絡連接,為他們之間的數據交換提供必要條件。
②將無線ZigBee模塊接收到的來自ZigBee網絡的數據讀進緩沖區,然后寫入USB無線網卡,USB無線網卡會將數據打包成WiFi協議格式,送入無線WiFi網絡。
Android客戶端應用程序實現流程如圖9所示。
4 燈光控制功能的實現
ZigBee將應用劃分為不同的域,每個應用域都有自己的ProfiIe,ZigBee Profile為這個應用域提供標準的接口和設備定義,使得不同生產商生產的針對同一應用領域的ZigBee設備之間能互通。ZigBee在智能家居、家庭自動化中采用的Profile是ZigBee Home Automation Pub lic Appliation Profile。通過該Profile及ZCL(ZigBee Cluster Library)的引入,實現了對ZigBee燈光家電設備的控制。例如網關對燈光進行開關控制,只需調用zelGeneral-SenclOnOff_CmdToggle()函數。應用程序、Profile及ZCL與其他層的接口的層次框圖如圖10所示。
結語
本文研究了基于Android系統和ZigBee技術的無線網關,該網關體積小,功耗低,使ZigBee網絡和以太網以及WiFi網絡融合為一體,在ZigBee近距離無線通信和以太網遠程控制之間搭建了一座橋梁。實現了無線傳感網與無線互聯網之間的數字信息交互,可以廣泛應用到物聯
網中。
tcp/ip相關文章:tcp/ip是什么
評論