使用MQTT客户端连接阿里云MQTT服务器

简介: 物联网全栈教程-从云端到设备(八) 一 这一篇文章零妖老哥将给你展示两个电脑软件的使用方法,将极大地方便你调试与MQTT有关的物联网项目。一个叫MQTT客户端用来模拟设备向云端发送数据和接收云端的数据;另一个叫作MQTT单片机编程小工具,是技小新针对阿里云MQTT服务器连接过程中的痛点,自己编写的一个电脑程序,用来生成连接阿里云MQTT服务器时的账号密码等信息的。

物联网全栈教程-从云端到设备(八)


关注零妖的微信公众号,获取第一手物联网的技术干货:  LINGYAOIOT


这一篇文章零妖老哥将给你展示两个电脑软件的使用方法,将极大地方便你调试与MQTT有关的物联网项目。一个叫MQTT客户端用来模拟设备向云端发送数据和接收云端的数据;另一个叫作MQTT单片机编程小工具,是技小新针对阿里云MQTT服务器连接过程中的痛点,自己编写的一个电脑程序,用来生成连接阿里云MQTT服务器时的账号密码等信息的。

 

首先出场亮相的叫 MQTT.fx-1.3.1 的软件,是一个运行在电脑上的MQTT客户端软件,只要填写一下MQTT服务器(比如阿里云的MQTT服务器)的IP地址,端口号,密码等信息,就可以连接到服务器,然后可以向指定的TOPIC发送内容了,当然你也可以订阅指定的TOPIC

369630715e29730a31fff2987867de2b207df3b7

 

 

零妖带你去配置一下这个MQTT客户端,配置好之后就能模拟设备收发数据了。设置之前,你需要进入阿里云的LinkDevelop平台,进入测试设备的页面,我们要复制一些参数;设置参数的过程中,你需要打开技小新的MQTT单片机编程小工具来配合一下。

如图所示,在设备开发里面的测试设备选项中,你要打开激活凭证,一键复制,到此为止。接下来请出我们的技小新MQTT单片机编程小工具,准备计算一下用户名密码等信息。

 

 dee2cecf64bdc3b9100ef052431f366b520cda14

 

 

下图列出了阿里云官网给出的,MQTT连接时候的账号密码信息的规则,比较繁琐。零妖老哥根据这个规则写的电脑小软件,可以自动计算这些参数。

8f3957da35448fb878d79d1f49c1dbeaf5374995

 

打开技小新MQTT单片机编程小工具,粘贴刚才复制的参数到输入框里面,就可以直接算出来上图中的参数了。

好了,直接复制一些参数到MQTT客户端里面进行设置就行了。参数如下:

MQTT域名;端口;ClientID;  UserName;  Password

如果想发送内容到云端,就复制 “属性上报” TOPIC MQTT客户端,发送内容即可,记住发送的内容要符合ALink规范。

d29e6151a9fbca748aba40810b5746007dc8892e 

8faf84d9f8375e3cae3ce9a64acf39c91babc035

f32803d269727d58ebac030bdab0f85aed9b83bd


 

 

 

好了,现在你返回到MQTT客户端的界面,点击连接试一下吧,一下子就能连上信不信?

然后复制一个叫做 “属性上报” 的TOPIC,写一个符合ALink协议规范的字符串,试一下发送数据。

 52ca4d3ce6a9de56e28e71bbea3a911c0fe65539

 

再进入LinkDevelop 的测试设备的 设备详情 页面查看数据上报结果:

1302863b3c778a8bc38a2e170f12f478ed04fce5

 

 

零妖再从云端下发一个数据,试一下模拟的客户端能否收到。

需要MQTT客户端,订阅一个叫 “设置设备属性” 的TOPIC

 75363b804b80f447094700ee534adc8c5dd8d8b6

 

好了,看下图你就明白了,模拟客户端收到的数据也是符合ALink协议规范的,单片机如果接收到这些数据后,就可以解析了。PS:MQTT通讯协议发送的数据是UTF-8格式的,单片机解码时候遇到中文字符就要小心了,具体怎么解决这个问题零妖也会在后续的文章里说的。

 3be0a3659d5b8171111b550e3d416d859a556bb9

 

 

 

 

说到了这里你肯定已经猜到了零妖的良苦用心了。

两个小工具配合使用能模拟一个设备联网,那么云端开发工程师完全就可以拿着小工具直接调试代码了,根本不用管硬件端在干嘛,是不是?该调用API的该写界面的想咋弄咋弄,是不是很爽?

LinkDevelop平台里,有一个测试设备的接入,硬件工程师只要能够想办法建立一个TCP连接,连接上阿里云的MQTT服务器,那么就可以在平台上下发数据和测试上报数据,请问还用得着关心云端工程师在干啥吗?努力做好单片机开发就行了,是不是很爽?

下一篇文章零妖将带你了解一下云端Web应用开发框架 ——Bone 框架!

 

 

 

 

 

 

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
打赏
0
12
2
9
4396
分享
相关文章
IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。
本文介绍了如何使用VS Code通过Remote-SSH插件连接远程服务器进行代码开发,并与PyCharm进行了对比。作者认为VS Code在连接和配置多个服务器时更为简单,推荐使用VS Code。文章详细说明了VS Code的安装、远程插件安装、SSH配置文件编写、服务器连接以及如何在连接后切换文件夹。此外,还提供了使用密钥进行免密登录的方法和解决权限问题的步骤。
2773 0
IDE之vscode:连接远程服务器代码(亲测OK),与pycharm链接服务器做对比(亲自使用过了),打开文件夹后切换文件夹。
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
本文介绍了如何在PyCharm专业版中连接远程服务器并配置远程Python环境解释器,以便在服务器上运行代码。
970 0
IDE之pycharm:专业版本连接远程服务器代码,并配置远程python环境解释器(亲测OK)。
【网络】UDP回显服务器和客户端的构造,以及连接流程
【网络】UDP回显服务器和客户端的构造,以及连接流程
110 3
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
通过远程桌面连接Windows服务器提示“由于协议错误,会话将被中断,请重新连接到远程计算机”错误怎么办?
通过远程桌面连接Windows服务器提示“由于协议错误,会话将被中断,请重新连接到远程计算机”错误怎么办?
开发者如何使用轻量消息队列MNS
【10月更文挑战第19天】开发者如何使用轻量消息队列MNS
463 14
云消息队列RabbitMQ实践解决方案评测
一文带你详细了解云消息队列RabbitMQ实践的解决方案优与劣
148 12
MQ 消息队列核心原理,12 条最全面总结!
本文总结了消息队列的12个核心原理,涵盖消息顺序性、ACK机制、持久化及高可用性等内容。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。

物联网

+关注