MQTT如何快速助你产品化

“时间就是金钱,效率就是生命”

本教程助力开发者使用MQTT协议快速产品化。

摘要

借助具备MQTT及联网功能的DTU,快速部署到客户产品上,助力开发,缩短开发周期,快速实现产品商业化。

目录

1、MQTT协议简介

2、搭建MQTT服务器环境

3、MQTT通信实现及产品化

1、MQTT协议简介:

简介:

MQTT是一个基于发布/订阅模式的消息传输协议。

特点:开放、简单、高效、低功耗、易实现、带宽要求低。

场景:物联网应用(IoT)、机器间通信(M2M)。

概念及名词:

服务端:Server,又叫代理(MQTT broker)。

客户端:Client,分为发布者(Publisher)和订阅者(Subscriber)。

发布者:可以发送不同类型(主题)的消息,如:财经、体育、娱乐。

订阅者:订阅消息方。类似订阅了某个主题的期刊,后续将会收到该类型期刊。

工作机制:

发布者、订阅者只需要知道MQTT 服务器的IP和端口即可,并和它直接建立连接通信。MQTT代理作为消息的中转,它过滤所有接受到的消息,并按照一定的机制(MQTT标准规定是基于主题的消息过滤派发方式,而具体的MQTT服务器软件也提供了其他的派发方式)分发它们,使得所有注册到MQTT代理的订阅者只接收到他们订阅了的消息,而不会收到他不关心的消息。

发布者发布一条消息,MQTT代理在收到发布者发过来的消息时,根据主题信息派发给订阅者。如上图发布者A发布财经主题信息,由于订阅者B事先订阅了财经主题消息,所以服务端派发财经主题信息给订阅者B。

时序示意图:

一个客户端可以同时既当发布者又当订阅者,如下图:

2、搭建MQTT服务器环境:

TLINK物联网平台:https://www.tlink.io/  

图片

可借助该平台做MQTT测试,更直观了解MQTT工作机制,当然各位也可将贵司的终端部署上去,实现商业化。

第一步,先微信关注公众号,方便报警信息推送:

图片

第二步,网站上完成账号的注册。

第三步,完成设备的创建。开发者中心包含教程,如下:

图片

第四步,在设备管理中添加设备:

图片

第五步,创建设备及添加位置信息(方便管理),点击底下“创建设备”:

图片

第六步,设备列表中设置信息:

图片

第七步,填完信息后,点击生成示例,如下:

图片

第八步,添加报警触发器,填写信息后,点击创建触发器:

图片

备注:触发条件即为报警条件。

至此,服务器端环境搭建完成。步骤也可参考开发者中心教程

3、MQTT通信实现及产品化:

需准备一块智能终端,具备MQTT及联网功能即可。

如果没有,也可网上购买,或者联系版主协助。

组网拓扑:

图片

智能终端可以只是4G DTU,也可以是贵司设备搭载DTU模块组合体。该DTU实现MQTT协议和自动联网功能,其它设备通过串口直连,具备MQTT及自动联网功能,助力开发,节约时间。产品如下示意:

图片

板载结构示意如下:

图片

智能终端配置,显示配置为MQTT协议终端即可:

图片

确认联网成功信息反馈:

@rightcode@network ready### 

设置服务器信息:

图片

设置remain信息:

图片

设置user信息:

图片

设置will信息:

图片

设置订阅信息:

图片

至此,即可发布信息

图片

服务器端收到信息如下:

图片

当改变发送的值时候,如下:

{"sensorDatas":[{"flag":"A","value":17.0}]}

备注,该信息格式来自“搭建MQTT服务器环境”第七步示例。

图片

服务器端收到信息如下(17℃):

图片

手机端推送报警信息如下:(低于15°C触发报警)

图片

由于智能终端订阅了:topic:Y572YRARG8LV467Y/zsq123,当MQTTBox发布该消息,智能终端将收到该主题消息,从而实现了通信功能,示例如下:

MQTTBox配置:

图片

MQTTBox发布:

图片

智能终端接收:

图片

交流社区:

扫码备注加群主,进技术交流群及资料共享。

话题1、MQTT联网技术交流

话题2、智能终端使用MQTT连接阿里云平台

话题3、智能终端使用MQTT连接oneNET平台

版主微信号,仅限交流MQTT相关,感谢。

图片

猜你喜欢

转载自blog.csdn.net/zsqlzjtu/article/details/120622107