Sadržaj:

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

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

Video: Plesna fontana: Arduino s analizatorom spektra MSGEQ7: 8 koraka
Video: Ming lake by WSCG 2024, Studeni
Anonim
Plesna fontana: Arduino s analizatorom spektra MSGEQ7
Plesna fontana: Arduino s analizatorom spektra MSGEQ7

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 izvodi propusno filtriranje na njemu kako bi ga podijelio u 7 glavnih frekvencijskih opsega. Arduino će zatim analizirati analogni signal svakog frekvencijskog područja i stvoriti akciju.

Korak 1: Ciljevi projekta

Ovaj će projekt raspravljati o 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. Crpke su spojene na Arduino Mega putem upravljačkih programa motora i reagiraju na frekvencijske pojaseve

Korak 2: Teorija

Teorija
Teorija
Teorija
Teorija

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

Izlaz svakog filtra odabire se kao izlaz IC -a pomoću multipleksera. Taj multiplekser ima linije za odabir koje kontrolira unutarnji binarni brojač. Dakle, možemo reći da bi brojač trebao brojati od 0 do 6 (000 do 110 u binarnom obliku) kako bi omogućio prolaz po jednom pojasu. Time je jasno 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 ulaznom ulaznom audio signalnom portu.

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. Radije koristim Arduino Mega jer ima PWM igle prikladne za projekt. Izlaz ICGE MSGEQ7 spojen je na analogni pin A0, STROBE je spojen na pin 2 Arduino Mega, a RESET je spojen 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- crpke kao digitalni izlazi
Načini rada: 3- crpke 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- Crpke kao digitalni izlazi

Načini rada: 3- Crpke kao digitalni izlazi
Načini rada: 3- Crpke kao digitalni izlazi

U ovom posljednjem načinu rada povezat ćemo modul upravljačkog programa motora L298N na izlaze Arduina. to nam omogućuje kontrolu rada crpke na temelju rezultata 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, crpke 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 PWM vrijednosti 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 promijeniti PWM na 50 do 255 kako bismo bili sigurni da će vrijednost PWM -a biti prikladna.

LED diode možemo spojiti 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čeni: