概述
目录
1 阿里云平台
1-1 阿里云注册
1-2 创建产品和设备
1-3 创建物模型
2 MQTT.fx接入阿里云
3 ESP8266接入阿里云
1 阿里云平台
1-1 阿里云注册
为了方便理解,本次阿里云注册采用全新账号重零开始:
第一步:进入阿里云官网 https://www.aliyun.com/
点击左上角登录按钮并完成登录,一般用支付宝扫码登录就OK
第二步:登录完成后,点击右上角控制台
进入到控制台界面
进入到控制台界面后,最近访问的那里是没有物联网平台的,所以我们要去搜索物联网平台,在控制台中上搜索框搜索:物联网平台,并点击物联网平台,如图所示
第三步:进入到物联网平台
1-2 创建产品和设备
第一步:点击公共实例,没激活的朋友可以去激活一下,需要等个3-5分钟
第二步:点击左边导航栏的设备管理,展开后点击产品
第三步:点击创建产品
按照图片上设置并点击确认:
第四步:确认成功后,会弹出一个新页面不要急着关掉它
这里出现了两行话,一是叫你添加设备,二是叫你添加物模型
先去添加设备
第四步:添加设备
进入到设备界面后,点击添加设备
点击后,会出现一个框,按图设置后点击确认:
点击确认后,又会弹出一个框,这个框不要急着删,点击一键复制设备证书,如图:
复制后用word文档或者文本保存起来:
表1-1 设备证书中相关参数说明
参数 | 说明 |
ProductKey | 设备所隶属产品的Key,即物联网平台为产品颁发的全局唯一标识符 |
DeviceName | 设备在产品内的唯一标识符。DeviceName与设备所属产品的ProductKey组合,作为设备标识,用来与物联网平台进行连接认证和通信 |
DeviceSecret | 物联网平台为设备颁发的设备密钥,用于认证加密。需与DeviceName成对使用 |
1-3 创建物模型 里面会有你的productkey、devicename和驱动密码,走到这步后,我们的设备创建完成,下一步我们去创建物模型;
第一步:回到产品界面
点击咱们刚刚新建产品后的查看:
点击查看后进入到产品查看界面并找到功能定义,点击功能定义
进入到功能定义后,我们会发现尚未添加任何功能,所以我们要添加功能
点击上图箭头所指的编辑草稿,进入到功能添加界面,点击添加自定义功能
根据自己的需求添加功能,这里以温度为例子
按图填入,注意标识符,一定要填一个功能相关的,因为收发数据需要用到这东西,搞定之后往下拉找到确认按钮并点击,那么我们就能在功能定义界面看到我们新添加的物模型
大家不要急着退出这个页面,如果我们想在设备物模型数据中看到我们刚刚添加的功能(温度),我们需要把这个新加的功能给发布上线,在功能定义页面找到发布上线按钮(蓝色的),点击
好,这样我们就完成了物模型的创建,我们去看看效果吧
点击设备->找到新加的设备后的查看->进入之后点击物模型数据
那么在物模型数据里面我们就可以看到刚刚新加的功能啦
到此阿里云基础搭建完成
/************************************
第二点MQTT.fx接入阿里云明天写
************************************/
2 MQTT.fx接入阿里云
2-1 MQTT.fx连接阿里云
完成了第一大点后,我们就可以使用MQTT.fx接入阿里云去测试一下我们的设备了,废话不多说咱们开始
第一步:安装MQTT.fx,相关安装包稍后会给链接
双击直接进去傻瓜式安装就OK,安装过程的话我们直接省略,直接下一步
第二步:打开MQTT.fx
双击这个紫色图标的快捷方式(应该安装完,在桌面生成的)
打开后软件长这样
第三步:设置MQTT.fx,点击小齿轮进入设置
进入设置页面后,如下图点击新建:
新建后按图设置,详细参数说明在图片下面表格
表2-1 设置基本信息相关参数说明
参数 | 说明 |
Profile Name | 输入您的自定义名称 |
Profile Type | 选择为 MQTT Broker |
MQTT Broker Profile Settings | |
Broker Address | 连接域名。 格式:${YourProductKey}.iot-as-mqtt.${region}.aliyuncs.com。 其中,${region}需替换为您物联网平台服务所在地域的代码。地域代码,请参见地域和可用区。如:alxxxxxxxxxx.iot-as-mqtt.cn-shanghai.aliyuncs.com。 ${YourProductKey}需要替换为ProductKey a1UTSkcjwld.iot-as-mqtt.cn-shanghai.aliyuncs.com |
Broker Port | 设置为:1883 |
Client ID | 填写mqttClientId,用于MQTT的底层协议报文。 格式:${clientId}|securemode=3,signmethod=hmacsha1|。 完整示例:12345|securemode=3,signmethod=hmacsha1|。 其中, ${clientId}为设备的ID信息。可取任意值,长度在64字符以内。建议使用设备的MAC地址或SN码。 securemode为安全模式,TCP直连模式设置为securemode=3,TLS直连为securemode=2。 signmethod为算法类型,支持hmacmd5和hmacsha1。 说明 输入Client ID信息后,请勿单击Generate。 ESP32|securemode=3,signmethod=hmacsha1| |
第四步:单击User Credentials,设置User Name和Password,如图所示
设置用户名和密码,用户相关信息说明如表
参数 | 说明 |
User Name | 由设备名DeviceName、符号(&)和产品ProductKey组成。 固定格式: device&alxxxxxxxxxx |
Password | 密码由参数值拼接加密而成。 您可以使用物联网平台提供的生成工具自动生成Password。 单击下载Password生成小工具。 使用Password生成小工具的输入参数: productKey:设备所属产品Key。可在控制台设备详情页查看。 deviceName:设备名称。可在控制台设备详情页查看。 deviceSecret:设备密钥。可在控制台设备详情页查看。 timestamp:(可选)时间戳。 clientId:设备的ID信息,与Client ID中${clientId}一致。 method:选择签名算法类型,与Client ID中signmethod确定的加密方法一致。 xxxx) |
第五步:Password生成工具
打开“软件工具mqtt签名工具sign.html”,按照上文参数规则填入信息后点击生成,如图:
然后点击Generate
最终得到:
username:Smart_home&h2ot07Dvyl7
password:78D1DBB44CEF072CE3B3255BC69DD8A941E55051
然后点击Apply应用,然后就可以close掉了
第六步:点击Connect
正常连接的结果如图:
连接成功的话会显示一个绿灯,而且阿里云设备页,会显示设备在线
如果不成功的话,会显示一个红灯,那么就需要大家检查一下设置里面有没有设置错东西了
是不是非常神奇,如果大家跟着教程来的话,应该来到这步是没问题的
2-2 MQTT.fx的消息订阅和发布
从物联网平台发送消息,在MQTT.fx上接收消息,测试MQTT.fx与物联网平台连接是否成功 。
1、在MQTT.fx上,单击Subscribe。
2、输入一个设备具有订阅权限的Topic,单击Subscribe,订阅这个Topic
那个这个Topic在哪找呢?
打开阿里云产品页面并进入产品查看页面
点击Topic类列表
接着Topic类列表->物模型通信Topic
复制设备设备设置的Topic类
接着回到mqtt.fx->subscribe,如图:
记得修改topic类里面的devicename,最后点击subscribe
这是订阅成功后的效果:
接下来去验证是否能接收到云端过来的信息,回到阿里云设备查看页面,然后点击在线调试
按照上图顺序点击后,进入到在线调试页面
返回mqtt.fx,查看是否能接收到
{"method":"thing.service.property.set","id":"1227312958","params:{"temperature":55},"version":"1.0.0"}
注意黑色输出框,我们要注意格式,同样我们向云端发布数据,1、找到发布数据topic;2、按照格式给阿里云发过去,完事
在这里我们给物模型数据发送一个32过去,然后再去看看物模型数据温度那有没有改变
然后我们就能看到
到此应该大家已经明白了大致原理,接下来就剩下用代码来实现这些过程的环节了
有空的话更新
3 ESP8266接入阿里云
最近有点忙,代码我想先鸽鸽
最后
以上就是昏睡小馒头为你收集整理的基于STM32F407VGT6的ESP8266接入阿里云教程(详细)1 阿里云平台2 MQTT.fx接入阿里云3 ESP8266接入阿里云的全部内容,希望文章能够帮你解决基于STM32F407VGT6的ESP8266接入阿里云教程(详细)1 阿里云平台2 MQTT.fx接入阿里云3 ESP8266接入阿里云所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复