资讯详情

设备接入服务,看完这篇给你整的明明白白

设备接入服务能够帮助物联网行业用户快速完成设备联网及行业应用集成。

本文分享自华为云社区《华为云IoT作者:Super.雯。

设备接入服务(IoTDeviceAccess)它是华为云的物联网平台,提供连接云、设备和云双向信息通信、批量设备管理、远程控制和监控的海量设备OTA升级设备联动规则,灵活将设备数据转移到华为云的其他服务,帮助物联网行业用户快速完成设备联网和行业应用集成。基于华为云物联网平台的物联网系统如图9-6所示,主要分为终端设备、设备连接、消息通信、设备管理、数据流通、物联网应用等数据交换和协作。

基于华为云物联网平台的物联网系统

常用的物联网协议

HTTP

HTTP(HyperTextTransferProtocol,从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输文档中的哪一部分,以及哪部分内容首先显示(如文本先于图形)等。

HTTP是请求和响应组成的应用层协议是标准的客户端服务器模型。

同时HTTP是无状态协议。同一客户端的此请求与上次请求无对应关系http对服务器而言,它不知道这两个请求来自同一个客户端。为了解决这个问题,Web程序引入了Cookie维护状态的机制。

并且HTTP是同步协议。客户需要等待服务器响应。Web浏览器有这样的要求,但它的代价是牺牲可伸缩性。IoT在该领域,大量的设备和可能不可靠或高延迟的网络使同步通信成为一个问题。异步信息协议更适合IoT应用程序。传感器发送读数,使网络能够确定最佳路线和时间传输到目标设备和服务。

HTTP重量级协议有许多标头和规则。它不适用于有限的网络。

三次握手:

HTTP握手三次

注解:SYN:同步,Seq:序号,ACK:确认,ack:确认序号。

第一次握手:

当客户想要与服务器建立连接时,他们会发送一份请求连接的报纸,这是第一篇报纸中的SYN=1(TCP规定,SYN=1报文段不能携带数据,需要消耗序号),初始序列号可以随机生成Seq=X,客户端进入SYN-SENT(以发送状态同步)。

第二次握手:

服务器收到客户端发送的连接请求后,同意连接的,发出确认报告,其中确认报告段SYN=1,ACK=1.同时,随机初始化序列号Seq=Y,确认号ack=X 1.服务器也进入

SYN_RCVD(同步接收状态)。

第三次握手:

客户端收到确认报告后,还需要向服务器发送确认报告。确认报告ACK=1,ack=Y 1,此时,TCP连接建立成功,客户端进入ESTABLISHED(已建立连接)状态。

三次握手的重要性:

当客户端发送第一个请求连接报告时,由于网络堵塞,服务端不能及时收到,直到某个时间才收到请求连接报告,此时服务器收到无效报告,服务器向客户端发送确认报告,等待客户端连接,假设两次握手,客户端忽略服务器发送确认报告,服务器一直在等待接收客户端的请求,这导致服务器浪费了大量资源。如果使用三次握手,服务器无法接收客户端的确认报告,则与客户端断开连接,因此更适合使用三次握手。

MQTT

MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)IBM开发即时通信协议。MQTT本协议采用订阅/发布的工作模式,客户端向服务器订阅感兴趣的信息,服务器将信息推送给订阅此类信息的客户端。

MQTT交互流程

协议简单,轻量级(消息可以短到两个字节,对终端硬件配置要求低,适用于CPU在硬件资源有限的情况下,有助于降低终端成本,促进产业发展)。

  • 基于TCP/IP,可靠的信息传递。
  • 采用长连接,有心跳保存机制,减少重建链的费用。
  • 实时通知支持消息,推送内容丰富。
  • 心跳机制不利于设备进入休眠模式,设备耗电。
  • MQTT其特点非常符合无线传感网、物联网等领域的要求。目前,智能家庭解决方案主要用于MQTT协议。

客户端(Client):

代理服务器(Broker):

  • 它是任何发布/订阅协议的核心,可以处理成千上万的协议MQTT并发连接客户端。
  • 代理服务器主要负责接收所有消息,并将消息发送给所有订阅客户。
  • 一个职责是保持所有连续的客户端对话,包括订阅和丢失信息。
  • 另一个职责是认证和授权客户端。

CoAP

CoAP(ConstrainedApplicationProtocol,受限的应用协议(如传感器节点)和网络(如NB-IoT,LoRa)而设计。CoAP从HTTP协议发展而来,CoAP协议还采用请求/响应工作模式,客户发起请求,服务器响应。为了克服HTTP受限环境的缺点,CoAP考虑到数据报告长度的优化和可靠通信的提供。

CoAP交互流程

报头压缩,报文格式简单,消息可以很短,最小CoAP消息只有四个字节。

  • 传输层使用UDP协议,减少网络费用,支持组播功能。
  • 为了弥补UDP传输不可靠,CoAP有新闻重传机制。
  • 不支持长连接,没有心跳,没有业务设备不需要发送外部信息。
  • 做生意时,设备可能需要先唤醒,消息实时性不是很好。

跟MQTT相比,CoAP不需要保持长连接,不需要不断发送心跳信息,更适合物联网场景中需要休眠/唤醒机制的设备。设备可以长时间处于休眠模式,节约用电。一个电池可以使用10年甚至更长时间。目前主要采用智能水表、智能电表、智能农业、智能停车场等解决方案。CoAP协议。

设备管理

设备注册&接入鉴权

为了保证接入物联网平台的设备是安全可信的,需要进行设备注册和设备接入鉴权操作。设备注册,指用户通过控制台或调用注册设备API在IoT在平台上注册设备信息,在平台上存在设备信息后,再接入真实的实体设备,使平台与终端实体设备实现连接和通信。

设备接入鉴权,是指IoT平台对接入平台的设备进行识别和认证,以确保设备接入信息的完整性和安全性、设备和平台信息传输的完整性和安全性。

设备注册&设备接入鉴定权

命令下发

定义了设备的产品模型IoT平台可以向设备下达命令,平台可以向设备下达命令,修改设备的服务属性,控制设备。

平台向设备下发命令包括立即下发和缓存下发两种情况,如下表所示。

对于立即发布模式,所有发布的命令直接发布给设备;对于缓存发布模式,需要等待设备在线或设备向平台报告数据,并按串行发布给设备,即缓存命令需要按缓存时间逐一发布给设备。设备命令整个生命周期的状态转换如下图所示。

设备命令的状态转换

详细说明设备命令状态如下表所示。

通过命令下发特性,平台能够为终端用户提供远程控制设备的服务,实现设备连接,也可以实现对设备的批量命令下发等,操作简单快捷。当用户需要对设备进行某一操作,而设备并不在可操作范围内,或者需要操作大批量设备时,可以使用命令下发。

设备联动规则

规则引擎的用户是终端用户,系统预设了支持的规则场景。终端用户在自己的设备下通过方便易懂的友好界面制定自动化规则。

规则可以与设备、应用程序和报警绑定。当绑定信息满足条件时,规则可以自动执行响应动作。规则引擎定位处理各种事件,使用规则引擎可以及时通知和快速处理异常事件,帮助终端用户维护和监控设备,确保系统业务的及时恢复。阈值超限、范围超限、位置跟踪等事件也可定义为规则引擎输入条件,并与相应的处理动作相关联。

如下图所示,设备联动的触发条件和响应动作。

设备联动规则

设备升级管理

支持通过物联网平台OTA(OverTheAir)升级终端设备的固件和软件。

  • 设备固件升级:固件升级又称为FOTA(FirmwareOverTheAir),是指用户可以通过OTA的方式对支持LwM2M协议和CoAP的设备进行固件升级,升级包下载LwM2M协议。
  • 设备软件升级:软件升级又称为SOTA(SoftwareOverTheAir),是指用户可以通过OTA的方式对支持LwM2M协议和CoAP的设备进行软件升级,升级包下载协议为PCP。

设备固件&软件升级

设备批操作

华为云物联网平台支持对设备的批量操作,包括批量注册设备、批量命令下发、批量位置上传、批量设备配置和批量软固件升级。

  • 批量注册设备:因注册设备数量过多而导致注册时间太长,可采用批量注册的方式注册设备。批量命令下发:当物联网平台需要对批量设备下发命令时,可通过北向接口创建批量命令下发任务,在物联网平台上,可查看任务的执行状态、操作者和成功率等信息。
  • 批量位置上传:当物联网平台需要对设备的位置进行批量上传时,可采用批量位置上传操作。这里的设备主要指安装位置相对固定的终端设备,如水表。
  • 批量设备配置:当物联网平台需要对设备进行批量配置时,可采用批量设备配置操作。
  • 批量软固件升级:当物联网平台需要对设备的固件或者软件进行批量升级时,可采用批量软固件升级操作。

设备批操作向物联网平台提供对终端设备统一管理的通道,能提升对终端设备的管理效率,很好地满足用户批量管理设备的需求。当用户接入的设备数量过多,或者需要对全部或某一个群组的设备进行相同的操作时,可以采用设备批操作。批量注册设备和批量位置上传时设备数量的上限是30000个,批量命令下发、批量设备配置和批量软固件升级的设备上限是10000个。

标签: 传感器接入器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台