Sisällysluettelo:
Video: Retro LED Strip Audio Visualizer: 4 vaihetta (kuvien kanssa)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Muusikkona ja sähkötekniikan opiskelijana rakastan kaikkia hankkeita, jotka leikkaavat näitä kahta alaa. Olen nähnyt joitain DIY -audiovisualisoijia (täällä, täällä, täällä ja täällä), mutta jokainen oli jättänyt väliin ainakin yhden kahdesta itselle asettamastani tavoitteesta: ammattimainen rakenteen laatu ja suhteellisen suuri näyttö (hämärä 8*8) LED -matriisi ei tässä riitä!). Tämä audiovisuaalinen visualisoija saavuttaa molemmat tavoitteet hieman vintage -tyylillä ja 40 x 20 tuuman kokoisena.
Pahoittelut etukäteen pystykuvista. Monet heistä otettiin sosiaaliseen mediaan.
Vaihe 1: Osaluettelo
Minulla oli useita näistä osista jo makaamassa. Linkit ovat vain viitteellisiä. Älä osta tarpeettoman kalliita komponentteja.
Elektroniikka
- WS2811 60LEDS/m @ 5m, IP30 (ei vedenpitävä), osoitettava - Nämä olivat tuolloin halvempia kuin WS2812. Sinulla on tässä jonkin verran liikkumavaraa, mutta varmista, että mitat ovat oikeat ja että voit itse keskustella LEDien kanssa. Huomaa myös, että WS2811s on 12V ja WS2812s on 5V.
- 9 x 3-nastaiset JST-liittimet + liittimet
- DC 12V 20A (240W) virtalähde-Alun perin suunnittelin tekeväni 2 LED-nauhaa ja halusin räjäyttää kotisi-kaiutinsarjan. Jokainen valonauha on 90 W pahimmassa tapauksessa (en ole mitannut vahvistamaan), mikä jätti minulle ~ 60 W kaiuttimille + vahvistimelle. 15A -vaihtoehto oli joka tapauksessa vain 4 dollaria vähemmän.
- Virtajohto (3 piikkiä)
- Arduino Uno - Minulla oli R3 makaamassa, joten käytin sitä. Saatat löytää halvemman vaihtoehdon joltakulta tai toiselta myyjältä.
- TRRS Breakout - Aux -tulolle
- L7805 5V -säädin - Kaikki 5 V: n säätimet, jotka hyväksyvät 12 V: n tulon, toimivat.
- 330 nF, 100 nF kondensaattorit - L7805 -tuoteselosteen mukaan
- 2 x 10 kR, 2 x 1 kR, 2 x 100 nF kondensaattorit - äänitulojen esijännitystä varten
- Stereovastaanotin - mikä tahansa vintage -stereovastaanotin toimii niin kauan kuin siinä on aux -tulo (3,5 mm tai RCA). Ostin Panasonic RA6600: n pois craigslistista hintaan 15 dollaria. Suosittelen etsimään Goodwill-, craigslist- ja muista säästökaupoista vastaavia.*
- Kaiuttimet - ei BT -kaiuttimet. Pelkkä kaiutinsarja. Kiinnitä huomiota siihen, mikä impedanssi on yhteensopiva vastaanottimen kanssa. Löysin Goodwillistä 3 20 W: n (= kovaa) kaiutinsarjaa 6 dollarilla, ja sen mukana tuli "keskikaiutin" ja kaksi "etukaiutinta".
- Logitech BT -äänisovitin - tämä laite voi suoratoistaa ääntä stereokaiuttimiin ja piiriisi
- RCA -uros -RCA -uroskaapeli
- Aux -johto
Laitteisto
- 2x6 (8ft) - Ei painekäsitelty. Sen pitäisi olla ~ 6 dollaria tai vähemmän HD: ssä tai Lowessa
- 40% valonläpäisevää akryylia - tilasin 18 "x 24" x 1/8 ", ja se oli teknisesti 17,75" x 23,5 ". Pidä se kääreessä, kun menet laserleikkaukseen.
- Puutahra - Tarvitset vain pienen tölkin. Käytin Minwax punaista mahonkia ja siitä tuli erittäin mukavaa. Suosittelen ehdottomasti tummaa sävyä. Kokeilin alun perin provinssia, eikä se näyttänyt niin mukavalta.
- Lakka - Tarkista ensin tämä Steve Ramseyn video ja päätä itse, mikä toimii parhaiten. Sain puolikiiltävän suihkepullon (kiiltoa ei ollut saatavilla) ja rehellisesti sanottuna se ei tehnyt niin paljon. Mutta tein myös vain yhden kerroksen aikarajoitusten vuoksi.
- 40 x 1/2 "puuruuvit - Minulla oli pyöreä pää käytettävissä, mutta suosittelen käyttämään litteää yläosaa, jos mahdollista. En usko, että se vaikuttaisi rakenteen laatuun, mutta kysy rohkeasti ensin keneltä tahansa, joka tuntee puuntyöstön.
- Puuromu, gorillaliima, kuuma liima, juote, lanka ja komentoliuskat (tarranauhatyylinen, 20 keskikokoista tai 10 isoa)
* Aion rakentaa äänipalkin tehdäkseni tämän projektin kokonaan "tyhjästä", joka korvaa yllä olevat 9-13. Toivottavasti päivitän tämän ohjeen kesän loppuun mennessä.
Vaihe 2: Prototyyppien luominen
Tämä osio ei ole sinun täytettävä, mutta haluan näyttää, miltä projekti näytti edetessään.
Täällä teipasin alas LED -valot käärmekaaviossa ja kokeilin valon leviämistä roskapussin kautta, joka oli kerrostettu itsensä päälle (suosittelen lämpimästi vaihtoehtoa akryylille, jos yrität leikata kustannuksia. liitä se eri tavalla).
10x10 -kokoonpano toimi minulle, mutta saatat haluta 8x12 tai 7x14. Kokeile rohkeasti. Ennen kuin minulla oli stereo, löysin vahvistimen ja liitin sen leipälautaani, ja ennen sitä soitin ääntä kannettavalta tietokoneeltani piirille audioanalyysiä varten ja napsautin samanaikaisesti "play" puhelimessani kuullakseni sen.
Olen suuri uskovainen mittaan kahdesti, leikattu kerran. Joten mitä teetkin, seuraa tätä opasta ja olet valmis.
Vaihe 3: Piiri + koodi
Koodi on saatavilla GitHubissa.
Leipälevy, juote perfboardille tai suunnittele oma piirilevy. Mikä täällä sinulle parhaiten sopii, tee se. Demoni täällä toimii leipälevyllä, mutta kun rakennan soundbarin, siirrän kaiken PCB: lle. Katkaise naaraspää ja irrota musta eristys, jotta saat virtaa sovittimesta. Irrota tarpeeksi varsinaisia kaapeleita ruuvataksesi ne sovittimen liittimiin. Ole aina varovainen työskennellessäsi AC: n kanssa! Muuten vain muutama huomioitava asia tässä.
- Toinen tie on varmistaa, että maantiet ovat hyvät. Tarvitset maadoituksen sovittimesta Arduinoon aux -tuloon, joka yhdistää myös Logitech BT -vastaanottimen maahan ja sieltä stereoon. Jos jokin näistä on katkennut tai huono, saat erittäin meluisan äänitulon ja siten erittäin meluisan näytön.
- Äänitulon esijännitys Ääntä toistetaan aux -johdolla puhelimesta tai kannettavasta tietokoneesta tai mistä tahansa, ja se toistetaan -2,2 - +2,2 V: n jännitteellä. Arduino pystyy lukemaan vain 0 … +5 V, joten sinun on painotettava äänituloa. Tämä voidaan saavuttaa tehokkaasti op -vahvistimilla, mutta jos virrankulutus ei ole ongelma (ehkä ostit 240 W: n virtalähteen?), Se voidaan saavuttaa myös vastuilla ja kondensaattoreilla. Valitsemani arvot olivat erilaisia, koska minulla ei ollut 10uF -kondensaattoreita käsillä. Voit leikkiä simulaattorilla nähdäksesi, toimiiko valitsemasi.
- Fourier -muunnokset Kaikissa projekteissa, joissa käytetään Fourier -muunnoksia, on taustaosa, jossa keskustellaan niistä. Jos sinulla on jo kokemusta, hienoa! Jos ei, sinun tarvitsee vain ymmärtää, että he ottavat tilannekuvan signaalista ja palauttavat tietoja siitä, mitä taajuuksia kyseisessä signaalissa on kyseisenä ajankohtana. Joten jos ottaisit sinin Fourier -muunnoksen (440 (2*pi*t)), se kertoisi sinulle, että signaalissasi on 440 Hz: n taajuus. Jos ottaisit Fourier -muunnoksen 7*sin (440 (2*pi*t)) + 5*sin (2000 (2*pi*t)), se kertoisi, että sekä 440 Hz että 2000 Hz signaali ovat läsnä ja niiden suhteelliset asteet. Se voi tehdä tämän minkä tahansa signaalin kanssa, jolla on useita komponenttitoimintoja. Koska kaikki ääni on vain sinimuotojen summa, voimme ottaa joukon tilannekuvia Fourier -muunnoksesta ja nähdä, mitä todella tapahtuu. muuttaa. Lisää tästä löytyy täältä, mutta lyhyt selitys on, että signaali, jonka itse asiassa annamme muunnokselle, on ikävää, ja ikkunat korjaavat sen puolestamme. Koodisi ei rikkoudu, jos et käytä niitä, mutta näyttö ei näytä puhtaalta. Saattaa olla saatavana parempia algoritmeja (esimerkiksi YAAPT), mutta KISSin periaatteiden mukaisesti päätin käyttää mitä oli jo saatavilla, mikä on useita hyvin kirjoitettuja Arduinon kirjastoja Fast Fourier -muunnokselle tai FFT: lle.
- Voiko Arduino todella käsitellä kaiken reaaliajassa? Jotta kaikki näkyisi reaaliajassa, Arduinon on otettava 128 näytettä, käsiteltävä tämä FFT, käsiteltävä näytön arvoja ja päivitettävä näyttö hyvin nopeasti. Jos halusit 1/16 nuotin tarkkuutta 150 bpm: llä (lähellä useimpien pop -kappaleiden yläpäätä), sinun on käsiteltävä kaikki 100 ms. Lisäksi ihmissilmä voi nähdä 30 FPS: n nopeudella, mikä vastaa 30 ms: n kehyspituuksia. Tämä blogikirjoitus ei antanut minulle suurta luottamusta, mutta päätin itse katsoa, kestääkö Arduino. Oman vertailuani jälkeen olin erittäin ylpeä R3: sta. Laskentavaihe oli ylivoimaisesti rajoittava tekijä, mutta pystyin käsittelemään 128 -pituisen UINT16: n FFT: n vain 70 sekunnissa. Tämä oli äänitoleranssien rajoissa, mutta yli kaksinkertainen visuaalinen rajoitus. Jatkotutkimuksissa löysin Arduino FHT: n, joka hyödyntää FFT -symmetriaa ja laskee vain todelliset arvot. Toisin sanoen se on noin 2x nopeampi. Ja todellakin, se toi koko silmukan nopeuden ~ 30 millisekuntiin. Toinen huomio tässä näytön tarkkuudesta. Pituus N FFT, joka on näytteistetty taajuudella Fs Hz, palauttaa N -lokeroa, jossa k -luku vastaa k * Fs/N Hz. Arduino ADC, joka lukee äänituloa ja ottaa näytteitä, toimii normaalisti ~ 9,6 kHz: n taajuudella. FFT voi kuitenkin palauttaa vain tietoja 1/2 * F: n taajuuksista. Ihminen voi kuulla jopa 20 kHz, joten mieluiten haluaisimme ottaa näytteen> 40 kHz: n taajuudella. ADC voidaan hakkeroida toimimaan hieman nopeammin, mutta ei läheskään siellä. Paras tulos, jonka näin vakautta menettämättä, oli 14 kHz: n ADC. Lisäksi suurin FFT, jonka pystyin käsittelemään reaaliaikaisen vaikutuksen saamiseksi, oli N = 128. Tämä tarkoittaa, että jokainen säiliö edustaa ~ 109 Hz, mikä on hienoa korkeammilla taajuuksilla, mutta huono matalalla. Hyvä visualisoija yrittää varata oktaavin kullekin tangolle, mikä vastaa erotuksia [16.35, 32.70, 65.41, 130.81, 261.63, 523.25, 1046.50, 2093.00, 4186.01] Hz. 109 Hz tarkoittaa, että ensimmäiset 2,5 oktaavia ovat kaikki yhdessä astiassa. Pystyin silti saamaan hyvän visuaalisen vaikutuksen, osittain ottamalla kunkin kauhan keskiarvon, jossa kauha on kahden näiden rajojen välinen roskakoriryhmä. Toivon, että tämä ei ole hämmentävää, ja koodin itsensä pitäisi selventää, mitä todella tapahtuu, mutta voit kysyä alta, jos se ei ole järkevää.
Vaihe 4: Kokoonpano
Kuten aiemmin totesin, halusin jotain ammattimaista rakennuslaatua. Alun perin aloitin puun liimaamisen säleet yhteen, mutta ystäväni (ja taitava koneinsinööri) ehdotti erilaista lähestymistapaa. Huomaa, että 2x6 on todella 1,5 "x 5". Ja ole varovainen työskennellessäsi alla olevien koneiden kanssa.
- Ota 2x6x8 ja hiekkaa tarvittaessa. Leikkaa se 2 "x 6" x 22 "osioiksi. Näin saat kaksi säleikköä" poltettavaksi ", jos sekoitat.
- Ota jokainen 22 tuuman lohko ja aja se pöytäsahan läpi pitkittäin, jotta saat 1,5 "x ~ 1,6" x 22 "säleet. Viimeistä kolmannesta voi olla vaikea leikata pöytäsahalla, joten voit vaihtaa vannesahaan. Varmista vain, että kaikki on mahdollisimman suoraa. Lisäksi 1,6 "on opas ja voi nousta jopa 1,75": iin. Sellaisia palaseni olivat, mutta niin kauan kuin ne ovat kaikki tasavertaisia, sillä ei ole liikaa väliä. Rajoittava tekijä on akryyli 18 ".
- Merkitse kappaleiden päähän U-muoto, joka on 1/8 tuumaa kummallakin puolella ja hieman yli 3/4 tuumaa syvä. HUOMAUTUS: Jos käytät eri akryylia, syvyys muuttuu. <3/4 ", akryylini ei hajauta valoa ollenkaan. Hieman enemmän, se hajaantuu kokonaan. Haluat välttää" helmiä ". Löysin tämän Hackaday -viestin hyväksi referenssiksi, mutta täydellisen diffuusion saaminen on hyvin vaikea!
- Leikkaa pöytälevyreitittimellä keskimmäinen U kokonaan alas liuskaan. 22 "on pidempi kuin tarvitset, joten älä huolehdi päiden halkeilusta, jos teet niin. Reitittimet voivat olla hankalia, mutta hanki hieman leveämpi kuin puolet U: n leveydestä ja leikkaa varovasti yli 1/ 8 "materiaalia kerrallaan. Toista: Älä yritä tehdä kaikkea kahdella kerralla. Vahingoitat puuta ja vahingoitat todennäköisesti itseäsi. Työskentele jyrsimen pyörimisen kanssa leikkauksissa 1-4 ja vastaavasti 5-8. Tämä varmistaa, että hallitset parhaiten reitittimen vääntömomenttia.
- Leikkaa LED-nauha 30-LED-osiksi (vain jokainen 3 LED-sarjan osoite on osoitettavissa). Sinun on luultavasti irrotettava muutama liitäntä. Aseta nämä nauhat raitoja pitkin. Toisen puolen tulisi istua tasaisella ja toisella puolella on oltava vähän tilaa JST -astialle, joka istuu tasaisesti. Valitettavasti en saanut tästä kuvaa, mutta katso liitteenä oleva kaavio. Merkitse pituus tähän, mutta älä leikkaa vielä mitään.
- Mittaa jokaisen liuskan leveys. Tämän ja vaiheen 7 pituuden avulla laser leikkaa akryylin 10 tarvittavaan suorakulmioon. On parempi olla hieman pitkä kuin hieman lyhyt. Jos se palaa, pyyhi se isopropyylillä.
- Varmista, että jokainen akryylilista on samassa pituudessa, jonka merkitsit vaiheessa 5, ja leikkaa sitten säle tähän pituuteen.
- Tarvitset nyt kaksi siltakappaletta akryylin kiinnittämiseksi. Tämä mahdollistaa valoliuskojen helpon huollon, jos jotain tapahtuu. Näiden kappaleiden tulisi olla suunnilleen [leveytesi] - 2 * 1/8 "pitkiä ja 1/2" neliönmuotoisia, mutta niiden tulisi sopia hieman tiukalle. Kun nämä kappaleet ovat tiukasti paikallaan ja tasoittuvat säleiden etupinnan kanssa, poraa reiät jokaisen sillan keskustan läpi säleiden ulkopuolelta. Tee parhaasi, jotta jokainen pora olisi tasainen. Älä pidä siltoja kiinni, mutta varmista, että ne voivat olla. Varo, ettet ruuvaa ruuvia liian alas ja halkaise puuta.
- Tässä vaiheessa tahraa säleet ja levitä viimeistely.
- Kierrä nyt sillat sisään. Varmista, että ne istuvat tasaisesti! Jos ei, sinun on lisättävä jonkinlainen välilevy. Levitä siltoille gorillaliimaa (suositeltavaa) tai kuumaa liimaa (joka voi kaksinkertaistua välilevynä) ja kiinnitä akryyli. Älä levitä liimaa itse liuskaa pitkin.
- Juotin JST -astiat kaikkien paitsi yhden LED -nauhan toiselle puolelle. Aseta ne kaikki samaan päähän kuin merkityt nuolet. Juotta JST -pistokkeiden johdot toisiin päihin. Johdot on ehkä irrotettava jokaisesta liittimestä. Varmista, että liitännät ovat oikein kytkettynä! LED -valojen takana oleva liima on kauheaa, joten älä luota siihen. Aseta LED -valot keskikiskoon ja liimaa ne gorillaliimalla kiinnittäen huomiota liuskojen ilmoitettuun suuntaan. Muista, että käärit koko asian.
- Juottele ensimmäisellä säleellä riittävän pitkät johdot saadaksesi virtaa + maadoitusta sovittimesta ja signaalin Arduinosta.
- Ruuvaa säleet ja sillat takaisin alas. Kiinnitä komentoliuskat taakse (tarrakiinnitys, 2 keskikokoista ylhäällä ja alhaalla tai 1 suuri keskellä). Tee kaikki tarvittavat liitännät ja ripusta seinälle ~ 3 ": n välein. Nauti työn tuloksista.
Suositeltava:
Osoitteettomat RGB LED Strip Audio Visualizer: 6 vaihetta (kuvien kanssa)
Osoitteettomat RGB-LED-nauhan audiovisualisaattorit: Minulla on ollut 12 V: n RGB-LED-nauha TV-kaapin ympärillä jonkin aikaa, ja sitä ohjaa tylsä LED-ohjain, jonka avulla voin valita yhden 16 esiohjelmoidusta väristä! paljon musiikkia, joka pitää minut motivoituneena, mutta valaistus ei vain säädä
Infrapuna -anturin käyttäminen Arduinon kanssa: 8 vaihetta (kuvien kanssa)
Infrapuna -anturin käyttäminen Arduinon kanssa: Mikä on infrapuna -anturi? . IR -signaali
RGB Led Strip Bluetooth -ohjain V3 + Music Sync + ympäristön valon ohjaus: 6 vaihetta (kuvien kanssa)
RGB Led Strip Bluetooth -ohjain V3 + Music Sync + Ambient Light Control: Tämä projekti käyttää arduinoa ohjaamaan RGB -LED -nauhaa puhelimellasi Bluetoothin kautta. Voit vaihtaa väriä, saada valot synkronoimaan musiikin kanssa tai säätää ne automaattisesti ympäristön valaistuksen mukaan
Kuvien tallentaminen tehtävää varten: 4 vaihetta (kuvien kanssa)
Kuvien tallentaminen tehtävää varten: 1. Avaa uusi Google -asiakirja ja suojaa kuvat tällä sivulla. Käytä ctrl (ohjaus) ja " c " kopioitava näppäin 3. Käytä ctrl (control) ja " v " liitettävä avain
Kuvien tekeminen saumattomiksi vain vaaka- tai pystysuunnassa ("The GIMP"): 11 vaihetta (kuvien kanssa)
Kuvien tekeminen saumattomiksi vain vaaka- tai pystysuunnassa ("The GIMP"): Jos yrität "Tee saumaton" -laajennusta GIMP: ssä, se tekee kuvasta saumattoman sekä vaaka- että pystysuunnassa samanaikaisesti. Se ei salli sinun tehdä siitä saumatonta vain yhdessä ulottuvuudessa. Tämä ohje auttaa sinua saamaan kuvan