Close Menu
    Facebook X (Twitter) Instagram
    Facebook YouTube LinkedIn
    Industry SurferIndustry Surfer
    Inicio - Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT
    Cursos

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    12 Mins Read Cursos
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT
    Share
    Facebook Twitter LinkedIn Pinterest Email


    Tabla de contenido

    • resumen
    • Configuración de hardware
    • ¿Qué es Amazon AWS IoT Core?
    • Introducción a Amazon AWS IoT Core con ESP32
      • Inicia sesión
      • Panel de AWS IoT Core
      • Creando cosas
      • Especificación de propiedades Things
      • Generar un certificado de dispositivo
      • Crear y adjuntar política
      • Descargar certificados y claves
    • Instalación de las bibliotecas de Arduino necesarias
      • 1. Biblioteca JSON de Arduino
      • 2. Publicar biblioteca de subclientes
      • 3. Biblioteca de sensores DHT11
    • Código fuente/programa para conectar AWS IoT Core y ESP32
      • Archivo .ino principal
      • secret.h
      • Cambiar el boceto de Arduino según la cosa
    • Probar los datos de publicación y las suscripciones
      • Suscripción a AWS Dshboard para datos de sensores
      • Publicación de datos en un monitor serie
    • Video Tutorial y Guía

    resumen

    Este es un tutorial introductorio Servicios web de AmazonEs decir AWS IoT Core Y ESP32. AWS IoT Core está administrado. Servicios en la nube Le permite operar dispositivos conectados de manera fácil y segura Aplicaciones en la nube y otros dispositivos.

    En este tutorial, aprenderá cómo conectarse. ESP32 con AWS IoT Core y publicar lecturas de sensores AWS MQTTEn la demostración, Sensor DHT11 Lea los datos de humedad y temperatura. El ESP32 se conecta a la red WiFi local y envía los datos del sensor DHT11 a Nube de AWS IoTAdemás de publicar datos, también puede recibir datos de paneles de AWS. Anteriormente, solíamos publicar datos de sensores en el panel de AWS. AWS IoT Core y ESP8266.

    Este tutorial se divide en varias secciones

    • Registro y configuración de Amazon Web Services
    • Instalación requerida biblioteca IDE de Arduino y escribir un boceto de Arduino para el proyecto
    • Creación de un cosa es AWS.
    • creación política Adjuntar a una cosa
    • generación Certificado
    • Modifique Arduino Sketch de acuerdo con los datos y credenciales de la cosa
    • subscribir & escribir Datos hacia y desde paneles de AWS

    Este tutorial es para principiantes que quieren aprender. Núcleo de IoT de Amazon AWS para Aplicaciones de IoTAnteriormente, aprendimos sobre plataformas de IoT como: Google Firebase Y Arduino IoT CloudSin embargo, puede utilizar AWS IoT Core para crear y administrar dispositivos para aplicaciones comerciales.


    Configuración de hardware

    El hardware necesario para este proyecto es el módulo ESP32 Wifi. Además, se utiliza un sensor de humedad y temperatura DHT11 para la parte del sensor.

    Conecte el sensor DHT11 a la placa ESP32 de acuerdo con este esquema.

    ESP32 DHT11

    Puede usar una placa de pruebas o un cable conector macho a hembra para la conexión.


    ¿Qué es Amazon AWS IoT Core?

    AWS proporciona servicios y soluciones de Internet de las cosas (IoT) para conectar y administrar miles de millones de dispositivos. Estos servicios en la nube conectan dispositivos IoT con otros dispositivos y servicios en la nube de AWS. AWS IoT proporciona software de dispositivo para ayudarle a integrar dispositivos IoT en soluciones basadas en AWS IoT. Si su dispositivo puede conectarse a AWS IoT, AWS IoT puede conectar su dispositivo a los servicios en la nube proporcionados por AWS.

    ¿Qué es AWS IoT?

    Con AWS IoT, puede elegir la tecnología más adecuada y moderna para su solución. Para ayudarle a administrar y admitir dispositivos IoT en el campo, AWS IoT Core admite los siguientes protocolos:

    • MQTT (Message Queue Server y transporte de telemetría)
    • MQTT sobre WSS (Websockets Secure)
    • HTTPS (Protocolo de transferencia de hipertexto – Seguro)
    • LoRaWAN (Red de área amplia de largo alcance)

    Introducción a Amazon AWS IoT Core con ESP32

    Comenzar a utilizar AWS IoT Core es muy fácil. Para configurar correctamente su placa ESP32 y comenzar con su primer proyecto, siga los pasos a continuación.


    Inicia sesión

    Vaya a su navegador web y búsquelo visitando el siguiente enlace: aws.amazon.com/iot-core/.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Básicamente, debe configurar su cuenta de AWS ahora. Por lo tanto, cree una cuenta con su ID de correo electrónico y contraseña. Su cuenta también requerirá la información de su tarjeta de crédito bancaria. No hay cargo, pero AWS requiere verificación mediante una cuenta bancaria. También se te pedirá que verifiques tu número de teléfono. Por lo tanto, la cuenta se ha creado correctamente.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT


    Panel de AWS IoT Core

    Después de iniciar sesión correctamente, se abre la ventana de la Consola de administración de AWS. Escriba “IoT Core” en la pestaña de búsqueda de servicios en la parte superior y presione Entrar.

    Panel de AWS IoT Core

    Haga clic en IoT Core para ver el panel de AWS IoT.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    En el lado izquierdo del tablero, hay muchas opciones. Sin embargo, aquí debe usar dos opciones. Una es control Opción y la otra es cárcel Opción.


    Creando cosas

    Ahora necesitamos crear un thiNG relacionado con nuestro proyecto. Para ello, siga estos pasos:

    • Especificación de propiedades Things
    • Configurar certificados de dispositivo
    • Adjuntar una directiva a un certificado

    Haga clic en Cosa en Administrar opciones. A continuación, necesitas crear una cosa aquí. Entonces, haga clic en Crear cosas aquí.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Puede elegir crear una sola cosa o varias cosas. Sin embargo, en la solicitud,[1 つのものを作成する]Escoger próximo[次へ]Clic.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT


    Especificación de propiedades Things

    Aquí debe especificar la propiedad Thing. Primero, dale un nombre a la cosa. Puedes nombrarlo cualquier cosa. Por ejemplo, nombre ESP32_DHT11.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Para una configuración adicional, no se requieren cambios.

    En la opción Device Shadow, seleccione Sin sombra como primera opción. próximo[次へ]Clic.


    Generar un certificado de dispositivo

    A continuación, debe configurar el certificado del dispositivo. Por lo tanto, aquí puede generar automáticamente un nuevo certificado, usar su propio certificado, cargar una CSR u omitir esto.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Sin embargo, la recomendación de AWS es elegir generar automáticamente un nuevo certificado. próximo[次へ]Clic.


    Crear y adjuntar política

    A continuación, debe adjuntar una política a la que creó. Pero actualmente no hay una política aquí. Por lo tanto, primero debe crear una directiva.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    por consiguiente[ポリシーの作成]Clic. Aquí, asigne cualquier nombre a la política. Por ejemplo, asígnele el nombre siguiente “ESP32_Policy“.

    Aquí es donde la parte de la instrucción add es muy importante. En Acciones, escriba IoT. Por lo tanto, aparecerán múltiples opciones. Desde aquí, solo necesita publicar, suscribirse, conectarse y recibir.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    próximo[作成]para crear una directiva. Ahora ha creado correctamente la directiva.

    próximo[モノの作成]Vuelve a Opciones. Por lo tanto, verá las opciones de directiva. Debe adjuntar una directiva al certificado. Por lo tanto, seleccione la directiva mostrada y haga clic en[モノの作成]Clic.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT


    Descargar certificados y claves

    A continuación, debe descargar el certificado requerido de esta lista.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Al principio Certificados de dispositivo A continuación, cámbiele el nombre como certificado de dispositivo para su identificación.

    Además, descargar Clave pública Cámbiele el nombre como clave pública. próximo Clave privada Cambie el nombre y cambie a clave privada.

    El certificado de CA raíz tiene dos certificados aquí. Pero solo necesitamos Certificado CA1 raíz, descárgalo también.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Por lo tanto, descargamos todos los certificados necesarios para el proyecto.


    Instalación de las bibliotecas de Arduino necesarias

    1. Biblioteca JSON de Arduino

    Así que primero vaya al Administrador de bibliotecas, busque “JSON” e instale la biblioteca como se muestra en la imagen de abajo.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT


    2. Publicar biblioteca de subclientes

    Vaya al Administrador de bibliotecas nuevamente, busque “PubSubClient” e instale la biblioteca de Nick O’Leary.

    Biblioteca PubSubClient


    3. Biblioteca de sensores DHT11

    Busque “dht11” e instale la biblioteca de la siguiente manera:

    Biblioteca DHT11


    Código fuente/programa para conectar AWS IoT Core y ESP32

    Código/Programa Interfaz entre los sensores ESP32 y DHT11 y se conecta a Núcleo de IoT de Amazon AWS Escrito en IDE Arduino. El código se divide en dos secciones. Uno es el archivo ino principal y el otro es el archivo de cabecera.


    Archivo .ino principal

    Abra un nuevo boceto en el IDE de Arduino, pegue el siguiente código y guárdelo.

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    43

    44

    45

    46

    47

    48

    49

    50

    51

    52

    53

    54

    55

    56

    57

    58

    59

    60

    61

    62

    63

    64

    65

    66

    67

    68

    69

    70

    71

    72

    73

    74

    75

    76

    77

    78

    79

    80

    81

    82

    83

    84

    85

    86

    87

    88

    89

    90

    91

    92

    93

    94

    95

    96

    97

    98

    99

    100

    101

    102

    103

    104

    105

    106

    107

    108

    109

    110

    111

    112

    113

    114

    115

    116

    #include “Secret.h”

    #include <WiFiClientSecure.h>

    #include <PubSubClient.h>

    #include <ArduinoJson.h>

    #include “WiFi.h”

    #include “DHT.h”

    #define Pin digital conectado a DHTPIN 14 // Sensor DHT

    #define DHT Tipo DHT11 // DHT 11

    #define AWS_IOT_PUBLISH_TOPIC “ESP32/pub”

    #define AWS_IOT_SUBSCRIBE_TOPIC “ESP32/SUB”

    flotar h ;

    flotar t;

    Teletipo Teletipo(Teletipo, Tipo AJC);

    Cliente WiFi seguro red = Cliente WiFi seguro();

    Subcliente de pub cliente(red);

    No válido Conecte AWS()

    {

    LAN inalámbrica.modo(WIFI_STA);

    LAN inalámbrica.empezar(WIFI_SSID, WIFI_PASSWORD);

    serial.Printrung(“Conectarse a Wi-Fi”);

    mientras (LAN inalámbrica.posición() != WL_CONNECTED)

    {

    demorar(500);

    serial.Impresión(“.”);

    }

    Configuración de WiFiClientSecure para utilizar credenciales de dispositivo de AWS IoT

    red.setCACert(AWS_CERT_CA);

    red.Establecer certificado(AWS_CERT_CRT);

    red.Establecer clave secreta(AWS_CERT_PRIVATE);

    Conéctese al agente MQTT para el punto de enlace de AWS que definió anteriormente

    cliente.Establecer servidor(AWS_IOT_ENDPOINT, 8883);

    Crear un controlador de mensajes

    cliente.Establecer devoluciones de llamada(Controladores de mensajes);

    serial.Printrung(Conexión a AWS IoT);

    mientras (!cliente.conectar(Nombre de la cosa))

    {

    serial.Impresión(“.”);

    demorar(100);

    }

    Si (!cliente.conexión())

    {

    serial.Printrung(¡Tiempo de espera de AWS IoT!);

    devolución;

    }

    Suscribirse a un tema

    cliente.subscribir(AWS_IOT_SUBSCRIBE_TOPIC);

    serial.Printrung(「¡AWS IoT conectado!」);

    }

    No válido Publicar un mensaje()

    {

    Documentación estática de Json<200> …doc;

    …doc[“humidity”] = h;

    …doc[“temperature”] = t;

    chamuscar jsonBuffer[512];

    Serialización Json(…doc, jsonBuffer); Salida al cliente

    cliente.escribir(AWS_IOT_PUBLISH_TOPIC, jsonBuffer);

    }

    No válido Controladores de mensajes(chamuscar* tema, byte* carga útil, Unsigned entero largura)

    {

    serial.Impresión(“Entrante: “);

    serial.Printrung(tema);

    Documentación estática de Json<200> …doc;

    Deserialización Json(…doc, carga útil);

    constante chamuscar* Mensaje = …doc[“message”];

    serial.Printrung(Mensaje);

    }

    No válido arreglo()

    {

    serial.empezar(115200);

    Conecte AWS();

    Teletipo.empezar();

    }

    No válido bucle()

    {

    h = Teletipo.Leer humedad();

    t = Teletipo.Temperatura de lectura();

    Si (Isnan(h) || Isnan(t) ) Compruebe si la lectura falló y salga temprano (para intentarlo de nuevo).

    {

    serial.Printrung(F(“¡No se pudo leer desde el sensor DHT!”));

    devolución;

    }

    serial.Impresión(F(“Humedad: “));

    serial.Impresión(h);

    serial.Impresión(F(“% Temperatura: “));

    serial.Impresión(t);

    serial.Printrung(F(“°C”));

    Publicar un mensaje();

    cliente.bucle();

    demorar(1000);

    }


    secret.h

    Abra una nueva pestaña en el IDE de Arduino y asígnele el nombre Secrets.h. Y pegue el siguiente código en este archivo:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    #include <pgmspace.h>

    #defineシークレット

    #define Nombre de la cosa “********” // Cambiar esto

    constante chamuscar WIFI_SSID[] = “***************”; Cambiar esto

    constante chamuscar WIFI_PASSWORD[] = “***************”; Cambiar esto

    constante chamuscar AWS_IOT_ENDPOINT[] = “***************”; Cambiar esto

    CA raíz de Amazon 1

    estático constante chamuscar AWS_CERT_CA[] Programa = R“EOF(

    —– iniciar el certificado—–

    —–Terminación del certificado—–

    )EOF”;

    Certificados de dispositivo Cambiar esto

    estático constante chamuscar AWS_CERT_CRT[] Programa = R“clave(

    —– iniciar el certificado—–

    —–Terminación del certificado—–

    ) clave”;

    Secreto del dispositivo // Cambiar esto

    estático constante chamuscar AWS_CERT_PRIVATE[] Programa = R“clave(

    —– inicia la clave privada RSA—–

    —–Terminación de clave privada RSA—–

    ) clave”;


    Cambiar el boceto de Arduino según la cosa

    A continuación, modifique el archivo de boceto de Arduino. Ir secret.h Haga clic en la pestaña para iniciar el cambio.

    Debes incluir el nombre de la cosa aquí. Puede copiar el nombre de un objeto en la sección de objetos de la consola de AWS.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Pegue el nombre del objeto en la siguiente línea de código:

    #define Nombre de la cosa “******”

    [WiFi SSID]y[パスワード], introduzca el SSID de WiFi y la contraseña de su red local.

    constante chamuscar WIFI_SSID[] = “***************”;

    constante chamuscar WIFI_PASSWORD[] = “***************”;

    A continuación, debe insertar un punto de enlace de AWS IoT aquí. Para obtener el punto de enlace, vaya a la parte de configuración del panel de AWS. Yow obtiene el punto final.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Haga clic en el icono de copia para copiar el punto de enlace. Vuelva al IDE de Arduino y péguelo en la siguiente línea:

    constante chamuscar AWS_IOT_ENDPOINT[] = “***************”;

    Debe insertar el CA1 raíz de Amazon entre las siguientes líneas:

    CA raíz de Amazon 1

    estático constante chamuscar AWS_CERT_CA[] Programa = R“EOF(

    —– iniciar el certificado—–

    —–Terminación del certificado—–

    )EOF”;

    Por lo tanto, para ello tendremos que volver al certificado que hemos descargado previamente. Abra este archivo en Notepad ++ y copie todo el texto.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Luego regrese al IDE de Arduino e inserte el texto copiado entre los certificados de inicio y fin.

    「Devic eCertificate, debe pegar el texto del certificado del dispositivo. Allí, abra el archivo de certificado de dispositivo que descargó anteriormente. A continuación, copie el texto de nuevo y péguelo entre las secciones de certificado inicial y final del certificado.

    Certificados de dispositivo

    estático constante chamuscar AWS_CERT_CRT[] Programa = R“. ..KEY(

    —–empezar certificado—–

    —–Fin certificado—–

    「Clave secreta del dispositivo, debe insertar la clave privada del dispositivo. Así que vaya a la carpeta descargada nuevamente y use Notepad ++ para abrir el archivo de clave privada en su dispositivo. Copie el texto de nuevo y péguelo entre las partes inicial y final.

    Clave secreta del dispositivo

    estático constante chamuscar AWS_CERT_PRIVATE[] Programa = R“. ..KEY(

    —–empezar Teletipo privado . ..KEY—–

    —–Fin Teletipo privado . ..KEY—–

    Por lo tanto, todas las modificaciones del boceto de Arduino ESP32 relacionadas con AWS IoT Core están completas.


    Probar los datos de publicación y las suscripciones

    Una vez realizados todos los cambios, conecte el ESP32 al ordenador. Luego vaya a la herramienta que está utilizando para este proyecto y seleccione la placa ESP32. Además, seleccione el puerto COM. Luego haga clic en la opción de carga para cargar el código en la placa ESP32.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Una vez que el código haya terminado de cargarse, abra el monitor serie. El ESP32 intentará conectarse a la red WiFi. Cuando está conectado a una red WiFi, intenta conectarse a un servidor de AWS IoT.

    Amazon AWS IoT Core ESP32

    Los valores de humedad y temperatura se muestran en el monitor serie.


    Suscripción a AWS Dshboard para datos de sensores

    También debe publicar lo mismo en el servidor de AWS. Para comprobarlo, vaya a la sección de pruebas del panel de AWS. En la sección de prueba, tiene la opción de suscribirse y publicar.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Para ver los datos, debe suscribirse a un tema. Para ese tipo “ESP32/Pub“ [トピック フィルター]sección. Para configuraciones adicionales, puede realizar cambios según sea necesario.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    próximo[サブスクライブ]Clic. Pulse el botón de suscripción y los datos del ESP32 se cargarán inmediatamente en el panel de AWS. Por lo tanto, ha enviado correctamente los datos del sensor DHT11 a Amazon AWS IoT Core mediante ESP32.

    Amazon AWS IoT Core ESP32

    Los datos se actualizan cada 1 segundo. Esto es realmente genial porque puede recibir datos en el panel central de AWS IoT enviados desde ESP32 a través del protocolo MQTT. Así es como puede leer los datos suscritos.


    Publicación de datos en un monitor serie

    Ahora veamos si puede exponer datos de AWS IoT Core a ESP32.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Para ver los datos, debe publicar en un tema. Para ese tipo “ESP32/Submarino“ [トピック フィルター]sección. Ninguna configuración adicional hace nada. próximo[公開]Clic.

    Puede ver inmediatamente el mensaje enviado al monitor serie. Esto también es increíble. Con este método, puede: Controlar los LEDs Utilice el método de publicación.

    Conexión del ESP32 a Amazon AWS IoT Core mediante MQTT

    Así es como puedes Transmisión o Recibir Datos de Núcleo de IoT de Amazon AWS uso ESP32.uso AWS MQTT, puede suscribirse a varios temas de lectura de sensores Nodos IoTEste es un tutorial básico para principiantes para usuarios que desean comenzar. Servicios web de Amazon Para ellos Dispositivos IoT.


    Video Tutorial y Guía

    Introducción a Amazon AWS IoT Core con ESP32 ||Creación de una cosa, política y certificado

    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email

    Entradas relacionadas

    circuito capacitivo de ca

    circuito inductivo ca

    ¿Cómo probar un diodo? Uso de multímetros analógicos y digitales (DMM)

    Entradas recientes
    ¿Qué es el campo magnético y cómo funciona?
    circuito capacitivo de ca
    circuito inductivo ca
    ¿Cómo probar un diodo? Uso de multímetros analógicos y digitales (DMM)
    Noticias industrial
    ¿Qué es el campo magnético y cómo funciona?
    circuito capacitivo de ca
    circuito inductivo ca
    ¿Cómo probar un diodo? Uso de multímetros analógicos y digitales (DMM)
    Facebook YouTube LinkedIn
    © 2025 Hecho con ♥ desde México

    Type above and press Enter to search. Press Esc to cancel.

    Ir a la versión móvil