Los diodos LED son usados para indicar estados, iluminar o simplemente como decoración. En el mercado existen diodos módulos de Arduino RGB LED capaces de lucir en una amplia gama de colores gracias a la mezcla de los tres colores primarios (rojo, verde y azul). Ha este tipo de diodos se les llama RGB y están compuesto por tres diodos de color rojo, verde y azul en un mismo encapsulado. Gracias a la variación de la intensidad de estos tres diodos, podemos crear una composición de colores.
Índice de Contenido
Módulo de Arduino rgb led
Para un ejemplo práctico del uso de los diodos RGB, usaremos el módulo de Arduino RGB LED SMD – KY-009 de Keyes. Como este módulo no tiene incluidas las resistencias limitadoras tendremos que añadirlas, de lo contrario, si conectáramos directamente el modulo a Arduino podríamos quemar los diodos LED.
Para determinar las resistencias limitadoras de cada LED es necesario tener acceso a la ficha técnica del LED RGB. En el artículo Como conectar un diodo LED se explican los cálculos. Con unas resistencias de 220Ω el modulo funcionará correctamente sin peligro de quemar los LED’s.
Módulo de Arduino RGB LED SMD – KY-009 de Keyes.
Material necesario
- 1 Arduino.
- 1 Módulo de Arduino RGB LED SMD – KY-009.
- 3 Resistencias 220Ω.
Artículos recomendados
Esquemas
Esquema eléctrico Arduino Mega.
Esquema gráfico Arduino Mega.
Funcionamiento
La conexión del módulo no tiene nada de complicación.
Código
/* Título: SMD_LED_RGB Versión: 1.0v Descripción: Funcionamiento básico de un LED RGB. Autor: FjRamirez Fecha: 05/02/2015 URL: https://tuelectronica.es */ int redpin = 10; // Pin rojo int bluepin = 11; // Pin azul int greenpin = 9 ; // Pin verde int val; // Variables para cambiar void setup() { pinMode(redpin, OUTPUT); // Pin como salida pinMode(bluepin, OUTPUT); // Pin como salida pinMode(greenpin, OUTPUT); // Pin como salida Serial.begin(9600); // Velocidad del puerto serie } void loop() { for(val=255; val>0; val--){ // Repetimos hasta mientras que val>0: analogWrite(redpin, val); // Escribimos valor en el pin redpin analogWrite(bluepin, 255-val); // Escribimos valor en el pin bluepin analogWrite(greenpin, 128-val); // Escribimos valor en el pin greenpin delay(50); // Esperamos } for(val=0; val<255; val++){ // Repetimos hasta mientras que val<255: analogWrite(redpin, val); // Escribimos valor en el pin redpin analogWrite(bluepin, 255-val); // Escribimos valor en el pin bluepin analogWrite(greenpin, 128-val); // Escribimos valor en el pin greenpin delay(50); // Esperamos } Serial.println(val, DEC); // Mostramos el valor de val por el puerto serie }
Descripción del código
El código comienza con una configuración típica para establecer tres pines como salida (Pines PWM). Dentro de la función loop(), podemos diferenciar dos bloques de sentencias for, en los cuales simplemente se hace aumentar y disminuir una variable val. Esta variable val se emplea para generar una variación en el ancho del pulso de las salida analógicas PWM. Esta variación del ancho del pulso cuadrático de salida, se transforma en un cambio de nivel de intensidad de los LED’s dando como resultado final de una gama de colores.
Resultado final.
Descargar sketch LED RGB