Proyecto 12: LED RGB
Introducción:
El LED RGB (Red, Green, Blue) puede emitir luz brillante de los colores Rojo, Azul y Verde y todas las combinaciones posibles de los mismos, además por medio del control PWM podemos hacer infinidad de combinaciones variando independientemente la intensidad de cada color. Este es el principio del funcionamiento de la televisión a color.
Observa la imagen del LED RGB y su respectivo diagrama, la pata más larga (No. 2) es la pata común de tres LEDS internos, en este caso la pata común es el Cátodo (polo negativo), Hay LEDs RGB con Ánodo (polo positivo) común, para este proyecto necesitamos que sea de Cátodo común.
Hardware a utilizar:
Placa Arduino
Cable USB
3 Potenciometros de 10K ohms
3 resitencias 220 ohms
1 LED RGB (cátodo común)
Diagrama esquemático:
Conexiones del circuito
Sketch de Ejemplo:
Utilizaremos como salida los pines digitales (con capacidad PWM) 8, 9 y 10, para leer las salidas análogas de los potenciómetros utilizaremos los pines de entrada análogos A0, A1 y A2. Utilizaremos la ventana Monitor Serial del IDE de Arduino para observar el cambio de valores análogos en los potenciómetros
/////
int LED1 = 8;
int LED2 = 9;
int LED3 = 10;
int pot1 = A0;
int pot2 = A1;
int pot3 = A2;
void setup()
{
pinMode(LED1,OUTPUT);
pinMode(LED2,OUTPUT);
pinMode(LED3,OUTPUT);
Serial.begin(9600);
}
void loop()
{
int salida1 =analogRead(pot1);
int salida2 =analogRead(pot2);
int salida3 =analogRead(pot3);
int PWM1 = map (salida1, 0, 1023, 0, 254);
int PWM2 = map (salida2, 0, 1023, 0, 254);
int PWM3 = map (salida3, 0, 1023, 0, 254);
Serial.print ("ROJO " );
Serial.print (PWM1);
Serial.print (" VERDE " );
Serial.print (PWM2);
Serial.print (" AZUL " );
Serial.println (PWM3);
Serial.println (" " );
analogWrite (LED1,PWM1);
analogWrite (LED2,PWM2);
analogWrite (LED3,PWM3);
delay(100);
}
/////
Revisa y sube el sketch a tu placa Arduino, Abre la ventana del monitor serial, gira los 3 potenciómetros hacia la izquierda (hasta el tope), ahora sube y baja uno por uno, observa los cambios de color en el LED RGB.
Reto Proyecto 12: quita los potenciómetros y solo deja conectado al protoboard el LED RGB con sus respectivas resistencias, la pata común (cátodo) va a GND (tierra) y las patas de cada color a los pines digitales 8, 9 y 10. Escribe el siguiente sketch, revísalo y súbelo a la Placa Arduino:
/////
int led1 = 8;
int led2 = 9;
int led3 = 10;
void setup()
{
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}
void loop()
{
int i,j,k=0;
for(i=0;i<=10;i++)
{
analogWrite(led1, i*25);
delay(100);
for(j=0;j<=10;j++)
{
analogWrite(led2, j*25);
delay(100);
for(k=0;k<=10;k++)
{
analogWrite(led3, k*25);
delay(100);
}
}
}
}
/////
Observa como los tres colores se combinan en una gran variedad de tonalidades.
********************************************************************************
Problemas escribiendo el código? descarga los ejemplos desde mi carpeta compartida en Dropbox:
https://www.dropbox.com/sh/w5h38cdrynqdwhf/AABP7b9T3ADbO4KqiPm4pO-9a?dl=0
Introducción:
El LED RGB (Red, Green, Blue) puede emitir luz brillante de los colores Rojo, Azul y Verde y todas las combinaciones posibles de los mismos, además por medio del control PWM podemos hacer infinidad de combinaciones variando independientemente la intensidad de cada color. Este es el principio del funcionamiento de la televisión a color.
Observa la imagen del LED RGB y su respectivo diagrama, la pata más larga (No. 2) es la pata común de tres LEDS internos, en este caso la pata común es el Cátodo (polo negativo), Hay LEDs RGB con Ánodo (polo positivo) común, para este proyecto necesitamos que sea de Cátodo común.
Hardware a utilizar:
Placa Arduino
Cable USB
3 Potenciometros de 10K ohms
3 resitencias 220 ohms
1 LED RGB (cátodo común)
Diagrama esquemático:
Conexiones del circuito
Sketch de Ejemplo:
Utilizaremos como salida los pines digitales (con capacidad PWM) 8, 9 y 10, para leer las salidas análogas de los potenciómetros utilizaremos los pines de entrada análogos A0, A1 y A2. Utilizaremos la ventana Monitor Serial del IDE de Arduino para observar el cambio de valores análogos en los potenciómetros
/////
int LED1 = 8;
int LED2 = 9;
int LED3 = 10;
int pot1 = A0;
int pot2 = A1;
int pot3 = A2;
void setup()
{
pinMode(LED1,OUTPUT);
pinMode(LED2,OUTPUT);
pinMode(LED3,OUTPUT);
Serial.begin(9600);
}
void loop()
{
int salida1 =analogRead(pot1);
int salida2 =analogRead(pot2);
int salida3 =analogRead(pot3);
int PWM1 = map (salida1, 0, 1023, 0, 254);
int PWM2 = map (salida2, 0, 1023, 0, 254);
int PWM3 = map (salida3, 0, 1023, 0, 254);
Serial.print ("ROJO " );
Serial.print (PWM1);
Serial.print (" VERDE " );
Serial.print (PWM2);
Serial.print (" AZUL " );
Serial.println (PWM3);
Serial.println (" " );
analogWrite (LED1,PWM1);
analogWrite (LED2,PWM2);
analogWrite (LED3,PWM3);
delay(100);
}
/////
Revisa y sube el sketch a tu placa Arduino, Abre la ventana del monitor serial, gira los 3 potenciómetros hacia la izquierda (hasta el tope), ahora sube y baja uno por uno, observa los cambios de color en el LED RGB.
Reto Proyecto 12: quita los potenciómetros y solo deja conectado al protoboard el LED RGB con sus respectivas resistencias, la pata común (cátodo) va a GND (tierra) y las patas de cada color a los pines digitales 8, 9 y 10. Escribe el siguiente sketch, revísalo y súbelo a la Placa Arduino:
/////
int led1 = 8;
int led2 = 9;
int led3 = 10;
void setup()
{
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
}
void loop()
{
int i,j,k=0;
for(i=0;i<=10;i++)
{
analogWrite(led1, i*25);
delay(100);
for(j=0;j<=10;j++)
{
analogWrite(led2, j*25);
delay(100);
for(k=0;k<=10;k++)
{
analogWrite(led3, k*25);
delay(100);
}
}
}
}
/////
Observa como los tres colores se combinan en una gran variedad de tonalidades.
********************************************************************************
Problemas escribiendo el código? descarga los ejemplos desde mi carpeta compartida en Dropbox:
https://www.dropbox.com/sh/w5h38cdrynqdwhf/AABP7b9T3ADbO4KqiPm4pO-9a?dl=0