我刚刚开始使用 Thingsboard,并且在理解一些基本的东西是如何工作的方面取得了一些不错的进展(主要是使用 mqtt 发送传感器数据)。但我在某一时刻完全停止了。这是对问题的解释。Thingsboard 版本是 1.3.1
我的设置:
- 4x RPi (Raspberry Pi) 用作网关从蓝牙信标收集数据
- 一组蓝牙信标
以下是系统应该做的事情: 从网关 (RPi) 发送定期数据以通知 thingsboard 网关处于活动状态 上述部分工作正常。我已经设置了网关以使用访问令牌连接到 thingsboard,并发布数据(属性和遥测)。如文档中所述,对于发送属性,我使用“v1/devices/me/attributes”,对于遥测数据,我使用“v1/devices/me/telemetry”。
来自网关的典型字符串表明它是活动的
{"gwA.macid": "00:00:00:00:00:00", "gwA.timestamp": "2018-02-16T19:20+01:00"}
以上部分运行良好。这只是表明网关运行良好并且能够与 Thingsboard 服务器通信。所有网关都使用自己的访问令牌连接到 thingsboard 并发布上述数据。
现在是问题部分(或者我停下来的地方)
网关收集有关附近蓝牙信标的数据并将其发布。网关发布信标数据的数据格式是
{"bcn000001.mac": "00:00:00:00:00:00", "bcn000001.timeepoch": 1518939044}
网关确保每个信标数据都具有正确的前缀。例如
{"bcn000001.mac": "50:80:25:AA:BB:CC", "bcn000001.timeepoch": 1518939044}
{"bcn000002.mac": "50:80:25:RR:AA:DD", "bcn000002.timeepoch": 1518939039}
{"bcn000003.mac": "50:80:25:GG:33:EE", "bcn000003.timeepoch": 1518939020}
但是关于同一个传感器的数据也可以来自另一个网关。无论数据来自哪个网关,我如何在单个小部件上显示它。如果我选择“实体列表”,那么它要么不起作用,要么在小部件上显示所有 4 个 RPi 网关。这不是我想要的。我附上了一张图片。我不确定我是否能够很好地解释这一点,但请让我知道是否有任何其他信息可以提供。我正在添加一个图像来指向我刚才提到的一些事情。我什至使用前缀将数据分开(如之前的SO 帖子之一中所述)。我已经花了将近几天的时间。这不应该是困难的。至少我刚开始的时候是这么想的。
注意:当我探索时,我刚刚学到(意识到)一件事。我认为这部分有点混乱,所以我想我应该通知其他人。在 Thingsboard 中添加设备时,可以选择指定设备是否为“网关”。它试图告诉(问?)是该设备上是否安装了thingsboard网关服务。就我而言,我犯了一个错误(?)认为从传感器收集数据并将其发布到服务器的设备是网关设备。我想我会尝试在树莓派上安装thingsboard网关服务,然后看看效果如何。完成后我会发布更新,但同时有任何有用的意见或建议 - 请继续关注。
我看到其他人在 SO 上提出了非常相似的问题。像这样基本的东西不应该那么困难。如果没有对设置 IoT 后端/仪表板的最基本步骤的清晰解释,就没有一百页的文档。我想做的就是显示来自“任何一个设备”的相同传感器数据(比如 Sensor A ),以显示在同一个小部件上。如果我选择单个实体,如果数据来自其他设备,小部件将不会更新。如果我选择实体列表并打开“解析为多个实体”,那么我最终会看到显示所有设备的小部件