查看: 600|回复: 4

[阿里云IoT] 【阿里云IoT套件使用教程3】将ESP32接入物联网平台

[复制链接]
本帖最后由 wuji 于 2019-4-9 10:02 编辑

将ESP32接入物联网平台
   
       前一章节介绍了如何在物联网平台上创建产品和设备,本节讲述了如何将真实设备连接到阿里云IoT平台上。
       以连接在ESP32上的LED为例,要将LED设备连接到物联网平台,即将ESP32接入物联网,需要做如下步骤:
              1.  在物联网平台上创建相应的产品和设备;
              2.  将ESP32接入互联网(WiFi);(LED灯需借助ESP32的WiFi功能接入互联网
              3.  从物联网平台获取设备的设备证书、域名、端口号等连接信息。

所需材料

ESP32接入
    在开始之前,先下载阿里云IoT入门套件库文件及样例代码,下载页面:http://www.dfrobot.com.cn/goods-1896.html
1.在物联网平台上创建相应的产品和设备
       在物联网平台上创建产品和设备。创建的具体操作,请参考前面章节产品及设备创建,这里就不多说了。
2.将ESP32接入互联网
       LED灯连接到ESP32的D2数字口,只需将ESP32主控通过WiFi连接到互联网即可。代码如下 :
       #include <WiFi.h>

       /*配置WIFI名和密码*/
       const char * WIFI_SSID     = "WIFI_SSID";
       const char * WIFI_PASSWORD ="WIFI_PASSWORD";

       void connectWiFi(){
            Serial.print("Connecting to ");
            Serial.println(WIFI_SSID);
            WiFi.begin(WIFI_SSID,WIFI_PASSWORD);
            while(WiFi.status() != WL_CONNECTED){
                 delay(500);
                 Serial.print(".");
            }
           Serial.println();
           Serial.println("WiFi connected");
           Serial.print("IP Adderss: ");
           Serial.println(WiFi.localIP());
     }
3.从物联网平台获取设备的设备证书、域名、端口号等连接信息
        首先,进入物联网平台。

       (1)设备证书信息获取
        有2种获取方式:I.项目外获取;II.项目内获取
         I.项目外获取。选择设备管理->设备,在设备列表找到某一设备,点击查看按钮,即可进入设备详情页,在该页的设备信息栏,即可看到ProductKey、DeviceName、DeviceSecret等设备信息,如下图所示:

1.png

        II.项目内获取。进入某个项目(例:物联网管理项目)。选择设备管理->设备,进入设备管理页面,在设备列表找到某一设备(如lamp),点击激活凭证查看,即可看到ProductKey、DeviceName、DeviceSecret等设备信息,点击激活凭证如下图所示:

2.png

    在设备管理页面,点击查看进入设备详情页,如下图所示:

3.png

        设备ID:可自定义,64字符以内,如ClientId= "12345"。

       (2)域名获取
        格式:iot-as-mqtt.region.aliyuncs.com
        region需替换为物联网平台服务所在地域的代码。地域代码,请参考地域和可用区。这里的域名是指产品及设备所创建的地域,默认为华东2(上海),如下图所示:

4.png

        华东2(上海)的Region ID为cn-shanghai,可以用下列代码表示:
        String ALIYUN_SERVER = "iot-as-mqtt.cn-shanghai.aliyuncs.com";
        若在新加坡创建产品,则为iot-as-mqtt.ap-southeast-1.aliyuncs.com

       (3)端口号获取
        默认端口号为1883,通用。
        uint16_t PORT = 1883;


    将获取到的WiFi名和密码,设备证书信息,域名和端口号信息写入DF提供的demo中,即可MQTT连接成功。此时,你会看到设备处于在线状态。

6.png

注意:MQTT连接失败原因:
       1.  设备证书信息、域名、端口号填写错误;
       2.  从别的地方下载了pubsubclient文件,在PubSubClient.h文件中未修改如下所示信息:
5.png
在这一步,只是完成了物理设备连接上阿里云IoT,若要实现通信,还需设置一些参数,下一节会简单的介绍如何实现物理设备同阿里云IoT平台之间的通信。

rzyzzxw  版主

发表于 2019-4-9 10:57:20

本帖最后由 rzyzzxw 于 2019-4-9 11:06 编辑

等您下一篇。
您有时间写一个用mind+图形化和阿里云,掌控板物联的教程吧,搞了几天,一直没有成功。我现在能连接上设备,却不能通信。
回复 支持 反对

使用道具 举报

rzegkly  版主

发表于 2019-4-9 14:17:10

很好的物联网教程,学习下
回复 支持 反对

使用道具 举报

gada888  版主

发表于 2019-4-9 14:52:18

详尽的教程步骤
回复 支持 反对

使用道具 举报

龙神ldy  学徒

发表于 昨天 17:09

应用六:智能门锁 这块你们 门锁的接线图 有吗。就差这个 了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2019 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail