Tutorial LED RGB | arduino

Un LED RGB es un LED integrado con los tres colores primarios, ROJO, VERDE y AZUL. Usando un LED RGB podemos hacer todos los demás colores mezclando una cantidad adecuada de estos tres colores. La cantidad de voltaje aplicada a cada pin especifica la cantidad de colores que emite. Esto se llama mezcla aditiva.

Hay dos tipos de mezcla que estamos usando en el mundo real. Ellos son

  • Mezcla aditiva (RGB)
  • Mezcla Sustractiva (CMYK)

Mezcla Aditiva:

La mezcla aditiva suma la cantidad de color de cada color RGB para crear colores secundarios. P.ej. Rojo+Verde = Amarillo. En la mezcla aditiva, el rojo, el verde y el azul son los colores primarios. Este método de mezcla se usa principalmente en monitores de TV, CRT, LCD y otras pantallas de video.

Mezcla sustractiva:

La mezcla sustractiva se usa más ampliamente en impresoras a color, pintura, etc. El cian, el magenta y el amarillo son los colores primarios para formar los colores secundarios. Resta dos colores para obtener un color secundario. P.ej. Amarillo-Magenta = Rojo.

Si observa que en las impresoras puede ver un color negro adicional, que es un color clave. En realidad, es para ahorrar tinta, en lugar de combinar los tres colores (CMY) para hacer el color negro, simplemente podemos usar la tinta negra única.

El LED RGB funciona según el principio de mezcla aditiva. No los confunda con las variaciones comunes de ánodo y cátodo. Estos son solo para requisitos de circuitos y proyectos.

Diagrama de circuito:

El diagrama de circuito para este ejemplo se da a continuación. Como estamos usando un LED de ánodo común, conectamos el terminal del ánodo al Terminal de 5V a través de una resistencia de 220 ohmios.

Para escribir un voltaje específico en los pines LED, necesitamos usar las señales PWM. Dependiendo de los ciclos de trabajo, el voltaje en la salida varía. Así que usamos los pines 3,5 y 6 de Arduino UNO que son pines PWM.

Pin rojo = Pin 3, Pin verde = Pin 5, Pin azul = 6.

Código:

El siguiente código enciende cada LED de color uno por uno durante 1 segundo continuamente. Hemos creado una función personalizada llamada writeColor para escribir los valores PWM para cada pin. 255 es el valor máximo aquí. Si lo reduce o modifica, el color resultante se iluminará. Como es un LED de ánodo común, el valor 0 enciende el LED.

Ejemplo: Para encender el LED verde debemos escribir

rojo = 255;

Verde = 0;

Azul = 255;

Puede modificar estos valores y ver el resultado en el LED.

/*This example uses Common Anode LED*/ /* * Author: Sharath  * Website: http://www.revhardware.com * * For Common Anode LED(The common pin connected to +ve). * Supply a low value signal to a color pin glows that LED color. * Eg. Red = 0(Low), Green = 255(High), Blue = 255(High) = Red LED *  * For Common cathode, connect the common pin to -ve. * Supply a High value to a color pin glows that LED Color. * Eg. Red = 255(High), Green = 0(Low), Blue = 0(Low) = Red LED */ int redPin= 11; //PWM Pins int greenPin = 10; //PWM Pins int bluePin = 9; //PWM Pins void setup() { pinMode(redPin, OUTPUT); pinMode(greenPin, OUTPUT); pinMode(bluePin, OUTPUT); Serial.begin(9600); } void loop() { writeColor(0, 255, 255); // Red Serial.println("Red"); delay(1000); writeColor(255, 0, 255); // Green Serial.println("Green"); delay(1000); writeColor(255, 255, 0); // Blue Serial.println("Blue"); delay(1000); }  //Custom function to write color values to LED  void writeColor(int redVal, int greenVal, int blueVal) { analogWrite(redPin, redVal); analogWrite(greenPin, greenVal); analogWrite(bluePin, blueVal); }