INHOUDSOPGAWE:
- Stap 1: Doelwitte van die projek
- Stap 2: Teorie
- Stap 3: Prosedures
- Stap 4: Werkingswyses: 1- LED's as PWM digitale uitsette
- Stap 5: Werkingswyses: 2- LED's as digitale uitsette
- Stap 6: Werkingswyses: 3- pompe as digitale uitsette
- Stap 7: Kontakte
Video: Dancing Fountain: Arduino With MSGEQ7 Spectrum Analyzer: 8 Stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Die ontvangs van 'n klanksein en omskakeling in visuele of meganiese reaksie is baie interessant. In hierdie projek gebruik ons 'n Arduino Mega om aan 'n spektrumanaliseerder MSGEQ7 gekoppel te word wat die ingang -klanksein neem en bandpassfiltering daarop uitvoer om dit in 7 hooffrekwensiebande te verdeel. Die Arduino ontleed dan die analoog sein van elke frekwensieband en skep 'n aksie.
Stap 1: Doelwitte van die projek
Hierdie projek sal drie werkswyses bespreek:
- LED's is gekoppel aan PWM digitale penne om op die frekwensiebande te reageer
- LED's word aan digitale penne gekoppel om op die frekwensiebande te reageer
- Pompe word deur motorbestuurders aan die Arduino Mega gekoppel en reageer op die frekwensiebande
Stap 2: Teorie
As ons praat oor die MSGEQ7 Spectrum Analyzer IC, kan ons sê dat dit interne 7 -band deurlaatfilters het wat die ingang -klanksein in 7 hoofbande verdeel: 63 Hz, 160 Hz, 400 Hz, 1 kHz, 2,5 kHz, 6,25 kHz en 16 kHz.
Die uitset van elke filter word gekies om die uitset van die IC te wees deur 'n multiplexer te gebruik. Die multiplexer het selekteerderlyne wat beheer word deur 'n interne binêre teller. Ons kan dus sê dat die teller van 0 tot 6 (000 tot 110 in binêre) moet tel, sodat een band op 'n slag kan slaag. Dit maak dit duidelik dat die kode van die Arduino die toonbank moet kan herstel sodra hy die telling 7 bereik het.
As ons na die kringdiagram van die MSGEQ7 kyk, kan ons sien dat ons 'n RC -frekwensie -ontvanger gebruik om die interne klok van die ossillator te beheer. dan gebruik ons die filter van RC -elemente by die ingang -klankseinpoort.
Stap 3: Prosedures
Volgens die bronbladsy (https://www.baldengineer.com/msgeq7-simple-spectrum-analyzer.html) kan ons sien dat die bronkode handel oor die uitsette as PWM-seine wat herhalend is. ons kan 'n paar kodelyne verander om ons doelwitte te bereik.
Ons kan sien dat as ons 'n stereo -aansluiting het, ons die ingangsweerstand en kapasitor kan verdubbel na die tweede kanaal. Ons dryf die MSGEQ7 van die Arduino VCC (5 volt) en GND. Ons verbind die MSGEQ7 met die Arduino -bord. Ek verkies om die Arduino Mega te gebruik, aangesien dit PWM -penne het wat geskik is vir die projek. Die uitset van die MSGEQ7 IC is gekoppel aan analoog pen A0, die STROBE is gekoppel aan pen 2 van die Arduino Mega en die RESET is gekoppel aan pen 3.
Stap 4: Werkingswyses: 1- LED's as PWM digitale uitsette
Volgens die bronkode kan ons die uitvoer -LED's aan penne 4 tot 10 koppel
const int LED_pins [7] = {4, 5, 6, 7, 8, 9, 10};
Dan kan ons sien dat die LED's dans op die sterkte van elke frekwensieband.
Stap 5: Werkingswyses: 2- LED's as digitale uitsette
Ons kan die uitvoer -LED's aan enige digitale penne koppel.
const int LED_pins [7] = {40, 42, 44, 46, 48, 50, 52};
Dan kan ons sien dat die LED's flits op die sterkte van elke frekwensieband.
Stap 6: Werkingswyses: 3- pompe as digitale uitsette
In hierdie laaste modus koppel ons die L298N -motorbestuurdermodule aan die uitsette van die Arduino. Dit stel ons in staat om die werking van die pomp te beheer op grond van die uitset van die MSGEQ7 spektrumanaliseerder.
Soos bekend stel die motorbestuurders ons in staat om die werking van die gekoppelde motors of pompe te beheer op grond van die gegenereerde sein van die Arduino sonder om enige stroom van die Arduino af te laat sak, in plaas daarvan dryf hulle die motors direk van die gekoppelde kragbron af.
As ons die kode as rou bron gebruik, werk die pompe moontlik nie behoorlik nie. Dit is omdat die PWM -sein laag is en nie geskik is vir die motorbestuurder om die motors of pompe te laat loop en 'n geskikte stroom af te lewer nie. Daarom beveel ek aan om die PWM -waarde te verhoog deur die analoogmetings van A0 te vermenigvuldig met faktor groter as 1.3. Dit help dat die kartering geskik is vir die motorbestuurder. Ek beveel 1.4 tot 1.6 aan. Ons kan ook die PWM na 50 tot 255 verander om seker te wees dat die PWM -waarde geskik is.
Ons kan die LED's verbind met die uitsette vir die motorbestuurders, maar die LED's flits nie op 'n goeie sigbare manier soos voorheen nie, aangesien die PWM -waardes verhoog is. Ek stel dus voor om hulle aan die digitale penne 40 tot 52 gekoppel te hou.
Stap 7: Kontakte
So bly om terugvoer van u te hoor. Moenie huiwer om by my kanale aan te sluit op:
YouTube:
Instagram: @eenvoudigdigital010
Twitter: @eenvoudig01Digital
Aanbeveel:
Hoe om 'n LED Audio Spectrum Analyzer te maak: 7 stappe (met foto's)
Hoe om 'n LED Audio Spectrum Analyzer te maak: LED Audio Spectrum Analyzer genereer die pragtige beligtingspatroon volgens die intensiteit van musiek. Daar is baie DIY LED Music Spectrum kits beskikbaar in die mark, maar hier gaan ons 'n LED Audio Spectrum maak Ontleder wat NeoPixe gebruik
DIY FFT Audio Spectrum Analyzer: 3 stappe
DIY FFT Audio Spectrum Analyzer: FFT spektrumanaliseerder is 'n toetstoerusting wat Fourier -analise en tegnieke vir digitale seinverwerking gebruik om spektrumanalise te verskaf. Deur Fourier -analise te gebruik, is dit moontlik dat een waarde in byvoorbeeld die deurlopende tyddomein konverteer word
10 Band Led Spectrum Analyzer: 11 stappe
10 Band Led Spectrum Analyzer: Goeie middag, liewe kykers en lesers. Vandag wil ek u die volledige monteergids vir die 10 -band LED -spektrumanaliseerder wys
RGB 10 Band Led Spectrum Analyzer: 16 stappe
RGB 10 Band Led Spectrum Analyzer: Goeie middag, liewe kykers en lesers. Ek wys u vandag 'n wysiging van 'n tien-band spektrumanaliseerder met RGB LED's
DIY Arduino Audio Signal Spectrum Analyzer: 3 stappe
DIY Arduino Audio Signal Spectrum Analyzer: Dit is 'n baie eenvoudige klankontleder met veranderlike visuele modusse