1. ThingsBoard 平台概述

1.1 ThingsBoard 是什么

ThingsBoard 是一个开源的企业级物联网平台,用于设备管理、数据采集、可视化和规则引擎。它提供了一整套从设备接入到应用展示的端到端解决方案,支持 MQTT、CoAP、HTTP 等多种主流物联网协议,能够快速构建稳定、可扩展的物联网应用。

核心定位:ThingsBoard 不是单纯的设备管理工具,而是一个集设备连接、数据处理、规则编排、可视化展示于一体的物联网中间件平台。它屏蔽了底层通信协议的复杂性,让开发者可以专注于业务逻辑。

1.2 核心功能

ThingsBoard 围绕物联网应用的典型需求,提供了四大核心功能模块:

功能模块 说明 典型应用场景
设备管理 设备注册、认证、分组、固件 OTA、属性配置 批量设备上线、设备生命周期管理
数据采集 遥测数据(时序数据)与属性数据(静态/动态配置)的接收与存储 传感器温度上报、设备状态心跳
可视化 仪表板、图表、地图、控件,支持拖拽式配置 实时数据监控大屏、历史趋势分析
规则引擎 基于节点链的流式数据处理,支持过滤、转换、告警、动作 阈值告警、数据转发到外部系统

1.3 平台架构与组件

ThingsBoard 采用微服务架构,核心组件包括:

  • Transport Layer(传输层):MQTT、CoAP、HTTP 协议的接入网关,负责设备连接与消息解析。
  • Core Service(核心服务):设备管理、用户管理、租户管理、权限控制等业务逻辑。
  • Rule Engine(规则引擎):基于 Actor 模型的异步消息处理链,支持自定义节点。
  • Data Storage(数据存储):时序数据(Cassandra/TimescaleDB)、实体数据(PostgreSQL)、消息队列(Kafka/RabbitMQ)。
  • Web UI(前端界面):基于 Angular 的仪表板、设备管理、系统配置界面。
架构特点:ThingsBoard 支持水平扩展,传输层、核心服务、规则引擎均可独立部署,适用于从单机开发到大规模生产集群的多种场景。
ThingsBoard 平台架构组件图 设备层(Devices) 传感器 · 执行器 · 网关 · 边缘节点 传输层(Transport Layer) MQTT · CoAP · HTTP · LwM2M 核心服务(Core Service) 设备管理 · 用户 · 租户 · 权限 规则引擎(Rule Engine) 过滤 · 转换 · 告警 · 动作 数据存储(Data Storage) PostgreSQL(实体) · Cassandra/TimescaleDB(时序) · Kafka(消息队列) Web UI(仪表板 · 配置 · 管理)

1.4 数据模型:属性、遥测与命令

ThingsBoard 对设备数据做了三种抽象,这也是本课程后续实战的核心:

数据类别 特点 示例 存储方式
属性(Attributes) 键值对,用于设备静态或动态配置 固件版本、安装位置、采样间隔 PostgreSQL(最新值)
遥测(Telemetry) 时序数据,带时间戳 温度、湿度、电压、GPS 坐标 Cassandra / TimescaleDB
命令(RPC) 从平台到设备的远程调用 开关阀门、重启设备、调整参数 实时消息通道
注意区分:属性用于描述设备“是什么”或“应该怎样配置”,遥测用于描述设备“当前状态如何”,命令用于让设备“执行什么动作”。三者数据流向不同,在规则引擎中的处理方式也不同。

1.5 本章小结

ThingsBoard 是一个功能完备的开源物联网平台,通过设备管理、数据采集、可视化、规则引擎四大模块,覆盖了物联网应用从接入到展示的全链路需求。其微服务架构设计保证了系统的可扩展性和高可用性。理解属性、遥测、命令三种数据模型,是后续进行设备配置和业务开发的基础。