查看: 741|回复: 0

[经验] zigbee组网数据发送方式

[复制链接]

该用户从未签到

发表于 2021-1-11 21:21:46 | 显示全部楼层 |阅读模式
分享到:
针对FBee模块现有的数据发送方式,我们重点介绍Zigbee的单播和广播两种方式。单播模式下面,数据由一个源设备,发送至一个目标设备;而广播模式,数据是由一个源设备,发送至很多,或者是所有的设备。

1、单播方式
  单播方式下,数据由源设备发出,直接或者经过几级中转后,发送至目的地址。加入zigbee网络的所有设备之间都可以进行单播传输,可用16位短地址或者64位长地址进行寻址。具体路由关系由协调器/路由器进行维护、查询。路由表的相关内容将在后续FBee API模式的章节中进行介绍。

2、广播方式
  广播方式是由一个设备发送信息至整个zigbee网络的所有设备,其目标短地址使用0xFFFF。另外,0xFFFD与0xFFFC也可作为广播地址。其区别如下:

  0xFFFF: 广播数据发送至所有设备,包括睡眠节点
  0xFFFD: 广播数据发送至正在睡眠的所有设备
  0xFFFC: 广播数据发送至所有协调器和路由器

  提到“广播”,可能不少人会认为zigbee的广播就像村里的大喇叭,一个人讲一遍,所有的人竖着耳朵听一次,就完成任务了。其实并不是这样的,Zigbee的广播更像是“传悄悄话”,一传十、十传百,一点点“蔓延”出去的。

  举个最简单的例子:
  一个网络中,有ABC三个设备,A是B的邻居;B是C的邻居;但A和C不是邻居。

          A--------->B-------->C

  当A要发广播给整个网络的时候,由于距离关系,A无法直接发送给C,那么A首先广播给它的邻居(此例中只有B),B再广播给它的邻居(此例中有A和C),A此时收到B的广播数据,与自己发送的广播数据对比后得知:自己已经将信息广播给了B,且B已经成功中继此广播数据,此时A完成任务,并不再继续接受广播。

  同理,C收到B的广播后,再广播给它的邻居(此例中只有B),B受到C的广播后,得知C也已经收到了自己的广播信息,且成功中继。

  以此类推,任何一个数据广播都可以以这种方式,一步步往外蔓延,最终每个节点都成功收到信息,而且保证信息不会无止境地在网络间传播。

  这种广播方式成功地将通讯范围扩大至整个网络,但由于这种信息在网络间频繁地转发,导致网络负担陡增,所以建议不要过分使用广播方式,而且每次广播的数据尽可能少,发送的时间间隔尽量不要太短!
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-11-23 15:38 , Processed in 0.105399 second(s), 15 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.