Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Sigurnost
  • 10-pojasni LED analizator audio spektra. Sedmopojasni analizator audio spektra na mikrokontroleru

10-pojasni LED analizator audio spektra. Sedmopojasni analizator audio spektra na mikrokontroleru

Shematski dijagram filtarskog bloka i pretpojačala je dolje na slici. Filtri su postavljeni na sljedeće frekvencije: 32Hz, 63Hz, 125Hz, 250Hz, 500Hz, 1kHz, 2kHz, 4kHz, 8kHz, 16kHz.


Isprintana matična ploča. Izrađen je samostalno pomoću fotorezista.


Preporuke za odabir spremnika - bolje je odabrati nominalne vrijednosti spremnika pomoću LCR mjerača (koristio sam E7-22); nestandardne nominalne vrijednosti dobivene su paralelno ili uzastopno njihovim prikupljanjem standardne serije.

Shematski dijagram linije indikatora.

Tiskana pločica u DIP i SMD verziji je sva u arhivi. Naručio sam pločice iz proizvodnje jer je bilo teško napraviti takve dimenzije kod kuće (dimenzija u DIP-u je 320x50).
Bilo koja brza Schottky dioda može se koristiti kao dioda. Otpor otpornika za LED diode ovisi o vrsti LED dioda koje se koriste (morate izračunati struju), možete koristiti bilo koje druge LED diode s ponovnim izračunom ili izmjenom kruga. DA, ima još jedna napomena - ovo je potrošnja jedne linije, kada je uključeno svih 40 LED dioda, linija troši 40 * 0,02A = 0,8 A, a svih 10 linija će trošiti 8 A kada su LED diode potpuno aktivirane!! Ne zaboravite odabrati odgovarajuće napajanje. Ako koristite kupljeni prekidački izvor napajanja s nekoliko ulaza, u pravilu je to +/-12V, +5V, tada postoji jedna nijansa s kojom sam se susreo: ako jednokanalni prekidački izvori napajanja u većini slučajeva ne zahtijevaju opterećenje startaju, onda rade višekanalni, tj. Za pokretanje napajanja potrebno je opteretiti sve kanale.
Postaviti.
Postavka je da osjetljivost svih kanala bude jednaka. Trebate niskofrekventni generator i niskofrekventni milivoltmetar. Frekvencije na generatoru su postavljene sekvencijalno na 32 Hz, 63 Hz, 125 Hz, 250 Hz. 500 Hz, 1 kHz, 2 kHz, 4 kHz, 8 kHz i 16 kHz. Frekvencije se naizmjenično dovode na ulaz uređaja. U ovom slučaju, milivoltmetar mora biti spojen paralelno s izlazom niskofrekventnog generatora prema njegovim očitanjima, potrebno je osigurati da su vrijednosti AF napona koji se isporučuju iz LFO na svim frekvencijama iste (; ako je potrebno, podesite regulator izlazne razine LFO). Postavimo R42 pretpojačala na srednji položaj i, počevši od frekvencije od 32 Hz, postavimo razinu izlaznog napona na LFO pri kojemu srednja LED indikatorske skale svijetli u srednjem položaju R2 (32 Hz blok filtera). Zapamtite ovu razinu izlaznog napona LFO. Zatim povećajte frekvenciju na 64 Hz. Postavite istu niskofrekventnu razinu iz LFO izlaza (na temelju milivoltmetra) i podesite R* u 63Hz filteru tako da srednja LED dioda na 63Hz skali svijetli.
Provedite slične radnje na svim ostalim frekvencijama. Najprije možete točnije utvrditi prosječne frekvencije pojaseva određivanjem prosječne frekvencije svakog filtra podešavanjem LFO frekvencije unutar određenih granica u odnosu na naznačenu frekvenciju u dijagramu. Zatim, ako postoji značajna razlika, prilagodite frekvenciju promjenom kapacitivnosti kondenzatora u skladu s tim.

Nekoliko fotografija procesa izrade




U članku se raspravlja o dizajnu jednostavnog analizatora spektra (0 - 10 kHz) na AVR mikrokontroleru. Kao uređaj za prikaz koristi se dvoredni znakovni LCD indikator. Glavna točka u implementaciji ovog projekta nije hardver, već softver, točnije implementacija diskretne Fourierove transformacije (DFT) na 8-bitnom mikrokontroleru. Odmah treba napomenuti da autor nije stručnjak za ovo područje te je stoga krenuo s osnovama - jednostavnom diskretnom Fourierovom transformacijom. Algoritam brze Fourierove transformacije nije samo brz, već je i prilično složen.

Diskretna Fourierova transformacija (u engleskoj literaturi DFT, Discrete Fourier Transform) jedna je od Fourierovih transformacija široko korištenih u algoritmima za digitalnu obradu signala (njene se modifikacije koriste u kompresiji zvuka u MP3, kompresiji slike u JPEG itd.), kao i u ostala područja povezana s analizom frekvencija u diskretnom (na primjer, digitaliziranom analognom) signalu. Diskretna Fourierova transformacija zahtijeva diskretnu funkciju kao ulaz. Takve se funkcije često stvaraju uzorkovanjem (uzorkovanje vrijednosti iz kontinuiranih funkcija).

Shema sklopa analizatora spektra audio signala vrlo je jednostavna i može se podijeliti na digitalni i analogni dio.

Digitalni dio čini mikrokontroler i na njega spojen LCD indikator. Mikrokontroler se taktira iz kvarcnog rezonatora od 16 MHz; napon napajanja od +5 V koristi se kao referentni napon za ADC mikrokontrolera.
Podatkovna sabirnica LCD indikatora spojena je na priključak C mikrokontrolera (ulazne/izlazne linije PC0-PC3), upravljačka sabirnica spojena je na priključak D (PD5, PD6) mikrokontrolera. Indikator radi u 4-bitnom načinu rada. Za podešavanje kontrasta koristi se promjenjivi otpornik nominalne vrijednosti 4,7 kOhm. Za rad s indikatorom stvoreni su prilagođeni simboli za prikaz 8 horizontalnih stupaca analizatora; ti prilagođeni simboli zauzimaju svih 64 bajta RAM-a LCD indikatora.

Mikrokontroler radi iz vanjskog kvarcnog rezonatora od 16 MHz.

Analogni dio uređaja je najvažniji dio i predstavlja pretpojačalo elektretnog mikrofonskog signala čiji je izlaz spojen na ADC0 kanal ADC ugrađenog u mikrokontroler. Moramo postaviti nultu razinu na ADC ulazu na točno polovicu referentnog napona, tj. 2,5 V. U ovom slučaju možemo koristiti pozitivni i negativni poluval signala, ali njegova amplituda ne smije prijeći utvrđenu granicu, tj. Pojačanje mora biti fino podešeno kako bi se spriječilo preopterećenje. Sve gore navedene uvjete ispunjava uobičajeni mikro krug operacijskog pojačala male snage.

DFT algoritam je malo sporiji u usporedbi s brzom Fourierovom transformacijom. Ali naš analizator spektra ne zahtijeva veliku brzinu, a ako može osigurati brzinu ažuriranja od oko 30 sličica u sekundi, to će biti više nego dovoljno za vizualizaciju spektra audio signala. U svakom slučaju, u našoj verziji moguće je postići brzinu od 100 sličica u sekundi, ali to je već previsoka vrijednost parametra za dvoredni znakovni LCD indikator i ne preporučuje se. Frekvencija uzorkovanja je 20 kHz za diskretnu Fourierovu transformaciju od 32 točke, a budući da je rezultat transformacije simetričan, trebamo koristiti samo prvu polovicu, tj. prvih 16 rezultata. Stoga možemo prikazati frekvencijski spektar do 10 kHz, a rezolucija analizatora je 10 kHz/16 = 625 Hz.

Autor dizajna pokušao je povećati brzinu DFT izračuna. Ako ova transformacija ima N točaka, tada moramo pronaći N2/2 vrijednosti sinusa i kosinusa. Za našu transformaciju od 32 točke trebamo pronaći 512 vrijednosti sinusa i kosinusa. No, prije nego što ih pronađemo, moramo izračunati kut (stupnjevi), što će oduzeti malo procesorskog vremena, pa je odlučeno koristiti tablice vrijednosti za ove izračune. Pri izračunavanju u programu za mikrokontroler ne koriste se brojevi s pomičnim zarezom i brojevi dvostruke preciznosti, jer će to trajati dulje za obradu na 8-bitnom mikrokontroleru. Umjesto toga, vrijednosti u tablicama pretraživanja koriste 16-bitne cjelobrojne podatke pomnožene s 10000. Zatim, nakon izvršene pretvorbe, rezultati se dijele s 10000. Ovim pristupom moguće je izvršiti 120 pretvorbi od 32 točke po drugo, što je više nego dovoljno za naše uređaje.

Što misliš da djevojke rade kad se okupe? Idu li u shopping, slikaju se, idu u kozmetičke salone? Da, jest, ali ne rade svi to. Ovaj članak će govoriti o tome kako su dvije djevojke odlučile sastaviti radio-elektronički uređaj vlastitim rukama.

Zašto analizator/vizualizator spektra?

Uostalom, postoji dosta softverskih rješenja za ovaj problem, a postoji i mnogo opcija za hardversku implementaciju. Prvo, stvarno sam želio raditi s velikim brojem LED dioda (jer smo već sastavili LED kocku, svatko za sebe, ali u malim veličinama), drugo, primijeniti u praksi stečeno znanje u digitalnoj obradi signala i, treće, treće, još jednom vježbajte rad s lemilom.

Razvoj uređaja

Jer uzeti gotovo rješenje i raditi ga strogo prema uputama dosadno je i nezanimljivo, pa smo odlučili sami razviti sklop, samo se malo oslanjajući na već stvorene uređaje.

Za zaslon je odabrana 8x32 LED matrica. Bilo je moguće upotrijebiti gotove 8x8 LED matrice i sastaviti ih od njih, ali odlučili smo ne uskratiti sebi zadovoljstvo sjedenja navečer s lemilicom, pa smo sami sastavili zaslon od LED dioda.

Za upravljanje zaslonom nismo ponovno izumili kotač i koristili smo upravljački krug s dinamičkim zaslonom. Oni. odaberu jedan stupac, zapale ga, ostale stupce se u tom trenutku ugase, zatim odaberu sljedeći, zapale ga, ostali se ugase itd. Zbog činjenice da ljudsko oko nije savršeno, možemo vidjeti statičnu sliku na zaslonu.
Idući putem manjeg otpora, odlučeno je da bi bilo razumno sve izračune prenijeti na Arduino kontroler.

Omogućavanje određenog retka u stupcu vrši se otvaranjem odgovarajuće tipke. Kako bi se smanjio broj izlaznih pinova kontrolera, izbor stupaca se odvija kroz dekodere (dakle, možemo smanjiti broj kontrolnih linija na 5).

Kao sučelje za povezivanje s računalom (ili drugim uređajem koji može odašiljati audio signal) odabran je TRS konektor (mini-jack 3,5 mm).

Sastavljanje uređaja

Sastavljanje uređaja započinjemo izradom makete prednje ploče uređaja.

Materijal odabran za prednju ploču bila je crna plastika debljine 5 mm (budući da je promjer diodne leće također 5 mm). Označavamo prema razvijenom izgledu, izrezujemo prednju ploču na potrebnu veličinu i bušimo rupe u plastici za LED diode.

Tako dobivamo gotovu prednju ploču na koju se može montirati zaslon.

Kao LED za matricu korištene su dvobojne LED diode (crveno-zelene) sa zajedničkom katodom GNL-5019UEUGC. Prije početka sastavljanja matrice, slijedeći pravilo "dodatna kontrola neće naštetiti", sve LED diode, točnije 270 kom. (uzeti s rezervom za svaki slučaj), testirani su na funkcionalnost (u tu svrhu sastavljen je uređaj za testiranje, uključujući konektor, otpornik od 200 Ohma i napajanje od 5 V).

Zatim savijamo LED diode na sljedeći način. Anode crvene i zelene diode savijamo u jednom smjeru (desno), katodu savijamo u drugom smjeru, pritom pazeći da je katoda niža od anoda. Zatim savijemo katodu prema dolje za 90°.

Matricu počinjemo sastavljati od donjeg desnog kuta, te je sastavljamo u stupce.

Sjećajući se pravila "dodatna kontrola ne može škoditi", nakon jednog ili dva zalemljena stupca, provjeravamo funkcionalnost.

Gotova matrica izgleda ovako.

Pogled straga:

Prema razvijenom krugu lemimo upravljački krug za retke i stupce, lemimo kablove i prostor za Arduino.

Odlučeno je također prikazati ne samo amplitudno-frekvencijski spektar, već i fazno-frekvencijski spektar, te odabrati broj uzoraka za prikaz (32,16,8,4). Za to su dodana 4 prekidača: jedan za odabir vrste spektra, dva za odabir broja uzoraka i jedan za uključivanje i isključivanje uređaja.

Pisanje programa

Još jednom slijedimo naše pravilo i osiguravamo da naš zaslon potpuno radi. Da bismo to učinili, napišemo jednostavan program koji potpuno osvijetli sve LED diode na zaslonu. Naravno, zbog Murphyjeva zakona, nekoliko LED dioda nije imalo struje i trebale su ih zamijeniti.

Nakon što smo se uvjerili da sve radi, počeli smo pisati glavni programski kod. Sastoji se od tri dijela: inicijaliziranje potrebnih varijabli i čitanje podataka, dobivanje spektra signala pomoću brze Fourierove transformacije i ispis rezultirajućeg spektra s potrebnim formatiranjem na zaslonu.

Montaža završnog uređaja

Na kraju imamo prednju ploču, a ispod nje hrpa žica koje treba nečim pokriti, a prekidače za nešto pričvrstiti. Prije toga, bilo je razmišljanja o izradi tijela od ostataka plastike, ali nismo baš razumjeli kako bi to izgledalo i kako to učiniti. Rješenje problema došlo je sasvim neočekivano. Nakon šetnje željezarijom, pronašli smo plastičnu teglicu za cvijeće koja je bila iznenađujuće savršene veličine.

Preostalo je samo označiti rupe za konektore, kablove i prekidače, te izrezati dvije bočne ploče od plastike.

Kao rezultat toga, spajajući sve zajedno i spajajući uređaj na računalo, dobili smo sljedeće:

Amplitudno-frekvencijski spektar (32 brojanja):

Amplitudno-frekvencijski spektar (16 brojanja):

Amplitudno-frekvencijski spektar (8 brojanja):

Amplitudno-frekvencijski spektar (4 brojanja):

Fazno-frekvencijski spektar:

Pogled sa stražnje ploče:

Video rada uređaja

Radi veće jasnoće, video je snimljen u mraku. U videu uređaj prikazuje amplitudno-frekvencijski spektar, a zatim ga na 7 sekundi prebacujemo u fazno-frekvencijski spektar.

Popis potrebnih stavki

  1. LED GNL-5019UEUGC – 256 kom. (Za prikaz)
  2. N-p-n tranzistori KT863A – 8 kom. (Za upravljanje nizovima)
  3. Tranzistori pnp C32740 – 32 kom. (Za upravljanje stupcima)
  4. Otpornici 1kOhm – 32 kom. (Za ograničavanje bazne struje pnp tranzistora)
  5. Dekoderi 3/8 IN74AC138 – 4 kom. (Za odabir stupca)
  6. Dekoderi 2/4 IN74AC139 – 1 kom. (Za kaskadne dekodere)
  7. Montažna ploča 5x10cm – 2 kom.
  8. Petlje
  9. Arduino Pro micro – 1 kom.
  10. Mini-jack 3,5 mm konektor – 1 kom.
  11. Prekidač – 4 kom.
  12. Crna plastika 720*490*5 mm – 1 list. (Za prednju ploču)
  13. Crna tegla za cvijeće 550*200*150 mm – 1 kom. (Za tijelo)

Ovaj projekt je logičan nastavak projekta “Upravljačka jedinica tona s mikrokontrolerskom kontrolom na TDA8425”. Kako biste proširili funkcionalnost, predlažem da napravite jednostavan analizator audio spektra. Analizator spektra obrađuje signal i prikazuje njegov intenzitet u određenim frekvencijskim rasponima na LED ljestvicama. Dakle, ispod je dijagram uređaja.

Srce uređaja je mikrokontroler tvrtke MICROCHIP. Ovo je novi predstavnik obitelji 8-pinskih Flash mikrokontrolera. MICROCHIP nastavlja razvijati i proizvoditi napredne proizvode koji korisniku pružaju veću funkcionalnost i pouzdanost. Kontroler PIC12F675 kombinira sve prednosti arhitekture mikrokontrolera PICmicro i fleksibilnost Flash programske memorije. Uz nisku cijenu i malu veličinu, ovaj kontroler pruža funkcionalnost i jednostavnost korištenja koji prije nisu bili dostupni.

Audio signal dovodi se do ulaza mikro kruga - simultanog pojasnog filtra japanske korporacije ROHM. BA3834F ima sedam pojasnih filtera: 68Hz, 170Hz, 420Hz, 1000Hz, 2400Hz, 5900Hz, 14400Hz. Odabir odgovarajućeg filtera vrši mikrokontroler PIC12F675.

Izlazni signal iz svakog pojasnopropusnog filtra digitalizira mikrokontroler i prenosi ga na upravljačke čipove (serijski pomakni registar s blokiranjem izlaza). S druge strane, kombinacija signala na 74HC595 uključuje odgovarajuće LED diode. LED diode su grupirane u matricu od 7 "X" stupaca i 16 "Y" redaka sa zajedničkom anodom. Ukupno 112 LED dioda.

Analizator spektra strukturno je sastavljen na dvije ploče - upravljačke i indikacijske. Ispod je crtež i fotografija upravljačke ploče.


Crteži tiskanih ploča su jednostrani; proizvode se bilo kojom dostupnom metodom, na primjer LUT. Imajte na umu - BA3834F čip je u SOP18 paketu. Montira se na stranu staze pomoću površinske montaže. Ispod je crtež i fotografija ploče zaslona.

LED anode su međusobno spojene iznad površine ploče i zalemljene na kontaktne pločice. Za prikladnije spajanje korišteni su pin konektori tipa PLS (jedan red s korakom od 2,54 mm); Sukladno tome, kabel će trebati utičnice s kontaktima tipa BLS (jednoredni s korakom od 2,54 mm) i 6PK-301U crimper (klešta za stezanje) za brtvljenje konektora na kabelu.

Najbolji članci na temu