Sisukord:

Arduino Music Reactive Desktop Lamp: 8 sammu (piltidega)
Arduino Music Reactive Desktop Lamp: 8 sammu (piltidega)

Video: Arduino Music Reactive Desktop Lamp: 8 sammu (piltidega)

Video: Arduino Music Reactive Desktop Lamp: 8 sammu (piltidega)
Video: CS50 2015 - Week 7 2024, November
Anonim
Arduino muusika reaktiivne laualamp
Arduino muusika reaktiivne laualamp

Tere kõik!

Selles konstruktsioonis valmistame reaktiivse LED -laualambi, kasutades lihtsaid komponente ja mõningaid Arduino põhiprogramme. See annab muljetavaldava efekti, kus valgus tantsib kõigi helide ja muusika järgi. Lõpetasin selle projekti koos meeskonnakaaslasega.

Mis inspireeris mind seda tegema? Minu mooduli ühe õpetuse ajal anti meile võimalus õppida, kuidas Arduino töötab, ja ma olin sellest ajast alates lummatud selle lugematuid võimalusi koos asjaoluga, et see on avatud lähtekoodiga riistvara. Olles saanud ülesandeks luua ja täiustada digitaalset artefakti, tahtsin kasutada arvutamist kui vahendit ja vahendit kunsti ja kultuuri väljendamiseks selle füüsilise digitaalse eseme kaudu. Samuti on mul alati olnud asi LED -e sisaldavate objektide suhtes, kuna tunnen, et LED -ribad reguleerivad laias valikus võimalusi - alates eseme kokkupanekust kuni värvi juhtimiseni. See võib muuta lihtsa objekti suurepäraseks ja interaktiivseks. Mis oleks parem, kui saaksime selle kanda kantavaks objektiks. Olen kindel, et enamik teist on DJ marshmello ja tema ikooniliste peakatete kohta teadnud. Minu algne kontseptsioon oli täiustada kantavat marshmello kiivrit, lisada sellele LED -tuled, mis on varustatud Arduino ja kiirendusmõõturi liikumisanduriga (puudutab seda lõplikes mõtetes rohkem). Kuid eelarve (LED -i hind on kallis..) ja projekti praktiliste kaalutluste tõttu muutsime selle idee selliseks helikindlaks marshmello LED -lambiks. Seda võib kindlasti vaadelda kui popkultuuri tutvustavat meediumit ning olles helile reageeriv lamp, tundub see olevat digitaalne kunst.

See on meie versioon projektist. Kõik auhinnad youtuberi "Natural Nerd" -ile järgisime nende tehtud tegude põhjal ja täname neid selle eest, et nad andsid meile üksikasjad selle kohta, kuidas projekti teha. (Looduslik Nerd)

1. samm: PÕHITARVIKUD

PÕHITARVIKUD
PÕHITARVIKUD

Esiteks: need on vajalikud tarvikud. Need on suures osas vabatahtlikud - selle põhjal saate hõlpsalt oma projekti improviseerida ja kohandada. Sellegipoolest on mõned juhised vajalikud, kui soovite seda juhendit järgida.

  • Arduino Uno (või mis tahes sama väike Arduino tüüp)
  • Helidetektori moodul
  • Väline toiteallikas
  • Individuaalselt adresseeritavad LED -ribad 60 LED -i meetri kohta
  • Jumper juhtmed
  • Leivalaud

Sõltuvalt välimusest, mida soovite saavutada, võiksite ribad paigutada erinevalt või kiirgata valgust muul viisil. Oma lähenemisviisi jaoks kasutasin järgmisi punkte:

  • Taaskasutatud klaaspurk (või mõni muu purk, mis sobib teie mõõtmetega)
  • Must kaardipaber
  • Vahtplaat
  • Pihustusvärv (kasutatakse purgi katmiseks)

Kõik peamised esemed osteti ettevõttelt Continental Electronic (B1-25 Sim Lim Tower), LED -ribad olid vaieldamatult kõige kallim osa, mis maksis 18 SGD 1 meetri kohta - kasutasime 2 meetrit. Ülejäänud esemed olid kas ringlussevõetud materjalid või ostetud naabruses asuvast lähikauplusest.

2. samm: KOMPONENTIDE TOITMINE

KOMPONENTIDE TOITMINE
KOMPONENTIDE TOITMINE

Kasutasin välist toiteallikat, näiteks vahelduvvoolu -alalisvoolu toiteallikat - letis olev mees soovitas välist toiteallikat, kuna parem oleks toita 2 -meetrine LED -riba ja mitte põletada USB -porti. Kui kasutate 1 meetrit või vähem, teete ilma välise toiteallikata ja kasutate lihtsalt Arduino Uno USB -kaablit ja ühendate selle otse arvutiga.

Projekti põhikomponent on helidetektori moodul. See annab Arduinole analoogsignaali (sisendi), mida kasutatakse RGB -tulede (väljund) valgustamiseks. Väline toiteallikas toidab kõiki kolme komponenti - Arduino, helidetektori moodulit ja LED -tulesid. Ühendage VIN (või 5 V) Arduino ja VCC helidetektori plaadil positiivse sisendiga. Seejärel ühendage Arduino GND ja detektor negatiiviga. Seda illustreerib lisatud skeem. Samuti peame toiteallika külge ühendama LED -riba 5V ja GND sisendi.

Kasutasime nende ühenduste vahendajana leivaplaati. Toiteallikas läheb välisele toiteallikale leivaplaadile, mis seejärel toidab kolme komponenti, nagu mainitud.

Märkus: meie juhendaja soovitas toite- ja helidetektori mooduli ühendamiseks kasutada takistit, nii et kogu toide ei lähe moodulile, võimaldades paremat sisendit.

3. samm: DETEKTOR JA RIBAD

DETEKTOR JA RIBAD
DETEKTOR JA RIBAD

Pärast kõigi kolme komponendi ühendamist toiteallikaga peame need omavahel ühendama.

Helidetektori moodul suhtleb Arduinoga analoogsisendipistikute kaudu - kasutan tihvti A0.

LED -ribad vajavad digitaalset impulssi, et mõista, millist LED -i adresseerida. Seega tuleb digitaalse väljundtihvti DI ühendada Arduinoga. Ma kasutan Arduino tihvti 6. Saime poe, kust ostsime elektroonika, et joota kõik LED -riba hüppaja juhtmed. Seega ei olnud meie enda jaoks vaja jootmistööd, säästes sellega probleeme. Vaja oli vaid isane-emane kaabel selle külge haakida.

Samamoodi saate ühenduste ülevaate saamiseks lihtsalt järgida esitatud skemaatilist diagrammi.

Samm 4: KOODI ÜLESLAADIMINE

KOODI LAADIMINE
KOODI LAADIMINE

See on vaieldamatult projekti kõige olulisem osa. Siit leiate minu kasutatava koodi allika (link) või minu selle versiooni (lisatud fail). Peamine põhimõte on kaardistada andurilt saadud analoogväärtus näidatavate LED -ide arvuga.

Iga kord alustamiseks tahame tagada, et kõik tuled töötaksid ootuspäraselt. Seda saame teha massiivifunktsiooni abil, mis võimaldab teil sisse lülitada kõik üksikud LED -id.

Seejärel läheme edasi lambi helide visualiseerimise põhifunktsiooni juurde. Seda saame teha kaardifunktsiooni abil. See võimaldab meil kvantifitseeritava muutuja sisendi korral kuvada teatud arvu LED -e. Oma lähenemisviisi jaoks otsustasin suurendada seadistatud LED -ide arvu (180 määratletud koodis, mitte 120 LED -i). Proovisin erinevaid seadistusi - sealhulgas helidetektori mooduli tundlikkuse reguleerimist, mikrofoni madala ja maksimaalse väärtuse variatsioone jne. Kuid ma ei suutnud soovitud visualiseerimist saavutada enne, kui olin LED -ide arvu suurendanud. Samuti on olemas teine protseduurilisuse kiht. Kood võimaldab heli intensiivsust keskmiste põhjal täpsemalt jälgida, et valgus saaks värvi muuta, kui lugu jõuab tippu - "HIGH mode".

Olenevalt välimusest, mida soovite saavutada, võiksite kohandada kasutatud koodi. See video (link) selgitab koode üksikasjalikult.

5. samm: KORPI ETTEVALMISTAMINE

KORPI ETTEVALMISTAMINE
KORPI ETTEVALMISTAMINE
KORPI ETTEVALMISTAMINE
KORPI ETTEVALMISTAMINE
KORPI ETTEVALMISTAMINE
KORPI ETTEVALMISTAMINE

Kõigepealt rullisin musta kaardipaberi umbes sama ringikujulise ja läbimõõduga nagu klaaspurgi ava. Mul puudusid sobivad mõõteriistad. Seega improviseerin, keerates põhimõtteliselt kogu musta kaardipaberi purki. Pärast vajaliku musta kaardipaberi pikkuse mõõtmist lõikasin selle hoolikalt, järgides minu antud märki. Seejärel teipisin otsad kokku, moodustades silindrikujulise toru. Korpuse pikkus ja kõrgus sõltuvad purgi mõõtmetest. Võite kasutada mis tahes pikkust, mida soovite.

Järgmisena mässin korpuse, mille olin teinud, LED -riba ümber, maskeerides kogu korpuse pinna. Seda tehti lihtsalt riba tagaküljel oleva liimiga. Veendun, et väike pilu oleks välja lõigatud, et juhtme liigne pikkus saaks juhtme korrektsemaks haldamiseks korpuse sisse libiseda ja mitte takistada loputuspinda.

Kolmandaks kasutatakse õõnsa silindrikujulist toru eelisena, täites elektroonika seestpoolt. Alustuseks kinnitasin Arduino ja leivalaua juhtmeühendused, kasutades sinist kleepuvust. Seejärel teipisin liigse traadi pikkuse tavalise 3M lindi abil alla. See samm on ettevaatusabinõu, et vältida juhtmete hõlpsat lahtiühendamist kokkupaneku käigus.

Neljandaks, kokkupandud plaat on siis korpusesse sisestamiseks valmis. Kuna elektroonika on korpuse sisse "peidetud", peab ehitise paigutus olema selline, et kasutajal oleks lihtne juurdepääs Arduino USB -le. Vähe sellest, ka helidetektori moodul peab olema suunatud allapoole, et moodul hõlbustaks ümbritseva helisisendi vastuvõtmist. Seetõttu paigaldatakse kokkupandud plaat selle võimaldamiseks vertikaalselt. Osa vahtplaadist kasutati kokkupandud plaadi hoidmiseks korpuse külge. Selle etapi ajal ühendatakse LED -riba (punase, oranži, kollase hüppetraadiga) pärast elektroonika paigutamist. Kõik ühendused on tehtud kuni selle hetkeni, välja arvatud need, mis on ühendatud välise toiteallikaga - punase ja musta juhtmega.

6. etapp: ise

KOHTU ISE
KOHTU ISE
KOHTU ISE
KOHTU ISE
KOHTU ISE
KOHTU ISE

Kuna ma loen laualambi Marshmello pea koopiaks, pidin valge klaasvärviga katma kogu klaaspurgi, välja arvatud silmad ja suuosa, mis pidi olema must. Silmade ja suu šabloon lõigatakse välja ja kleepitakse purgile enne pihustamistööd. Purk jäeti enne silmade ja suu asetamist purki seest kuivama. Seda tehti allesjäänud musta kaardipaberi abil (esialgu mõtlesin selle lihtsalt mustaks värvida). Mõju osutus hästi, kuna tundub, et silmad ja suu kiht lõigati tegelikult välja.

Metallkaanel pidi olema keskne ava, et pääseda juurde Arduino USB -le, helidetektori moodulile ja toiteallikale, nagu mainitud. Lõikamine õnnestus mul koolis töökojas.

Samm 7: LÕPETAMINE

LÕPETAMINE
LÕPETAMINE
LÕPETAMINE
LÕPETAMINE
LÕPETAMINE
LÕPETAMINE

See on nüüd ehitise viimane kokkupanek.

Esmalt kontrollitakse LED -riba, et veenduda, kas tuled tegelikult töötavad ja kõik ühendused on õiged. Olles veendunud, et komponendid töötavad, võite jätkata korpuse sisestamist tehtud purgikorpusesse. Aukust (isegi pärast kaane asetamist) ja elektrooniliste komponentide paigutusest näete nii Arduino USB -liidest kui ka altpoolt toiteallikat. Helidetektori moodul ulatub ka kergelt väljapoole, et heli paremini jäädvustada. Jalade jaoks kasutasin vahtplaadist välja lõigatud kuubikuid ja värvisin need mustaks. Ideaalis võite oma laualambi jaoks kasutada mõnda kena puidust alust.

Märkus. Esimese prototüübi vesimärkidest nähtuvalt oli värvimistööd halvasti tehtud, seetõttu pidin kogu katte maha võtma, kasutades selleks õhemat lahust, seejärel uuesti värvima. See nõudis kindlasti lisapingutusi, mida saate vältida.

Ja lõpuks lõpetasin projekti. Kindlasti kulus korduvaid katseid ja vigu - kas koodi käivitamiseks või kokkupanekuprotsessi muutmise osas, kuid olin saavutatuga rahul.

8. samm: TÄIELIK

See oli suurepärane projekt ja mul oli seda lõbus teha. Lisaks on see eriti tore, kuna see on nii kohandatav ja võimaldab tulevikus ajakohastamist. Koodi saab igal ajal ümber töötada ja põhimõtteliselt saate iga kord uue lambi.

TULEVIKUD PARANDUSED

Ehituses on aga veel palju täiustusi ja/või variatsioone.

Saate lisada erinevaid Arduinoga ühendatud nuppude sisendeid. Selle abil saate režiimi muuta, et rakendada üldist lambifunktsiooni, näiteks üldist pulseerimist. See võimaldab lülituda praeguse heli reageerimisrežiimi ja üldise gradiendi pulseerimisrežiimi vahel. Kiirguslampide värvikomplekti muutmiseks saab rakendada veel ühe nupu (komplekt 1 - sinine kollaseks, komplekt 2 - punane lillaks jne). Või veelgi enam, teil võib olla 3 protseduurilisuse kihti, kus on rohkem režiime helitugevuse täiustatud jälgimiseks keskmiste põhjal - "LOW", "NORMAL", "HIGH". Nii saavutate laiema värvilaine.

Mulle meeldib ka tagasi pöörduda oma algse kontseptsiooni juurde, kantava marshmello LED -pea juurde. See tundub julgema konstruktsioonina, mis ühendab nii helidetektori kui ka kiirendusmõõturi liikumismooduli kasutamise. Helidetektori moodul üldistab LED -tulede impulsi visualiseerimist, samas kui kiirendusmõõturi liikumismoodul muudab tulede värvi vastavalt sisestatud sisendile - kasutaja liikumisastmele.

Põhimõtteliselt on idee selles, et piirangud on lõputud ja seda piirab ainult teie nägemus. Täname vaatamise/lugemise eest ja mõnusat aega oma Arduinoga!

Soovitan: