Recents in Beach

header ads

Cómo controlar leds Neopixel ws2812b con Arduino fácil

Controlar las tiras y módulos RGB led ahora es muy simple gracias a la librería creada por Adafruit que nos brinda compatibilidad con las deferentes versiones de Neopixel. En este caso voy a usar el modulo de 8 leds ws2812b para la demostración. 

Para acceder a la librería lo podemos hacer desde el gestor de librerías del Arduino IDE, buscando las palabras "neopixel strip". También podemos descargarla directamente desde ele repositorio de Adafruit e instalarla demanera manual: 

https://github.com/adafruit/Adafruit_NeoPixel

Les recomiendo visitar ese repositorio ahí encontraran mas información sobre la librería. 

Primero vamos a analizar el datasheet: descárgalo aquí

Debo aclarar que hay múltiples versiones de estos leds y a veces diferenciarlos es complicado por que carecen de serial. Por lo general este modulo es el mas popular en las tiendas de internet, debido a su precio tan reducido. El vendedor siempre especifica que tipo de led tiene el modulo, pero por la presencia de capacitores SMD en la placa y el encapsulado led 5050 de 4 pines podemos decir que se tratan de ws2812b, pues las versiones mas modernas ya no requieren de capacitores.

Aquí esta disponible el datasheet de la versión  5.0 del led ws2812b: descárgalo aquí 

El modulo comprende 8 leds con sus pines de alimentación +V y GND en paralelo, y su conexión de datos en cascada, por lo cual para controlarlos se necesita una trama serial donde van codificados los 24 bits de cada led. Los colores se forman a partir de la combinación de la intensidad los 3 colores de luz primario: rojo, azul y verde. 

Estos Neopixeles tienen un controlador interno que reciben la información de la intensidad de los 3 leds que contiene cada empaquetado. Cada led puede tener una intensidad entre 0 y 255, cuyo valor máximo  en binario es 11111111 un valor de 8 bits. En total para cada pixel se necesitan 24 bits y puede generar 16777216 colores.

La alimentación recomendada es e 3.5 y 5.3V sin embargo para estos pequeños módulos yo recomiendo usar la salida de 3.3V de la Arduino. Así evitaremos el recalentamiento que es fatal para estos leds.

La conexión optima es la siguiente:

El modulo tiene salidas para conectar  otro en serie, el numero de leds lo debemos declarar en el código y se pueden conectar hasta 1024 leds en total.

El código que hice es muy básico para que entiendan como funciona:
La línea : //pixeles.setBrightness(10); //puede ser 0-255 
sirve para limitar el brillo sin importar las intensidades programadas. Esto limita los colores pero permite bloquear la máxima cantidad de brillo.

Para averiguar el código de cualquier color pueden hacerlo con esta pagina: https://htmlcolorcodes.com/es/

Los invito a usar los diferentes ejemplos incluidos en la librería para que aprendan a hacer sus propias animaciones. 

Espero que haya sido de ayuda, no olviden comentar y suscribirse a mi canal www.youtube.com/aquilesvaesa


Publicar un comentario

0 Comentarios