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