CONTENIDO ►
La tira de LEDs direccionables ws2812b Arduino atrae a muchos entusiastas de la radio para poder crear proyectos interesantes y brillantes en el Arduino con LEDs ws2812b. Pero antes de empezar un nuevo y genial proyecto, necesitas entender cómo conectar y controlar correctamente la tira direccionable desde el Arduino. En este artículo, veremos algunos ejemplos sencillos para trabajar con el Arduino WS2812 / WS2811.
Para esta actividad necesitaremos:
- Arduino Uno / Arduino Nano / Arduino Mega
- tira de LED ws2812 / ws2811;
- fuente de alimentación de 5V / 12V;
- resistencia de 100 a 500 ohm;
- librería Adafruit_NeoPixel.h
Tira LED direccionable WS2812B datasheet
Las cintas direccionables tienen una densidad de 30 a 144 LED por metro y se fabrican en diferentes versiones de protección: IP30, IP65, IP67, IP68. Todas las versiones tiras de LEDs, excepto la IP30, pueden utilizarse en el exterior a temperaturas entre -25°C y +80°C. Otra cinta más robusta, la tira de LED direccionable WS2813, se caracteriza por su capacidad de transmitir señales por la cadena, incluso a través de un chip quemado.

Características tira LED WS2812b:
- Tensión de alimentación: +3,5 ∼ +5,3V
- Voltaje de entrada: -0,5 ∼ +0,5V
- Temperatura de operación: -25°C ∼ +80°C
- Consumo: 18mA por pixel
La tira de LEDs ws2812b es lo último en iluminación de tira. Cada LED de la tira consta de un LED RGB clásico y un controlador con tres salidas de transistor. Esto hace posible controlar el color de cualquier LED y crear sorprendentes efectos de color e iluminación en las luces de Navidad ws2812b y Arduino. Por ello, el tira LED direccionable es popular a pesar de su elevado coste en comparación con una tira LED convencional.
Conectar una tira LED WS2812B con Arduino

Se utilizan tres librerías populares para ejecutar la cinta: FastLED, AdafruitNeoPixel y LightWS2812. Todas las bibliotecas pueden descargarse de nuestro sitio web. Las librerías FastLED y NeoPixel de Adafruit son fáciles de usar, pero difieren en cuanto a la funcionalidad y el tamaño de la memoria. Después de montar este sencillo circuito e instalar las librerías, descarga el código de la tira de direcciones LED 4 pines.
Programa Arduino para uso de tira LED RGB WS2812
#include "Adafruit_NeoPixel.h" #define PIN 4 #define NUMPIXELS 100 Adafruit_NeoPixel strip (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { strip.begin(); strip.setBrightness(50); // brillo de los LEDs (maximum 255) } void loop() { strip.setPixelColor(0, strip.Color(255, 0, 0)) strip.show(); delay(500); strip.clear(); strip.setPixelColor(1, strip.Color(0, 0, 255)); strip.show(); delay(500); strip.clear(); strip.setPixelColor(2, strip.Color(255, 255, 255)); strip.show(); delay(500); strip.clear(); }
Explicación del código para uso de tira LED RGB WS2812:
- el puerto de conexión de la tira LED, el número de píxeles y el brillo de la cinta pueden modificarse en el código;
- la numeración de los LEDs en la tira comienza en cero, por lo que si quieres encender el primer LED, debes especificar «0».

Si tienes una tira de leds WS2811 direccionable de 12 voltios, debería estar conectada como se muestra en el diagrama anterior. La resistencia en el pin digital lo protege de la quema (si la tira está desenergizada, será energizada por el pin digital y el pin puede quemarse). Tampoco conectes la tira LED a la placa Arduino, pues de lo contrario el diodo de protección del Arduino o el puerto USB del ordenador podrían quemarse.
Programa Arduino para efectos de tira LED WS2811
#include "Adafruit_NeoPixel.h" #define PIN 4 #define NUMPIXELS 100 Adafruit_NeoPixel strip (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); void setup() { strip.begin(); strip.setBrightness(50); // brillo de los LEDs (maximum 255) } void loop() { for (int i = -1; i < NUMPIXELS; i++) { strip.setPixelColor(i, strip.Color(255, 0, 0)); strip.show(); delay(100); } for (int i = -1; i < NUMPIXELS; i++) { strip.setPixelColor(i, strip.Color(0, 255, 0)); strip.show(); delay(100); } for (int i = -1; i < NUMPIXELS; i++) { strip.setPixelColor(i, strip.Color(0, 0, 255)); strip.show(); delay(100); } }
Explicación del código para efectos de tira LED WS2811:
- la biblioteca NeoPixel de Adafruit hace que sea bastante fácil controlar la banda de direcciones. En los ejemplos de la biblioteca se pueden encontrar muchos efectos diferentes.
Conclusión. Los WS2812B consumen bastante energía, un LED consume hasta 60mA a máxima luminosidad. Una tira con 100 LEDs requerirá una fuente de alimentación de 6 amperios o más. El microcontrolador Arduino y la tira de LEDs pueden conectarse a diferentes fuentes de alimentación, pero la tierra debe ser común. El hecho es que el pin GND también está involucrado en el control de la tira de direcciones en la placa Arduino.

Deja una respuesta