Kako izgraditi oblak svjetiljke sa zvučno reaktivnom munjom

  • Edmund Richardson
  • 0
  • 5410
  • 817
Oglas

Prije nekoliko mjeseci, svjetiljka za grmljavinu i munje u iznosu od 3000 dolara postala je viralna u zajednici proizvođača. Bilo je to zapanjujuće lijepo svjetlo, ali cijena ga je ostavila nedostupnim svima koji nisu bili netaknuti. Ono što ćemo danas napraviti nije posve isto - napravit ćemo nešto praktičnije, umjesto umjetničkog djela, ali bit će puno svježije i prilagodljivije.

Odlučio sam izostaviti zvučnike pod pretpostavkom da vjerojatno već imate dobar par zvučnika u vašoj sobi koji biste radije koristili, a iskreno stavljanje zvučnika u lampu je nekako čudno. Umjesto toga, dodajem mikrofon koji će omogućiti munje da automatski reagiraju na glasne zvukove - bilo od stvarne grmljavinske oluje ili zvučnog zapisa koji se reproducira s vašeg računala ili stereo uređaja.

Koristit ćemo i cjelinu punih RGB neopikselnih LED (WS2812B), tako da možemo reproducirati i druge boje osim bijele i imati kontrolu nad svakim pikselom.

Upozorenje: napajanje koje sam koristio u ovom projektu ima vijčane stezaljke koje se spajaju na živu izmjeničnu žicu. Ako ne smatrate sigurnim da spajate utikač, obavezno kupite potpuno zatvoreni izvor napajanja. U najmanju ruku, PSU trebate zatvoriti unutar sigurnog okvira za projekte.

Korak 0: Uvod

Evo demo videa gotovog projekta. Do sada sam implementirao nekoliko različitih modusa, od standardne munje do tropskog kiselog oblaka i lampice raspoloženja u boji koja se može odabrati iz daljinskog upravljača.

Potpuni kôd i potrebne biblioteke dostupni su za preuzimanje iz ovog Github-ovog spremišta.

1. korak: trebat će vam

  • WS2812B pramen, obično cijene oko 50 USD za 5 metara. Ne brinite ako imate drugu vrstu žice Neopixel, gotovo sigurno podržava sučelje FastLED, ali vaše ožičenje može biti drugačije (možda će vam trebati signalna linija pored signala, na primjer).
  • 5V, 10A + napajanje - kupio sam nekih 15A jedinica po 11 dolara. Oni uzimaju izmjenični ulaz 120-240V i stvaraju snažan 5V izlaz koji će biti dovoljan za napajanje svih naših piksela pri punoj svjetlini i Arduino.
  • Električno kabliranje, utikač i inline sklopka
  • Ograđenost projekta
  • Dva Arduinosa. 10 klonova Funduino $ 10 su u redu. Drugi je potreban za daljinsko upravljanje, dok prvi kontrolira glavnu logiku i LED.
  • Dva 2.2k (ili otprilike) oma otpornika - točna vrijednost nije toliko bitna, oko 1,5k do 47k bi trebalo raditi.
  • daska za kruh
  • TSOP4838 IR prijemnik
  • IR daljinski - kupio sam skupno za otprilike 2 dolara, ali bilo koji daljinski upravljač trebao bi raditi s modifikacijama koda.
  • Veliki modul mikrofona
  • Ostružite drvo od MDF-a za rezanje baze i slagalicu.
  • Polistirenski ambalažni materijali / umeci za kutije.
  • Punjenje jastučića od polipropilenskog pamuka. Izvukla sam se više nego dovoljno iz nekoliko strašnih starih jastuka. Ako to nije opcija, trebali biste moći kupiti nešto novo za otprilike 10 dolara ili upotrijebiti još jeftiniju pamučnu vunu. Pokušao sam s obojicom - pamučna vuna trebalo je više posla da je izgnječim i nije tako tečna, ali na prstohvat, djelovat će.
  • Lanac i kuke za objesiti oblak - treba izdržati više od 5 kg.
  • Pištolj za ljepilo s postavkom na niskoj temperaturi
  • Spray ljepilom - lakše ćete nalijepiti nadev na svoj oblak, ali pištolj s ljepilom također može raditi.

Ukupni trošak je oko 100 USD, ne uključujući alate, ali većinu toga sam pregledao po kući. Sve su elektroničke komponente uobičajeno dostupne; mikrofon se može naći u kompletu sa senzorima ili ih se može kupiti pojedinačno.

Korak 2: Izrežite bazu

Izrezati grubu podlogu iz komada otpadaka MDF pomoću ubodne pile - očigledan je točan oblik, ali iz nekog razloga mi je u oblaku oblik bubrega u obliku graha. Na ovo ćemo pričvrstiti neke kuke za vješanje, ali u suprotnom to samo pruža čvrste osnove za izgradnju. Središnji prostor bit će rezerviran za elektroniku, PSU i za predaju lanca, pa osigurajte da imate dovoljno prostora za smještaj barem svog kućišta projekta s nekim kukama oko njega.

Korak 3: Sloj na stiropor

Ovo je najteži i najkreativniji korak, ali mi zapravo samo stvaramo nešto čvrsto i rod-sorta u obliku oblaka zalijepiti LED traku na. Ljepite velike komade polistirena koji se pakiraju na podlogu (i ispod nje) primjenom niske topline vašeg pištolja za ljepilo. Ako nemate nisku postavku, isključite toplotni pištolj i ostavite ga da se malo ohladi prije nego što pokušate ljepiti. Ako je temperatura previsoka, jednostavno ćete se rastopiti kroz ambalažni materijal.

Osigurajte da je svaki komad čvrste prije lijepljenja sljedećeg i najbolje je lijepiti više nego dovoljno.

Opet, sjetite se ostaviti dovoljno veliku šupljinu unutar oblaka da stane elektronike, lanca i kuka.

4. korak: izrezujte 3D oblačni oblik

Koristite nož za rezbarenje kako biste uredili svoj oblak zaokruživanjem uglova i rezanjem nepotrebnog materijala, sve dok ne postignete grubi oblik 3D oblaka. To zapravo i nije važno koliko je to grubo jer ćemo sve pokriti kasnije u nadjevu - lako možete sakriti pogreške.

Korak 5: Popravite kuke, pospremite

Na kraju, pričvrstite tri ili četiri kuke na bazu MDF-a, iz svakog kuta šupljine oblaka. Morat ćete izbušiti malu rupu za pilote jer je MDF teško zabiti se ravno u njega.

Također sam dao svemu jednostavni premaz bijele boje u spreju, kako bih osigurao jednoliku bazu boja, ali nisam siguran da je zapravo potrebno.

Korak 6: Ljepljive LED trake

Prije nego što počnete nanositi ljepilo na LED-ove, započnite s novom trakom ili računajte koliko LED-ova imate ukupno - morat ćete utvrditi koliko ste ih koristili kasnije u koraku programiranja. Izrežite malu rupu na boku vašeg oblaka i provucite se kroz žice koje čine početak vaše LED trake u oblaku šupljine. Budite vrlo oprezni da krenete s pravilnog kraja - LED trake su osjetljive na smjer, pa osigurajte da signalne strelice usmjeravaju prema šupljini.

Radeći polako, zalijepite LED piksele na polistirensku bazu u kružnom uzorku, prije nego što povučete traku prema dolje da pokrijete donju stranu. Opet - ne trebate biti savršeni ovdje, jer nakon što smo sve razgradili i ublažili punjenjem, sve ionako izgleda prilično zapanjujuće.

Koristila sam ukupno 85 LED-ova, ili nešto više od 2,5 m, dvaput sam opkolila glavno tijelo i upotrijebila jedan niz LED-ova s ​​donje strane.

Korak 7: Dijagram ožičenja

Ožičenje je složeno, ali lako se raščlaniti na dijelove.

Prvo uključite i osigurajte izvor napajanja, po mogućnosti u zasebnom projektnom slučaju. Neću vas predavati o sigurnosti živih izmjeničnih žica, pa pretpostavljam da možete nositi s ovim dijelom, a vi od njega imate 5V i GND liniju.

VAŽNO: kada programirate i testirate Arduino, 5V vašeg napajanja treba ostati izoliran od Arduinovih (doduše, svi GND-ovi su povezani) - on bi trebao napajati samo LED traku, dok Arduino koristi 5V isporučeni preko USB-a. Kad završite s programiranjem, USB bi trebao biti isključen i više neće isporučiti 5V na Arduino - u ovom trenutku trebali biste spojiti 5V iz vašeg napajanja na 5V vodilicu na lijevoj strani ploče..

Započnite spajanjem tla i 5V pinova iz svakog Arduino-a na lijevu bočnu šipku ploče. Dijelit će isti izvor napajanja, bilo da je to vanjski PSU koji imamo ili USB priključen na jedan od njih.

Zatim dovršite odjeljak o I2C ožičenju - to omogućuje našim Arduinosima da komuniciraju. Podignite igle A4 iz oba Arduinosa u jedan red na ploči, a zatim spojite otpornik od 2,2 k iz tog reda na 5V vodilicu. Ponovite za A5, povezujući ih u zasebnom redu, s još 2,2k otpornikom na 5V.

Sljedeće spojite IR prijemnik - provjerite konfiguraciju iglica ako imate drugi model, ali u osnovi bi signalni pin trebao ići na D11 na jednom Arduinu. Prenesite thundercloud_ir_receiver.ino skicirajte na ovaj Arduino (svi kodovi ovdje), a zatim iskopčajte USB jer nam više ne treba.

Na drugom Arduinu spojite Podaci u signalni pin od početka LED trake do D6. GND vaših LED dioda trebao bi biti zajednički sa svim Arduinosima, ali u ovom trenutku 5V će doći izravno iz PSU-a.

Na ovom Arduinu, uključite modul mikrofona u A0. Prenesite drugu thundercloud.ino skicu, i držite USB priključen za sada dok ispravljate program. Započnite s promjenom oznake NUM_LEDS varijabla na odgovarajući način.

Korak 8: Ljepilo na nadjev

Kao posljednji korak, ljepilo na vaše stvari. Ovdje nema neke posebne tehnike - samo raspršite oblak slojem ljepila i zgrabite pregršt nadeva. Lakše je raditi s nadjevom, ako ste ga već ošišali kako biste povećali površinu.

Ako ste koristili isti daljinac kao i ja, gumb STROBE stavlja ga u zvučno reaktivan oblačni mod; FLASH je trostruki način boje, a FADE je lampica raspoloženja u boji blijede boje.

Korak 9: Objašnjenje koda

Zašto dva Arduinosa? I programiranje infracrvenog prijemnika i knjižnica upravljačkih programa piksela WS2818B vrlo su osjetljivi na vrijeme - ako se vrijeme odgodi, IR signal je oštećen. Dajući svakom krugu vlastiti mikrokontroler i ostavljajući im da razgovaraju preko I2C protokola, možemo osigurati da je vrijeme savršeno za svaki. Također možete pronaći zasebne IC module s ugrađenim vlastitim mikrokontrolerom, ali moje je istraživanje utvrdilo da oni zapravo koštaju više od jednostavnog Arduinovog klona i IR LED-a. Thundercloud_ir_receiever ne bi trebao zahtijevati objašnjenje, mada biste prvo trebali pročitati osnovne osnove I2C-a.

Na glavnom regulatoru thundercloud-a definiramo različite načine rada, kao što su UKLJUČENO (efekti munje nisu aktivirani zvukom), CLOUD (munja je aktivirana samo zvukom), ACID (oblak pokazuje trostruke boje) ili jednostavni načini rada u jednoj boji. Da biste odredili novi način rada, dodajte u enum prvo, zatim otvorite konzolu i pronađite tipku na daljinskom upravljaču za mapiranje - svaki daljinski pritisak trebao bi ispisati liniju uklanjanja pogrešaka. U receiveEvent () metoda, preslikavamo te pritiske tipki na način, pa tamo dodamo dodatnu izjavu o prebacivanju. Napokon u glavnom petlja() način usmjeravanja tih načina izbora na različite funkcije prikaza.

Kôd za izglađivanje mikrofona izvorno je iz Adafruit - pojednostavio sam ga za naše potrebe i dodao okidač kada se čuje glasniji od prosječnog šuma.

Korak 10: Načini munje

Ekrani za munje kombiniraju tri različita “vrste” munje da se postigne nešto dovoljno realistično ili barem ugodno oku. Prva vrsta je pukotina(), pri čemu se svaki LED nakratko uključi između 10-100ms. Druga vrsta je valjanje () - pri čemu svaki LED ima 10% šanse da se aktivira, a čitava se petlja ponavlja 2-10 puta, s kašnjenjem 5-100ms između svakog ciklusa. Treća vrsta je thunderburst (), koji odabire dva različita odsječka trake, svaki između 10-20 LED-ova, trepće na njih kratko od 3-6 puta. Detaljno proučite ove metode da biste vidjeli kako se aktiviraju pojedinačne LED - kotač u boji HSV koristi se u cijelom (tako da je bijela H = 0, S = 0, V = 255). Potaknuo bih vas da napunite ili napišete nove munje, a zatim ih podijelite u komentarima ako napravite jedan koji vam se sviđa.

Svaki put kada se pokrene munja ili pokreće petlja, oblak nasumično bira između tri vrste munje. Napokon, a reset () metoda isključuje sva svjetla, inače će se ugasiti “zapamtiti” njihovo prethodno stanje.

Pitanja ili problemi - javite se u komentarima i potrudit ću se pomoći. Ako imate Github račun, slobodno objavite bugove ili probleme u pretraživaču problema. Ako ste napravili bilo kakve izmjene ili napisali neke nove funkcije osvjetljenja, podijelite vezu s vašim kodom na Gist ili Pastebin.




Još ne komentari

O modernoj tehnologiji, jednostavnoj i pristupačnoj.
Vaš vodič u svijetu moderne tehnologije. Naučite kako koristiti tehnologije i uređaje koji nas okružuju svaki dan i naučite kako otkriti zanimljivosti na Internetu.