文章目录
1. 前言
随着物联网技术的快速发展,MQTT(Message Queuing Telemetry Transport)协议已成为一种广泛使用的通讯协议,它适用于设备间低带宽、高延迟、不可靠的网络通信。W5500是一款集成全硬件 TCP/IP 协议栈的嵌入式以太网控制器,同时也是一颗工业级以太网控制芯片。
在以太网应用中使用 W5500 + MQTT应用协议让用户可以更加方便地在设备之间实现远程连接和通信。本教程将介绍W5500以太网MQTT应用的基本原理、使用步骤、应用实例以及注意事项,帮助读者更好地掌握这一技术。
2. 简介
2.1 什么是MQTT?
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的“轻量级”通讯协议,该协议构建于TCP/IP协议上。MQTT最大优点在于,用极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。
2.2 特点
- 轻量级:MQTT协议非常轻量,它的开销很小,适用于低带宽、低功耗设备和网络。
- 发布/订阅模式:MQTT采用发布/订阅模式,客户端可以订阅一个或多个主题(Topic),并且可以在不知道其他客户端的情况下发布消息到主题。
- QoS支持:MQTT支持三种服务质量(QoS)等级,可以在发布和订阅时指定。 这些等级为0、1、2,提供不同的消息传递保证。
- 遗嘱机制:MQTT支持遗嘱(Will)机制,当客户端异常断开连接时,可以通过遗嘱机制通知其他客户端。
- 保留消息:MQTT支持保留消息(Retained Message),允许客户端发布一个保留的消息到主题,而后连接到该主题的新订阅者可以立即接收到该消息。
- 连接控制:MQTT支持连接控制机制,允许客户端在连接时指定自己的客户端ID、用户名和密码。
- 安全性:MQTT支持TLS/SSL加密通信协议,以确保数据的安全传输。
- 基于 TCP/IP 网络连接
2.3 MQTT协议实现方式

实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份:发布者(Publish)、服务器、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。
MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:
(1)Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);
(2)payload,可以理解为消息的内容,是指订阅者具体要使用的内容。
2.4 遗嘱消息

客户端的遗嘱只在意外断线时才会发布,如果客户端正常的断开了与服务端的连接,这个遗嘱机制是不会启动的,服务端也不会将客户端的遗嘱公布。
遗嘱消息可以看作是一个简化版的 PUBLISH 消息,他也包含 Topic, Payload, QoS 等字段。遗嘱消息会在设备与服务端连接时,通过 CONNECT 报文指定,然后在设备意外断线时由服务端将该遗嘱消息发布到连接时指定的遗嘱主题(Will Topic)上。
一般建议设置遗嘱消息内容为client offline!在我们的客户端连接上服务器时,也向遗嘱主题发布一条client online消息。
2.5 应用场景

- 科学研究:在科学研究中,需要对实验数据进行采集和传输,使用MQTT协议可以有效地解决数据传输过程中的丢包问题,保证数据传输的稳定性和完整性。
- 金融行业:在金融行业中,需要对交易信息进行实时监控和传输,使用MQTT协议可以实现实时监控和传输,并保证数据的稳定性和安全性。
- 医疗行业:在医疗行业中,需要对患者的生命体征进行采集和传输,使用MQTT协议可以有效地解决数据传输过程中的丢包问题,保证数据传输的稳定性和完整性。
- 能源行业:在能源行业中,需要对能源设备进行监控和控制,MQTT协议正是满足这一需求而设计的,它具有简单、可靠、灵活等特点,在能源领域中得到了广泛应用。
3 WIZnet以太网芯片
WIZnet 主流硬件协议栈以太网芯片参数对比
| Model | Embedded Core | Host I/F | TX/RX Buffer | HW Socket | Network Performance |
|---|---|---|---|---|---|
| W5100S | TCP/IPv4, MAC & PHY | 8bit BUS, SPI | 16KB | 4 | Max.25Mbps |
| W6100 | TC |

本文介绍了MQTT协议在物联网中的应用,特别是使用W5500以太网控制器实现的远程连接和通信。详细讲解了MQTT协议特点、遗嘱消息机制以及如何在WIZnetW5500芯片上设置MQTT网络。
最低0.47元/天 解锁文章
384

被折叠的 条评论
为什么被折叠?



