Proiectul consta in realizarea unui dispozitiv care preia din mediu sunetul si afiseaza analiza spectrului pe patru coloane de led-uri (fiecare coloana reprezentand un domeniu de frecventa). Datele vor fi preluate din mediu folosind un senzor microfon iar trecerea acestora in domeniu de frecventa va fi realizata cu ajutorul Fast Fourier Transformation.
Pentru captarea sunetului folosesc un modul microfon care transmite datele primite din mediu catre arduino folosind un pin analogic. Sunetul va fi descompus in mai multe frecvente si procesat cu ajutorul librariei arduinoFFT. Afisarea spectrului audio se realizeaza pe patru coloane de leduri. Pentru controlul acestora folosesc patru registre de shiftare conectate prin daisy chain astfel pot sa controlez cele patru coloane de leduri folosind doar trei pini digitali.
Coloanele de leduri, rezistentele, registrele de shiftare si senzorul microfon au fost lipide pe o placuta PCB, traseele de conexiune dintre acestea fiind realizate cu fire de la un cablu ethernet.
Am folosit ca mediu de dezvoltare arduino IDE. Inregistrarea audio o fac la o frecventa de sampling de 40000Hz cu 128 de sampleuri (atat de putin datorita memoriei dinamice reduse a arduinoului).
Pentru prelucrarea sunetului preluat ma folosesc de libraria standard arduinoFFT.
A fost o tema foarte tare si super fun de realizat in urma careia am invatat sa lucrez cu arduino si sa fac lipituri mult mai bune cu ajutorul letconului.
Schema bloc | Schema electrica | Cod sursa: Arhiva resurse
https://ocw.cs.pub.ro/courses/pm/prj2021/apredescu/spectrum_analyser