【问题标题】:Xbee Address problem for making a breadcrumb network制作面包屑网络的 Xbee 地址问题
【发布时间】:2019-03-24 01:23:51
【问题描述】:

先生,我正在尝试使用 raspberryPi 和 Xbees 制作面包屑网络。请告诉我应该在协调器节点中放置什么目标地址,以便它仅从单个路由器接收数据。我在 API 模式下使用所有 Xbee。提前致谢。[我正在使用的 xbees 的地址图片。Click to get image

Router3 Router2 Router1 协调器

请建议我应该放置什么地址,以便 Router3 将数据发送到 Router2,Router2 发送到 Router1,Router1 发送到 Coordinator。

假设Router3发送一些数据,它首先到达Router2,然后到达Router1,然后到达Coordinator。

我正在尝试将 GPS 连接到所有路由器 RaspberryPi,并尝试将它们发送到协调器节点。

【问题讨论】:

    标签: xbee


    【解决方案1】:

    使用网状网络,您可以将消息定向到最终目的地,并且节点会在必要时负责中继它以到达目的地。

    所以对 coordinator 无事可做,每个路由器在其 API 帧中使用 0 的目标地址发送给 coordinator。

    如果您真的想强制消息从路由器跳到路由器,只需在用于发送数据的 API 帧中使用路由器的 64 位地址(ATSHATSL 值)。当你在一个节点上接收到一个帧时,只需将目的地址替换为下一跳并重新发送即可。

    【讨论】:

    • 请看图片。我填写的地址是否正确?如果我将它们充分分开,从路由器到路由器的希望会起作用吗?
    • 我应该用一些指定 MAC 地址的单播命令替换 device.send_data_broadcast(....) python 命令吗?
    • 如果您使用 API 模式,模块会忽略 DHDL 设置。 API 帧包括目标地址。请注意,通过手动将消息从路由器跳到路由器,您将丢失消息的原始来源,除非您将其包含在有效负载中。
    • 如果您将路由器配置为透明模式,将DHDL 设置为0,则从串口输入的任何数据都将作为API 帧从协调器的串口输出(带有长度、源地址、数据和校验和)。协调器将知道哪个设备发送了数据,并可以将数据定向到任何路由器的串行端口,方法是使用其 64 位地址作为 API 帧的目的地。
    • 非常感谢您清除逻辑。请给我一些关于 python 中的 xbee 编程的链接。我的项目目前根本不能用作面包屑。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-12
    相关资源
    最近更新 更多