Sadržaj:

Plesna fontana: Arduino sa analizatorom spektra MSGEQ7: 8 koraka
Plesna fontana: Arduino sa analizatorom spektra MSGEQ7: 8 koraka

Video: Plesna fontana: Arduino sa analizatorom spektra MSGEQ7: 8 koraka

Video: Plesna fontana: Arduino sa analizatorom spektra MSGEQ7: 8 koraka
Video: Ming lake by WSCG 2024, Novembar
Anonim
Plesna fontana: Arduino sa MSGEQ7 spektralnim analizatorom
Plesna fontana: Arduino sa MSGEQ7 spektralnim analizatorom

Prijem audio signala i pretvaranje u vizualnu ili mehaničku reakciju vrlo je zanimljiv. U ovom projektu koristit ćemo Arduino Mega za spajanje na analizator spektra MSGEQ7 koji uzima ulazni audio signal i vrši propusno filtriranje na njemu kako bi ga podijelio u 7 glavnih frekvencijskih opsega. Arduino će zatim analizirati analogni signal svakog frekvencijskog pojasa i stvoriti akciju.

Korak 1: Ciljevi projekta

Ovaj projekt će razmatrati 3 načina rada:

  1. LED diode su spojene na PWM digitalne pinove kako bi reagirale na frekvencijske opsege
  2. LED diode su spojene na digitalne pinove kako bi reagirale na frekvencijske opsege
  3. Pumpe su spojene na Arduino Mega preko upravljačkih programa motora i reagiraju na frekvencijske opsege

Korak 2: Teorija

Teorija
Teorija
Teorija
Teorija

Ako govorimo o ICGE MSGEQ7 analizatoru spektra, možemo reći da ima interne 7 -pasovne prolazne filtere koji ulazni audio signal dijele na 7 glavnih opsega: 63 Hz, 160 Hz, 400 Hz, 1 kHz, 2,5 kHz, 6,25 kHz i 16 kHz.

Izlaz svakog filtera odabran je kao izlaz IC -a pomoću multipleksera. Taj multiplekser ima linije za odabir koje kontrolira unutarnji binarni brojač. Dakle, možemo reći da brojač treba brojati od 0 do 6 (000 do 110 u binarnom obliku) kako bi omogućio prolaz po jednom pojasu. To jasno stavlja do znanja da bi kôd Arduina trebao moći poništiti brojač kada dosegne broj 7.

Ako pogledamo dijagram sklopa MSGEQ7, možemo vidjeti da koristimo RC frekvencijski tuner za upravljanje unutarnjim satom oscilatora. tada koristimo filtriranje RC elemenata na portu ulaznog audio signala.

Korak 3: Postupci

Postupci
Postupci

Prema izvornoj stranici (https://www.baldengineer.com/msgeq7-simple-spectrum-analyzer.html) možemo vidjeti da izvorni kod obrađuje izlaze kao PWM signale koji se ponavljaju. možemo promijeniti neke linije koda tako da odgovaraju našim ciljevima.

Možemo primijetiti da ako imamo stereo priključak, možemo udvostručiti ulazni otpornik i kondenzator na drugi kanal. Napajamo MSGEQ7 iz Arduino VCC (5 volti) i GND. Spojit ćemo MSGEQ7 na Arduino ploču. Više volim koristiti Arduino Mega jer ima PWM pinove pogodne za projekt. Izlaz ICGE MSGEQ7 spojen je na analogni pin A0, STROBE je spojen na pin 2 Arduino Mega, a RESET je priključen na pin 3.

Korak 4: Načini rada: 1- LED diode kao PWM digitalni izlazi

Načini rada: 1- LED diode kao PWM digitalni izlazi
Načini rada: 1- LED diode kao PWM digitalni izlazi

Prema izvornom kodu, izlazne LED diode možemo spojiti na pinove 4 do 10

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

Tada možemo primijetiti kako LED diode plešu po snazi svakog frekvencijskog pojasa.

Korak 5: Načini rada: 2- LED diode kao digitalni izlazi

Image
Image
Načini rada: 3 pumpe kao digitalni izlazi
Načini rada: 3 pumpe kao digitalni izlazi

Izlazne LED diode možemo spojiti na bilo koje digitalne pinove.

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

Tada možemo primijetiti kako LED diode trepere prema jačini svakog frekvencijskog pojasa.

Korak 6: Načini rada: 3 pumpe kao digitalni izlazi

Načini rada: 3 pumpe kao digitalni izlazi
Načini rada: 3 pumpe kao digitalni izlazi

U ovom posljednjem načinu rada povezat ćemo modul upravljačkog programa motora L298N na izlaze Arduina. ovo nam omogućava kontrolu rada pumpe na osnovu izlaza analizatora spektra MSGEQ7.

Kao što je poznato, upravljački programi motora omogućuju nam da kontroliramo rad spojenih motora ili crpki na temelju generiranog signala iz Arduina bez poništavanja struje iz Arduina, umjesto toga napajaju motore izravno iz spojenog izvora napajanja.

Ako kôd pokrenemo kao sirovi izvor, pumpe možda neće raditi ispravno. To je zato što je signal PWM nizak i neće biti prikladan za vozača da pokreće motore ili pumpe i isporučuje odgovarajuću struju. Zato preporučujem povećanje vrijednosti PWM -a množenjem analognih očitanja s A0 s faktorom većim od 1,3. To pomaže da mapiranje bude prikladno za vozača motora. Preporučujem 1.4 do 1.6. Također, možemo ponovno prikazati PWM na 50 do 255 kako bismo bili sigurni da će vrijednost PWM -a biti prikladna.

Možemo spojiti LED diode zajedno s izlazima za upravljačke programe motora, ali LED diode neće bljeskati na dobro vidljiv način kao prije jer su povećane vrijednosti PWM -a. Stoga predlažem da ih povežete s digitalnim pinovima od 40 do 52.

Korak 7: Kontakti

Tako mi je drago čuti povratne informacije od vas. Molimo ne ustručavajte se pridružiti se mojim kanalima na:

YouTube:

Instagram: @jednostavnodigital010

Twitter: @jednostavno01Digital

Preporučuje se: