Përmbajtje:

Shatërvan vallëzimi: Arduino me analizues spektri MSGEQ7: 8 hapa
Shatërvan vallëzimi: Arduino me analizues spektri MSGEQ7: 8 hapa

Video: Shatërvan vallëzimi: Arduino me analizues spektri MSGEQ7: 8 hapa

Video: Shatërvan vallëzimi: Arduino me analizues spektri MSGEQ7: 8 hapa
Video: Albot (FIRST STEEP) https://www.facebook.com/AlBotAlbania 2024, Nëntor
Anonim
Shatërvan vallëzimi: Arduino me analizues spektri MSGEQ7
Shatërvan vallëzimi: Arduino me analizues spektri MSGEQ7

Marrja e një sinjali audio dhe shndërrimi i tij në reagim vizual ose mekanik është shumë interesant. Në këtë projekt ne do të përdorim një Arduino Mega për t'u lidhur me një analizues spektri MSGEQ7 që merr sinjalin audio të hyrjes dhe do të kryejë filtrimin e kalimit të brezit mbi të për ta ndarë atë në 7 breza frekuencash kryesore. Arduino pastaj do të analizojë sinjalin analog të secilës brez frekuence dhe krijon një veprim.

Hapi 1: Objektivat e Projektit

Ky projekt do të diskutojë 3 mënyra të funksionimit:

  1. LED janë të lidhur me kunjat dixhitale PWM për të reaguar ndaj brezave të frekuencave
  2. LED janë të lidhur me kunjat dixhitale për të reaguar ndaj brezave të frekuencave
  3. Pompat janë të lidhura me Arduino Mega përmes drejtuesve të motorit dhe reagojnë ndaj brezave të frekuencave

Hapi 2: Teoria

Teori
Teori
Teori
Teori

Nëse flasim për MSGEQ7 Spectrum Analyzer IC mund të themi se ka filtra të brendshëm me 7 breza kalimi që ndan sinjalin e hyrjes audio në 7 breza kryesore: 63 Hz, 160 Hz, 400 Hz, 1 kHz, 2.5 kHz, 6.25 kHz dhe 16 kHz

Dalja e secilit filtër zgjidhet të jetë dalja e IC duke përdorur një multiplexer. Ky multiplexer ka linja përzgjedhëse të kontrolluara nga një numërues i brendshëm binar. Pra, mund të themi se numëruesi duhet të numërojë nga 0 në 6 (000 në 110 në binar) për të lejuar që një brez të kalojë në të njëjtën kohë. Kjo e bën të qartë se kodi i Arduino duhet të jetë në gjendje të rivendosë numëruesin pasi të arrijë numrin 7.

Nëse i hedhim një vështrim diagramit të qarkut të MSGEQ7, mund të shohim se ne përdorim akorduesin e frekuencës RC për të kontrolluar orën e brendshme të oshilatorit. atëherë ne përdorim elementët RC të filtrimit në portën e sinjalit audio hyrës.

Hapi 3: Procedurat

Procedurat
Procedurat

Sipas faqes burimore (https://www.baldengineer.com/msgeq7-simple-spectrum-analyzer.html) ne mund të shohim që kodi burim merret me daljet si sinjale PWM që është e përsëritur. ne mund të ndryshojmë disa nga linjat e kodit për të përshtatur qëllimet tona.

Ne mund të vërejmë se nëse kemi një prizë stereo, ne mund të dyfishojmë rezistencën hyrëse dhe kondensatorin në kanalin e dytë. Ne fuqizojmë MSGEQ7 nga Arduino VCC (5 volt) dhe GND. Ne do ta lidhim MSGEQ7 me bordin Arduino. Unë preferoj të përdor Arduino Mega pasi ka kunja PWM të përshtatshme për projektin. Dalja e IC MSGEQ7 është e lidhur me pinin analog A0, STROBE është i lidhur me pin 2 të Arduino Mega dhe RESET është i lidhur me pin 3.

Hapi 4: Mënyrat e funksionimit: 1- LEDs si dalje dixhitale PWM

Mënyrat e funksionimit: 1- LEDs si dalje dixhitale PWM
Mënyrat e funksionimit: 1- LEDs si dalje dixhitale PWM

Sipas kodit burimor, ne mund të lidhim LED -të e daljes me kunjat 4 deri në 10

const int LED_pins [7] = {4, 5, 6, 7, 8, 9, 10};

Atëherë ne mund të vërejmë se LED -et vallëzojnë mbi fuqinë e secilës brez frekuencash.

Hapi 5: Mënyrat e funksionimit: 2- LEDs si dalje dixhitale

Image
Image
Mënyrat e funksionimit: 3- Pompat si dalje dixhitale
Mënyrat e funksionimit: 3- Pompat si dalje dixhitale

Ne mund t'i lidhim LED -et dalëse me çdo kunj dixhital.

const int LED_pins [7] = {40, 42, 44, 46, 48, 50, 52};

Atëherë mund të vërejmë se LED -at ndizen mbi fuqinë e secilës brez frekuencash.

Hapi 6: Mënyrat e funksionimit: 3- Pompat si dalje dixhitale

Mënyrat e funksionimit: 3- Pompat si dalje dixhitale
Mënyrat e funksionimit: 3- Pompat si dalje dixhitale

Në këtë mënyrë të fundit ne do të lidhim modulin L298N të drejtuesit të motorit me daljet e Arduino. kjo na mundëson të kontrollojmë funksionimin e pompës bazuar në daljen e analizuesit të spektrit MSGEQ7.

Siç dihet, drejtuesit e motorëve na mundësojnë të kontrollojmë funksionimin e motorëve ose pompave të lidhura bazuar në sinjalin e gjeneruar nga Arduino pa mbytur asnjë rrymë nga Arduino, përkundrazi ata fuqizojnë motorët drejtpërdrejt nga burimi i energjisë i lidhur.

Nëse e përdorim kodin si burim të papërpunuar, pompat mund të mos funksionojnë siç duhet. Kjo ndodh sepse sinjali PWM është i ulët dhe nuk do të jetë i përshtatshëm për drejtuesin e motorit për të drejtuar motorët ose pompat dhe për të dhënë një rrymë të përshtatshme. Kjo është arsyeja pse unë rekomandoj që të rrisni vlerën e PWM duke shumëzuar leximet analoge nga A0 me faktor më të madh se 1.3. Kjo ndihmon që hartografimi të jetë i përshtatshëm për drejtuesin e motorit. Unë rekomandoj 1.4 në 1.6. Gjithashtu ne mund të rimarrim PWM të jetë 50 në 255 në mënyrë që të jemi të sigurtë që vlera e PWM do të jetë e përshtatshme.

Ne mund t'i lidhim LED -et së bashku me daljet për drejtuesit e motorëve, por LED -et nuk do të ndizen në një mënyrë të mirë të dukshme si më parë pasi vlerat e PWM janë rritur. Kështu që unë sugjeroj që t'i mbani të lidhur me kunjat dixhitale 40 deri në 52.

Hapi 7: Kontaktet

Shumë i lumtur të dëgjoj reagime nga ju. Ju lutemi mos hezitoni të bashkoheni me kanalet e mia në:

YouTube:

Instagram: @thjeshtdigital010

Twitter: @thjesht01Digital

Recommended: