Autorul poate fi contactat la adresa: Login pentru adresa
Proiectul constă într-o serie de LED-uri ale căror culori și intensitate vor varia în funcție de datele primite de un microfon. La final, acesta ar
trebui să afișeze un joc de lumini interesant în funcție de ce sunete se află în apropierea sa. Ideea proiectului mi-a venit de la un un articol legat de chromesthesia. Consider că o să învăț foarte mult de la acest proiect, pe de o parte lucrând efectiv cu hardware-ul și, pe de altă parte, scriind cod special pentru hardware-ul făcut de mine. Pentru ceilalți o să fie un proiect care va produce un efect vizual interesant în funcție de sunetele din jur .
Sunetul din mediul ambiental va fi captat de un microfon, amplificat și va ajunge la chip-ul atmega. Plănuiesc să implementez FFT (Fast Fourier Transform) pentru a transforma datele captate de microfon din domeniul timp în domeniul frecvență. În funcție de valoarea semnalului, anumite LED-uri se vor aprinde cu o anumită intensitate.
Listă de piese:
Schema electrică:
Schema electrică matrice LED-uri RGB
Codul a fost scris în Sublime și compilat folosind avr-gcc. M-am folosit de bibliotecile ledmatrix7219d88 și avr/interrupt ce au fost împrumutate pe internet pentru un control mai bun al matricei de LED-uri. Pentru construcția microfonului am zis să folosesc tranzistor (și alte piese) pentru amplificare. Desigur, puteam face treabă mult mai bună cu un circuit mai complex.
Am încercat și o analiză fourier a inputului dat de microfon însă mai este de lucrat aici. Am găsit o bibliotecă pe internet și exemple de cod, dar încă nu procesez eu datele destul de bine (până să ajungă la fourier și imediat după).
Rezultatele obținute au fost relativ ok. Am reușit să primesc input de la microfon, să mă joc cu matricea de led-uri și să încerc să fac o procesare a semnalului bazată cu FFT. Mai este nevoie de tuning la FFT.
Per total, proiectul a fost foarte interesant și chiar am învățat multe lucruri practice legate de hardware. O să mai încerc să mai aduc îmbunătățiri proiectului când o să mai am puțin timp liber :).