我可以自动重置 ZigBee 的操作模式以充当软件中的协调器吗?

Can I auto-reset ZigBee's Operation-Mode to act as a Coordinator in Software?

我正在为一家公司开发一种新的无线物联网产品。当前的原型正在使用 ZigBee 进行通信,我目前正试图弄清楚如何避免必须 运行 专用的 ZigBee 协调器设备。我不想开发第二个硬件只是让它充当主要的 ZigBee 协调器。对于这个硬件 Meshing 非常重要。

所以我阅读了有关 Digi S2C 模块的信息,偶然发现该模块具有更大的闪存,因此将所有三个 ZigBee 固件(终端设备、路由器、协调器)合并到一个文件中。通过使用串行命令,您可以将设备模式从协调器更改为路由器或终端设备。

通过思考,我想到了以下想法,如何避免让第二个硬件充当协调器。

  1. 通过启动第一个硬件单元,ZigBee 模块 运行s 作为一个 路由器/终端设备,正在寻找协调器

  2. 如果没有协调器,模块会自行重置并更改其 设备模式成为协调器

  3. 后面的每个单元都做同样的事情,并将连接到第一个 协调单位

使用这个概念,我可以坚持使用我的单一硬件,让它自动选择 运行ning 作为终端设备、路由器或协调器。

问题是:

我知道您可以将自定义代码放到 ZigBee 模块控制器上。该控制器是否能够自行重置并以不同的操作模式重新启动?比如在重启之前留下一个标志?

或者我需要第二个控制器来处理这样的过程吗?

我是否遗漏了 ZigBee-Stack 中已经实现了这样一个概念的一些细节?

您使用的是 Digi 的 XBee 模块,还是只是询问这是否可能?

我不完全确定我理解你在问题中所问的内容。连接到 XBee 模块的主机处理器能够根据需要对其进行配置和重启。您可以查看网络状态并告诉它离开当前网络,或者尝试加入网络。

您可以通过AT命令将XBee模块配置为协调器、路由器或终端设备。您还可以设置网络参数,例如网络 ID 和使用的安全密钥。

您可能希望安装程序可以使用某种接口将路由器设备提升为协调器,否则您可能会冒着模块选择成为协调器的风险,而这些模块不应该选择成为协调器,最终会出现多个网络。安装人员还需要清楚哪个模块充当协调器(LED 闪烁不同?)。

ZigBee 认证是产品的要求吗?如果没有,请查看 XBee DigiMesh 模块,它可以在不需要协调器的情况下形成对等网络。

Am I missing some detail in the ZigBee-Stack that has already implemented such a concept?

我认为您可能对创建分布式网络感兴趣。 ZigBee 定义了调试方案,允许您创建没有集线器的网络。本次演讲的前几分钟应该让您了解可用的调试选项:https://youtu.be/HJlQI2Z7V-Q?t=2m48s

您可以将您的设备设计为路由器,并为其提供额外形成分布式网络的选项。您将涵盖所有情况。当用户在他们已有集线器的环境中设置您的系统时,他们只需通过现有的协调器将您的设备加入网络即可。此外,当用户在没有集线器的环境中设置您的系统时,他们会告诉您的其中一台设备形成分布式网络。然后您的其他设备可以正常加入。

Light Link 配置文件也解决了这个问题。 "touch link" 将设备添加到网络中。关键部分是当有人触摸 links 你的设备并且没有网络时,你的设备将自己提升为协调器并创建一个。然后您可以继续触摸 link 其余设备,它们将被添加到该网络。