微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > zigbee怎么实时获取设备的在线状态

zigbee怎么实时获取设备的在线状态

时间:10-02 整理:3721RD 点击:

zigbee怎么实时获取设备的在线状态的 ?


我在应用层做了心跳包的功能,现在遇到一点问题想咨询下, 我让子节点上电入网后,定时的给协调器发送心跳包,1s一次,循环的上报心跳 然后我在协调器端起了个定时事件,每隔1s来check一下,看看上线的子设备的flag(收到子节点的心跳就设flag为5,没有收到就减1)有没有为0 的,有的话就说明该设备掉线了
问题1:我的这个思路有没有问题?
问题2:我在协调器端用了串口来1s一次循环的监测在线列表中的设备,看看是否有上下线的现象,结果就发现有设备掉一下,上一下的现象,而且间隔时间很短,不知道是不是我的代码上的问题(因为时间设置的都是1s)
问题3:如果有20个子节点同时向协调器发数据,会冲突而导致发送失败吗?还是zigbee的无线传输是有等待的机制的?
问题4:如果我的这个思路有误,那么用Child Aging这个功能的话,那个60分的时间能改吗?因为我需要相对实时一点获取设备的在线状态

1, 思路没问题,但是你不用串口来查,你直接告诉串口也可以的
2,应该是代码逻辑的问题
3,会的,会有丢包
4,可以改,ChildAging的实时性会比较差,是一段时间的积累。

应该是丢包引起的,我们目前还是用的心跳包的机制,我把check时间变长了一点,现在问题就缓解了一点

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top