物联网平台定位为PaaS服务,即在物联网应用和真实设备之间搭建高效、稳定、安全的应用平台:面向设备,适配多种网络环境和常见传输协议,提供各类硬件终端的快速接入方案和设备管理服务;面向应用层,提供丰富的API和数据分发能力以满足各类行业应用系统的开发需求,使物联网企业可以更加专注于自身应用的开发,而不用将工作重心放在设备接入层的环境搭建上,从而缩短物联网系统的形成周期,降低企业研发、运营和运维成本。
平台架构:
资源模型:
规则引擎:
规则引擎参考: https://github.com/jetlinks
物联网平台: https://www.eclipse.org/kapua/
接入协议:
具体协议的业务模型以及适用场景推荐使用的协议,详见下表:
接入协议 | 设备侧适用特点 | 平台侧提供功能 | 典型适用行业 |
---|---|---|---|
LwM2M | 使用NB网络; 对于深度和广度覆盖要求高; 对成本和功耗十分敏感; 对数据传输的实时性要求不高; 存在海量连接,需要传输加密; 周期性上报特点明显; |
存储设备上报的资源列表及数据; 下发数据及命令至设备; 接收海量大并发的数据传输和存储; 数据推送到应用; |
水、电、气、暖等智能表具 智能井盖等市政场景; |
EDP MQTT |
需要设备上报数据到平台; 需要实时接收控制指令; 有充足的电量支持设备保持在线; 需要保持长连接状态; |
存储设备上报的数据点; 下发应用实时、离线自定义数据或命令; 下发固件更新地址通知; 提供数据推送到应用; 基于topic的消息订阅/发布(仅mqtt) |
共享经济、物流运输、智能硬件、M2M等多种场景 |
HTTP | 只上报传感器数据到平台; 无需下行控制指令到设备; |
存储设备上报的数据点; 提供API接口实现设备管理; 提供数据推送到应用; |
简单数据上报场景 |
modbus | 设备类型主要是基于TCP的DTU; DTU下挂设备为标准modbus协议通信设备 |
自定义配置采集命令以及采集周期; 存储设备上报的数据点; 下发自定义modbus命令; 数据推送到应用; |
使用Modbus+DTU进行数据采集的行业 |
TCP透传 | 保持长连接; 双向通信; 用户自定义通信数据格式; |
支持上传自定义的脚本解析自定义数据; 存储设备上报的数据点; 支持自定义命令下发; 支持数据推送到应用; |
用户自定义数据协议;简单控制类场景如共享单车、共享按摩椅 |
术语
术语 | 解释 | 别名&曾用名 |
---|---|---|
产品 | 平台资源(包括设备,APIKey,触发器,应用等)的集合,一个产品对应唯一的masterkey、产品ID,设备注册码,一个产品下包含多个具备同一特征的设备,多个设备之间的唯一性由SN来区分 | 项目 |
产品ID | pid,鉴权信息组之一,创建产品时由平台分配的唯一产品识别码,用于标识唯一个产品,作为设备登录鉴权参数之一 | 项目ID |
APIKey | 用于API调用时的鉴权参数 Master-APIkey:产品下唯一的管理员权限的APIKey,具有管理产品下所有设备的权限 Device-APIkey:设备级APIkey,具备与之关联的所有设备的访问权限 |
|
accessKey | 安全性更高的访问密钥,用于访问平台时的隐性鉴权参数(非直接传输),通过参与计算并传输token的方式进行访问鉴权 | |
token | 安全性更高的鉴权参数,由多个参数组成,在通道中直接传输 | |
注册码 | 产品下唯一,可用于真实设备调用注册设备时,作为API的鉴权参数之一 | |
设备 | 归属于某一个产品下,是真实设备在平台的映射,用于和真实设备通过连接报文建立连接关系,平台资源分配的最小单位 | |
鉴权信息组 | 由设备ID,产品ID,设备SN组成的平台内设备唯一的参数组合,真实设备进行设备连接时需要携带有这些参数进行鉴权(参数要求根据设备接入协议不同有一定差异) | |
设备ID | 鉴权信息组之一,由平台分配的,在平台范围内设备唯一的识别号 | |
SN | 鉴权信息组之一,由硬件厂家自定义的设备唯一出厂序列号,创建/注册设备时作为设备参数,在产品内唯一,作为设备连接时的鉴权参数之一 | auth_info 设备编号 |
数据流 | 设备属性,可为设备单项数据属性,例如温度=10;也可为设备数据属性的组合,例如坐标=x:10 y:20 | |
数据流模板 | 产品下所有设备均具备的采集数据属性,例如空气质量检测仪均可以上报“PH2.5”“甲醛浓度”等数据 | |
数据点 | 设备每次上传到数据流中的数据 | |
脚本 | 平台支持用户自定义数据解析规则,解析二进制/字符串格式的数据(仅适用于TCP+脚本接入方式) |