Sisukord:

Lihtne puhkuse LED -valgusnäitus: võlurid talvel - WS2812B LED -riba FastLED -i ja Arduino õpetusega: 6 sammu
Lihtne puhkuse LED -valgusnäitus: võlurid talvel - WS2812B LED -riba FastLED -i ja Arduino õpetusega: 6 sammu

Video: Lihtne puhkuse LED -valgusnäitus: võlurid talvel - WS2812B LED -riba FastLED -i ja Arduino õpetusega: 6 sammu

Video: Lihtne puhkuse LED -valgusnäitus: võlurid talvel - WS2812B LED -riba FastLED -i ja Arduino õpetusega: 6 sammu
Video: Expert Tips on Treating Aquarium Fish Diseases with Dr. Márton Hoitsy 2024, Juuli
Anonim
Image
Image

Kujundasin ja programmeerisin selle puhkusevalgusetenduse nii, et seda kuvataks kõikjal. Kasutasin ühte WS2812B LED -riba, mille pikslitihedus oli 30 pikslit/ meeter. Kuna kasutasin 5 meetrit, oli mul kokku 150 LED -i. Hoidsin koodi lihtsana, nii et igaüks, kes WS2812B LED -ribade kasutamist ei tunne, saaks koodi hõlpsalt jälgida. See tähendab ka seda, et kui kasutate piksleid erinevas koguses, on ajastus välja lülitatud, seega peaksite jääma 150 LED -i juurde. Lisaks ei halda muusikasüsteemi Arduino lihtsana. Programmi alguses vilgub 3 rohelist ja 1 punane välk, seejärel algab tegelik valgusshow. Kuna peate muusika käsitsi käivitama, annavad need esialgsed välgud teile märku, millal muusikat esitada. Lisasin allpool oleva koodi. Lisage või muutke seda koodi mitteärilistel eesmärkidel.

Tarvikud

- WS2812B LED -riba

- Arduino

- Juhtmed

- 5V 10A toiteallikas | Kui kasutate rohkem kui ühte riba, peate kasutama suuremat toiteallikat. Iga piksel kasutab 60mA, seega 150 pikslit * 60mA = 9A. Kui kavatsete kasutada täielikku heledust valgega, peab teie toiteplokk sellega hakkama saama. Kui kasutate 5V LED-ribasid, peate kasutama 5V toiteallikat ja kui kasutate 12V LED-ribasid, peate kasutama 12V toiteallikat, kuid 5V Arduino toiteks kasutage ka 12-5V muundurit.

Samm: laadige alla FastLED -i kogu

Määratlege mõned muutujad
Määratlege mõned muutujad

Kui teil pole FastLED -i kogu alla laaditud, laadige uusim versioon alla saidilt github.com/FastLED/FastLED/releases

Laadige alla FastLED -kogu ja teisaldage see oma Arduino raamatukogude kausta. ÄRGE muutke selle kausta nime. Avage Arduino IDE -s Sketch, Include Library ja seejärel Lisa. ZIP Library. Valige kaust FastLED.

Kui teie kogu on seadistatud, lisage rida #include See rida ütleb programmile, et kasutate seda kogu.

Samm: määratlege mõned muutujad

Nagu ma varem mainisin, muudab koodi lihtsuse säilitamiseks pikslite arvu muutmine ajastust või valgusetendust.

Rida #define NUM_LEDS 150 on koht, kuhu panete kasutatud pikslite arvu. Sel juhul on see 150.

Rida #define DATA_PIN 5 on koht, kuhu panete digitaalse tihvti, millega andmesidejuhtme ühendasite.

Rida #define BRIGHTNESS 255 on koht, kus panete heleduse vahemikku 0–255, kusjuures 255 on kõige heledam.

3. samm: koodi seadistusosa

Koodi seadistamise osa
Koodi seadistamise osa

Seadistamise osas on viivitus 2 sekundit ja rida

FastLED.addLeds (ledid, NUM_LEDS).setCorrection (tüüpilineLEDStrip);

WS2812B näitas meie kasutatava LED -riba tüüpi ja DATA_PIN on eelmises etapis määratletud muutuja. GRB on värvide järjekord. See võib sõltuvalt kasutatavast LED -ribast erineda. Proovige koodi sellisena, nagu see on, ja kui värvid pole samad, mis videos, proovige see muuta näiteks RGB -le või BRG -le. Ülejäänud selle rea saate jätta samaks. Liinid

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

piirata LED -riba energiatarbimist. See on hämmastav funktsioon FastLED -i teegist. Number 5 on pinge, mida kasutasime, ja number 8000 on maksimaalne vool, mida LED -riba saab mA -s kasutada. Selle eluea pikendamiseks on soovitatav kasutada ainult 80% toiteallika võimalustest. Kuna mul on 10A toide, siis 0,8*10 = 8A või 8000mA.

4. samm: silmuseosa | Aka, koodeksi lahe osa

Silmusjagu | Aka, koodeksi lahe osa
Silmusjagu | Aka, koodeksi lahe osa
Silmusjagu | Aka, koodeksi lahe osa
Silmusjagu | Aka, koodeksi lahe osa

Nüüd, kui oleme oma konkreetse LED -riba programmi seadistamise lõpetanud, saame osaliselt osa sellest, et ribad süttivad. Selle jaotise puhtana hoidmiseks kasutasin ribade juhtimiseks ja erinevate efektide tegemiseks kirjutamisfunktsioone. Ülaltoodud pilt vasakul on osa tsüklite sektsioonist, mis funktsioone juhib. Paremal olev pilt on allpool ja kirjutasin, mida iga funktsioon teeb.

Samm: juhtmestik

Juhtmestik
Juhtmestik

WS2812B LED -ribadel on mõlemas otsas 3 klemmi. 2 toiteallika jaoks ja 1 meie Arduinost pärineva andmesignaali jaoks. Lihtsalt ühendage 2 juhet Arduino toitepistikutega ja 2 toitejuhet LED -ribaga. Samuti peaksite riba lõppu lisama 2 toitejuhet, mida nimetatakse toitepritsejuhtmeteks, sest kui te seda ei tee, võib pingekaotus riba lõpus tuhmide LED -ideni viia. Kontrollige ribal olevaid silte, et näha, milline terminal mille jaoks sobib. Polaarsuse segamine võib põhjustada praetud riba. Samuti ühendage Arduino maandusjuhe LED -riba maandusjuhtmega, et luua ühine alus paremaks andmeedastuseks. Mainisin, et peaksite lisama toitepritsejuhtmeid, kuid te ei saa seda andmesidejuhtme jaoks teha. Seda seetõttu, et iga LED edastab andmesignaali uuesti järgmisele, seega ühendage kindlasti 1 andmesidekaabel määratud Arduino tihvti ja LED -ribaga. Ribal peaks olema väike nool, mis näitab andmete liikumise suunda. Veenduge, et andmesignaali juhe oleks alguses, mitte lõpus. Selle segamine võib põhjustada praetud riba.

6. samm: LED -riba paigaldamine

Ma paigaldasin oma LED -riba akna siseküljele, lihtsalt teipides seda. Siiski on LED -riba paigaldamiseks palju muid viise. Ribade katusepiirile asetamiseks võite kasutada alumiiniumkanalit, näiteks https://tinyurl.com/s2km4v3. Kui panete oma LED-ribad õue, soovitan kasutada ip65 ribasid, kui kasutate alumiiniumkanalit, kuna need on poolveekindlad ja õhemad kui 1p67, mis ei pruugi mõnedesse kanalitesse sobida. Kui kavatsete selle ilma kanalita välja paigaldada, kasutage praktiliselt veekindlaid ip67 ribasid. Kui soovite minna nurga taha, näiteks katusejoone tippudele, peaksite ideaaljuhul riba lõikama ja nurga ümber sõitmiseks kasutama juhtmeid. Võimalik, et saate riba lihtsalt painutades eemale, kuid olge ettevaatlik, kui palju neid painutate, sest LED -i on lihtne välja lülitada.

Soovitan: