使用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
目录
相关文章
|
12天前
|
人工智能 弹性计算 编解码
阿里云GPU云服务器性能、应用场景及收费标准和活动价格参考
GPU云服务器作为阿里云提供的一种高性能计算服务,通过结合GPU与CPU的计算能力,为用户在人工智能、高性能计算等领域提供了强大的支持。其具备覆盖范围广、超强计算能力、网络性能出色等优势,且计费方式灵活多样,能够满足不同用户的需求。目前用户购买阿里云gpu云服务器gn5 规格族(P100-16G)、gn6i 规格族(T4-16G)、gn6v 规格族(V100-16G)有优惠,本文为大家详细介绍阿里云gpu云服务器的相关性能及收费标准与最新活动价格情况,以供参考和选择。
|
17天前
|
机器学习/深度学习 人工智能 弹性计算
什么是阿里云GPU云服务器?GPU服务器优势、使用和租赁费用整理
阿里云GPU云服务器提供强大的GPU算力,适用于深度学习、科学计算、图形可视化和视频处理等多种场景。作为亚太领先的云服务提供商,阿里云的GPU云服务器具备灵活的资源配置、高安全性和易用性,支持多种计费模式,帮助企业高效应对计算密集型任务。
|
19天前
|
存储 分布式计算 固态存储
阿里云2核16G、4核32G、8核64G配置云服务器租用收费标准与活动价格参考
2核16G、8核64G、4核32G配置的云服务器处理器与内存比为1:8,这种配比的云服务器一般适用于数据分析与挖掘,Hadoop、Spark集群和数据库,缓存等内存密集型场景,因此,多为企业级用户选择。目前2核16G配置按量收费最低收费标准为0.54元/小时,按月租用标准收费标准为260.44元/1个月。4核32G配置的阿里云服务器按量收费标准最低为1.08元/小时,按月租用标准收费标准为520.88元/1个月。8核64G配置的阿里云服务器按量收费标准最低为2.17元/小时,按月租用标准收费标准为1041.77元/1个月。本文介绍这些配置的最新租用收费标准与活动价格情况,以供参考。
|
17天前
|
机器学习/深度学习 人工智能 弹性计算
阿里云GPU服务器全解析_GPU价格收费标准_GPU优势和使用说明
阿里云GPU云服务器提供强大的GPU算力,适用于深度学习、科学计算、图形可视化和视频处理等场景。作为亚太领先的云服务商,阿里云GPU云服务器具备高灵活性、易用性、容灾备份、安全性和成本效益,支持多种实例规格,满足不同业务需求。
|
22天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
2月前
|
消息中间件 JSON Java
开发者如何使用轻量消息队列MNS
【10月更文挑战第19天】开发者如何使用轻量消息队列MNS
80 5
|
1月前
|
消息中间件 存储 Kafka
MQ 消息队列核心原理,12 条最全面总结!
本文总结了消息队列的12个核心原理,涵盖消息顺序性、ACK机制、持久化及高可用性等内容。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
|
2月前
|
消息中间件 安全 Java
云消息队列RabbitMQ实践解决方案评测
一文带你详细了解云消息队列RabbitMQ实践的解决方案优与劣
76 8
|
2月前
|
消息中间件
解决方案 | 云消息队列RabbitMQ实践获奖名单公布!
云消息队列RabbitMQ实践获奖名单公布!
|
2月前
|
消息中间件 存储 弹性计算
云消息队列RabbitMQ实践
云消息队列RabbitMQ实践