【问题标题】:Arduino: XBee mesh networkArduino:XBee 网状网络
【发布时间】:2014-07-31 18:16:23
【问题描述】:
我是 XBeeS2 模块的新手。我的家庭局域网上有几个 XBee“路由器”和 1 个 XBee“协调器”。
几个问题:
- 我可以从我的应用程序 (Arduino) 中更改 XBee 地址吗?还是每个 XBee 地址都必须先用 X-CTU 工具(或其他工具)配置?
- 如何通过我的 XBee“路由器”从我的应用程序 (Arduino) 中检索 XBee“协调器”地址?
【问题讨论】:
标签:
arduino
xbee
zigbee
mesh-network
【解决方案1】:
-
对于您的第一个问题:
不,即使在您的 X-CTU 软件中,您也无法更改地址,我们使用 X-CTU 让设备知道“使用哪个
它可以通信的其他设备”。
-
第二个:
您必须将路由器(串行 TX,RX)与 Arduino(串行 RX,TX)连接并在 API 模式下配置路由器,
然后您可以为 AT 命令制作一个API 格式,以请求
(SL-序列号低)的值,它是 4bytes LSB
协调员地址。
我更喜欢让协调器与 Arduino 一起工作,并让
路由器做你的工作,因为任何路由器都可以与它的 PAN 通信
协调器,但某些应用程序中的协调器框架需要
与特定路由器通信。
有关 API 框架和 XBee 中的许多瘦身的更多信息,您可以下载 XBee/XBee-PRO RF Modules-DIGI international 或 Building Wireless Sensor Network。
问候....
【解决方案2】:
物理地址(64 位)和网络地址(16 位)是只读的。
您可以使用物理地址向协调器发送数据
0x0000000000000000 (64 bits)
并使用
0xFFFE (16 bits)
如果地址未知,则为网络地址。
但如果要准确检索地址,则需要使用 Remote AT Commando(API 模式)并查询 SL(Serial Number Low)和 SH(Serial Number High)命令。