Tutorial ESP32 6/55 - Proyecto de LED RGB 2.3 - Kit de aprendizaje IoT ESP32 de SunFounder

Tutorial ESP32 6/55 - Proyecto de LED RGB 2.3 - Kit de aprendizaje IoT ESP32 de SunFounder

En este tutorial, aprenderemos cómo controlar un LED RGB utilizando el microcontrolador ESP32. Este proyecto te ayudará a entender cómo conectar el LED RGB y controlar sus colores utilizando señales PWM (Modulación por Ancho de Pulso). Al final de este tutorial, podrás crear cualquier combinación de colores ajustando la intensidad de cada componente LED. Esta es una habilidad fundamental para crear proyectos visualmente atractivos.

Para obtener una mejor comprensión del LED RGB y sus capacidades de mezcla de colores, exploraremos el cableado y el código necesarios para controlarlo con el ESP32. Si necesitas asistencia visual, asegúrate de consultar el video (en el video a las 03:20) para una explicación más clara del cableado y la configuración del código.

Hardware Explicado

Los componentes principales de este proyecto incluyen el módulo ESP32, el LED RGB y resistencias. El ESP32 es un microcontrolador potente que cuenta con Wi-Fi y Bluetooth integrados, lo que lo hace ideal para aplicaciones de IoT. El LED RGB consta de tres LED individuales (rojo, verde y azul) alojados dentro de un único paquete, lo que permite una amplia gama de colores según la combinación de los tres colores.

En nuestra configuración, el LED RGB estará cableado en una configuración de ánodo común, donde el pin del ánodo está conectado a un voltaje positivo, y el pin del cátodo de cada color se controla de forma independiente. De esta manera, podemos ajustar el brillo de cada color enviando señales PWM a través del ESP32.

Detalles de la hoja de datos

FabricanteSunFounder
Número de parteRGB-LED-4PINS
Tipo ComúnÁnodo común
Tensión directa (por LED)2.0 V (Rojo), 3.2 V (Verde), 3.2 V (Azul)
Corriente máxima (por LED)20 mA
Temperatura de operación-25 a 85 °C
PaqueteConexión a través de orificio de 4 pines

  • Utiliza una resistencia de 220 Ω para cada color para limitar la corriente y prevenir daños.
  • Asegúrate de que el pin común esté conectado a la tensión adecuada (3.3 V para ESP32).
  • Verifica la polaridad al conectar el LED RGB para evitar daños por inversión.
  • Utiliza PWM para controlar los niveles de brillo, con una frecuencia recomendada de alrededor de 5000 Hz.
  • Prueba cada color individualmente antes de cablear todo el sistema.

Instrucciones de cableado

Para conectar el LED RGB al ESP32, comienza por identificar los pines del LED RGB. El pin más largo es el ánodo común, que se conectará a la fuente de 3.3 V del ESP32. Los otros tres pines son para rojo, verde y azul. En nuestra configuración, conecta el pin rojo a GPIO27el pin verde al GPIO26, y el pin azul a GPIO25Cada uno de estos pines también tendrá una resistencia de 220 Ω conectada a ellos.

Comienza colocando el LED RGB en la placa de pruebas, asegurándote de que el pin del ánodo común esté a la izquierda. Inserta el pin rojo en la placa de pruebas y conéctalo a un extremo de la resistencia, con el otro extremo de la resistencia yendo al GPIO.27. Repite esto para los pines verde y azul, conectando el pin verde a GPIO26y el pin azul a GPIO25Finalmente, conecta el pin común al pin de 3.3 V en el ESP32 para completar el circuito. Asegúrate de conectar la tierra del ESP32 a la placa de pruebas también.

ESP32_RGB_LED_wiring_lesson_06

Ejemplos de código y guía paso a paso

En el código, comenzamos definiendo los pines del LED RGB utilizando constantes. Por ejemplo,const int redPin = 27;define el pin GPIO para el LED rojo. También configuramos la frecuencia y la resolución del PWM conconst int freq = 5000;yconst int resolution = 8;Esto configura los parámetros necesarios para controlar el brillo de cada color de LED.

const int redPin = 27;
const int greenPin = 26;
const int bluePin = 25;

A continuación, configuramos los canales PWM para cada color en elsetup() función. ElledcAttach()la función vincula cada pin al canal PWM correspondiente. Esta configuración garantiza que podamos controlar el brillo de cada color de manera independiente.

void setup() {
  ledcAttach(redPin, freq, resolution);
  ledcAttach(greenPin, freq, resolution);
  ledcAttach(bluePin, freq, resolution);
}

En elloop()función, usamos elsetColor()función para cambiar los colores del LED. Los valores pasados a esta función representan la intensidad de rojo, verde y azul. Por ejemplo, llamarsetColor(255, 0, 0);configura el LED a rojo. Después de cada cambio de color, usamosdelay(1000);esperar un segundo antes de cambiar al siguiente color.

void loop() {
  setColor(255, 0, 0); // Red
  delay(1000);
  setColor(0, 255, 0); // Green
  delay(1000);
}

Demostración / Qué Esperar

Después de completar el cableado y subir el código al ESP32, deberías ver el LED RGB pasar por varios colores: rojo, verde, azul, amarillo, púrpura y cian. Si el LED no se ilumina correctamente, verifica nuevamente tu cableado y asegúrate de que el ánodo común esté conectado a 3.3 V. Además, si notas algún color inesperado, verifica las conexiones de los resistores a los pines del LED.

Como se demuestra en el video (en el video a las 10:45), ajustar los valores en elsetColor()La función te permite crear diferentes colores. Experimenta con varias combinaciones para ver cómo responde el LED RGB.

Marcas de tiempo del video

  • 00:00- Introducción a LED RGB
  • 03:20- Explicación del cableado
  • 10:45- Revisión del código
  • 12:30- Demostración de mezcla de colores

Imágenes

ESP32_rgb_pin
ESP32_rgb_pin
ESP32_RGB_led_wires
ESP32_RGB_led_wires
ESP32_RGB_LED_wiring_lesson_06
ESP32_RGB_LED_wiring_lesson_06
806-ESP32 Tutorial 6/55 - Arduino code to control RGB LED with ESP32
Idioma: C++
¡Copiado!

Recursos y referencias

Archivos📁

No hay archivos disponibles.