使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

06-13 1084阅读

一、ESP8266烧录固件

        由于要连接阿里云平台要使用到相关MQTT AT指令,而我们所购买的ESP8266模块都带了乐鑫官方的AT固件,发送与MQTT相关的AT指令均会返回ERROR。因此需要给ESP8266升级固件。

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

烧录固件参考:ESP8266如何使用MQTT协议连接阿里云平台-CSDN博客,需注意必须使用数据线,当数据线将esp8266与电脑usb连接后需能检测到COM口。(小编开始用的三合一数据线无法检测到COM口)

二、阿里云物联网平台产品及设备的创建

        在浏览搜索阿里云并登录,在首页面选择产品-物联网-物联网平台即可进入物联网平台。

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

进入物联网平台后选择管理控制台

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

激活并进入公共实例

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

进入公共实例后选择设备管理-产品-创建产品

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

产品名称任意,所属品类为自定义品类,节点类型、连网方式、数据格式保持默认。然后确认

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

然后点击产品,找到对应的产品名称然后查看

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

点击功能定义-前往编辑草稿

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

第一步选择添加自定义功能,第二部按照自己的需求填写自定义功能的参数并确认,第三步发布上线(在弹窗中打勾并确认)

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

 然后点击设备-添加设备,选取自己创建的产品名称,DeviceName按自己需求填写,然后确认并完成。

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

三、连接阿里云平台

        通过ESP8266连接阿里云平台需要发送以下的AT指令,wi-fi名密码根据自己所连WiFi确认

AT+RST                       //重启模块
AT+CWMODE=1                  // 设置为Station 模式
AT+CWJAP="Wi-fi名","密码"    //连接Wi-fi
AT+MQTTUSERCFG=0,1,"NULL","username","passwd",0,0,"" 
                            //配置MQTT用户属性
AT+MQTTCLIENTID=0,"clientId"                     
                            //设置 MQTT 客户端 ID,"clientId"参数需在每一个逗号前加/
AT+MQTTCONN=0,"mqttHostUrl",1883,1
                            //连接 MQTT Broker

其中的username、passwd、clientId及mqttHosturl参数在设备-设备信息-MQTT连接参数中找到

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

使用串口助手发送响应的AT指令

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

发送完上述AT指令后设备成功在线

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

四、阿里云实现数据的收发

        4.1 阿里云实现数据的接收

通过MQTT协议收发数据需要配置相应的topic,可以在产品-Topic类列表-物模型通信Topic中进行查看。选择设备属性设置(订阅Topic)与设备属性上报(发布Topic)。需注意其中的${deviceName}需改为设备名称。

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

对应的MQTT上传数据的订阅与发布命令为:

AT+MQTTSUB=0,"订阅Topic类",1              //订阅 MQTT Topic
AT+MQTTPUB=0,"发布Topic类","数据",1,0     //发布 MQTT 消息(字符串)
使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

在设备-物模型数据可以看到上传的数据

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

        4.2 阿里云实现数据的发送

                4.2.1自定义Topic发送数据

        在产品-Topic类列表-自定义Topic中找到订阅Topic

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

        发送相应的订阅Topic的AT指令

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

        在设备-Topic列表下,选择发布消息

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

        填写消息内容,点击确认。串口助手会接收到数据。

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

                4.2.2在线调试发送数据

          在监控运维-在线调试中选取相应的设备,然后输入参数点击设置,即可发送数据。

使用ESP8266连接阿里云并实现数据的收发(完整版)(不涉及单片机仅为连接单片机前的调试工作)

AT指令参链接:MQTT AT Commands — ESP-AT 用户指南 文档 (readthedocs-hosted.com)

VPS购买请点击我

文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

目录[+]