Taula de continguts:

Easy LED Holiday Light Show: Bruixots a l'hivern - Cinta LED WS2812B amb FastLED i un tutorial Arduino: 6 passos
Easy LED Holiday Light Show: Bruixots a l'hivern - Cinta LED WS2812B amb FastLED i un tutorial Arduino: 6 passos

Vídeo: Easy LED Holiday Light Show: Bruixots a l'hivern - Cinta LED WS2812B amb FastLED i un tutorial Arduino: 6 passos

Vídeo: Easy LED Holiday Light Show: Bruixots a l'hivern - Cinta LED WS2812B amb FastLED i un tutorial Arduino: 6 passos
Vídeo: Аудиокнига «Просто истории» Редьярда Киплинга 2024, Juliol
Anonim
Image
Image

Vaig dissenyar i programar aquest espectacle de llums de vacances per mostrar-lo a qualsevol lloc. He utilitzat una tira LED WS2812B amb una densitat de píxels de 30 píxels / metre. Des que feia 5 metres, tenia un total de 150 LED. He mantingut el codi senzill perquè qualsevol usuari nou que utilitzi tires LED WS2812B pugui seguir fàcilment el codi. Això també significa que si utilitzeu diferents quantitats de píxels, el temps estarà desactivat, de manera que us hauríeu de fixar a 150 LED. A més, per simplificar-ho, Arduino no gestiona en absolut el sistema musical. Al principi del programa, hi ha 3 flaixos de verd i 1 flaix de vermell; a continuació, s'inicia l'espectacle de llum real. Com que heu d'iniciar la música manualment, aquests flaixos inicials us proporcionaran una indicació de quan voleu començar a reproduir la música. He inclòs el codi següent. No dubteu a afegir o canviar aquest codi amb finalitats no comercials.

Subministraments

Tira LED WS2812B

- Arduino

- Filferros

- Font d'alimentació de 5V 10A | Si feu servir més d'una tira, haureu d'utilitzar una font d'alimentació més gran. Cada píxel utilitza 60 mA, de manera que 150 píxels * 60 mA = 9A. La vostra font d’alimentació ha de poder gestionar-ho si teniu intenció d’utilitzar una brillantor total en blanc. Heu d’utilitzar una font d’alimentació de 5V si feu servir tires LED de 5V i, si feu servir tires LED de 12V, haureu d’utilitzar una font d’alimentació de 12V, però també feu servir un convertidor de 12-5V per alimentar l’Arduino de 5V.

Pas 1: baixeu la biblioteca FastLED

Definiu poques variables
Definiu poques variables

Si encara no teniu la biblioteca FastLED descarregada, descarregueu la versió més recent de github.com/FastLED/FastLED/releases

Baixeu-vos la biblioteca FastLED i moveu-la a la carpeta de biblioteques Arduino. NO canvieu el nom d'aquesta carpeta. A l’IDE Arduino, aneu a Sketch, Include Library (Inclou biblioteca) i, a continuació, Afegeix biblioteca. ZIP. Seleccioneu la carpeta FastLED.

Un cop configurada la biblioteca, incloeu la línia #include Aquesta línia indica al programa que esteu utilitzant aquesta biblioteca.

Pas 2: definiu poques variables

Com he esmentat anteriorment, per tal de mantenir el codi senzill, canviar el nombre de píxels canviarà el temps o l'espectacle de llum.

La línia #define NUM_LEDS 150 és on es posa el nombre de píxels utilitzats. En aquest cas, seran 150.

La línia #define DATA_PIN 5 és on col·loqueu el pin digital al qual heu connectat el cable de dades.

La línia #define BRIGHTNESS 255 és on es posa la brillantor des d’una escala de 0-255, sent 255 la més brillant.

Pas 3: la secció de configuració del codi

La secció de configuració del codi
La secció de configuració del codi

A la secció de configuració, hi ha un retard de 2 segons i la línia

FastLED.addLeds (leds, NUM_LEDS).setCorrection (TipicLEDStrip);

WS2812B va indicar el tipus de tira LED que vam utilitzar i DATA_PIN és la variable que vam definir en un pas anterior. El GRB és l’ordre del color. Això pot variar en funció de la tira LED utilitzada. Proveu el codi tal com és i, si els colors no són els mateixos que al vídeo, proveu de canviar-ho a RGB o, per exemple, a BRG. Podeu deixar la resta d'aquesta línia igual. Les línies

FastLED.setBrightness (max_bright); set_max_power_in_volts_and_milliamps (5, 8000);

limiteu l’ús d’energia de la tira LED. Aquesta és una característica sorprenent de la biblioteca FastLED. El número 5 és el voltatge que hem utilitzat i el número 8000 és el corrent màxim que la tira LED pot utilitzar en mA. Es recomana utilitzar només el 80% de la capacitat de la font d'alimentació per ampliar la seva vida útil. Com que tinc una font d'alimentació de 10A, 0,8 * 10 = 8A o 8000mA.

Pas 4: la secció de bucle | Aka, la part més interessant del codi

La secció de bucles | Aka, la part més interessant del codi
La secció de bucles | Aka, la part més interessant del codi
La secció de bucles | Aka, la part més interessant del codi
La secció de bucles | Aka, la part més interessant del codi

Ara que hem acabat de configurar el programa per a la nostra tira LED particular, podem arribar a separar el que realment fa que les tires s’il·luminin. Per mantenir aquesta secció neta, he utilitzat funcions d’escriptura per controlar les tires i fer efectes diferents. La imatge superior a l'esquerra forma part de la secció de bucle, que executa les funcions. La imatge de la dreta es troba a sota i és on he escrit el que fa cada funció.

Pas 5: cablejat

Cablejat
Cablejat

Les tires LED WS2812B tenen 3 terminals a cada extrem. 2 per a alimentació i 1 per al senyal de dades provinent del nostre Arduino. Simplement connecteu 2 cables als terminals d’alimentació de l’Arduino i connecteu 2 cables d’alimentació a la tira LED. També heu d'afegir 2 cables d'alimentació anomenats cables d'injecció d'alimentació al final de la tira perquè la pèrdua de tensió pot provocar LEDs foscos al final de la tira si no ho feu. Comproveu les etiquetes de la tira per veure quin terminal serveix per a què. La barreja de la polaritat podria provocar una tira fregida. A més, connecteu el cable de terra de l’Arduino al cable de terra de la tira LED per establir una terra comuna per a una millor transmissió de dades. He esmentat que hauríeu d'afegir cables d'injecció de potència, però NO PODEU fer-ho per al cable de dades. Això es deu al fet que cada LED retransmet el senyal de dades al següent, així que assegureu-vos de connectar 1 cable de dades al pin Arduino especificat i a la tira LED. La franja ha de tenir una petita fletxa que indiqui la direcció del recorregut de les dades. Assegureu-vos que poseu el cable de senyal de dades al principi i no al final. Si es barreja això es pot produir una tira fregida.

Pas 6: muntatge de la tira LED

Vaig muntar la tira LED a l'interior d'una finestra simplement gravant-la. No obstant això, hi ha moltes altres maneres de muntar la tira LED. Podeu utilitzar un canal d'alumini com ara https://tinyurl.com/s2km4v3 per posar les tires a l'exterior de la línia del sostre. Si col·loqueu les vostres tires LED a l’exterior, us recomano utilitzar les tires IP65 si feu servir un canal d’alumini perquè són semi-impermeables i són més primes que l’1p67, que potser no s’adapta a alguns canals. Si teniu intenció de muntar-ho fora sense canal, utilitzeu les tires IP67, que són pràcticament impermeables. Per donar la volta a una cantonada, com les que es troben als cims de la línia del sostre, hauríeu de tallar la tira idealment i fer servir cables per donar la volta a la cantonada. És possible que només pugueu doblar la tira, però tingueu cura de quant les doblegueu perquè és fàcil treure un LED.

Recomanat: