|
引言:
本文介绍如何通过 AT 指令对接阿里云 IoT 物联网平台。
背景:
当前阿里云IoT物联网平台支持三种MQTT方式接入阿里云,分别是:
●MQTT 基于设备秘钥认证方式(包括一机一密,一型一密,子设备动态注册)
●MQTT 基于 ID(2) 认证方式
●MQTT 基于 X.509 证书认证方式
本文以 AT+MQTT 基于设备秘钥认证方式,展示一机一密具体过程。
准备:
获取MQTT连接所需的参数:
●ClientID:设备详情-MQTT连接参数
●username:设备详情-MQTT连接参数
●passwd:设备详情-MQTT连接参数
●port:设备详情-MQTT连接参数
●ProductKey:设备详情页面-DeviceSecret
1. 创建产品与设备
参考文档:阿里云物联网平台文档中心
前提条件
开通物联网平台服务,请参见阿里云免费试用的物联网平台产品
1.1 创建产品
a. 登录物联网平台控制台。
b. 在控制台左上方,选择物联网平台所在地域,如图1.1。
c. 在实例概览页签的全部环境下,找到对应的实例,单击实例卡片,如图1.1。
图1.1
重要:目前华东2(上海)、新加坡、日本(东京)、美国(弗吉尼亚)、美国(硅谷)和德国(法兰克福)地域支持公共实例服务。
d. 在左侧导航栏,选择设备管理-产品,单击创建产品,如图1.2。
图1.2
e. 单击新建产品页签选择不同方式创建产品。如图1.3
图1.3
1.2 获取设备证书
设备详情页面,单击DeviceSecret右侧查看,获取设备证书。
1.3 获取MQTT连接参数值
设备详情页面,单击MQTT连接参数查看
1.4 参数整理
2. 激活设备
2.1 AT流程(蓝色标注参数,需要替换)
2.1.1 连接AP
AT+CWMODE=1 //设置Wi-Fi模式为sta
AT+CWJAP="SSID","password" //连接AP
2.1.2 同步时间
AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"
2.1.3 设置用户属性
AT+MQTTUSERCFG=<LinkID>,<scheme>,<"client_id">,<"username">,<"password">,<cert_key_ID>,<CA_ID>,<"path">
2.1.4 配置 MQTT 客户端 ID
AT+MQTTCLIENTID=0,"clientID" //注意从clientID中第二个参数开始,参数后、“,”前要加 “/”
2.1.5 连接/查询 MQTT Broker
AT+MQTTCONN=0,"YourProductKey.iot-as-mqtt.YourRegionId.aliyuncs.com",1883,1
YourRegionId:请参见支持的地域,替换为您的Region ID
2.2 示例
AT+CWMODE=1
ok
AT+CWJAP="WB81","12345678"
WIFI CONNECTED
WIFI GOT IP
ok
AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"
ok
AT+CIPSNTPTIME?
+CIPSNTPTIME:Thu Jan 1 08:02:46 1970
OK
AT+MQTTUSERCFG=0,1,"NULL","device1&h2vquBI414s","f0fae766b2e484c67************************ee8cbaa3588fba36483a585",0,0,""
ok
AT+MQTTCLIENTID=0,"h2vquBI414s.device1|securemode=2\,signmethod=hmacsha256\,timestamp=17*****044484|"
ok
AT+MQTTCONN=0,"h2vquBI414s.iot-as-mqtt.cn-shanghai.aliyuncs.com",1883,1
+MQTTCONNECTED:0,1,"h2vquBI414s.iot-as-mqtt.cn-shanghai.aliyuncs.com","1883","",1
OK
设备在线
3. 发布订阅
3.1 创建&确认Topic
在【设备管理】—【产品】找到添加的产品单击(示例中是“wifi-WB81”),然后在【Topic类列表】—【自定义Topic】下选择【定义Topic类】可以根据需求创建 Topic,也可以确认Topic如图3.1
图3.1 自定义Topic
自定义的 Topic 方便后续数据的上传及下发,而无需查询官方设定 Topic。
3.2 云下发信息
3.2.1 模组订阅
在模组侧订阅已创建好的 ToTopic。
AT+MQTTSUB=<LinkID>,<"topic">,<qos>
AT+MQTTSUB=0,"/h2vquBI414s/device1/user/get",1
3.2.2 云发布
在【设备管理】-【设备】中找到添加的设备单击(示例中是"device1"),然后在【Topic列表】发布消息如图3.2
图3.2 云发布消息
模组端收到消息打印如下图3.3
图3.3 接收到云消息打印
3.3 模组发送数据
AT+MQTTPUB=<LinkID>,<"topic">,<"data">,<qos>,<retain>
AT+MQTTPUB=0,"/h2vquBI414s/device1/user/update","hello\, aliyun!",1,0
发送成功后,即可以在阿里云平台侧查看收到的信息如图3.4。同时也支持发送 HEX 数据只需要在“内容”处将接收文本格式改为“HEX”
图3.4 云平台侧收到信息 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|