MQTT如何快速助你产品化
Posted zsqlzjtu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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相关,感谢。
以上是关于MQTT如何快速助你产品化的主要内容,如果未能解决你的问题,请参考以下文章