1、介绍
作为物联网开放平台,阿里云可谓是吸引大多数嵌入式爱好者的平台。物联网MQTT协议火热的今天,你使用过阿里云吗?本篇文章带你接触阿里云,实现MQTT通信。
我们在测试MQTT之前先了解下什么是MQTT协议。大家都知道它是一种发布订阅协议,它是怎么实现两个客户端通信的呢。带着这两个问题,我们来了解下MQTT协议。
MQTT协议不同于我们常见的C-S通信协议,C(客户端)-S(服务器)这种一对一进行数据通信的协议,比如http、udp和socket通信协议。MQTT可以有多个客户端(如图),客户端订阅或发布于同一个topic,那么这个topic下的所有客户端都会收到这个消息,就是说可以多个客户端通信。一个客户端可以订阅这个topic,也可以在这个topic上发布消息,实现客户端数据的双向通信。
那么,在订阅同一个topic时,客户端之间是如何经过服务器实现数据通信的呢?
下面我们带着这个问题进行阿里云和MQTTfx平台及软件的配置。如果您是刚接触阿里云的小白,可以跟着我一起学习,步骤详细。
2、阿里云平台配置
打开阿里云平台,以下链接
找到控制台,点进去。
搜索物联网平台,然后点进去。
点击公共实例
然后到达以下界面
接下来,比较重要,请跟着我的步骤来。
2、1创建产品
点击产品----->创建产品。
在产品名称里填写适当的名字,最好是英文,其他选择如下:
然后点击确认。弹出一个页面,我们选择查看产品详情。
以下重要信息我已经圈出来了,打开动态注册,先不要点击发布。
到此,创建产品完成。
2、2创建设备
点击设备---->添加设备。
选择我们刚才创建的产品,并填写好名称,之后确认。
创建好之后,点击查看设备信息。
至此,设备创建完成。
2、3重要信息位置
在上一步创建好设备后,点击查看设备信息。以下重要的信息已经圈出。
在连接时会用到。我们使用的是一机一密,一个客户端设备对应一个密匙,username及passwd。
为了便于理解,我把重要信息标注出来。注意在大家使用阿里云的时候,需要注意保密,为了安全性,写完这篇笔记我会把这个产品删掉。
打开MQTTfx,大家可以在浏览器搜索下载。
点击设置。
注意:client ID 、username和password我们在上边已经圈出来了,填上就行,不需要在去计算。
对于Broker Address,首先找到你是哪个地址。比如我是华东区2上海,我的地址是
alFMz7jnArW.iot-as-mqtt.cn-shanghai.aliyuncs.com
设置好后,点击Apply,然后点击OK,返回。
至此MQTTfx软件配置完成。
2、4测试消息收发
回到MQTTfx主界面,点击Connect,看到右侧指示灯变绿。
说明MQTTfx连接上阿里云。
接下来测试数据收发,对于客户端和云平台双向测试。
2、4、1新建topic
找到我们产品,注意是产品,不是设备,点击定义topic类。
注意点开开启代理订阅!!!
topic可以随意填,填好信息,点击确认。
2、4、2设备绑定topic
拿到我们的topic信息
/h2q0peMWuBX/${deviceName}/user/csdn_book
找到我们的设备,我们设备名字叫aliyun_csdn_test,完整topic是:
/h2q0peMWuBX/aliyun_csdn_test/user/csdn_book
把这个topic填写到对应地方,想阿里云发一下消息。
找到阿里云日志服务,查看信息
在阿里云上发布消息,对应MQTTfx可以接收到。
至此,MQTTfx连接阿里云成功!鼓掌
图片加载不出来看我github: