最近几天,我在结核病方面遇到了一些麻烦。
我有一个通用变量(例如,假设外部温度),该度量是使用MQTT和tb-gateway实时获取的。我还具有给定未来时间段的变量预测,可以通过MQTT从执行预测的Python模块中获取。我希望使用两条不同的曲线在同一图形中同时绘制给定时间段(假设下一个 24小时)的实时采集数据和预测趋势。
现在,我设法利用ThingsBoard的时间戳映射功能(通过MQTT)上传具有正确的未来时间戳的预测时间序列。
在图表上绘制这些信息时,我发现ThingsBoard只能绘制与当前系统时间戳或过去时间戳相关的时间序列值。我正在尝试找到一种在图表窗口小部件上绘制与未来时间戳相关的时间序列数据的方法。
有人遇到过同样的问题并设法解决了吗?
答案 0 :(得分:0)
简短的回答:,您将需要创建一个自定义小部件来实施您的案件。
长答案:
当您使用“ 实时-最后XXX ”时间窗口时,小部件实际上会为温度遥测创建一个订阅。由于已创建订阅,因此即使将来是时间戳记,Thingsboard后端也会将所有 temperature 更新发送到UI。但是标准图表小部件将拒绝所有“来自未来”的遥测技术。
您可以打开浏览器控制台的“网络”标签并查看WebSocket活动-将来的遥测将传输到UI。
另一个问题是标准的Thingsbarod时间范围选择器不允许选择“未来”时间范围。
同时,Thingsboard REST API不会验证请求的 startTs 和 endTs ,因此您可以轻松地“从将来”下载遥测。
因此,我建议创建自定义图表窗口小部件,该窗口小部件将包含其自己的时间范围选择器,并将使用REST API请求数据。 https://thingsboard.io/docs/reference/rest-api/