針對如何將基于ZigBee的網絡接入基于TCP/IP的互聯網,提出了一種基于ZigBee的嵌入式網關的設計方案。網關硬件選用PXA270嵌入式平臺與CC2430無線模塊,基于Windows CE操作系統和Z—Stack協議棧,來實現網關的數據轉發和ZigBee網絡管理功能。
引言
物聯網是一個基于互聯網、傳統電信網等信息承載體,讓所有能夠被獨立尋址的普通物理對象實現互聯互通的網絡。它具有普通對象設備化、自治終端互聯化和普適服務智能化3個重要特征。
隨著物聯網技術的發展,基于ZigBee技術的無線傳感器網絡己經被廣泛的應用到人們的生產及生活當中(如家庭自動化、智慧農業等)。如何將ZigBee網絡接入到互聯網,是人們在應用ZigBee技術組網時所面臨的一個熱點問題。
然而,ZigBee協議與互聯網中所使用的TCP/IP協議并不兼容,要想把ZigBee網絡接入到基于IP的互聯網,就需要一個設備來完成兩個異構網絡間數據的轉發。因此,提出了網關的概念,由網關來完成兩個異構網絡之間數據的轉發。本文使用PXA270嵌入式平臺和CC2430 ZigBee模塊,基于windows CE6.0嵌入式操作系統和Z—Stack協議棧,設計了一種嵌入式網關的解決方案。網關工作在兩個異構的網絡之間,連接著無線傳感網絡和互聯網,其功能包括異構網絡之間的數據轉發和對ZigBee網絡的管理。
1 系統整體設計
網關整體設計如圖1所示,其總體上包括CC2430ZigBee模塊、PXA270嵌入式平臺、以太網口、電源模塊和其他外設模塊。
網關的軟件設計基于Windows CE6.0嵌入式操作系統和Z—Stack v1.4.3協議棧。Windows CE6.0系統功能豐富、內核穩定,是高度模塊化的系統,具有占先式多任務調度和強大的網絡通訊能力。系統支持Winsock網絡編程接口,通過C/S Socket通信模型實現網關和互聯網客戶端的命令和數據交互。Z—Stack v1.4.3協議棧是TI公司開發的完整支持ZigBee 2006的協議棧,該協議棧提供了大量的編程接口函數,方便基于該協議棧進行開發設計。
設計中CC2430 ZigBee模塊通過串口與PXA270嵌入式平臺連接。Windows CE和Z—Stack協議棧都提供了對串口通信的支持,調用相應的串口API就可以實現對串口的讀寫等操作,這樣也就方便了PXA270嵌入式平臺和CC2430 ZigBee模塊之間的串口通信程序的設計。
2 各模塊軟件的設計
2.1 ZigBee協調器模塊部分
ZigBee網絡由一個協調節點、多個路由節點和多個終端節點構成,設備類型通常在編譯時通過編譯選項決定(ZDO COORDINATOR and RTR NWK)。本設計中與PXA270嵌入式平臺通過串口連接的CC2430模塊作為整個ZigBee網絡的協調節點,其主要作用是:(1)數據收發。接收 ZigBee網絡上傳的數據,解析并通過串口轉發至PXA270平臺;轉發PXA270平臺要發送到zigBee網絡中的數據。(2)ZigBee網絡管理。包括網絡信道和網絡ID的選取、網絡的啟動、節點的加入等。協調節點的程序流程圖如圖2所示。
協調節點與PXA270平臺通信時,需用到Z—Stack提供的串口應用程序接口函數。其中,HalUARTInit()用來在設備啟動時初始化串口(如設置波特率為115200),HalUARTOpen()、HalUART Close()用來打開和關閉串口,HalUARTRead()、HalUARTWrite()用來完成對串口的讀寫。
2. 2 PXA270嵌入式平臺部分
PXA270嵌入式平臺作為網關的主要控制模塊其功能包括:與ZigBee協調節點通信,接收協調節點通過串口轉發的數據或將控制命令發送到協調節點;通過基于TCP/IP的流式Socket方式與IP網絡通信,如上傳數據、接收遠程命令。PXA270平臺的工作流程如圖3所示。
本設計中通過兩個線程來分別完成上述兩個方面的工作,分別是串口通信線程和Socket通信線程,兩個線程采用互斥機制實現對公共緩沖區的互斥訪問。
3 測試結果
對設計方案進行ZigBee組網測試和系統整體測試。在ZigBee組網測試中,ZigBee協議棧的參數配置為默認值(MAX DEPTH=5,MAXROUTERS=6,MAX CHILDREN=20),地址分配方式選擇分布式分配機制。將ZigBee協調器通過串口直接與電腦的COM1口相連,由ZigBee協調器通過串口向電腦發送ZigBee網絡中的節點網絡ID,通過串口調試助手顯示ZigBee網絡中的節點信息,其測試結果如圖4所示。
在系統整體測試中,將ZigBee協調器通過串口直接與PXA270嵌入式平臺的串口相連,由ZigBee協調器通過串口向PXA270嵌入式平臺發送 ZigBee網絡中的節點網絡ID,PXA270嵌入式平臺通過C/SSocket通信模型實現網關和互聯網客戶端的命令和數據交互,其測試結果如圖5所示。
4 結論
針對如何把基于ZigBee無線網絡接入到基于TCP/IP的互聯網的問題,本文提出一種基于WindowsCE嵌入式操作系統和 ZigBee協議棧的嵌入式網關的設計方案,對網關的基本功能進行了實現。使ZigBee網絡采集到的數據能夠通過網關轉發到基于TCP/IP的網絡,通過網關能夠完成對ZigBee網絡的管理,達到了兩個異構網絡互聯互通的目的,具有切合實際的應用價值。
-
ZigBee
+關注
關注
158文章
2271瀏覽量
243357
發布評論請先 登錄
相關推薦
評論