TI中文支持网
TI专业的中文技术问题搜集分享网站

PC机如何通过协调器获取网络节点数、节点状态、节点短地址和物理地址等信息?

如上图,PC机与协调器通过串口通信。

问题:PC机如何才能通过协调器获取该ZigBee网络的节点数、所有节点的在线状态、短地址及物理地址等信息?

Kanjie Zhu:

可以在应用层定义一个命令,让路由器与终端设备定期把自己的短地址,长地址,及状态上报给协调器。

协调器通过检查是否定期上报了判断是否在线,然后通过UART传输给PC。

wanxiang lin:

回复 Kanjie Zhu:

如果上述的是ZigBee标准的Home Automation网络,协调器是自己的,而路由或终端节点是第三方的,这样还有什么解决办法吗?

Kanjie Zhu:

回复 wanxiang lin:

每个节点在加入网络时会发送device announce包,里面有该节点的网络地址与长地址信息。协调器可以记录下来后定期去发送ZDP_nwkAddrRequest 或 ZDP_ieeeAddrRequest来等待回应。

有回应说明在网,运行正常。并且即使短地址发生变动了,通过这2个命令也能定时更新回来。

wanxiang lin:

回复 Kanjie Zhu:

这样的话,协调器就要把所有的节点信息都存储起来了。在网状网络中,如果某一节点是通过路由加入网络的,那么会发送“device announce包”给协调器吗?

Kanjie Zhu:

回复 wanxiang lin:

是的,得存储,如协调器资源有限可以给连接的PC存储。

device announce是广播,理论上都能听到。

wanxiang lin:

回复 Kanjie Zhu:

如果这个节点加入路由时,协调器由于某种原因没有收到这个广播,那么有没有其他办法获取该节点信息,并存储该节点信息? 

还有个问题:在市场上看到的一些ZigBee标准的Home Automation产品,可以用平板电脑或手机,通过WiFi转ZigBee网关,查看家里所有zigbee节点的状态,如灯节点的开关状态、温度传感器节点的温度值、排气扇节点的状态等;这些都是如何实现的?协调器是否要事先存储各节点的信息(如短地址等信息),才能获取节点信息和控制节点?

赞(0)
未经允许不得转载:TI中文支持网 » PC机如何通过协调器获取网络节点数、节点状态、节点短地址和物理地址等信息?
分享到: 更多 (0)