Algunas partes de este sitio web aún no están disponibles en su idioma. Estamos trabajando para solucionar esto y nos disculpamos por cualquier inconveniente.
Tutorial de ESP32 50/55 - Controla el LED RGB desde cualquier lugar del mundo | Kit ESP32 de SunFounder
En este tutorial, aprenderemos cómo controlar el color de un LED RGB utilizando el microcontrolador ESP32 a través de Wi-Fi, utilizando el protocolo MQTT y el servicio Adafruit IO. Esta configuración te permite cambiar el color del LED RGB desde cualquier parte del mundo, proporcionando una aplicación práctica de la tecnología IoT. También exploraremos cómo usar deslizadores y un selector de color para elegir el color deseado.
esp32-50-led-rgb-mqtt-principal
El ESP32 es un microcontrolador potente que tiene capacidades de Wi-Fi y Bluetooth integradas, lo que lo hace ideal para proyectos de IoT. En esta construcción, conectaremos un LED RGB al ESP32 y controlaremos su color a través de un broker MQTT proporcionado por Adafruit. El tutorial te guiará a través de la configuración del hardware, las instrucciones de cableado y el código necesario para que todo funcione sin problemas (en el video a :00).
Hardware Explicado
esp32-50-RGB-ledesp32-50-RGB-led
Para este proyecto, los componentes principales que utilizaremos son el microcontrolador ESP32 y el LED RGB. El ESP32 es capaz de conectarse a redes Wi-Fi, lo que le permite comunicarse con el servicio Adafruit IO. El LED RGB contiene tres LEDs individuales (rojo, verde y azul) que se pueden mezclar para crear una amplia gama de colores.
El LED RGB opera bajo un principio de ánodo común o cátodo común, lo que significa que el ánodo (positivo) o el cátodo (negativo) de los LED individuales deben estar conectados correctamente para que funcionen. Cada color se puede controlar utilizando Modulación por Ancho de Pulso (PWM), que ajusta el brillo de cada LED variando el ciclo de trabajo.
ES32-38_RGB_LED-conexión
Detalles de la hoja de datos
Fabricante
SunFounder
Número de pieza
LED RGB
Voltaje de avance (V)F)
2.0-3.4 V
Corriente de avance (IF)
20 mA
Longitud de onda pico (nm)
Rojo: 620, Verde: 525, Azul: 465
Paquete
Conector estándar de 4 pines
Notas / variantes
Opciones de ánodo común o cátodo común disponibles.
Utiliza resistencias de 220 ohmios para cada color de LED para limitar la corriente.
Asegúrese de la correcta conexión para una configuración de ánodo o cátodo común.
Verifique la fuente de alimentación del ESP32 para evitar caídas de tensión.
Mantenga la frecuencia PWM dentro de los límites para transiciones de color suaves.
Asegúrate de que las credenciales de Wi-Fi sean correctas para conectar al servicio Adafruit IO.
Instrucciones de cableado
ES32-38_RGB_LED-wiring
Para conectar el LED RGB al ESP32, comienza identificando los pines del LED RGB. El pin más largo es el pin común. Para una configuración de ánodo común, conecta este pin a la fuente de voltaje positiva (3.3V). Los otros tres pines corresponden a los LEDs rojo, verde y azul. Conecta el pin rojo al GPIO 27, el pin verde al GPIO 26 y el pin azul al GPIO 25. Cada una de estas conexiones debe hacerse a través de una resistencia de 220 ohmios para limitar la corriente que fluye a través de los LEDs.
A continuación, conecta la tierra (GND) del ESP32 a la línea de tierra de tu circuito. Asegúrate de que el cableado esté seguro para prevenir conexiones intermitentes. Si usas un LED RGB de cátodo común, conecta el pin común a tierra en su lugar y conecta los pines de color individuales a la fuente positiva a través de las resistencias. Revisa todas las conexiones antes de alimentar el circuito.
Ejemplos de Código y Guía
En el código de Arduino, comenzamos definiendo los pines para los LED rojos, verdes y azules utilizando los identificadores.redPin,greenPin, ybluePin. Además, definimos los canales PWM para cada color utilizandoredChannel,greenChannel, andblueChannelLa frecuencia PWM está configurada a 5000 Hz con una resolución de 8 bits.
const int redPin = 27;
const int greenPin = 26;
const int bluePin = 25;
const int redChannel = 0;
const int greenChannel = 1;
const int blueChannel = 2;
En elsetup()función, inicializamos los canales PWM y conectamos los pines correspondientes. También nos conectamos a la red Wi-Fi utilizando las credenciales definidas y configuramos el cliente MQTT para la comunicación con Adafruit IO.
El bucle principal verifica la conexión MQTT y procesa los mensajes entrantes. También imprime los valores RGB actuales en el monitor serie. El color del LED se actualiza según los valores recibidos a través de suscripciones MQTT.
Para más detalles sobre el código completo, consulte el código completo cargado debajo del artículo.
Demostración / Qué Esperar
Una vez que todo esté configurado y el código esté cargado, deberías ver que el LED RGB responde a los cambios de color realizados a través del panel de control de Adafruit IO. A medida que ajustas los controladores de rojo, verde y azul, el LED debería cambiar su color en consecuencia. Si experimentas algún problema, asegúrate de que la conexión Wi-Fi sea estable y de que los nombres de los tópicos MQTT coincidan con los definidos en el código (en el video a las 17:30).
Los errores comunes incluyen un cableado incorrecto, nombres de temas que no coinciden y olvidar establecer las credenciales de Wi-Fi correctas. Si el LED no se enciende, verifica nuevamente las conexiones del resistor y asegúrate de que el ESP32 esté alimentado correctamente.
Marcas de tiempo del video
00:00 Comienzo
2:23 Introducción al proyecto
4:43 ¿Qué es MQTT?
7:55 Configuración de Adafruit IO
14:09 Explicación del cableado
16:07 Código explicado
27:03 Seleccionando la placa ESP32 y el puerto COM en el IDE de Arduino
29:12 Demostración del proyecto
¿Qué es un LED RGB?
35:26 Color RGB
Imágenes
ESP32_rgb_pin
ESP32_RGB_led_wires
ES32-38_RGB_LED-wiring
esp32-50-RGB-led
esp32-50-RGB-led-mqtt-main
ESP32_rgb_pin
ESP32_RGB_led_wires
ES32-38_RGB_LED-wiring
esp32-50-RGB-led
esp32-50-RGB-led-mqtt-main
852-ESP32 Tutorial 50/55- Arduino code to control RGB LED using MQTT service of Adafruit