Სარჩევი:

მოცეკვავე შადრევანი: არდუინო MSGEQ7 სპექტრის ანალიზატორით: 8 ნაბიჯი
მოცეკვავე შადრევანი: არდუინო MSGEQ7 სპექტრის ანალიზატორით: 8 ნაბიჯი

ვიდეო: მოცეკვავე შადრევანი: არდუინო MSGEQ7 სპექტრის ანალიზატორით: 8 ნაბიჯი

ვიდეო: მოცეკვავე შადრევანი: არდუინო MSGEQ7 სპექტრის ანალიზატორით: 8 ნაბიჯი
ვიდეო: Dancing fountain Tbilisi, Shtraus march 2024, ივლისი
Anonim
მოცეკვავე შადრევანი: არდუინო MSGEQ7 სპექტრის ანალიზატორით
მოცეკვავე შადრევანი: არდუინო MSGEQ7 სპექტრის ანალიზატორით

აუდიო სიგნალის მიღება და მისი ვიზუალურ ან მექანიკურ რეაქციად გადაქცევა ძალიან საინტერესოა. ამ პროექტში ჩვენ გამოვიყენებთ Arduino Mega- ს სპექტრის ანალიზატორ MSGEQ7- თან დასაკავშირებლად, რომელიც იღებს შეყვანის აუდიო სიგნალს და ასრულებს მასზე გამტარ ფილტრაციას, რათა იგი დაიყოს 7 ძირითად სიხშირეზე. Arduino აანალიზებს თითოეული სიხშირის დიაპაზონის ანალოგურ სიგნალს და ქმნის მოქმედებას.

ნაბიჯი 1: პროექტის მიზნები

ეს პროექტი განიხილავს ოპერაციის 3 რეჟიმს:

  1. LED- ები უკავშირდება PWM ციფრულ ქინძისთავებს, რათა მოახდინონ სიხშირის ზოლებზე რეაგირება
  2. LED- ები დაკავშირებულია ციფრულ ქინძისთავებთან, რათა მოახდინონ სიხშირის ზოლებზე რეაგირება
  3. ტუმბოები დაკავშირებულია Arduino Mega– ს საავტომობილო დრაივერების საშუალებით და რეაგირებენ სიხშირის ზოლებზე

ნაბიჯი 2: თეორია

თეორია
თეორია
თეორია
თეორია

თუ ვსაუბრობთ MSGEQ7 Spectrum Analyzer IC- ზე, შეგვიძლია ვთქვათ, რომ მას აქვს შიდა 7 ბენდიანი ფილტრები, რომლებიც ყოფს აუდიო სიგნალს 7 მთავარ ზოლად: 63 Hz, 160 Hz, 400 Hz, 1 kHz, 2.5 kHz, 6.25 kHz და 16 kHz

თითოეული ფილტრის გამომავალი აირჩევა IC- ის გამომავლად მულტიპლექსერის გამოყენებით. ამ მულტიპლექსერს აქვს ამომრჩევი ხაზები, რომლებიც კონტროლდება შიდა ორობითი მრიცხველის მიერ. ასე რომ, ჩვენ შეგვიძლია ვთქვათ, რომ მრიცხველი უნდა ითვლიდეს 0 -დან 6 -მდე (000 -დან 110 -მდე ორობითი), რათა ერთმა ჯგუფმა გაიაროს ერთდროულად. ეს ცხადყოფს, რომ არდუინოს კოდს უნდა შეეძლოს მრიცხველის გადატვირთვა მას შემდეგ, რაც ის მიაღწევს 7 რიცხვს.

თუ გადავხედავთ MSGEQ7- ის წრიულ დიაგრამას, ჩვენ ვხედავთ, რომ ჩვენ ვიყენებთ RC სიხშირის ტიუნერს ოსცილატორის შიდა საათის გასაკონტროლებლად. შემდეგ ჩვენ ვიყენებთ ფილტრაციის RC ელემენტებს შესასვლელი აუდიო სიგნალის პორტში.

ნაბიჯი 3: პროცედურები

პროცედურები
პროცედურები

წყაროს გვერდის მიხედვით (https://www.baldengineer.com/msgeq7-simple-spectrum-analyzer.html) ჩვენ ვხედავთ, რომ წყაროს კოდი ეხება შედეგებს, როგორც PWM სიგნალებს, რომლებიც მეორდება. ჩვენ შეგვიძლია შევცვალოთ კოდის ზოგიერთი ხაზი ჩვენი მიზნების შესაბამისად.

ჩვენ შეგვიძლია შევნიშნოთ, რომ თუ ჩვენ გვაქვს სტერეო ჯეკი, შეგვიძლია გავაორმაგოთ შემავალი რეზისტორი და კონდენსატორი მეორე არხზე. ჩვენ ვამუშავებთ MSGEQ7– ს Arduino VCC– დან (5 ვოლტი) და GND– დან. ჩვენ დავუკავშირებთ MSGEQ7 არდუინოს დაფას. მირჩევნია გამოვიყენო Arduino Mega, რადგან მას აქვს პროექტისათვის შესაფერისი PWM ქინძისთავები. MSGEQ7 IC- ის გამომავალი დაკავშირებულია ანალოგურ pin A0- თან, STROBE უკავშირდება Arduino Mega- ს პინ 2 -ს და RESET უკავშირდება pin 3 -ს.

ნაბიჯი 4: მუშაობის რეჟიმი: 1- LED- ები, როგორც PWM ციფრული შედეგები

მუშაობის რეჟიმი: 1- LED- ები როგორც PWM ციფრული შედეგები
მუშაობის რეჟიმი: 1- LED- ები როგორც PWM ციფრული შედეგები

წყაროს კოდის მიხედვით, ჩვენ შეგვიძლია გამომავალი LED- ები დავუკავშიროთ 4 – დან 10 – მდე

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

შემდეგ ჩვენ შეგვიძლია შევნიშნოთ, რომ LED- ები ცეკვავს თითოეული სიხშირის ზოლის სიძლიერეზე.

ნაბიჯი 5: მუშაობის რეჟიმი: 2- ები როგორც ციფრული შედეგები

Image
Image
მუშაობის რეჟიმი: 3- ტუმბოები როგორც ციფრული შედეგები
მუშაობის რეჟიმი: 3- ტუმბოები როგორც ციფრული შედეგები

ჩვენ შეგვიძლია გამომავალი LED- ების დაკავშირება ნებისმიერ ციფრულ ქინძისთავთან.

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

შემდეგ ჩვენ შეგვიძლია შევნიშნოთ, რომ LED- ები ციმციმებს თითოეული სიხშირის ზოლის სიძლიერეზე.

ნაბიჯი 6: მუშაობის რეჟიმი: 3- ტუმბოები როგორც ციფრული შედეგები

მუშაობის რეჟიმი: 3- ტუმბოები როგორც ციფრული შედეგები
მუშაობის რეჟიმი: 3- ტუმბოები როგორც ციფრული შედეგები

ამ უკანასკნელ რეჟიმში ჩვენ L298N საავტომობილო დრაივერის მოდულს დავუკავშირებთ არდუინოს გამოსავალს. ეს გვაძლევს საშუალებას გავაკონტროლოთ ტუმბოს მოქმედება MSGEQ7 სპექტრის ანალიზატორის გამომუშავების საფუძველზე.

როგორც ცნობილია, საავტომობილო დრაივერები გვაძლევენ შესაძლებლობას გავაკონტროლოთ დაკავშირებული ძრავების ან ტუმბოების მუშაობა არდუინოდან წარმოქმნილი სიგნალის საფუძველზე არდუინოდან რაიმე დენის ჩაძირვის გარეშე, სამაგიეროდ ისინი ძრავებს ამარაგებენ უშუალოდ დაკავშირებული კვების წყაროდან.

თუ ჩვენ ვიყენებთ კოდს, როგორც ნედლეულ წყაროს, ტუმბოები შეიძლება არ მუშაობდეს სწორად. ეს იმიტომ ხდება, რომ PWM სიგნალი დაბალია და არ იქნება შესაფერისი ძრავის მძღოლისთვის, რომ აწარმოოს ძრავები ან ტუმბოები და უზრუნველყოს შესაბამისი დენი. ამიტომ გირჩევთ გაზარდოთ PWM მნიშვნელობა A0– დან ანალოგური მაჩვენებლების გამრავლებით 1.3 – ზე მეტი ფაქტორით. ეს ხელს უწყობს რუქის შედგენას ძრავის მძღოლისთვის. მე გირჩევთ 1.4 -დან 1.6 -მდე. ასევე ჩვენ შეგვიძლია გადავიტანოთ PWM 50 -დან 255 -მდე, რათა დარწმუნებული ვიყოთ, რომ PWM მნიშვნელობა იქნება შესაფერისი.

ჩვენ შეგვიძლია LED- ები დავუკავშიროთ საავტომობილო დრაივერების შედეგებს, მაგრამ LED- ები არ ანათებენ ისე კარგად, როგორც ადრე, რადგან გაიზარდა PWM მნიშვნელობები. ამიტომ მე გირჩევთ შეინარჩუნოთ ისინი ციფრულ ქინძისთავებთან 40 -დან 52 -მდე.

ნაბიჯი 7: კონტაქტები

ძალიან მიხარია თქვენგან გამოხმაურების მოსმენა. გთხოვთ, ნუ დააყოვნებთ ჩემს არხებზე გაწევრიანებას:

YouTube:

Instagram: @simpledigital010

Twitter: @just01Digital

გირჩევთ: