单元十五ESPWIFI模块MQTTLED汤宇娇上海_第1页
单元十五ESPWIFI模块MQTTLED汤宇娇上海_第2页
单元十五ESPWIFI模块MQTTLED汤宇娇上海_第3页
单元十五ESPWIFI模块MQTTLED汤宇娇上海_第4页
单元十五ESPWIFI模块MQTTLED汤宇娇上海_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单元十五ESP8266WIFI模块-MQTT-LED主讲人:汤宇娇上海城建职业学院本单元内容MQTT基本概念MQTT协议解析配置基于MQTT协议的设备端、云端通信教学目标了解MQTT基本概念了解MQTT协议设计方法掌握配置基于MQTT协议的设备端、云端通信15.1MQTT基本概念MQTT概念MQTTMQTT基本概念MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输协议)是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。功能特点:轻量简单开放易于实现MQTT概念MQTT典型应用场景MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、偶尔拨号的医疗设备、智能家居、及一些小型化设备中已广泛使用。15.2MQTT协议解析消息格式消息格式定义MQTT协议解析消息包括三个部分:固定头(Fixedheader)、可变头(Variableheader)、消息体(payload)。消息示例MQTT固定头MQTT协议解析消息示例MQTT固定头:MQTT数据包类型MQTT协议解析消息示例MQTT固定头:标识位MQTT协议解析(1)DUP:发布消息的副本。用来在保证消息的可靠传输,如果设置为1,则在下面的变长中增加MessageId,并且需要回复确认,以保证消息传输完成,但不能用于检测消息重复发送。(2)QoS:发布消息的服务质量,即:保证消息传递的次数(3)RETAIN:发布保留标识,表示服务器要保留这次推送的信息,如果有新的订阅者出现,就把这消息推送给它,如果设有那么推送至当前订阅者后释放。消息示例MQTT可变头MQTT协议解析MQTT数据包中包含一个可变头,它驻位于固定的头和负载之间。可变头的内容因数据包类型而不同,较常的应用是作为包的标识消息示例Payload消息体MQTT协议解析Payload消息体位MQTT数据包的第三部分,包含CONNECT、SUBSCRIBE、SUBACK、UNSUBSCRIBE四种类型的消息:(1)CONNECT,消息体内容主要是:客户端的ClientID、订阅的Topic、Message以及用户名和密码。(2)SUBSCRIBE,消息体内容是一系列的要订阅的主题以及QoS。(3)SUBACK,消息体内容是服务器对于SUBSCRIBE所申请的主题及QoS进行确认和回复。(4)UNSUBSCRIBE,消息体内容是要订阅的主题。QoSMQTT协议解析QualityofService

MQTT提供一个有质量的服务,从IoT角度来看,其本质是消息的优先级。在任何情况下一个重要的消息可以传输到目的地,因此有了服务质量(QoS),虽然传输速度会变慢但是交付有了保证。一个动态的数据源速度优先于效率,然而分配一个较低的QoS,更像是一个“fire-and-forget”事件,如UDP。。设备登录登录流程MQTT协议解析MQTT设备登录设备云流程:访问设备云门户/注册用户;用户根据业务情况,在”连接请求”章节中选择MQTT登录方式;根据登录方式,填写设备相关属性,在产品下新增设备,获取产品ID、设备ID,以及api-key等信息;设备发送连接请求报文到设备云服务器地址:,端口876或29876MQTT建立连接客户端先发送CONNECT消息给中间件中间件收到客户端的连接请求后返回CONNACK消息协议原理MQTT协议原理MQTT协议解析实现MQTT协议需要:客户端和服务器端MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。MQTT传输的消息分为:主题(Topic)和负载(payload)两部分Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload)payload,可以理解为消息的内容,是指订阅者具体要使用的内容报文时续MQTT协议解析MQTT报文时续利用MQTT上报数据点到设备云及客户端读取数据的流程:在设备云门户注册用户,创建需要登录的设备(详见登录流程);通过设备云门户该设备的详情页,或RESTAPI创建需要存储的数据流(定义上传数据类型名称);设备进行MQTT登录鉴权;根据数据类型(json或二进制),数据流ID(名称)和当前值,时间(默认当前系统时间)等信息,封装消息类型8(”存储数据”,具体格式见消息定义中的示例)发送到设备云,设备云解析后将数据点保存在该设备对应数据流中。数据流MQTT协议解析从发布方到订阅方

MQTT服务器以称为“消息代理”(Broker),可以是一个应用程序或一台设备。它是位于消息发布者和订阅者之间,它可以:(1)接受来自客户的网络连接;(2)接受客户发布的应用信息;(3)处理来自客户端的订阅和退订请求;(4)向订阅的客户转发应用程序消息。15.3基于MQTT的云、设备端配置配置步骤云、端协同配置登录OneNet云平台,选择控制台配置步骤云、端协同配置选择全部产品服务,基础服务下的多协议接入配置步骤云、端协同配置选择MQTT协议,点击创建产品配置步骤云、端协同配置选择添加产品信息配置步骤云、端协同配置产品添加成功配置步骤云、端协同配置添加设备配置步骤云、端协同配置设备详情中添加APIKey配置步骤云、端协同配置记录设备ID和APIKey配置步骤云、端协同配置记录设备ID和APIKey配置步骤云、端协同配置修改代码中的设备

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论