设备接入平台简介
设备接入服务(IoTDA)是华为云的物联网平台,提供海量设备连接上云、设备和云端双向消息通信、批量设备管理、远程控制和监控、OTA升级、设备联动规则等能力,并可将设备数据灵活流转到华为云其他服务。
使用物联网平台构建一个完整的物联网解决方案主要包括3部分:物联网平台、业务应用和设备。
· 物联网平台作为连接业务应用和设备的中间层,屏蔽了各种复杂的设备接口,实现设备的快速接入;同时提供强大的开放能力,支撑行业用户构建各种物联网解决方案。
· 设备可以通过固网、2G/3G/4G/5G、NB-IoT、Wifi等多种网络接入物联网平台,并使用LWM2M/CoAP、MQTT、HTTPS协议将业务数据上报到平台,平台也可以将控制命令下发给设备。
· 业务应用通过调用物联网平台提供的API,实现设备数据采集、命令下发、设备管理等业务场景。
物联网平台支持终端设备直接接入,也可以通过工业网关或者家庭网关接入;支持多网络接入、多协议接入、系列化Agent接入,解决设备接入复杂多样化和碎片化难题;也提供了丰富完备的设备管理能力,简化海量设备管理复杂性,提升管理效率。
原生协议接入:支持MQTT/CoAP/LwM2M/HTTP协议接入。
泛协议接入:提供开源SDK和技术框架,需用户自行部署云网关完成协议转换,或部署协议驱动到边缘网关。
系列化Device SDK:支持IoT Device SDK和IoT Device SDK Tiny,覆盖的语言包括C、Java等。详情请参考IoT Device SDK介绍。
行业协议接入:支持通过边缘网关接入Modbus、OPCUA、可通过行业协议插件方式支持行业协议接入。
设备接入鉴权:支持一机一密,X.509证书等鉴权方式。
常见的设备接入方式——MQTT使用指导
MQTT(Message Queuing Telemetry Transport)是一个基于客户端-服务器的消息发布/订阅传输协议,主要应用于计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备,适合长连接的场景,如智能路灯等。更多关于MQTT协议语法及接口信息,请访问这里获取。
MQTTS是MQTT使用TLS加密的协议。采用MQTTS协议接入平台的设备,设备与物联网平台之间的通信过程,数据都是加密的,具有一定的安全性。
业务流程
采用MQTT协议接入物联网平台的设备,设备与物联网平台之间的通信过程,数据没有加密,建议使用MQTTS协议。
若选择MQTTS协议接入平台,建议通过使用IoT Device SDK接入。
· 设备接入前,需创建产品(可通过控制台创建或者使用应用侧API创建产品)。
· 产品创建完毕后,需注册设备(可通过控制台注册单个设备或者使用应用侧API注册设备创建)。
· 设备注册完毕后,可以按照图中流程实现消息/属性上报、接收命令/属性/消息、OTA升级、自定义Topic等功能。关于平台预置Topic可参考Topic定义
说明:您可以通过mqtt.fx进行原生协议接入调测,可以参考快速体验mqtt接入。
使用限制
描述
|
限制
|
---|---|
支持的MQTT协议版本 |
3.1.1 |
与标准MQTT协议的区别 |
· 支持Qos 0和Qos 1 · 支持Topic自定义 · 不支持QoS2 · 不支持will、retain msg |
MQTTS支持的安全等级 |
采用TCP通道基础 + TLS协议(最高TLSv1.3版本) |
单帐号每秒最大MQTT连接请求数 |
无限制 |
单个设备每分钟支持的最大MQTT连接数 |
1 |
单个MQTT连接每秒的吞吐量,即带宽,包含直连设备和网关 |
3KB/s |
MQTT单个发布消息最大长度,超过此大小的发布请求将被直接拒绝 |
1MB |
MQTT连接心跳时间建议值 |
心跳时间限定为30至1200秒,推荐设置为120秒 |
产品是否支持自定义Topic |
支持 |
消息发布与订阅 |
设备只能对自己的Topic进行消息发布与订阅 |
每个订阅请求的最大订阅数 |
无限制 |
设备接入方式-MQTT的TLS支持
平台推荐使用TLS来保护设备和平台的传输安全。目前支持四个版本的TLS协议,即版本1.0、1.1、1.2和1.3。TLS 1.0和1.1被视为旧版,并计划弃用,强烈建议使用TLS 1.2和TLS 1.3作为首选TLS版本。使用TLS连接时平台仅支持如下加密套件:
· TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
· TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
· TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
· TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
· TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
· TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
· TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
· TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
MQTT接入设备与物联网平台通信
设备使用MQTT协议接入平台时,平台和设备通过Topic进行通信。物联网平台预置了Topic,通过这些预置的Topic,平台和设备可以实现消息、属性、命令的交互。您还可以在设备接入控制台,自定义Topic,实现设备平台通信的个性化配置。
描述
|
限制
|
说明
|
---|---|---|
数据上行 |
设备属性上报 |
用于设备按产品模型中定义的格式将属性数据上报给平台。 |
设备消息上报 |
设备无法按照产品模型中定义的属性格式进行数据上报时,将设备的自定义数据通过设备消息上报接口上报给平台,平台将设备上报的消息转发给应用服务器或华为云其他云服务上进行存储和处理。 |
|
网关批量属性上报 |
用于网关设备将多个设备的属性数据一次性上报给平台。 |
|
设备事件上报 |
用于设备按产品模型中定义的格式将事件数据上报给平台。 |
|
数据下行 |
平台消息下发 |
用于平台下发自定义格式的数据给设备。 |
平台设置设备属性 |
设备的产品模型中定义了平台可向设备设置的属性,平台/应用服务器可通过属性设置的方式修改指定设备的属性值。 |
|
平台查询设备属性 |
平台/应用服务器通过属性查询的方式,实时查询指定设备的属性数据。 |
|
平台命令下发 |
平台/应用服务器按产品模型中定义的命令格式下发控制命令给设备。 |
|
平台事件下发 |
平台/应用服务器按产品模型中定义的事件格式下发事件给设备。 |
设备接入平台最佳实践案例
通过业务场景示例呈现平台能力和价值 体验更多
-
以设备接入模拟器为例,介绍以MQTT原生协议接入物联网平台。
以设备接入模拟器为例,介绍以MQTT原生协议接入物联网平台。
-
通过恒温控制系统,不论空调是否开机,都可以调整空调默认温度,待空调上电开机后,自动按默认温度调节。
通过恒温控制系统,不论空调是否开机,都可以调整空调默认温度,待空调上电开机后,自动按默认温度调节。
-
通过微信小程序模拟设备,带您体验设备通过MQTT over WebSocket协议连接到物联网平台、上报数据和接收命令的全过程。
通过微信小程序模拟设备,带您体验设备通过MQTT over WebSocket协议连接到物联网平台、上报数据和接收命令的全过程。
-
设备上报数据到物联网平台,将数据以CSV格式存储到对象存储服务(OBS),DLV从OBS文件读取数据并展现为多个维度的报表。
设备上报数据到物联网平台,将数据以CSV格式存储到对象存储服务(OBS),DLV从OBS文件读取数据并展现为多个维度的报表。
-
本示例为设备上报的电池电量小于20%时,物联网平台会上报告警并发送邮件或短信通知给指定的手机号码。
本示例为设备上报的电池电量小于20%时,物联网平台会上报告警并发送邮件或短信通知给指定的手机号码。
-
带您体验十分钟快速上云,现智慧路灯检测并上报光照强度,显示在IoTDA控制台,并在IoTDA控制台远程控制LED灯开关的功能。
带您体验十分钟快速上云,实现智慧路灯检测并上报光照强度,显示在IoTDA控制台,并在IoTDA控制台远程控制LED灯开关的功能。