Controlar tira de leds rgb con arduino

Arduino led strip 12v

La razón principal por la que compré mi primera placa Arduino fue para poder jugar con tiras de LED con aplicaciones como BobLight y LightPack que ofrecen retroiluminación de color a su televisor comparable a lo que Philips ofrece con sus hermosos televisores AmbiLight.

Bueno, bastante simple … en primer lugar, Philips no tiene televisores de 80″ con AmbiLight, los modelos más pequeños son significativamente más caros que los modelos sin AmbiLight, y parece que estos televisores AmbiLight son difíciles de encontrar en los Estados Unidos.

Por favor, considere la posibilidad de desactivar su bloqueador de anuncios para nuestro sitio web.Dependemos de estos anuncios para poder ejecutar nuestro sitio web.Usted puede, por supuesto, nos apoyan de otras maneras (ver Apoyo a nosotros a la izquierda).

Mientras que las tiras WS2801 necesitan 4 cables, las tiras WS2811/WS2812 sólo necesitan 3 cables. La WS2801 utiliza una línea de reloj separada, lo que puede considerarse una ventaja, mientras que la WS2811/WS2812 no lo hace. El WS2811/WS2812 depende de que el envío de datos coincida con una temporización muy ajustada. La ventaja del WS2812, sin embargo, es que la producción de estos combo en tiras es más fácil y por lo tanto más barato, y cada LED RGB ocupa mucho menos espacio en las tiras.

Proyectos de tiras de leds Arduino

Las tiras de LED son fáciles de conseguir hoy en día, y a menudo las consigues sin documentación, o pierdes la etiqueta. En esos casos, es fácil confundirse sobre lo que se tiene. Lo que sigue es una guía de algunos de los tipos más comunes de tiras de LED, y circuitos para controlar los tipos no direccionables desde un microcontrolador. Hay muchas otras buenas guías sobre las tiras de LED, como la Guía definitiva de iluminación con tiras de LED de Superbrightleds.

Canales: ¿cuántos canales de color tiene la tira? La mayoría de las tiras cuentan con alguna combinación de LEDs rojos, verdes, azules, blancos, blancos fríos, blancos cálidos o ámbar. La mayoría de las tiras de LED son tiras de ánodo común, lo que significa que hay una línea compartida para la entrada de tensión y líneas separadas para el control de cada canal. Si piensas en cada canal como un solo LED, el punto final del canal es el cátodo de ese LED.

Voltaje – Los voltajes más comunes son +5V, +12V y +24V. Incluso si utilizas un microcontrolador de 5V como el Arduino Uno, necesitarás una fuente de alimentación separada y un transistor para controlar cada canal, porque la corriente de cada canal será mayor que la que pueden suministrar los pines GPIO del microcontrolador.

Alimentación de arduino y tira de leds

En este tutorial aprenderemos a controlar LEDs RGB direccionables individualmente o una tira de LEDs WS2812B usando Arduino.  Puedes ver el siguiente vídeo o leer el tutorial escrito más abajo para obtener más detalles.

En primer lugar vamos a explicar el principio de funcionamiento a través de algunos ejemplos básicos y, a continuación, echar un vistazo a un proyecto de Arduino realmente fresco utilizando estos LEDs, una mesa de café LED interactivo DIY. La mesa de café cuenta con LEDs WS2812B, sensores de proximidad infrarrojos para detectar objetos y un módulo Bluetooth HC-05 para controlar los colores a través de una aplicación Android personalizada. Este proyecto es en realidad una colaboración entre yo y Marija del canal de YouTube Creativity Hero.

Lo bueno de estos LEDs es que podemos controlar incluso toda la tira de LEDs con un solo pin de nuestra placa Arduino. Cada LED tiene tres conectores en cada extremo, dos para la alimentación y uno para los datos. La flecha indica la dirección del flujo de datos. El pad de salida de datos del LED anterior se conecta al pad de entrada de datos del siguiente LED. Podemos cortar la tira al tamaño que queramos, así como distanciar los LEDs mediante unos cables.

Arduino led strip 5v

Este programa funcionará con las tiras DotStar, que utilizan LEDs RGB controlados en serie APA102 o SK9822 [1]. Puedes manejarlas usando la librería SPI estándar de Arduino, por lo que el programa debería funcionar en cualquier placa compatible con Arduino sin necesidad de modificaciones. Lo he probado en un Arduino Uno y en una placa Adafruit QT-Py M0 basada en ATSAMD21.

Con 30 LEDs deberías ser capaz de alimentar los LEDs desde la fuente USB de la placa que estés utilizando sin necesidad de una fuente de alimentación externa, siempre que mantengas el brillo bajo. El programa de abajo establece el brillo global a un valor que debería mantener la corriente a un valor seguro.

Con más de 30 LEDs, o usando un brillo global más alto, necesitarás alimentar la tira de LEDs con energía externa. Pero ten en cuenta que los niveles lógicos de reloj y datos a la tira de LEDs no deberían estar a un voltaje más alto que el de la alimentación de la tira, así que las opciones son:

El enfoque que propongo es definir la pantalla luminosa que quieres crear mediante una única función que toma dos parámetros de punto flotante: x, la posición en la tira, y t, el tiempo. Devuelve un puntero a un array de tres números en coma flotante:

Acerca del autor

admin

Ver todos los artículos