孙亮亮
返回 小企业智能化

小企业智能化

小微企业用 ThingsBoard 搭建设备物联网平台:MQTT 遥测上报、规则链告警与可视化看板

2026年9月18日

ThingsBoard 打造小微企业设备监控平台,MQTT 上报与规则链告警。

ThingsBoardMQTT物联网设备监控

小微企业用 ThingsBoard 搭建设备物联网平台:MQTT 遥测上报、规则链告警与可视化看板

摘要

对于只有几台到几十台设备的小微企业,直接采购商业物联网平台成本高、绑定深。本文以开源 ThingsBoard Community Edition 为例,演示如何在单台工控机或云主机上用 Docker 快速部署,通过标准 MQTT 协议采集设备遥测,并用规则链实现阈值告警与企微推送,最终在可视化看板上一屏掌握全部设备状态。

一、为什么选 ThingsBoard CE

ThingsBoard 是目前社区最活跃的开源物联网平台之一,CE 版本免费且功能足以支撑小微企业场景:支持 MQTT、CoAP、HTTP 多种接入协议;内置规则引擎可做复杂的告警与转发;提供拖拽式 Dashboard。对比自建 Grafana 加数据库,它把"设备接入—数据存储—告警—展示"四件事一次性打包,省去大量胶水代码,团队不必为每个环节各选一套组件。

二、Docker Compose 一键部署

准备一台 2 核 4G 以上的主机,安装 Docker 与 docker-compose 后,新建 compose 文件:

version: "3.8"
services:
  thingsboard:
    image: thingsboard/tb-postgres:3.6.2
    ports:
      - "8080:9090"
    environment:
      TB_QUEUE_TYPE: in-memory
    volumes:
      - tb-data:/data
      - tb-logs:/var/log/thingsboard
volumes:
  tb-data:
  tb-logs:

执行 docker compose up -d,等待约 1 分钟,访问 http://主机IP:8080,使用默认租户管理员账号登录(首次登录系统会提示修改密码)。注意:生产环境务必在前面套一层 Nginx 并启用 HTTPS,避免明文传输设备数据;同时给主机配置定时快照,防止 PostgreSQL 数据损坏导致历史遥测丢失。

三、创建设备并获取接入凭证

进入「设备」→「添加设备」,填写名称如 车间电表-01,类型选 电表。保存后点击该设备,切到「凭证」页,复制 Access Token(例如 A1b2C3d4E5)。这个 Token 就是设备通过 MQTT 上报数据时的"用户名",平台据此隔离不同设备的数据,互不串扰。

四、设备侧用 MQTT 上报遥测

以 ESP32 或任意支持 MQTT 的网关为例,向 v1/devices/me/telemetry 主题发布 JSON:

import paho.mqtt.client as mqtt
TOKEN = "A1b2C3d4E5"
client = mqtt.Client(client_id="esp32-01")
client.username_pw_set(TOKEN, "")
client.connect("主机IP", 1883, 60)
client.publish("v1/devices/me/telemetry",
              '{"voltage": 221.3, "current": 4.8, "power": 1062.2}')

ThingsBoard 会自动将这三个键值存入时序数据库,并在设备详情页的「最新遥测」中实时显示。多个设备只需各自持有不同 Token,平台按 Token 隔离数据,新增设备也不需改平台代码,只要能发 MQTT 即可。

五、用规则链实现阈值告警

当功率超过 1500W 时,我们希望自动告警。进入「规则链」→「根规则链」,新增节点:

  1. 在「消息类型切换」后接「脚本变换」,用 JS 判断 msg.power > 1500
  2. 满足条件则流向「创建告警」节点,设置严重级别与告警内容模板。
  3. 再接「REST API 调用」节点,把告警 POST 到企业微信群机器人 Webhook。

这样设备异常无需人工盯屏,告警会主动推送到值班群。规则链是可复用的,新增设备自动套用同一套逻辑,运维成本随设备增加几乎线性可控。

六、拖拽可视化看板

在「仪表板」中新建看板,添加「时序折线图」绑定 power 字段,添加「实体别名」选择全部 电表 类型设备,即可在一个页面同时看到多台设备的实时功率曲线。配合「警报部件」组件,页面上还能直接看到未恢复告警列表,适合投到车间大屏或值班电脑常驻。

小结

ThingsBoard CE 加 Docker 让小微企业以近乎零授权成本拥有完整物联网能力:标准 MQTT 接入保证设备端灵活,规则链把"阈值判断—告警—推送"自动化,Dashboard 解决可视化最后一公里。起步建议先接 2 至 3 台关键设备跑通全链路,再逐步扩规模。

本模块其他文章

小微企业用 ThingsBoard 搭建设备物联网平台:MQTT 遥测上报、规则链告警与可视化看板 · 孙亮亮