Wi-Fi LED matrix audio spektrální analyzer

Tato konstrukce pojednává o audio spektrálním analyzeru (64 pásem s úrovní 8 kroků). Mikrofon snímá okolní zvuk, který se převede na změnu napětí. Operační předzesilovač zesiluje slabší úroveň napětí z mikrofonu. Procesor ESP32 měří úroveň napětí na analogovém vstupu v čase a pomocí FFT provádí výpočty pro následné zobrazení úrovně zvuku na frekvenci. Displej je složen z matice 64*8 bodů. Celé zařízení je nainstalováno ve 3D krabičce z tiskárny. Pomocí tlačítka lze vyvolat tzv "AP" režim pomocí kterého se spustí generování Wi-Fi připojení. Pomocí tabletu, telefonu... můžeme následně měnit firmware v zařízení.

[Zvukový signál] -> [ADC] -> [FFT] -> [Seznam amplitud frekvencí] -> [Zobrazení (LED/displej)]

Spektrální analyzátor zvuku (audio spectrum analyzer) je zařízení, které rozkládá složitý zvukový signál na jeho jednotlivé frekvenční složky a ukazuje, jaká je síla (amplituda) každé frekvence.

Základní princip je:

  1. Zvuk jako signál v čase
    Zvuk je vlnění, které lze popsat jako změnu tlaku vzduchu v čase — tedy jako časový signál. Tento signál se skládá ze spousty frekvencí dohromady (nízké tóny, vysoké tóny...).
  2. Převod z času do frekvence — Fourierova transformace
    Abychom zjistili, jaké frekvence v signálu jsou a jak jsou silné, potřebujeme tento časový signál rozložit. K tomu se používá matematický nástroj zvaný Fourierova transformace. V praxi se pro digitální signály používá hlavně rychlá Fourierova transformace (FFT – Fast Fourier Transform). FFT vezme například 1024 vzorků signálu a zjistí, kolik energie (síly) je v jednotlivých frekvenčních pásmech — např. kolik je tam frekvence 100 Hz, 500 Hz, 1000 Hz atd.
  3. Zobrazení výsledků
    Výsledkem FFT je seznam čísel: každé číslo odpovídá síle určité frekvence. Tento seznam se zobrazí například jako: Sloupce: Každý sloupec odpovídá určitému frekvenčnímu pásmu (například basy, středy, výšky). Výška sloupce = jak moc je daná frekvence ve zvuku zastoupena (amplituda). Typický výstup spektrálního analyzátoru vypadá jako "živý graf", kde sloupce skáčou podle aktuální hudby.

Schéma zapojení

 

Deska spojů

Seznam součástek

označení materiál odkaz ks cena za ks suma
IO1 procesor ESP32-WROOM-32E-N8 https://www.tme.eu/cz/details/esp32-wroom-32e-8/moduly-iot-wifi-bluetooth/espressif/esp32-wroom-32e-n8/ 1 87,0 Kč 87,0 Kč
IO2 stabilizátor 3,3V LD1117S33CTR https://www.tme.eu/cz/details/ld1117s33ctr/stabilizatory-napeti-neregulovane-ldo/stmicroelectronics/ 1 6,4 Kč 6,4 Kč
IO3 operační zesilovač LM358DR https://www.tme.eu/cz/details/lm358dr/operacni-zesilovace-smd/texas-instruments/ 1 3,0 Kč 3,0 Kč
konektor USB-C USB4135-GF-A https://www.tme.eu/cz/details/usb4135-gf-a/konektory-usb-a-ieee1394/gct/ 1 12,3 Kč 12,3 Kč
AP, EN, KEY tlačítko TL1105DF160Q https://www.tme.eu/cz/details/tl1105df160q/mikrospinace-tact/e-switch/ 3 3,8 Kč 11,4 Kč
matice čtvercová M3 do 3D 1092480BOSSARD https://www.tme.eu/cz/details/b3_bn145/matice/bossard/1092480/ 6 0,3 Kč 1,8 Kč
matice šestihran M3 uchycení desky do 3D 1090615BOSSARD https://www.tme.eu/cz/details/b3_bn124/matice/bossard/1090615/ 2 0,1 Kč 0,2 Kč
šroub M3x10 1219693BOSSARD https://www.tme.eu/cz/details/b3x10_bn1435/srouby/bossard/1219693/ 8 0,5 Kč 4,0 Kč
zdroj 230V/5V USB-C CLW-1505-W2E-ERCCELLEVIA POWER https://www.tme.eu/cz/details/clw-1505-w2e-ebc/zasuvkove-napajeci-zdroje/cellevia-power/clw-1505-w2e-erc/ 1 163,0 Kč 163,0 Kč
MIC1 mikrofon LD-MC-9765PLOUDITY https://www.tme.eu/cz/details/ld-mc-9765p/mikrofony-a-sluchatka/loudity/ 1 12,4 Kč 12,4 Kč
GAIN trimr 1M PS6KV50-105A3030-I-PIHER https://www.tme.eu/cz/details/ps6kv50-105a-i/potenciometry-jednootackove-smd/piher/ps6kv50-105a3030-i/ 1 10,8 Kč 10,8 Kč
C5 470uF tantal 293D477X96R3D2TE3VISHAY https://www.tme.eu/cz/details/293d477x96r3d2te3/tantalove-kondenzatory-smd/vishay/ 1 25,0 Kč 25,0 Kč
C1-C4 100nF 1206B104K251CTWALSIN https://www.tme.eu/cz/details/1206b104k251ct/kondenzatory-mlcc-smd/walsin/ 4 0,4 Kč 1,6 Kč
R1-R6, R8-R10          10 KOhm 1206S4J0103T5E 

https://www.tme.eu/cz/details/1206s4j0103t5e/rezistory-smd/royalohm/

9 0,1 Kč 0,9 Kč
R7 1KOhm 1206S4F1001T5E

https://www.tme.eu/cz/details/1206s4f1001t5e/rezistory-smd/royalohm/

1 0,1 Kč 290,0 Kč
LED matice 4 x 64 bodů s kontrolérem MAX7219 

https://dratek.cz/arduino/5009-led-matice-4x64-s-kontrolerem-max7219.html

2 121,0 Kč 242,0 Kč
Plexisklo plexivyroba.cz 260 mm x 35 mm x 3 mm "rudá displejovka" 1 65,0 Kč 65,0 Kč
Deska spojů printed.cz   1 207,0 Kč 207,0 Kč
pásek na vodiče TT3Х100/BLACKTIE10 https://www.tme.eu/cz/details/tt2.5x100_bk/stahovaci-pasky/tie10/tt3kh100-black/ 5 0,2 Kč 1,0 Kč
uchycení desky k 3D 2064111BOSSARD https://www.tme.eu/cz/details/b3_bn2332/podlozky/bossard/2064111/ 2 0,9 Kč 1,8 Kč
JP1, JP2 DS1022-1*20RDF1-1CONNFLY https://www.tme.eu/cz/details/zl211-20kg/konektory-hrebinky/connfly/ds1022-1-20rdf1-1/ 1 3,3 Kč 3,3 Kč
Celkem ORIENTAČNĚ  1500 Kč

Stavební postup (deska spojů)

 

Po osazení desky provedem kontrolu na případné chyby (studené spoje, omylem propojené vývody co nemají být spojené...)

Stavební postup (displej)

Konstrukce VU metru používá 2ks maticového displeje 32*8 bodů (tj 512 LED cool ).

Displeje spájíme k sobě, tak jako na obrázku. Z jednoho displeje propojíme OUT do druhého displeje IN takto:

OUT displej 1 IN displej 2
VCC VCC
GND GND
DOUT DIN
CS CS
CLK CLK

Na propojení použijeme piny, které ohneme z prvního do druhého modulu.

K prvnímu disleji IN připojíme 5 vodičů délky cca 20-25 cm (ideálně různé barvy). Vodiče jsou slaněného typu (ne tvrdý drát).

Vodič odizolujeme, stočíme, pocínujeme, zastřihneme, připájíme.

 

Po přiletování navlékneme izolační teplem smrštitelné bužírky (které ofoukáme horkým vzduchem z pájecí stanice).

Smršťovací bužírku rozdělíme na 5 kusů po cca 1 cm.

Bužírka musí být navlečená až k desce.

Na svazek pěti vodičů umístíme stahovací pásky a druhou stranu vodičů také odizolujeme, pocínujeme, zastříhneme na cca 2-3 mm délky (nezapomeneme navléknout izolační bužírky před pájením k řídící desce).

Propojíme displej s řídící deskou.

Připravíme si 2x spojený displej, 4ks vystřeďovací 3D kus a vteřinové lepidlo. Pomocí lepidla postupně přilepíme vystřeďovací kusy na displeje.

Stavební postup (3D krabička)

3D krabička se skládá z těchto dílů

a) 1x zadní kryt

b) 1x krabice

c) 2x držák na zeď

d) 4x vystřeďovací kus na displej

e) držák desky spojů a displejů

f) plexisklo

Do krabice vložíme 6 ks čtvercové matky M3 (za tyto matky následně přišroubujeme zadní kryt a držák desky spojů).

TODO uchycení

Nahrání programu do procesoru

Pro nahrání programu do procesoru připojíme jednorázově převodník USB na UART. Další případné verze FW můžeme nahrát přes webovou stránku (převodník již nebude potřeba). Převodník z jedné strany připojíme do USB portu počítače a z druhé strany do desky spojů jako na obrázku. Pozor: na převodníku musíme odstranit propojku (jumper)!

Převodník použijeme například tento: https://www.laskakit.cz/prevodnik-usb-ttl-uart--ft232rl--dtr-pin/

Nás budou zajímat vodiče: VCC, GND, TX, RX. Tyto 4 vodiče propojíme s řídící deskou.

 

 

Připravíme řídící desku pro nahrání kódu

Stiskneme na řídící desce sekvenci tlačítek takto:

Připojíme USB adaptér do zařízení (displej se může náhodně rozsvítit, to není na závadu). Držíme tlačítko "KEY" a k němu na krátkou dobu stiskneme tlačítko "EN" (tlačítko KEY následně po cca 2 vteřinách uvolníme). Procesor ESP32 bude přepnutý do režimu příjmu kódu.

TODO

Aktualizace firmware přes webovou stránku

ss

Na článku se pracuje...