基于ZigBee的工業(yè)無線網(wǎng)關研究
128.128.2.202為網(wǎng)關在工業(yè)以太網(wǎng)內(nèi)分配的IP地址,用于有線網(wǎng)絡設備信息交換;0x000000220001、0x000000220002等為無線網(wǎng)絡IEEE64位長地址,0x1347為16位的個域網(wǎng)標識符(PANI)ID),0xl699、0x169A為16位設備短地址(SADDR)。無線設備間通信可采用兩種方式:長地址或PANID+SADDR。兩種方式均對應于一個ObjeetID,地址映射減少了通信傳輸?shù)淖止?jié)數(shù),從而提高了通信效率。
(2) 進程通信機制
為了提高系統(tǒng)的實時性,進程間通信采用消息觸發(fā)的方式,在有線協(xié)議(以太網(wǎng))的開發(fā)中移植了嵌入式實時操作系統(tǒng)μc/OS-II。進程間通信主要通過調(diào)用μC/0S―II的消息函數(shù)――消息請求0SQrequest()和消息觸發(fā)OSQpost()來實現(xiàn)。在協(xié)議開發(fā)中,根據(jù)不同協(xié)議堆棧中不同層完成的功能進行進程任務劃分,根據(jù)任務優(yōu)先級來確定任務調(diào)用次序,未被觸發(fā)的任務始終處于消息請求狀態(tài)。如果同一時刻兩個任務被觸發(fā),則根據(jù)優(yōu)先級觸發(fā)優(yōu)先級高的任務,而優(yōu)先級低的任務處于等待狀態(tài)。
3.3 無線/以太網(wǎng)協(xié)議轉換
ZigBee無線網(wǎng)關協(xié)議轉換主要是實現(xiàn)ZigBee數(shù)據(jù)報文與以太網(wǎng)報文雙向轉換。圖3所示為兩種協(xié)議報文格式轉換圖。圖中給出了協(xié)議開發(fā)中定義每一層的字節(jié)數(shù),其中PAYLOAD字節(jié)數(shù)可變,最大不超過127 B。當無線網(wǎng)關射頻部分(PHY層)接收到數(shù)據(jù)報文,根據(jù)ZigBee通信協(xié)議從PHY到APS解出其中有效載荷,然后將有效載荷加載TCP(UDP)/IP(42 B)的報文格式,交由滿足IEEE802.3以太網(wǎng)通信協(xié)議的網(wǎng)卡處理,從而實現(xiàn)將無線接收到的信息傳輸?shù)酵獠靠刂凭W(wǎng)絡中。
3.4 服務定義及實現(xiàn)
為實現(xiàn)有線網(wǎng)絡與無線網(wǎng)絡的信息交互及控制功能,無線網(wǎng)關須完成相應的服務功能。無線網(wǎng)關提供的基本服務主要有:讀/寫服務、信息分發(fā)服務、設備上線服務。服務功能在網(wǎng)絡連接成功后開始實現(xiàn),不同服務對應不同的服務號。讀寫服務主要是針對設備參數(shù)的讀取和設置;信息分發(fā)服務是將無線通信設備采集到的數(shù)據(jù)周期性地分發(fā)到網(wǎng)關,網(wǎng)關再轉發(fā)到控制網(wǎng)絡;設備上線服務是標示設備當前狀態(tài),即上線、掉線,該服務的服務類型為周期性,其他服務必須在此服務之后才能執(zhí)行。各種服務雖然完成不同的功能,但都通過同一服務接口,因此在實現(xiàn)中設計了一套相同的服務報文格式:
服務報文主要包含以下幾個關鍵部分:短地址、服務號、參數(shù)索引。CRC為安全校驗,LQI為鏈接質量,PHYheader、MAC header、NwK header和APS header分別為物理層、媒體訪問控制層、網(wǎng)絡層和應用層頭字節(jié),字節(jié)數(shù)與圖3中的規(guī)定相同。
4 功能測試
無線網(wǎng)關硬件設計采用雙CPU模式,即AT91R40008+CC2430模式。AT91R40008是一款基于ARM7內(nèi)核的處理器,在網(wǎng)關開發(fā)中用于承載以太網(wǎng)協(xié)議;CC2430是一款基于IEEE802.15.4協(xié)議的無線通信芯片,它包括1個2.4 GHz的射頻收發(fā)器和1顆工業(yè)級小巧高效的8051控制器,用于承載無線通信協(xié)議。這種解決方案能夠提高系統(tǒng)性能并滿足以ZigBee為基礎的2.4GHz的ISM波段應用需求。
4.1 測試方法
對無線網(wǎng)關的測試主要采用兩款工具軟件――TI公司的Packet Sniffer forCC2430和免費開源的Ethereal,主要測試無線網(wǎng)關數(shù)據(jù)的收發(fā)功能、協(xié)議轉換正確性以及無線網(wǎng)絡管理功能等。Packet Sniffel for CC2430為無線通信協(xié)議分析軟件,配合C51RF一3無線網(wǎng)絡協(xié)議分析儀可以捕獲空中ZigBee無線數(shù)據(jù)報文;Ethereal為專用于通過網(wǎng)口捕獲以太網(wǎng)報文的以太網(wǎng)協(xié)議分析軟件。測試時,可通過兩款協(xié)議分析軟件分別捕獲無線和以太網(wǎng)數(shù)據(jù)報文,對這兩種報文進行分析比較,從而完成對無線網(wǎng)關相關功能的驗證;同時也可通過無線網(wǎng)關建立無線測控系統(tǒng),通過專用無線組態(tài)軟件對系統(tǒng)進行相關功能測試,從而驗證無線網(wǎng)關功能。
4.2 測試界面及分析
(1)數(shù)據(jù)收發(fā)及協(xié)議轉換功能驗證
圖4所示為Packet Sniffer for CC2430捕獲空中的無線數(shù)據(jù)報文。無線數(shù)據(jù)報文包括接收時問(Time)、幀長度(Length)、幀控制域(Frame controlfield)、序列號(Sequence number)、個域網(wǎng)標識符(PANID)、目的地/源地址(Dest/Source Address)等信息。畫線部分(16 99 1401 00 04 01 OO 01 09 08 02 00)為無線報文中的實時數(shù)據(jù)。此數(shù)據(jù)為無線設備發(fā)送出的無線報文有效載荷,由無線網(wǎng)關CC2430射頻部分接收。
評論