ESP8266和MQTT

 
 

为什么要介绍MQTT呢?MQTT又是什么呢?MQTT能做什么呢?下面,我就来简单的介绍一下

     MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议。  

    MQTT的特点:

MQTT协议是为大量计算能力有限,且工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议,它具有以下主要的几项特性:

1、使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合;

2、对负载内容屏蔽的消息传输;

3、使用 TCP/IP 提供网络连接;

4、有三种消息发布服务质量:

“至多一次”,消息发布完全依赖底层 TCP/IP 网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。

“至少一次”,确保消息到达,但消息重复可能会发生。

“只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

5、小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量;

6、使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制;

作者:魔魔魔魔魔魔魔魔鬼 链接:http://www.jianshu.com/p/b41a30ea0e2b 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
ESP8266移植到MQTT是一种常见的方式,以实现物联网设备与云平台之间的通信。下面是一个简要的描述该过程的答案: ESP8266是一款低成本、低功耗、高性能的Wi-Fi微控制器,而MQTT是一种轻量级的通信协议,广泛用于物联网设备间的通信。将ESP8266移植到MQTT旨在利用ESP8266的Wi-Fi功能,将其作为一个MQTT客户端,与MQTT代理服务器进行通信。 首先,我们需要确保ESP8266的Wi-Fi功能模块已正确配置,可以与Wi-Fi网络进行连接。然后,我们需要在ESP8266上安装适当的MQTT库,例如PubSubClient。这个库将提供所需的MQTT功能,如连接、发布和订阅等。 接下来,我们需要在代码中设置与MQTT服务器相关的参数,如服务器地址、端口号、用户名、密码等。然后,我们可以使用MQTT库提供的函数,例如`mqtt.connect()`来连接到MQTT服务器。 一旦成功连接到MQTT服务器,我们就可以使用`mqtt.publish()`函数向主题发布消息,使用`mqtt.subscribe()`函数订阅特定主题,接收服务器发送的消息。通过这种方式,ESP8266就可以与MQTT代理服务器进行双向通信。 需要注意的是,ESP8266的资源相对有限,因此需要根据实际应用的需求来设计代码。例如,可以使用低功耗模式来节省电能,或者根据需要实现数据缓存和同步等机制来处理通信中可能出现的问题。 总结起来,将ESP8266移植到MQTT需要配置Wi-Fi功能、安装适当的MQTT库、设置相关参数,然后使用MQTT函数进行连接和通信。这样,我们就能够实现ESP8266MQTT代理服务器之间的通信,从而实现物联网设备的云平台连接。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值