当出现两个或两个以上的zigbee网络时,TI公司的zstack-2007运行会出现问题:如下:
1.终端或路由节点寻找网络时,会出现很难寻找到网络,甚至找不到网络;
2.关闭其它的协调器,即关闭其他网络,只剩下一个网络时也会出现寻找网络困难、找不到网络问题;
3.路由或终端节点加入到一个网络中后,关闭本网络,开启其它网络(协调器),重启终端节点,发现加入不了其它的网络;重新开启原来网络,可以加入;
4.若想路由节点加入新的网络,必须新的协调器形成新的网络,且路由或终端节点也得重新写入程序,才可以加入新的网络。
从上面几点我们可以发现,zstack_2007协议栈中,协调器在形成网络后,有唯一的panid标志这个网络,应该是26个通道中的一个,当路由和终端节点加入时,协调器保存了路由和终端节点ieee地址相关信息,而路由与终端节点也保存了协调器所形成的网络的信息,当出现新的网络时,尽管原网络不存在,也不能连入新的网络;按说协议栈应该支持这种情况寻找信号最强的网络,但我在应用时发现不能,所有的协调器均以处在允许加入状态;后来一想,这样也对,如果某个路由或者终端节点每次重启时都寻找新的网络,这样安全性就得不到保障。固定在原定的网络中才是正确的,比如无线门禁系统,本来处于某个本公司的网络中,可以控制门的开关,现在,别的公司也弄了一个网络,信号比较强,那不是出现别的公司可能控制本公司的门关闭。
上面的可以理解,但多个网络同时出现,会发生加入网络困难,这点就不容理解,现在我能想到的是 网络冲突(协议栈应该会考虑到),多个网络处在同一范围内,终端节点在寻找网络,协议栈没有处理好这个问题。
不知道大家有没有遇到这种问题,希望一起探讨帮忙解决,谢谢
|