Cuprins:

Cum să faci un vizualizator audio de frecvență pentru un costum (proiect Arduino): 8 pași (cu imagini)
Cum să faci un vizualizator audio de frecvență pentru un costum (proiect Arduino): 8 pași (cu imagini)

Video: Cum să faci un vizualizator audio de frecvență pentru un costum (proiect Arduino): 8 pași (cu imagini)

Video: Cum să faci un vizualizator audio de frecvență pentru un costum (proiect Arduino): 8 pași (cu imagini)
Video: Cum scrii când începi un caiet nou 2024, Noiembrie
Anonim
Image
Image
Materiale și prețuri
Materiale și prețuri

În acest Instuctable, voi oferi sfaturi, planuri și coduri pentru a face un vizualizator audio captivant încorporat într-un costum din spumă din fibră de sticlă. Pe parcurs, voi împărtăși pași utili și coduri suplimentare pe care unii care doresc să le implementeze biblioteci arduino FFT în proiectele lor ar putea găsi valoroase.

Pasul 1: Materiale și prețuri

Înainte de a face costumul de spumă, am făcut mai întâi o matrice pentru a învăța cum să funcționeze biblioteca FFT. Materialele necesare sunt:

  1. 2x 30 benzi neopixel WS2812B ……………………………………………………………. 3,22 USD o bandă
  2. Arduino uno (chineză folosită) …………………………………………………………………… Deja deținut
  3. Conectați firele ……………………………………………………………………………………. Deja deținut
  4. Alimentare externă …………………………………………………………………………. Deținut
  5. Suprafața de montare (carton folosit) ……………………………………………………… Deja deținut
  6. Modul amplificator audio LM386 …………………………………………………………….. 8,98 USD pentru 5 unități
  7. Conector stereo audio de 3,5 mm la terminalul cu 3 șuruburi AV la mufă … 6,50 USD pentru 5 unități
  8. Jack stereo de 3,5 mm de la feminin la feminin ………………………………………………….. 5,99 USD pentru 6 unități
  9. Breadboard ………………………………………………………………………………………… Deja deținut

Pentru a adopta în cele din urmă setarea pentru un costum cu microfon, este necesar următoarele:

  1. Banda de 19 neopixeli …………………………………………..
  2. 5 benzi de neopixeli ………………………………………………………………………….. Tăiați din aceeași rolă
  3. Arduino nano (chineză uzată) ………………………………………………………. 3,00 USD (5 pentru 15 USD)
  4. Conectați firele ……………………………………………………………………………. Deja deținut
  5. Baterie Li-Ion reîncărcabilă Talentcell de 6000 mAh ……………………………. 29,99 USD
  6. Conector audio stereo de 3,5 mm la terminalul cu 3 șuruburi AV conector feminin … 6,50 USD pentru 5 unități
  7. Jack stereo de 3,5 mm de la feminin la feminin ……………………………………….. 5,99 USD pentru 6 unități
  8. Întrerupătoare …………………………………………………………………………………….. Scoase din mașina spartă
  9. Un costum …………………………………………………………………………………. $ 50 pentru obiectele asortate

Pasul 2: Asamblare și cablare

Asamblare și cablare
Asamblare și cablare
Asamblare și cablare
Asamblare și cablare
Asamblare și cablare
Asamblare și cablare

Începeți cu două benzi de 30 de benzi LED WS2812 și tăiați-le la 5 lungimi de benzi LED de-a lungul liniilor de tăiere. Lipiți aceste benzi pe o suprafață plană. În exemplul meu am folosit carton. Apoi conectați componentele împreună așa cum se arată. Asigurați-vă că aveți suficient timp pentru a asigura puncte bune de lipit. Pentru a vă asigura că toate funcționează corect, utilizați exemplele din biblioteca Neopixel Adafruit (exemplul „Straintest” funcționează excelent).

Pasul 3: Cod Arduino

Cod Arduino
Cod Arduino

Pentru acest proiect sunt necesare doar două biblioteci.

Pentru FFT am folosit ArduinoFFT de la Open Music Lab https://wiki.openmusiclabs.com/wiki/ArduinoFFT. Asigurați-vă că urmați instrucțiunile lor de instalare cu precizie, altfel nu va funcționa. După instalarea corectă, aș primi în continuare mesaje de eroare referitoare la o „bibliotecă nevalidă”, totuși totul a funcționat pentru mine. Comentează dacă identifici ce mi-a fost dor. Pentru neopixeli am folosit biblioteca NeoPixel Adafruit (așa cum am menționat anterior). Vă recomand să utilizați Managerul de bibliotecă în cadrul software-ului arduino pentru instalare.

Fișierul SuitFFT este codul care rulează pe Suit cu toate intrările suplimentare de la controlerul meu. LightShowFFT este pentru matricea LED de 60 de intrări auxiliare.

Ambele coduri pot fi executate mai repede prin reducerea N. N în exemplele mele este 256 și am constatat că este mai mult decât potrivit pentru proiectele mele. Am descoperit experimental că spectrul audio complet funcționa cu mult peste 9 kHz, așa cum s-a văzut testat la pasul următor!

Pasul 4: Ce face FFT

Image
Image
Ce face FFT
Ce face FFT

O transformare FFT sau Fast Fourier preia un semnal și îl transformă în domeniul frecvenței. Ceea ce arată fiecare dintre lumini este un coș de frecvență. Deoarece FFT este un calcul matematic complex, se poate face codul să ruleze mai rapid, limitând numărul de eșantioane. Cu toate acestea, rezoluția frecvenței va avea de suferit. Din lipsă de cuvinte, FFT-ul din Arduino este un act de echilibrare între: rata de eșantionare, numărul de eșantioane, timpul de buclă și multe altele. Îi încurajez pe alții să se joace cu setările pentru a găsi ceea ce funcționează cel mai bine pentru propriul proiect.

Acum este timpul să faci costumul.

Pasul 5: Sfaturi pentru costume

Sfaturi pentru costume
Sfaturi pentru costume
Sfaturi pentru costume
Sfaturi pentru costume
Sfaturi pentru costume
Sfaturi pentru costume

Costumul meu a fost realizat din spumă, unde multe alte Instrucatables publicate au acoperit mai bine subiectul. Diferența cu a mea a fost că am făcut pași suplimentari spre bondo, fibră de sticlă și vopsea. Sfaturile pentru aceasta sunt următoarele.

  • Efectuați o pregătire excelentă (înregistrare, mascare etc.), deoarece face o diferență de timp uriașă mai târziu
  • Amestecați întotdeauna bondo și fibră de sticlă în cantități mici
  • Folosiți Bondo pentru a umple golurile
  • Folosiți rășină din fibră de sticlă pentru a sigila și întări
  • Folosiți o cârpă din fibră de sticlă pentru a rigidiza mai bine punctele slabe
  • LUAȚI-VĂ timpul și aveți răbdare cu munca voastră
  • Pentru șlefuire

    • 40-100 grit la materialul de îndepărtat
    • 100-400 granulatie pentru pregatirea grundului
    • 400-1000 granulație pentru șlefuirea grundului
    • 1000-3000 granulație pentru șlefuirea vopselei

Pentru a monta benzile de neopixel, am folosit lipici fierbinte pentru a fixa benzile la locul lor. Câteva provocări acum sunt să-l faceți să fie furnizat cu baterie, detectarea microfonului, funcționarea controlerului și multe altele.

Pasul 6: Realizarea sau alegerea unui controler, conectarea acestuia și codul

Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul
Realizarea sau alegerea unui controler, conectarea acestuia și codul

Orice comutator sau comutator poate fi utilizat. Pentru proiectul meu, am găsit că comenzile geamurilor unui Honda Prelude de 96 au funcționat excelent. După ce am scos întrerupătoarele din carcasa lor, am folosit un set multimetru în modul continuitate pentru a găsi care sârmă a făcut ce, odată ce comutatoarele au fost apăsate (rețineți că uneori întrerupătoarele întrerup continuitatea). Am decis să fac blocarea ferestrei comutate, să blochez comenzile împotriva loviturilor accidentale, fereastra în sus și în jos pentru controlul luminozității și ultimul comutator pentru „modurile de lumină”.

Pentru ca întrerupătoarele să funcționeze corect, sunt necesare rezistențe de tragere. În mod normal, rezistențele de 50-100 kΩ vor funcționa, dar câteva comutatoare au trebuit să utilizeze un rezistor mult mai mic (unele în jur de 300 Ω) pentru a schimba tensiunea suficientă pentru ca Arduino să întrerupă corect intrarea digitală (aproximativ mai puțin de 0,3 * Vcc pentru scăzut și mai mare mai mare de 0,6 * Vcc pentru mare). Oricine face acest lucru trebuie să treacă comutator cu comutator, de preferat mai întâi cu o placă de pâine pentru a se asigura că controlerul funcționează corect.

După ce am aflat comutatorul, am lipit componentele împreună folosind diagrama prezentată. Utilizați o placă de circuit PCB pentru a fixa mai bine componentele. Consultați imaginea pentru un aspect detaliat. Tabloul cu 19 LED-uri coboară pe coloana vertebrală a costumului meu și pe celălalt din față, ca indicator al ceea ce se întâmplă.

Pentru a fixa controlerul la costum, am folosit lipici fierbinte pentru a-l așeza. Apoi am făcut pene de spumă mai mici și le-am lipit la cald pentru a susține controlerul.

Pasul 7: Atingeri finale

Atingeri finale
Atingeri finale
Atingeri finale
Atingeri finale
Atingeri finale
Atingeri finale

Pentru a termina, tăiați fante în spumă pentru a trece firul. Asigurați firele cu adeziv fierbinte. Pentru atingeri suplimentare am cumpărat și câteva articole suplimentare pentru a „sigila afacerea”. M-am gândit … dacă ai de gând să ieși ridicol în costum ușor, mergi la pasul suplimentar!

Pasul 8: Asta e! (Plus sfaturi de depanare)

Asta e! (Plus sfaturi de depanare)
Asta e! (Plus sfaturi de depanare)

Vă mulțumim că ați vizitat instuctabilul meu și să vă distrați, bricolajilor!

Sfaturi de depanare din experiența proiectului:

  • Dacă luminile acționează ciudat (lumina pâlpâitoare, nu toate funcționează corect, culori neobișnuite)

    • Alimentare slabă a luminilor

      • Mai multe surse de alimentare
      • Nu înșirați, astfel încât neopixeli să fie împreună
      • Rulați liniile de alimentare suplimentare pe benzi
    • Problemă de cod

      • Verificați numărul de lumini este corect
      • Verificați dacă codul afișează corect luminile și coșurile de frecvență
    • Alimentare slabă la Arduino

      Măriți sursa de alimentare

    • Tensiunea de la Arduino la neopixeli oprită

      Utilizați aceeași sursă de alimentare pentru a le alimenta pe amândouă

  • Lumini aprinse, dar fără FFT

    • Verificați firul de la amplificator și puterea amplificatorului, la sol și la intrare
    • Măriți / micșorați câștigul amplificatorului
    • Putere slabă a luminilor

Recomandat: