物联传媒 旗下网站
登录 注册
RFID世界网 >  技术文章  >  制造  >  正文

ZigBee无线路由协议ZLGnet

作者:广州致远电子有限公司
来源:电子技术应用
日期:2011-04-27 09:44:03
摘要:本文介绍一种实际工程的ZigBee对等网络协议栈的开发过程。
  ZigBee名字来源于蜂群使用的赖以生存和发展的通信方式,蜜蜂通过跳ZigZag形状的舞蹈来通知发现的新食物源的位置、距离和方向等信息,ZigBee技术模仿蜜蜂通过跳舞来传递信息的方式,通过相邻网络节点之间信息的接力传递,将信息从一个节点传输到远处的另外一个节点。
    
  ZigBee联盟制定了ZigBee协议栈的规范,各个无线厂商根据自己的硬件平台和应用环境,编写自己的ZigBee协议栈。
    
  本文介绍一种实际工程的ZigBee对等网络协议栈的开发过程。

  1 一般路由测试方法
    
  无线路由协议一般是按照以下方式进行路径查找的:由源节点发出广播的路径查找请求,在网络中传播,到达目标节点之后,目标节点选择一个最佳路径(中间节点也做最佳路径的筛选),返回给源节点。路由查找过程如图1所示。

  2 无线网络协议栈一般开发过程
    
  一个无线网络协议栈的开发,需要一个详细的规划,完成路由算法的设计、代码实施、硬件平台的搭建、测试方法的选择和实施等,下面逐一介绍。
    
  (1)路由算法
    
  无线路由协议需要考虑两个因素:速度和稳定性。查找路径时,有时收到一个时间非常快的应答,但是这并不一定是最佳的路径,有可能是查找路由表的瞬间两点之间,信号刚好达到临界信号强度(即“超常发挥路径”),接下来传输数据的时候,恢复障碍物之后,信号又不能达到之前的速度,这在有移动遮挡物的时候,特别容易出现,如图2所示。“超常发挥路径”判断的依据是接收信号强度。

  最短路径和最佳信号质量的结合,才是最佳路径,在实际应用中,还需要预留一条备用路径,即次佳路径。如图3所示。

  (2)测试开发过程
    
  按照路由算法实施代码之后,需要进行小规模的测试,因为早期优化更改比较多,需要每个节点进行更新,因此最好在小范围内操作,改变拓扑结构进行测试也方便。这个测试环境还必须很稳定,节点之间的信号不要变化太大,否则早期测试的时候会引入很多的变量,测试快要结束的时候,才可以放入嘈杂的环境,进行稳定性测试。
    
  如图4所示,测试节点悬挂在通道的两侧,离地面2 m左右,彼此间的通讯不会因为人的走动而干扰,每个节点由电线供电,也有独立的电源开关,可以关掉其中的任意一个,制造节点损坏的现象。

  如图 5所示,在测试时,可以查找到达某个目标节点的路径地址和路由级数,在拓扑结构图上即可看是否是最优的路径。通过此表,还可以查看整个路径中最差信号强度以及节点号码,通过此号码,我们可以判断哪些节点之间的信号最差,为改善网络整体链路通信质量提供一个简便的定位方法。

  (3)拉远及稳定性测试
  这一阶段进行大规模、干扰性测试,主要包括:
  · 增加移动障碍物,影响节点之间的信号质量;
  · 增加同频段信号干扰;
  · 长时间路由查找成功率测试。

  3 ZLGnet性能参数
    
  ZLGnet在无线路由中的实际测试效果如表1所示。

  按照每级1 km计算(20 dbm输出模块ZICM2410P2在7 dbi天线下可靠视距通讯距离1.5 km),默认20级路由可以实现40 km(前后20 km)覆盖。
    
  无线路由协议设计还包括其他很多方面的内容,如路径节点丢失报告机制,路径表的老化和更新,底层重传次数的最佳选择,要做好一个无线路由协议栈,需要做大量路由决策及测试分析,但是相信随着对环境变量的增加,测试环境的更多变化,ZLGnet将会越来越完善稳定。