Gerando cores diferentes de LED RGB usando Arduino PWM

Generando diferentes colores de LED RGB usando Arduino PWM

Protótipo de controlador LED RGB baseado em Arduino

Fig. 1: Prototipo de controlador LED RGB basado en Arduino

El RGB-LED es muy utilizado para generar luces de diferentes colores en decoración de interiores, electrodomésticos, automóviles, etc.

Este artículo trata sobre cómo Arduino obtiene múltiples colores con LED RGB y muestra la transición de un color a otro.

La salida PWM de un Arduino es una herramienta importante para obtener una variedad de colores, ya sea Rosa, Cian, Magenta, Naranja, Púrpura, etc.

Un LED RGB es un LED de cuatro terminales con un pin común (por ejemplo, cátodo) y otros tres pines (ánodo) para los LED rojo, verde y azul.

Diagrama de pinos e circuito interno de LED RGB

Fig. 2: Diagrama de pines y circuito interno del LED RGB

El primer paso es conseguir un LED RGB y probarlo. Para ello necesitamos conectar la fuente de alimentación de 5V al LED simple a través de resistencias (330ohms).

Ahora que tenemos los colores ROJO, VERDE y AZUL individualmente, es hora de mezclar estos tres colores básicos.

Consigue un Arduino (cualquier placa básica con al menos 3 salidas PWM). Usé un Atmega8.

Conecte su Arduino, realice las conexiones adecuadas como se muestra en el diagrama de circuito a continuación.

Continuando, ahora es el momento de controlar el LED. Esto lo haremos a través del Arduino-IDE.

Vaya a Arduino-IDE, seleccione el tipo de placa, en el menú 'Herramientas'. Seleccione el puerto COM en el menú 'Puerto serie'.

Después de eso, copie el boceto a continuación y cárguelo.

Laboral:

Ahora, entendamos cómo funciona esto. La función de " escritura analógica " de Arduino lo hace posible.

Cada pin de salida digital de Arduino puede proporcionar un voltaje de 0 o 5 V, pero el pin PWM tiene una característica complementaria. Puede proporcionar varios valores de voltaje entre 0V-5V.

Digamos que escribimos,

escritura analógica (led_rojo, 50); //red_led se refiere al pin 9 (pin PWM)

Esto dará un voltaje = (5/255)*50 V = 0,98 V en el pin 9.

Si escribimos:

escritura analógica(led_azul,100); //blue_led se refiere al pin 10 (pin PWM)

Esto dará un voltaje = (5/255) * 100V = 1,96V en el pin 10

En este experimento, lo que hacemos es crear un bucle for para proporcionar valores entre 0 y 255 en cada pin del LED con cierto retraso (en milisegundos).

para(int i=0;i<=255;i+=3)

{

escritura analógica (pin rojo, 255-i); // escribe (255-i) en redPin

analogWrite(pinchaverde, i); //escribo I en greenPin

retraso(100); //esperar 100uS

}

Imagem mostrando LED RGB sendo controlado pelo Arduino

Figura 3: Imagen que muestra el LED RGB controlado por Arduino

Código fuente del proyecto

 ###



 intpinrojo = 10;
 int pinverde = 11;
 intpinazul = 9;
 transición de color vacía;
 configuración vacía
 {
 pinMode(pinrojo, SALIDA);
 pinMode(pinverde, SALIDA);
 pinMode(bluePin, SALIDA);
 }
 bucle vacío
 {
 colorTransición;
 }
 color vacíoTransición
 {
 para(int i=0;i<=255;i+=3)
 {
 escritura analógica (pin rojo, 255-i);
 escritura analógica(pinverde, i);
 retraso(100);
 }
 para(int i=0;i<=255;i+=3)
 {
 escritura analógica (pinverde, 255-i);
 escritura analógica (pinazul, i);
 retraso(100);
 }
 para(int i=0;i<=255;i+=3)
 {
 escritura analógica (pin azul, 255-i);
 escritura analógica(pinrojo, i);
 retraso(100);
 }
 }

 ###

Diagramas de circuito

Controlador LED RGB basado en Arduino, diagrama de circuito

contenido relacionado

Regresar al blog

Deja un comentario

Ten en cuenta que los comentarios deben aprobarse antes de que se publiquen.