top of page

Práctica 2: LED RGB.

El objetivo de esta práctica consiste en encender un LED RGB de ánodo común en sus 3 colores básicos rojo, verde y azul. Aunque esta práctica se podría realizar utilizando salidas digitales, se va a realizar utilizando salidas analógicas con valores de 255..

 Materiales:

​

  • 1 Arduino UNO

  • 1 Protoboard

  • 4 Latiguillos

  • 1 LED RGB de ánodo común

  • 1 Resistencias de 100Ω (marrón-negro-marrón)

  • 2 Resistencias de 220Ω (rojo-rojo-marrón)

Esquema eléctrico

PolarizadoPositivo

Intensidad de Corriente20mA

Tensión Led (rojo)2.1V

Tensión Led (verde)3.3V

Tensión Led (azul)3.3V

Descripción breve dispositivos:

 

Diodo RBG:

El led RGB (Red, Green, Blue) es un led que combina estos tres colores para formar más de 16 millones de tonos de luz. De esta forma, dependiendo de la tonalidad pasada como parámetro, podemos emitir un colo de luz u otro. En mBot tenemos por defecto 2 led RGB en la parte superior del robot, no obstante, se puede adquirir por separado un módulo encargado para tal fin..

led-rgb-5mm-4-pines-arduino-microcontrol

La patilla más larga del LED RGB de ánodo común se conecta al pin de 5V de la placa de arduino para que esté polarizado positivamente. La patilla que queda a la izquierda corresponde al color rojo, el cual se conectará con su debida resistencia. Las otras dos patillas corresponden a los colores verde y azul por orden. También habrá que conectarlas a sus resistencias que además son de menor valor.

led-rgb-anodo-esquema.png

Programación en Arduino IDE

En primer lugar, se configura los pines analógicos PWM 9, 6 y 5 en modo salida (OUTPUT). Esta configuración se establece en la función setup(), ya que solamente se ejecuta una vez.

Por otro lado, al ejecutar el código se activará cada uno de los pines encargados de encender el LED RGB. En este caso, al estar utilizando un LED RGB de ánodo común para encender el color rojo tendremos que polarizar inversamente el color que queremos visualizar, dicho de otro modo, tendremos que establecer a un valor bajo el pin conectado a la patilla del color rojo y un valor alto a las patillas del color verde y azul. Además se crea un retardo de 1 segundo (1000 milisegundos) para apreciar el efecto de cambio de color.

led rbg.PNG

 Códigos para copiar:

int redPin = 11; //Conectamos el pin del color rojo al pin 11 de Arduino

int greenPin = 10; //Conectamos el pin del color verde al pin 10 de Arduino
int bluePin = 9; //Conectamos el pin del color azul al pin 9 de Arduino
 
void setup()
{
  //Configuramos los pines del Arduino como salidas

  pinMode(redPin, OUTPUT); 
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);  
}
 
void loop()
{
  /*Para evitarnos tanto trabajo se creo una funcion llamada setColor la cual recibe parametros y escribeel valor en los LED's 
  */
  
  /*Como podemos ver al enviar diferentes valores a cada uno de los tonos de colopo demos obtener diferentescolores en el LED
  */
  setColor(255, 0, 0);  // Color Rojo
  delay(1000);
  setColor(0, 255, 0);  // Color Verde 
  delay(1000);
  setColor(0, 0, 255);  // Color Azul
  delay(1000);
  setColor(255, 255, 0);  // Color Amarillo
  delay(1000);  
  setColor(80, 0, 80);  // Color Morado
  delay(1000);
  setColor(0, 255, 255);  // Color Aqua
  delay(1000);
}
 
/*Con esta función escribimos los valores que queremos escribir en el LED, asi evitamos tanto codigo*/
void setColor(int red, int green, int blue)
{
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);  
}

bottom of page