ZigBee名字來源于蜂群使用的賴以生存和發(fā)展的通信方式,蜜蜂通過跳ZigZag形狀的舞蹈來通知發(fā)現(xiàn)的新食物源的位置、距離和方向等信息,ZigBee技術模仿蜜蜂通過跳舞來傳遞信息的方式,通過相鄰網(wǎng)絡節(jié)點之間信息的接力傳遞,將信息從一個節(jié)點傳輸?shù)竭h處的另外一個節(jié)點。
ZigBee聯(lián)盟制定了ZigBee協(xié)議棧的規(guī)范,各個無線廠商根據(jù)自己的硬件平臺和應用環(huán)境,編寫自己的ZigBee協(xié)議棧。
本文介紹一種實際工程的ZigBee對等網(wǎng)絡協(xié)議棧的開發(fā)過程。
無線路由協(xié)議一般是按照以下方式進行路徑查找的:由源節(jié)點發(fā)出廣播的路徑查找請求,在網(wǎng)絡中傳播,到達目標節(jié)點之后,目標節(jié)點選擇一個最佳路徑(中間節(jié)點也做最佳路徑的篩選),返回給源節(jié)點。路由查找過程如圖1所示。
一個無線網(wǎng)絡協(xié)議棧的開發(fā),需要一個詳細的規(guī)劃,完成路由算法的設計、代碼實施、硬件平臺的搭建、測試方法的選擇和實施等,下面逐一介紹。
(1)路由算法
無線路由協(xié)議需要考慮兩個因素:速度和穩(wěn)定性。查找路徑時,有時收到一個時間非常快的應答,但是這并不一定是最佳的路徑,有可能是查找路由表的瞬間兩點之間,信號剛好達到臨界信號強度(即“超常發(fā)揮路徑”),接下來傳輸數(shù)據(jù)的時候,恢復障礙物之后,信號又不能達到之前的速度,這在有移動遮擋物的時候,特別容易出現(xiàn),如圖2所示?!俺0l(fā)揮路徑”判斷的依據(jù)是接收信號強度。
最短路徑和最佳信號質量的結合,才是最佳路徑,在實際應用中,還需要預留一條備用路徑,即次佳路徑。如圖3所示。
(2)測試開發(fā)過程
按照路由算法實施代碼之后,需要進行小規(guī)模的測試,因為早期優(yōu)化更改比較多,需要每個節(jié)點進行更新,因此最好在小范圍內操作,改變拓撲結構進行測試也方便。這個測試環(huán)境還必須很穩(wěn)定,節(jié)點之間的信號不要變化太大,否則早期測試的時候會引入很多的變量,測試快要結束的時候,才可以放入嘈雜的環(huán)境,進行穩(wěn)定性測試。
如圖4所示,測試節(jié)點懸掛在通道的兩側,離地面2 m左右,彼此間的通訊不會因為人的走動而干擾,每個節(jié)點由電線供電,也有獨立的電源開關,可以關掉其中的任意一個,制造節(jié)點損壞的現(xiàn)象。
如圖5所示,在測試時,可以查找到達某個目標節(jié)點的路徑地址和路由級數(shù),在拓撲結構圖上即可看是否是最優(yōu)的路徑。通過此表,還可以查看整個路徑中最差信號強度以及節(jié)點號碼,通過此號碼,我們可以判斷哪些節(jié)點之間的信號最差,為改善網(wǎng)絡整體鏈路通信質量提供一個簡便的定位方法。
(3)拉遠及穩(wěn)定性測試
這一階段進行大規(guī)模、干擾性測試,主要包括:
·增加移動障礙物,影響節(jié)點之間的信號質量;
·增加同頻段信號干擾;
·長時間路由查找成功率測試。
ZLGnet在無線路由中的實際測試效果如表1所示。
按照每級1 km計算(20 dbm輸出模塊ZICM2410P2在7 dbi天線下可靠視距通訊距離1.5 km),默認20級路由可以實現(xiàn)40 km(前后20 km)覆蓋。
表1 ZLGnet實際測試效果
無線路由協(xié)議設計還包括其他很多方面的內容,如路徑節(jié)點丟失報告機制,路徑表的老化和更新,底層重傳次數(shù)的最佳選擇,要做好一個無線路由協(xié)議棧,需要做大量路由決策及測試分析,但是相信隨著對環(huán)境變量的增加,測試環(huán)境的更多變化,ZLGnet將會越來越完善穩(wěn)定。
地址:廣州市天河區(qū)車陂路黃洲工業(yè)區(qū)3棟2樓
技術支持:(020)22644385
銷售電話:(020)288724502887234222644249
電子郵箱:zigbee@embedcontrol.com