Mündəricat:
- Addım 1: Layihənin məqsədləri
- Addım 2: nəzəriyyə
- Addım 3: Prosedurlar
- Addım 4: İşləmə rejimi: 1- PWM Rəqəmsal Çıxışlar Olaraq LEDlər
- Addım 5: İşləmə rejimi: 2- Rəqəmsal Çıxış Olaraq LEDlər
- Addım 6: İşləmə rejimi: 3- Pompalar rəqəmsal çıxış kimi
- Addım 7: Əlaqələr
Video: Rəqs Fəvvarəsi: MSGEQ7 Spektr Analizatoru ilə Arduino: 8 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Səs siqnalının qəbul edilməsi və onu vizual və ya mexaniki reaksiyaya çevirmək çox maraqlıdır. Bu layihədə, daxil olan səs siqnalını alan MSGEQ7 bir spektr analizatoruna qoşulmaq üçün Arduino Mega istifadə edəcəyik və onu 7 əsas tezlik bandına bölmək üçün bant ötürmə süzgəcini həyata keçirəcəyik. Arduino daha sonra hər bir frekans bandının analoq siqnalını təhlil edəcək və hərəkət yaradacaq.
Addım 1: Layihənin məqsədləri
Bu layihədə 3 iş rejimi müzakirə ediləcək:
- LEDlər, tezlik diapazonlarına reaksiya vermək üçün PWM rəqəmsal pinlərinə qoşulur
- LEDlər, tezlik diapazonlarına reaksiya vermək üçün rəqəmsal pinlərə bağlanır
- Nasoslar Arduino Mega -ya Motor sürücüləri vasitəsi ilə qoşulur və tezlik diapazonlarına reaksiya verir
Addım 2: nəzəriyyə
MSGEQ7 Spektr Analizatoru IC -dən bəhs etsək, giriş səs siqnalını 7 əsas zolağa ayıran daxili 7 bant keçid filtrinə malik olduğunu söyləyə bilərik: 63 Hz, 160 Hz, 400 Hz, 1 kHz, 2.5 kHz, 6.25 kHz və 16 kHz.
Hər bir filtrin çıxışı bir multiplekser istifadə edərək IC -nin çıxışı olaraq seçilir. Bu multiplekserin daxili ikili sayğacla idarə olunan selektor xətləri var. Beləliklə deyə bilərik ki, sayğac bir anda bir bandın keçməsinə icazə vermək üçün 0 -dan 6 -ya (ikili olaraq 000 -dan 110 -a) qədər saymalıdır. Bu, Arduino kodunun sayını 7 -ə çatdıqda sayğacı sıfırlaya bilməli olduğunu açıq şəkildə göstərir.
MSGEQ7 -nin dövrə diaqramına nəzər salsaq, osilatorun daxili saatını idarə etmək üçün RC tezlik tünerindən istifadə etdiyimizi görə bilərik. sonra giriş səs siqnal portunda filtrləmə RC elementlərindən istifadə edirik.
Addım 3: Prosedurlar
Mənbə səhifəsinə görə (https://www.baldengineer.com/msgeq7-simple-spectrum-analyzer.html) mənbə kodunun təkrarlanan PWM siqnalları kimi çıxışlarla məşğul olduğunu görə bilərik. Hədəflərimizə uyğun olaraq bəzi kod sətirlərini dəyişə bilərik.
Stereo jakımız varsa, giriş müqavimətini və kondansatörü ikinci kanala ikiqat artıra biləcəyimizi görə bilərik. MSGEQ7 -ni Arduino VCC (5 volt) və GND -dən alırıq. MSGEQ7 -ni Arduino lövhəsinə bağlayacağıq. Layihə üçün uyğun PWM pinləri olduğu üçün Arduino Mega -dan istifadə etməyi üstün tuturam. MSGEQ7 IC -nin çıxışı analog A0 pininə, STROBE Arduino Mega -nın 2 -ci pininə və RESET -in pin 3 -ə qoşulur.
Addım 4: İşləmə rejimi: 1- PWM Rəqəmsal Çıxışlar Olaraq LEDlər
Mənbə koduna görə, çıxış LED -lərini 4 -dən 10 -a qədər pinlərə qoşa bilərik
const int LED_pins [7] = {4, 5, 6, 7, 8, 9, 10};
Sonra LED -lərin hər bir tezlik bandının gücünə görə rəqs etdiyini görə bilərik.
Addım 5: İşləmə rejimi: 2- Rəqəmsal Çıxış Olaraq LEDlər
Çıxış LED -lərini istənilən rəqəmsal pinlərə qoşa bilərik.
const int LED_pins [7] = {40, 42, 44, 46, 48, 50, 52};
Sonra, hər bir tezlik bandının gücünə görə LED -lərin yanıb -sönməsini görə bilərik.
Addım 6: İşləmə rejimi: 3- Pompalar rəqəmsal çıxış kimi
Bu son rejimdə L298N motor sürücü modulunu Arduinonun çıxışlarına bağlayacağıq. bu, MSGEQ7 spektr analizatorunun çıxışına əsaslanaraq nasosun işini idarə etməyə imkan verir.
Bildiyiniz kimi, motor sürücüləri, Arduino -dan heç bir cərəyan batırmadan, Arduino -dan alınan siqnal əsasında bağlı mühərriklərin və ya nasosların işini idarə etməyimizə imkan verir, bunun əvəzinə mühərrikləri birbaşa bağlı enerji mənbəyindən alırlar.
Kodu qaynaq olaraq işləsək, nasoslar düzgün işləməyə bilər. Bunun səbəbi, PWM siqnalının aşağı olması və motor sürücüsünün mühərrikləri və ya nasosları işə salması və uyğun bir cərəyan verməsi üçün uyğun olmayacaqdır. Buna görə AW -dən analoq oxunuşları 1,3 -dən çox faktorla vuraraq PWM dəyərini artırmağı məsləhət görürəm. Bu, xəritənin motor sürücüsü üçün uyğun olmasına kömək edir. 1.4 ilə 1.6 arasında məsləhət görürəm. Ayrıca, PWM dəyərinin uyğun olacağından əmin olmaq üçün PWM -ni 50 ilə 255 arasında dəyişə bilərik.
LED -ləri motor sürücülərinin çıxışları ilə birləşdirə bilərik, lakin PWM dəyərləri artdıqca LED -lər əvvəlki kimi yaxşı görünməyəcək şəkildə yanıb sönməyəcək. Buna görə də onları 40 -dan 52 -dək rəqəmsal pinlərə bağlamağı təklif edirəm.
Addım 7: Əlaqələr
Sizdən geribildirim eşitməkdən çox məmnunam. Zəhmət olmasa kanalıma qoşulmaqdan çəkinməyin:
YouTube:
Instagram: @sadəcədigital010
Twitter: @sadəcə01Digital
Tövsiyə:
Super ölçülü akril spektr analizatoru: 7 addım (şəkillərlə)
Super Ölçülü Akril Spektr Analizatoru: Niyə bu kiçik LED ekranlara və ya kiçik LCD -lərə baxmaq istəyərsiniz ki, bunu böyük edə bilərsiniz? Bu, öz Giant ölçülü Spektr analizatorunuzun necə qurulacağına dair addım -addım təsvirdir. bir otaq doldurma çırağı qurmaq üçün led zolaqlar
DIY FFT Audio Spektr Analizatoru: 3 addım
DIY FFT Audio Spektr Analizatoru: FFT spektr analizatoru, spektr analizini təmin etmək üçün Fourier analizi və rəqəmsal siqnal emal üsullarından istifadə edən bir sınaq avadanlıqdır. Fourier analizindən istifadə etməklə, məsələn, davamlı zaman sahəsindəki bir dəyərin çevrilməsi mümkündür
10 Band Led Spektr Analizatoru: 11 Addım
10 Band Led Spektr Analizatoru: Günaydın əziz izləyicilər və oxucular. Bu gün sizə 10 bantlı LED spektr analizatorunun tam montaj bələdçisini göstərmək istəyirəm
DIY Arduino Audio Siqnal Spektr Analizatoru: 3 addım
DIY Arduino Audio Siqnal Spektr Analizatoru: Dəyişən vizual rejimləri olan çox sadə bir səs analizatorudur
Makey Makeydən istifadə edərək DIY Rəqs Rəqs İnqilabı: 6 addım
Makey Makeydən istifadə edərək DIY Dance Rəqs İnqilabı: Salam! Bu mənim DIY Dance Dance Revolution devrimdir. Çalışdığım ən çox sevdiyim layihələrdən biridir və həqiqətən də özünəməxsus bir layihədir. Bu layihə uşaqlara sxemlərin necə işlədiyini öyrətmək üçün hazırlanmışdır, bu layihəni STEM gecələri üçün istifadə etdim və təşviq etdim