ThingsBoard-遥测

ThingsBoard提供了丰富的遥测数据功能,包括数据收集、存储、查询、可视化和规则引擎处理。它支持多种协议上传时序数据,使用WebSocket订阅数据更新,提供REST API进行数据查询,同时具备数据保留策略和持久性。规则引擎可用于生成警报、处理和分析时间序列数据。此外,还提供数据可视化功能,允许在仪表板上展示和分析数据。

1、使用遥测数据

ThingsBoard 提供了一组与时间序列(遥测)数据相关的丰富功能:

  • 使用各种协议和集成从设备收集数据;
  • 时间序列数据存储在 SQL(PostgreSQL)或 NoSQL(Cassandra 或 Timescale)数据库中;
  • 查询最新的时序数据值或指定时间范围内的所有数据,灵活聚合;
  • 使用WebSocket订阅数据更新以进行可视化或实时分析;
  • 使用可配置和高度可定制的小部件和仪表板可视化时间序列数据;
  • 使用灵活的规则引擎过滤和分析数据;
  • 根据收集的数据生成警报;
  • 使用外部规则节点(例如 Kafka 或 RabbitMQ 规则节点)将数据转发到外部系统。

2、数据点

ThingsBoard 在内部将时间序列数据视为带时间戳的键值对。我们将单个带时间戳的键值对称为数据点</

### ThingsBoard Gateway与MQTT集成配置指南 #### 配置文件概述 为了实现ThingsBoard Gateway与MQTT协议之间的无缝连接,需编辑`tb_gateway.yaml`配置文件。此文件位于安装目录下的`config`文件夹内。 ```yaml mqtt: host: "broker.hivemq.com" port: 1883 qos: 1 client_id: "thingsboard-gateway" username: "" password: "" keepalive: 60 clean_session: true ``` 上述代码展示了如何设置基本的MQTT客户端参数[^3]。 #### 设备连接属性设定 针对每一个通过网关接入平台的设备而言,在同一份YAML文档里还需指定其对应的MQTT主题以及消息格式: ```yaml devices: - name: "Temperature Sensor" telemetry_topic: "v1/devices/me/telemetry" attributes_topic: "v1/devices/me/attributes" commands_topics: - topic: "v1/devices/me/rpc/request/+" method: "RPC_METHOD_NAME" ``` 这里定义了一个名为“Temperature Sensor”的虚拟传感器,并指定了上传遥测数据的主题路径和接收命令请求的方式。 #### 自定义转换器应用实例 当接收到的消息体不是JSON结构化对象而是二进制流或其他特殊编码形式的数据包时,则可通过编写Python脚本来解析这些原始字节数组并将其转化为标准API调用所需的键值对集合。下面给出了一段简单的例子来说明这一过程: ```python def BYTE_TO_JSON(bytes_data): json_result = {} # 假设前两个字节代表温度读数(摄氏度),后面四个字节表示湿度百分比 temp_celsius = int.from_bytes(bytes_data[:2], byteorder='big', signed=False)/10.0 humidity_percent = struct.unpack('>f', bytes_data[-4:])[0] json_result["temperature"] = round(temp_celsius, 1) json_result["humidity"] = round(humidity_percent, 2) return json.dumps(json_result) ``` 该函数接受一个字节数组作为输入参数,经过处理后返回包含环境监测指标在内的合法JSON字符串。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

国服TB第一人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值