Thingsboard开源图谱
2024-03-21 19:00:09 10 举报
AI智能生成
开源物联网平台Thingsboard—全功能图谱
作者其他创作
大纲/内容
概述
是什么?物联网平台
能力:可实现物联网项目的快速开发、管理、扩展。
目标:提供成熟的IOT平台解决方案,一次作为上层IOT应用程序的服务端基础架构
用处
管理设备、资产和客户并定义他们子间的关系
基于设备和资产收集数据并进行可视化。
采集遥测数据并进行相关的事件处理进行警报响应。
基于远程RPC调用进行设备控制。
基于生命周期事件、REST API事件、RPC请求构建工作流。
基于规则链自定义特定功能。
发布设备数据至第三方系统。
功能划分
属性 - 为你的自定义实体分配键值属性(例如配置,数据处理,可视化参数)的平台功能。
遥测 - 采集时间序列和相关API用例数据。
实体和关系 - 创建物理模型对象(例如设备和资产)及它们之间的关系 。
数据可视化 - 可视化功能: 部件, 仪表板, 仪表板状态。
规则引擎 - 对传入的遥测、事件执行相关处理和操作。
RPC - 从你的应用程称推送API和部件命令至设备,亦可反向推送 。
审计日志 - 记录用户行为和API调用情况。
API限制 - 控制在指定时间内主机对API的请求情况。
连接设备方式
实现MQTT协议的设备、网关客户端接入
实现COAP协议的设备、网关客户端接入
实现HTTP协议的设备、网关客户端接入
说明:tb作为服务端
功能特性
实体与关系
实体类型
租户
独立的业务实体:拥有或生产设备和资产的个人或组织;租户可能有多个租户管理员用户和数百万个客户;
客户
客户也是一个独立的企业实体,购买或使用租户下的Device、Assets、Organization;客户可能有多个用户以及数百万个Device和Assets;
用户
用户能够浏览仪表板和管理实体;
设备
可以通过RPC命令处理Iot设备中的对象遥测数据。例如sensors(传感器), actuators(执行器), switches(开关);
资产
Device与Assets相关联的抽象Iot对象。
警告
提示Device和Assets以及Entity发生的事件;
仪表盘
通过Dashboards查看数据以及控制指定设备;
规则节点
通过消息处理实体生命周期事件的单元
规则链
规则节点的逻辑单元;
实体共性支持
属性 -与实体相关联的静态和半静态键值对。例如序列号,型号,固件版本;
遥测数据 -可用于存储,查询和可视化的时间序列数据点。例如温度,湿度,电池电量;
关系 -与其他实体的定向连接。例如包含,管理,拥有,生产。
设备属性
客户端属性
设备的特定属性
服务端属性
由上层设置的设备机密属性,设备不可见
共享属性
由上层指定的设备附加属性,设备可见
能力:1、设备测能够发布客户端属性到服务端,2、请求服务端的客户端属性和共享属性,3、订阅共享属性更新服务
遥测数据
是什么?thingboard提供基于MQTT、COAP、HTTP协议的遥测数据接入。tb作为服务端,支持设备/网关客户端接入。
数据分类
属性
时序数据
rpc指令
使用方式:
数据采集:设备或者网关客户端,使用tb端设备/网关令牌去连接服务端。根据协议API指导、按照tb指定的数据格式推送
规则引擎:在规则引擎中对于遥测数据消息进行过滤,转换、属性丰富、动作、推送处理,以及多级规则链路由。
警报
告警创建
基于规则引擎的,根据设备遥测数据、设备数据触发的事件的判断,创建告警,并且指定告警类型、告警等级、告警描述、告警的传播机制(默认会传播到所有相关实体(仅父级关系)。通过创建时间、告警发起者、告警类型来标识告警,同一类型告警不能存在两个活动告警。
告警类型
支持自定义告警类型,告警等级、告警描述
告警级别
危急(CRITICAL)
重要(MAJOR)
次要(MINOR)
警告(WARNING)
不确定(INDETERMINATE)
Alarm规则
通过ThingsBoard规则引擎可以创建,更新和清除警报(可手动操作,也可通过规则节点判断,自动应答和消除)。
设备连接状态
谁来维护
平台设备状态服务负责监控设备连接状态,并触发同送到规则引擎的设备连接事件
维护哪些属性
active:当前设备状态(true/false)
lastConnectTime(设备最后一次连接到thingsboard的时间)
lastDisconnectTime (设备与thingsboard断开连接的最后一次的时间)
lastActivityTime(表示设备上次推送遥测,属性更新或rpc命令的时间)
inactivityAlarmTime(表示上一次触发不活动事件的时间)
事件
Connect event - 设备连接到ThingsBoard时触发。基于MQTT的会话传输和HTTP请求传输同时连接事件将在每一个HTTP请求上触发。
Disconnect event - 设备与ThingsBoard断开连接时触发。基于MQTT的会话传输和HTTP请求传输同时连接事件将在每一个HTTP请求上触发。
Activity event (最近一次遥测数据时间)
Inactivity event(请注意,即使没有从设备断开连接事件,也可能触发此事件。通常表示一段时间没有触发任何活动事件)
配置方式
1、代码测全局配置不活跃超时
设备状态服务将全局配置参数用于不活动超时,参数(state.defaultInactivityTimeoutInSec)在thingsboard.yml中定义默认为10秒。
2、单个设备服务端属性配置
用户可以通过设置服务器端属性”inactivityTimeout”来覆盖单个设备的此参数(值以毫秒为单位)。
3、代码测全局配置监测不活跃事件
设备状态服务使用全局配置参数来检测不活动事件,参数(state.defaultStateCheckIntervalInSec)在thingsboard.yml中定义默认为10秒。
实体视图
thingsboard 实体视图限制了基础表向外公开数据的可见程度同时还限制了设备、资产遥测和属性向客户公开的可见程度。为每一个设备或创建多个视图并为之分配给不同的客户。
支持
允许同时将指定设备或资产数据共享给多个客户
允许指定的用户查看采集的数据(例如:传感器数据),但隐藏调试信息例如电量、系统错误等。
设备即服务(DaaS)模型,表示设备在不同时间段收集的数据属于不同的客户。
RPC功能
是啥?请求指令控制
分类
服务端RPC请求(服务端下发请求到设备,设备执行动作)
设备RPC请求(设备发请求到服务端,服务端执行远程rpc调用,推送服务端相应结果到设备)
比如:请求客户端属性和共享属性更新。
模式
服务端RPC请求支持单向(只发不接收应答)、双向(下发-接收反馈)
设备RPC请求:只支持双向
支持协议
HTTP
MQTT
COAP
数据可视化
根据实体视图,调用小部件,创建数据展示dashboard。
审核日志
系统关键操作的日志
API限制
控制在指定时间内主机对API的请求情况
IOT网关(软网关)
规则引擎
是什么:基于事件构建的工作流,是一个高度可定制的框架,用于复杂事件的处理。
组成
Message(规则消息)
Rule Node(规则节点)
Rule Chain(规则链)
使用特点
组态化编辑
调试—事件模式
JavaScript函数测试台
自定义规则节点,实现数据运算。
能力
1、保存到数据库之前,对接收的遥测数据或属性进行验证和修改
2、将遥测或者属性从设备复制到相关资产,以便可以汇总遥测。
3、根据定义的条件对alarms进行创建、更新、清除
4、根据设备生命周期时间触发操作。如设备上线、设备离线状态,创建告警事件
5、加载所需的其他处理数据。在客户设备或租户属性中定义的设备的负载温度阈值。
6、触发对外部系统的REST API调用
7、发生复杂事件时发送电子邮件,并使用“电子邮件模板”中其他实体的属性。
8、根据定义的条件进行RPC调用。
9、与外部管道(如Kafka,Spark,AWS服务等)集成
协议概念
传感器
是一种检测装置,能感受到被测量的信息,并能将感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求
网关
协议转换,数据封装,数据的推送和指令的接收
PLC
可编程逻辑器件,是自动化系统的控制单元,实现自动化系统的自动控制。
DTU
DTU 数据传输单元(Data Transferunit),是专门用于将串口数据转换为IP数据或将IP数据转换为串口数据通过无线通信网络进行传送的无线终端设备。
RTU
RTU(远程终端单元),英文全称RemoteTerminalUnit,中文全称为远程终端控制系统,负责对现场信号、工业设备的监测和控制
MQTT
是物联网中通用的数据传输协议,基于tcp协议的,发布/订阅模型。
COAP:
起因:由于物联网中的很多设备都是资源受限型的,即只有少量的内存空间和有限的计算能力,所以传统的HTTP协议应用在物联网上就显得过于庞大而不适用:①HTTP头通常太大;② HTTP请求/响应拉模型(请求由客户发起)在低任务周期的传感器网络中不能很好地工作,IETF的CoRE工作组提出了一种基于REST(Representational State Transfer的)架构的WEB传输协议COAP协议,建立在UDP协议之上,利用UDP技术完成数据的交换。
什么是REST架构?
REST软件架构当中最重要的两个理念:
能够对于互联网资源进行唯一定位,
能告诉我们对于该资源进行怎样运作。REST软件架构使用了CRUD原则,该原则告诉我们对于资源(包括网络资源)只需要四种行为:创建(Create)、获取(Read)、更新(Update)和销毁(DELETE),就可以组合成其他无数的操作。
OPC-UA
目的:解决PLC特定协议转化为标准化接口的服务,OPC UA是基于TCP IP scoket 传输层.
OPC标准是由行业供应商,最终用户和软件开发人员开发的一系列规范。这些规范定义了客户端和服务器以及服务器和服务器之间的接口,包括访问实时数据,监控报警和事件,访问历史数据和其他应用程序。
传感器的实时数据:温度、压力和流量
控制参数:打开、关闭、运行和停如状态信息状态信息
硬件连接状态硬件连接状态
软件和子系统的状态软件和子系统的状态
MODBUS
传统的工业现场协议,基于现场总线的设备与设备通讯协议。具有两种传输方式:ascii与RTU模式,ascii在消息中的每个8Bit字节都作为两个ASCII字符发送。这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误。在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。
NB-IOT
基于移动运营商的蜂窝式网络通讯模型,低功耗广域网,待机时间长、对网络连接要求较高设备的高效连接。据说NB-IoT设备电池寿命可以提高至少10年消耗大约180kHz的带宽,可直接部署于GSM网络、UMTS网络或LTE网络,以降低部署成本、实现平滑升级。
LORA:
远程低功耗通讯模型,非移动蜂窝模型,
由于硬件成本低、功耗更小,因此更适合在小数据量、 大范围的传输应用。LoRa 技术目前的发展规模已趋向成熟
安全
三个主要角色
系统管理员
管理租户
租户管理员
管理设备、仪表盘、客户和其他属于特定租户的实体
客户用户
能够查看分配给特定客户的仪表盘和控制设备
版本
CE版本
属性 - 为你的自定义实体分配键值属性(例如配置,数据处理,可视化参数)的平台功能。
遥测 - 采集时间序列和相关API用例数据。
实体和关系 - 创建物理模型对象(例如设备和资产)及它们之间的关系 。
数据可视化 - 可视化功能: 部件, 仪表板, 仪表板状态。
规则引擎 - 对传入的遥测、事件执行相关处理和操作。
RPC - 从你的应用程称推送API和部件命令至设备,亦可反向推送 。
审计日志 - 记录用户行为和API调用情况。
API限制 - 控制在指定时间内主机对API的请求情况。
可以使用协议
HTTP
MQTT
COAP
thingsboard本身不支持OPC-UA、MODBUS
实现方式
第一种:使用iot_gateway可以实现
第二种使用PE版本--平台集成功能
交互图谱
分支主题
交互图谱
分支主题
PE版本
介绍:在兼容CE版本功能基础上,进一步增强
功能特征
高级RBAC框架能力
目的:旨在涵盖具有多个用户组的企业用例,这些用户组具有不同的权限,但可能与相同的设备和资产进行交互。
特点
多级子客户,独立用户和设备的客户层次结构和创建能力
创建具有灵活权限集的角色能力
向特定用户组分配角色的能力
在替丁设备组上向特定用户组授权特定权限的功能
关系
分支主题
角色
通用角色
组角色
白标能力
目的:2分钟内配置公司或者产品徽标和整体配色方案,而无需进行任何编码工作,不需要重启服务
配置选型
1、在系统管理员级别配置配色方案、图标、LOG
2、租户和客户管理员用户界面默认继承配置更改
3、租户和客户管理员可以设置自己的白标配置
4、系统和租户管理员可以设置自定义电子邮件服务器和客户电子邮件服务器模板以与用户进行交互
5、允许系统管理员为每个租户启用、禁用白标
6、允许租户管理员为每个客户启用、禁用白标
7、允许租户管理员配置系统组件和最终用户仪表盘元素的自定义切换。
自我注册
目的:ThingsBoard自注册功能使租户可以为其客户配置注册页面,从而能够简单地注册并使用预定义的权限配置登录ThingsBoard。作为租户管理员,我希望允许用户在我的IoT Platform实例上注册自己的帐户。他们注册后,我希望允许他们查看特定的仪表板并配置自己的设备或声明现有设备
定制翻译
目的:仪表盘上某些组件上的GUI元素是英文,可以通过定制翻译功能,上传中文翻译。
自定义菜单
目的:自定义菜单功能允许使用自定义菜单项扩展thingsboard UI 并控制菜单项的显示和隐藏。
实体组
ThingsBoard允许您配置多个自定义实体组。每个实体(设备/资产/实体视图/客户/用户/仪表板)可以同时属于多个组。特殊组“全部”始终包含属于特定租户帐户的所有实体。对于每个实体组,ThingsBoard用户可以配置不同的列以可视化特定的遥测或属性值。ThingsBoard用户还可以定义为每个实体提供的自定义操作:打开仪表板或发送RPC调用等。还支持批量操作以删除实体,将其添加到组或删除
排程器(Scheduler)
能力:ThingsBoard允许您通过灵活的时间表配置来安排各种类型的事件。ThingsBoard Scheduler会根据其时间表触发已配置的时间表事件。当调度程序事件被触发时,规则引擎消息是从事件配置生成的,该事件配置与规则引擎消息具有相似的结构。然后,生成的消息将从根规则链开始转发到规则引擎并进行处理。
报告
ThingsBoard允许您使用现有的仪表板生成报告。可以从当前打开的仪表板生成报告,也可以使用排程功能生成计划报告。
数据导出(CSV/XLS)
能力:ThingsBoard允许您将数据从小部件导出到CSV或XLS。如果适用于窗口小部件类型,几乎所有窗口小部件都支持此功能。导出的数据集中的列列表与您在数据集配置中配置的参数列表相对应。
文件存储功能
能力:ThingsBoard能够在数据库中存储二进制内容(文件)。可以用于存储由报表模块生成的报告文件。发送电子邮件节点可以访问存储的文件以创建电子邮件附件。用户可以访问使用存储的文件的文件或报表部件。文件工具包
平台集成能力
场景
1、将现有的NB IoT,LoRaWAN(远距离通信网络设计的一套通讯协议),SigFox和其他具有特定有效负载格式的设备直接连接到ThingsBoard平台。
2、从连接到现有物联网平台的设备流式传输数据,以实现实时交互式仪表板和高效的数据处理
核心
ThingsBoard Integration的工作是在核心平台功能(遥测收集,属性和RPC调用)与特定的第三方平台API之间提供安全可靠的API桥
PE版架构
分支主题
部署方式
集成服务嵌入tb主进程
集成与thingsboard服务器进程中运行。
优点:1、简化集成的部署2、最小化消息传递的延迟
缺点:1、消耗tb主进程资源(网络连接,操作系统线程占用,CPU时间片等,隔离度较低,2、如果tb部署在云中,则无法访问本地MQTT代理或者OPC-UA服务器)
部署架构
分支主题
远程
远程集成可用,并启用了新的部署方案。可以在本地网络中安装远程集成,连接到本地代理服务之后,获取数据写入文件系统,待网络条件允许后,将数据流传输到云中
优点:1、与tb主进程隔离2、支持在本地网络中配置集成
缺点:1、需要单独安装集成包
部署架构
分支主题
能力
HTTP
MQTT
OPC-UA
TCP
UDP
SigFox
ThingPark
The ThingsNetwork
AWS IoT
AWS Kinesis
IBM Watson
Azure Event Hub
ocean Connect
使用Telegram bot的只能手机上的通知报警(暂时打不开官方文档)
0 条评论
下一页