概览
ThingsBoard提供界面和RESTAPI,用于在IoT应用中配置、管理多种实体类型及其关系。 支持的实体包括:
- 租户 — 独立业务实体,代表拥有或生产设备与资产的个人或组织;每个租户可拥有多个租户管理员用户及大量客户、设备和资产;
- 客户 — 独立业务实体,代表购买或使用租户设备与资产的个人或组织;每个客户可拥有多个用户及大量设备和资产;
- 用户 — 可浏览仪表盘并管理实体;
- 设备 — 基础IoT实体,可上报遥测数据并处理RPC命令,例如传感器、执行器、开关;
- 资产 — 抽象IoT实体,可与其他设备或资产建立关系,如工厂、田地、车辆;
- 实体视图 — 用于仅向客户分享部分设备或资产数据;
- 告警 — 标识资产、设备或其他实体异常的事件;
- 仪表板 — IoT数据的可视化以及通过界面控制特定设备;
- 规则节点(Rule Node) — 处理消息和实体生命周期事件的处理单元;
- 规则链(Rule Chain) — 定义Rule Engine中的处理流程,可包含多个规则节点及与其他规则链的链接;
每个实体支持:
- 属性 — 与实体关联的静态或半静态键值对,如序列号、型号、固件版本;
- 时间序列数据 — 可存储、查询和可视化时间序列数据点,如温度、湿度、电量;
- 关系 — 指向其他实体的有向连接,如Contains、Manages、Owns、Produces。
部分实体支持配置文件:
- 租户配置 — 为多个租户定义的通用设置,包括实体、API和限速等。每个租户在任一时刻仅有一个配置文件。
- 设备配置 — 为多个设备定义的通用设置,包括处理与传输配置等。每个设备在任一时刻仅有一个配置文件。
- 资产配置 — 为多个资产定义的通用设置,包括处理配置等。每个资产在任一时刻仅有一个配置文件。
本文档概述上述功能,并提供获取更多详情的链接及实际使用示例。
关系
实体关系定义同一Tenant下两个ThingsBoard实体之间的连接。 关系类型可自定义,如Contains、Manages、Supports等,均为有向关系。 可将ThingsBoard的关系理解为面向对象中的Has-a关系。
关系用于在ThingsBoard中建模物理世界对象。以下示例便于理解。 假设要构建应用:从土壤湿度和温度传感器采集数据,在仪表盘上展示,检测问题、触发告警并控制灌溉。 再假设需支持多个地块,每块有数百个传感器,地块可进一步按地理区域分组。
下图说明这些实体如何在ThingsBoard中配置和存储:
参见“添加和删除资产”与“管理资产关系”,了解如何通过管理界面配置实体。也可使用REST API以编程方式创建实体和关系。
下一步
为资产与设备分配属性
ThingsBoard支持为实体分配并管理属性,可在此了解:
从设备上报遥测数据
ThingsBoard支持处理设备及其他实体的遥测数据,可在此了解:
创建告警规则
ThingsBoard支持通过Rule Engine为设备等实体创建告警,可在此了解:
设计你的仪表盘