引言
最近正在学习 ESP32 联网操作,由于阿里云的物联网在 2025-2-1 就已经停止了 IoT 服务,然后腾讯云个人 IoT 服务购买有点小贵,所以就找到了个人免费的华为云 IoT 服务,网上的资料也相对较少,故写篇随笔记录。
在用 ESP32 连接之前,先用 mqtt.fx 调试华为云物联网 IoT,用于熟悉所需的参数。
一、购买 IoT 实例
因为个人是免费的,所以标准版购买个三年也是没问题。
二、MQTT.fx 桌面客户端接入
MQTT.fx 为桌面端 MQTT 客户端工具,用来调试、测试 MQTT 服务器 / 物联网平台。
下载
下载 MQTT.fx(默认是64位操作系统,如果是32位操作系统,单击此处下载 MQTT.fx),安装 MQTT.fx 工具
三、官方 MQTT.fx 用户指南
无论是使用开发板连接连接还是用 MQTT.fx 连接调试,指南中的产品和设备创建是必须的,一步步跟着配置即可,还是非常详细的。
=>【设备接入 IoTDA 用户指南】在线开发MQTT协议的模拟智慧路灯 有设备 -> 更多 -> 获取连接参数,得到下图
方法二:访问此处填写注册设备后生成的设备 ID(DeviceId)和密钥(DeviceSecret),生成连接信息(ClientId、Username、Password)
2. 连接鉴权
将以上连接信息填入设置中,端口使用默认的 1883 即可。
3. 调试
数据上报
填写接口地址$oc/devices/{device_id}/sys/properties/report {device_id} 需填写为设备注册成功后返回的 deviceId 值。
所有设备中点击设备的标识码打开此页面。
在 MQTT.fx 中输入接口地址后,发送代码,即可看到如下光照强度发生了变化:- {
- "services": [{
- "service_id": "BasicData",
- "properties": {
- "luminance": 100
- }
- }
- ]
- }
复制代码
命令下发
同样的,填写接口地址:$oc/devices/{device_id}/sys/commands/#,其中 {device_id} 为设备注册成功后返回的 deviceId 值。
如图MQTT.fx中点击 Subscribe 订阅后进行下发命令,即可在 MQTT.fx 收到对应命令:
下发命令
接收命令
回复响应
下行 Topic 里的 request_id 是什么,响应 Topic 就必须原样带上!
假如接收到的是:- Topic: $oc/devices/{device_id}/sys/commands/request_id=1234
- 数据格式:
- {
- "paras" : {
- "value" : "ON"
- },
- "service_id" : "LightControl",
- "command_name" : "value"
- }
复制代码
那么就需要在 Publish 中发布:- Topic:$oc/devices/{device_id}/sys/commands/response/request_id=1234
- 数据格式:
- {
- "result_code": 0,
- "response_name": "COMMAND_RESPONSE",
- "paras": {
- "result": "success"
- }
- }
复制代码
下发流程完成
博客导航
博客导航
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |