孙亮亮
返回 小企业智能化

小企业智能化

小微企业用 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 台关键设备跑通全链路,再逐步扩规模。

本模块其他文章

小微企业一体化监控实战:Prometheus + node_exporter + Grafana 监控主机、服务与设备并微信告警小微企业室内定位与电子围栏实战:蓝牙 Beacon + ESP32 网关做资产/人员区域定位与越界告警小微企业设备预测性维护实战:ESP32 + 振动传感器做异常监测、FFT 频谱与企微告警小微企业安灯(Andon)系统实战:ESP32 驱动三色报警灯做产线异常呼叫与看板小微企业设备二维码巡检系统实战:扫码点检、异常上报与维护台账小微企业智能车间照明实战:ESP32 + 继电器 + 人体感应做分区节能灯控门店电子价签与促销信息屏实战:ESP32 + 墨水屏无线刷新、断网缓存与批量管理小微企业用 ESP32 + 称重传感器做原料出入库自动计量:HX711 标定与微信日报实战小微企业本地大模型落地:用 Ollama 在工控机部署 Qwen 做制度问答助手小微企业用 4G DTU 实现异地设备远程采集:无公网 IP 的分散站点组网与告警实战小微企业用 Wiegand 读卡器 + ESP32 搭建门禁考勤台账:刷卡上报、后台统计与异常告警小微企业冷库无线环境监测实战:LoRa 温湿度节点 + 网关上报 + 超限微信告警小微企业用 Node-RED 搭建设备联动中台:从 MQTT 到企业微信告警小微企业设备数据采集与看板上墙:用边缘网关把 Modbus PLC 接入 Grafana门店 AI 视觉智能化落地:用摄像头 + 轻量模型做客流统计与区域安防小微企业低成本环境监控实战:ESP32 + 温湿度/水浸传感器 + 微信告警小企业经营异常自动告警实战:企业微信机器人把问题主动推到群里给小企业搭一套本地 AI 知识库客服:用 Ollama + 向量检索把老员工经验变成可查答案用二维码+手机扫码给小企业做轻量库存盘点:零设备成本的智能化落地当老系统没有接口:用 RPA 补上自动化用实时看板取代每天手填的日报
小微企业用 ThingsBoard 搭建设备物联网平台:MQTT 遥测上报、规则链告警与可视化看板 · 孙亮亮