Sadržaj:
- Pribor
- Korak 1: Ideja
- Korak 2: Shematska i zvučna obrada
- Korak 3: LED kotačić
- Korak 4: Vizualizacije
- Korak 5: Upravljanje tipkama na dodir
- Korak 6: Otkrivanje otkucaja i servo "ples"
- Korak 7: 3D oblici
- Korak 8: Napajanje
- Korak 9: Bluetooth kontrola
- Korak 10: Upravljajte aplikacijom na temelju Blynka
- Korak 11: Skice i knjižnice
- Korak 12: Buduća poboljšanja
Video: Prijenosna svjetla za zabave: 12 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
Tinkercad projekti »
Možete li unijeti svjetlo u zabavu i učiniti je zabavnijom?
To je bilo pitanje. A odgovor je DA (naravno).
Ova instrukcija govori o izradi prijenosnog uređaja koji sluša glazbu i stvara vizualizaciju glazbe od koncentričnih prstenova Neopixel LED dioda.
Pokušalo se učiniti da uređaj "zaigra", tj. Pomakne se u ritmu glazbe, no otkrivanje otkucaja pokazalo se kao složeniji zadatak nego što zvuči (bez namjere igre riječi), pa je "plesanje" pomalo neugodno, ali još uvijek postoji.
Uređaj ima omogućen Bluetooth i reagirat će na tekstualne naredbe. Nisam imao vremena za pisanje aplikacije za upravljanje Party Lights (Android ili iOS). Ako ste na visini zadatka - javite mi !!!
Ako vam se sviđa ovo uputstvo, glasajte za njega na natječaju Make It Glow!
Pribor
Za izradu Party Lights trebat će vam:
- STM32F103RCBT6 Leaflabs Leaf Maple Mini USB ARM Cortex -M3 modul za Arduino (link ovdje) - mozak uređaja. Ovi relativno jeftini uređaji su toliko moćni da je nejasno zašto biste se ikada vratili na Arduino.
- MSGEQ7 Band Grafički ekvilajzer IC DIP-8 MSGEQ7 (veza ovdje)
- HC-05 ili HC-06 Bluetooth modul (veza ovdje)
- Adafruit MAX9814 mikrofon (veza ovdje)
- Standardni servo motor (veza ovdje) želite li da vaš uređaj "pleše"
- CJMCU 61 -bitna WS2812 5050 RGB LED ploča za razvoj upravljačkih programa (link ovdje)
- TTP223 Modul dodirnog ključa Kapacitivna podesiva ploča za samozaključavanje/blokiranje bez zaključavanja (veza ovdje)
-
Ultra kompaktni dvostruki USB izlazi od 5000 mah Super tanka banka napajanja (link ovdje)
- Otpornici, kondenzatori, žice, ljepilo, vijci, ploče za izradu prototipa itd. Itd.
Korak 1: Ideja
Ideja je imati prijenosni uređaj koji bi se mogao postaviti blizu izvora glazbe i koji bi stvorio šarene vizualizacije glazbe. Trebali biste moći kontrolirati ponašanje uređaja putem gumba (dodir) i Bluetootha.
Trenutno Party Lights ima 7 implementiranih vizualizacija (javite mi ako imate još ideja!):
- Koncentrični šareni krugovi
- Malteški križ
- Pulsirajuća svjetla
- Kamin (meni osobno najdraži)
- Svjetla za trčanje
- Svjetlo drveće
- Bočni segmenti
Prema zadanim postavkama, uređaj će svake minute prolaziti kroz vizualizacije. Međutim, korisnik se može odlučiti za jednu vizualizaciju i/ili ručno kretanje kroz nju.
Vizualizacije koje zakreću paletu boja također se mogu "zamrznuti" ako se korisniku sviđa određena kombinacija boja.
I kao par dodatnih kontrola, korisnik može promijeniti osjetljivost mikrofona i omogućiti/onemogućiti "dance" način rada servo motora.
Korak 2: Shematska i zvučna obrada
Shematska datoteka prevrtanja uključena je u paket na Githubu u podmapu "datoteke".
U osnovi, MSEQ7 čip vrši obradu zvuka, dijeleći audio signal na 7 opsega: 63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6.25kHz i 16kHz
Mikrokontroler koristi tih 7 pojaseva za stvaranje različitih vizualizacija, u osnovi preslikavajući odgovarajuće amplitude pojasa u jačinu LED svjetla i kombinacije boja.
Izvor zvuka je mikrofon s 3 razine kontrole pojačanja. Možete se kretati kroz postavke pojačanja pomoću jedne od tipki, ovisno o udaljenosti/glasnosti izvora zvuka.
Mikrokontroler također pokušava izvesti "beat" detekciju na 63Hz "bas" opsegu. Još uvijek radim na pouzdanom načinu otkrivanja i održavanja poravnanja ritma.
Korištenje "touch" gumba bilo je eksperiment. Mislim da rade prilično dobro, međutim, nedostatak povratnih informacija novinara donekle je zbunjujući.
Korak 3: LED kotačić
Jezgra vizualizacije je 61 LED kotač.
Imajte na umu da dio dolazi kao pojedinačni prstenovi koje ćete morati sastaviti. Prije sam mislio da su bakrene žice za dalekovode (koje također lijepo drže prstenove zajedno) i tanke signalne žice.
LED diode su označene brojevima od 0 do 60 počevši od donje vanjske LED diode i idu prema smjeru kazaljke na satu prema unutra. Središnja LED dioda je broj 60.
Svaka vizualizacija oslanja se na dvodimenzionalne nizove podataka, koji preslikavaju svaku LED diodu u određeni položaj za ciljni segment vizualizacije.
Na primjer, za koncentrične krugove postoji 5 segmenata:
- Vanjski krug, LED diode dugačke 0 - 23, 24 LED diode
- Drugi vanjski krug, LED diode 24 - 39, dugačke 16 LED
- Treći krug (u sredini), LED diode 40 - 51, dugačke 12 LED dioda
- Drugi unutarnji krug, LED diode 52 - 59, dugačke 8 LED dioda
- Unutrašnja LED, LED 60, 1 LED duga
Vizualizacija prikazuje 5 od 7 audio kanala i progresivno svijetli LED diode prema njihovom položaju u kružnom pojasu proporcionalno razini zvuka u pojasu.
Druge vizualizacije koriste različite strukture podataka i formate, ali ideja je uvijek imati vizualizacije koje pokreću nizovi podataka, a ne toliko kôd. Na ovaj način vizualizacije se mogu prilagoditi različitim oblicima (više ili manje LED dioda, više EQ opsega) bez promjene koda, samo vrijednosti u nizovima podataka.
Na primjer, ovako struktura skice za vizualizaciju 1 izgleda na skici:
// Vizualizacija 1 i 3 - punih 5 bajtova za krug TOTAL_LAYERS1 = 5; const byte LAYERS1 [TOTAL_LAYERS1] [25] = {// 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 {24, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23}, {16, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39}, {12, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51}, {8, 52, 53, 54, 55, 56, 57, 58, 59}, {1, 60}};
Korak 4: Vizualizacije
Do sada postoji 7 vizualizacija i početna animacija:
Animacija pri pokretanju
Kad je uređaj uključen, prikazuje se imitacija vatrometa. Ovo je trebao biti LED i Servo test niz, ali je kasnije evoluirao u animiranu verziju takvog testa
Koncentrični šareni krugovi
Svjetla se oko ekrana kreću u koncentričnim krugovima proporcionalnim amplitudi odgovarajućeg eq pojasa. Nasumično prebacivanje između kazaljke na satu i obrnuto i polako rotiranje boja preko kotača u boji 256
Malteški križ
Jedan pojas je središnja LED dioda. Drugi pojas su okomite i vodoravne linije LED dioda, a preostali segmenti predstavljaju svaki EQ pojas. Svi segmenti rotiraju boje u 128 pomaka kako bi ostali kontrastni.
Pulsirajuća svjetla
Svaki krug osvjetljava sve LED diode zajedno za namjenski eq band, dok se boje polako okreću s blagim pomakom. EQ pojasevi postupno se pomiču iz jednog kruga u drugi stvarajući vanjsku progresiju.
Kamin
Trake su polukrugovi osvijetljeni od dna do vrha koji počinju svijetlocrvenom bojom i dodaju žutu boju na putu prema gore simulirajući goruću vatru u kaminu. Povremeno se svijetlo bijela "iskra" nasumično pojavi. Nema rotacije boje
Svjetla za trčanje
Svaki koncentrični krug zaseban je EQ pojas. Vodeće LED diode su one na okomitoj liniji ispod središnje LED diode. Nakon što se LED upali proporcionalno amplitudi pojasa, počinje "trčati" po odgovarajućem krugu polako smanjujući intenzitet. Podržane su i rotacije u smjeru kazaljke na satu i nasumično se mijenjaju.
Svjetlo drveće
Segmenti su osvijetljeni ravnom linijom od donje LED diode prema gore, a zatim bočno u koncentričnim polukružnicama oponašajući palme. Rotacija boja.
Bočni segmenti
Ovo je verzija prethodnog malteškog križa sa samo 2 iskošena segmenta. Pretpostavlja se da sliči ikoni za zvučne valove.
Korak 5: Upravljanje tipkama na dodir
Postoje 4 tipke osjetljive na dodir:
- Prođite kroz vizualizacije i zadržite trenutnu dok se ne odabere druga (prema zadanim postavkama vizualizacije se kreću svakih 30 sekundi)
- "Zamrzni" / "odmrzne" trenutnu shemu boja - ako vam se sviđa određena kombinacija boja, možete je zamrznuti - rotacija boje je onemogućena, a vizualizacija će se nastaviti samo s ovom paletom boja
- Podesite osjetljivost mikrofona
- Uključite / isključite "način plesa"
U plesnom načinu rada uređaj će pokušati otkriti "ritam" trenutno reproducirane glazbe i okrenuti glavu prema ritmu. Da budem iskren, do sada je "ples" više neugodan nego lijep.
Korak 6: Otkrivanje otkucaja i servo "ples"
Uređaj neprestano pokušava otkriti "otkucaje" trenutne melodije kao udaljenost između uzastopnih vrhova pojasa 63Hz. Kada se detektira (i samo ako je način plesa UKLJUČEN), uređaj će aktivirati svoj servo motor kako bi nasumično skrenuo ulijevo ili udesno prema ritmu.
Sve svijetle ideje o tome kako to učiniti pouzdanijim su dobrodošle!
Skica 'Music_Test_LED' emitira 7 EQ opsega na način prikladan za iscrtavanje pomoću Arduino IDE -a.
Korak 7: 3D oblici
Cijeli sklop Party Lights dizajniran je od nule pomoću Autodesk TinkerCAD -a.
Originalni dizajn nalazi se ovdje. Mapa "files/3D" na github.com sadrži STL modele.
Ovaj dizajn ilustrira kako uređaj izgleda sastavljen.
Sve su komponente ispisane, a zatim sastavljene/zalijepljene.
"Kupola" sadrži mikrokontroler, Bluetooth ploču i mikrofon. Mikrokontroler je postavljen na ploču 40 mm x 60 mm i podržan je odgovarajućim šinama.
Servo se nalazi u "nozi" kupole, dok su gumbi smješteni u podnožju.
Odjeljak za baterije je ispisan posebno za vrstu baterije spomenutu u odjeljku Potrošni materijal. Ako odlučite koristiti drugu bateriju, pretinac će se morati prema tome ponovno dizajnirati.
Korak 8: Napajanje
Čini se da Ultra-Compact 5000-mah dvostruki USB izlazi Super Slim Power Bank pružaju dovoljno snage za sate rada.
Odjeljak za bateriju dizajniran je na takav način da se odvaja od ostatka uređaja i može se zamijeniti onim namijenjenim za drugu vrstu baterije.
USB utikač postavljen je i vruće zalijepljen za spajanje baterije dok klizi.
Korak 9: Bluetooth kontrola
Dodaje se HC-05 modul koji pruža način bežičnog upravljanja uređajem.
Kada je uključen, uređaj stvara Bluetooth vezu pod nazivom "LEDDANCE", s kojom možete upariti telefon.
U idealnom slučaju, trebala bi postojati aplikacija koja omogućuje upravljanje PartyLights (odabir palete boja, simuliranje pritiska tipki itd.). Međutim, još nisam napisao nijedan.
Ako ste zainteresirani za pisanje Android ili iOS aplikacije za Party Lights, javite mi!
Za upravljanje uređajem trenutačno možete koristiti aplikaciju Bluetooth terminala i slati sljedeće naredbe:
- LEDDBUTT - gdje je '1', '2', '3' ili '4' simulira pritisak na odgovarajuću tipku. Npr.: LEDDBUTT1
- LEDDCOLRc - gdje je c broj od 0 do 255 - položaj željene boje na kotačiću u boji. Uređaj će se prebaciti na navedenu LED boju.
-
LEDDSTAT - vraća broj od 3 znaka koji se sastoji samo od '0 i' 1:
- prva pozicija: '0' - boje se ne rotiraju, '1' - boje se rotiraju
- druga pozicija: '0' - način plesa je isključen, '1' - način plesa je uključen
- treća pozicija: '0' - mikrofon je u normalnom pojačanju, '1' - mikrofon je u visokom pojačanju
Korak 10: Upravljajte aplikacijom na temelju Blynka
Blynk (blynk.io) je hardversko-agnostička IoT platforma. Koristio sam Blynk u svom IoT automatskom sustavu za navodnjavanje biljaka i bio sam impresioniran lakoćom i robusnošću platforme.
Blynk podržava povezivanje s rubnim uređajima putem Bluetootha - upravo ono što nam treba za PartyLights.
Ako to već niste učinili, preuzmite aplikaciju Blynk, registrirajte se i ponovno stvorite aplikaciju Blynk PartyLights koristeći snimke zaslona priložene ovom koraku. Provjerite jesu li dodjele virtualnih pribadača iste kao na snimkama zaslona, inače gumbi u aplikaciji neće raditi kako je predviđeno.
Datoteka "blynk_settings.h" sadrži moj osobni Blynk UID. Kad kreirate svoj projekt, bit će vam dodijeljen novi za korištenje.
Prenesite skicu PartyLightsBlynk.ino, pokrenite aplikaciju. Uparite Bluetooth uređaj i uživajte u zabavi.
Korak 11: Skice i knjižnice
Glavna skica i datoteke za podršku nalaze se na Github.com ovdje.
U skici Party Lights korištene su sljedeće knjižnice:
- TaskScheduler - kooperativni višezadaćnost - ovdje (razvio sam)
- AverageFilter - filtar s prosječnim uzorkom - ovdje (razvio sam)
- Servo - Servo kontrola - standardna je Arduino knjižnica
- WS2812B -NEOPixel control - dolazi kao dio STM32 paketa
Ova Wiki stranica objašnjava kako se koriste STM32 ploče s Arduino IDE -om.
Korak 12: Buduća poboljšanja
Nekoliko stvari moglo bi se poboljšati u ovom dizajnu, što biste mogli uzeti u obzir ako se upustite u ovaj projekt:
- Koristite ESP32 umjesto Maple Mini ploče. ESP32 ima 2 procesora, Bluetooth i WiFi nizove, a može raditi na 60MHz, 120MHz pa čak i 240MHz.
- Manji dizajn - rezultirajući uređaj je velik. Moglo bi biti kompaktnije (pogotovo ako odbacite plesnu ideju i pripadajući servo)
- Otkrivanje otkucaja moglo bi se beskonačno poboljšati. Ono što nama ljudima prirodno dolazi čini se da je teško računalo za računalo
- Moglo bi se osmisliti i implementirati mnogo više vizualizacija.
- I, naravno, mogla bi se napisati aplikacija za bežično upravljanje uređajem s cool korisničkim sučeljem.
Preporučeni:
Interaktivna svjetla za dvorište, svjetla za hodnike: 3 koraka
Interaktivna svjetla za dvorište, svjetla za hodnike: Htjela sam izgraditi neku vrstu interaktivnih svjetla za dvorište. Ideja je bila da, kad bi netko hodao u jednom smjeru, pokrenula bi se animacija u smjeru u kojem ste hodali. Počeo sam sa solarnim svjetlima Dollar General od 1,00 USD
Prekidač svjetla aktiviran pokretom sa senzorom svjetla: 5 koraka
Prekidač svjetla aktiviran pokretom sa senzorom svjetla: Prekidač svjetla aktiviran pokretom ima mnogo primjena kako u kući tako i u uredu. Ovo je, međutim, imalo dodatnu prednost uključivanjem svjetlosnog senzora, tako da se ovo svjetlo može aktivirati samo noću
Sustav zabave Super Wood: 9 koraka (sa slikama)
Sustav zabave Super Wood: S ponosom predstavljam svoje potpuno ispravne drvene sustave zabave Super Nintendo. Prije nego što sam objavio svoj priručnik o tome kako izgraditi drveni Super Nintendo gamepad, a sada je vrijeme da vam pokažem kako izgraditi konzolu. Drveno kućište izrađeno je od više
LED ogrtač za zabave: 15 koraka (sa slikama)
LED Party Coat: New York City konačno je ukinuo svoj vrlo zastarjeli zakon o kabareu. Dakle, zaplešimo. Trebat će vam pravo odijelo za ovu priliku. Ovaj kaput je divlji modni komad s neočekivanom sposobnošću: svijetli dok se okolno svjetlo prigušuje . Kao stvorenje sa
Božićna svjetla "uradi sam" uglazbljena - koreografska svjetla kuće: 15 koraka (sa slikama)
Božićna svjetla "Uradi sam" uglazbljena - Svjetla u koreografiji: Svjetla u kućnoj radinosti uglazbljena - Umjetnička svjetla u koreografiji Ovo nije DIY za početnike. Trebat će vam dobro razumijevanje elektronike, kruga, OSNOVNOG programiranja i općenite spoznaje o električnoj sigurnosti. Ovaj DIY je za iskusnu osobu pa