Სარჩევი:

დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი: 4 ნაბიჯი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი: 4 ნაბიჯი

ვიდეო: დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი: 4 ნაბიჯი

ვიდეო: დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი: 4 ნაბიჯი
ვიდეო: მონატრება 2024, ნოემბერი
Anonim
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი
დაუკარით სიმღერები Arduino– ს გამოყენებით ADC to PWM Flyback Transformer ან სპიკერი

Გამარჯობათ ბიჭებო, ეს არის ჩემი მეორე სწავლების მეორე ნაწილი (რაც ძალიან რთული იყო), ძირითადად, ამ პროექტში მე გამოვიყენე ADC და TIMERS ჩემს Arduino– ზე აუდიო სიგნალის PWM სიგნალად გადასაყვანად.

ეს ბევრად უფრო ადვილია, ვიდრე ჩემი წინა Instructable, აქ არის ბმული ჩემი პირველი Instructable თუ გინდათ რომ ნახოთ. ბმული

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

ნაბიჯი 1: რაც ჩვენ გვჭირდება ამ პროექტისთვის (მოთხოვნები)

1. Arduino დაფა (ჩვენ შეგვიძლია გამოვიყენოთ ნებისმიერი დაფა (328, 2560) ანუ მეგა, უნიო, მინი და სხვა, მაგრამ კონკრეტული განსხვავებული ქინძისთავებით)

2. კომპიუტერი Arduino Studio– ით.

3. Breadboard ან Perfboard

4. დამაკავშირებელი მავთულები

5. TC4420 (Mosfet მძღოლი ან მსგავსი რამ)

6. სიმძლავრე Mosfet (N ან P არხი, გთხოვთ მიაწოდოთ შემდეგ შესაბამისად) (მე გამოვიყენე N არხი)

7. სპიკერი ან Flyback Transformer (დიახ თქვენ სწორად წაიკითხეთ !!)

8. შესაფერისი კვების წყარო (0-12V) (მე გამოვიყენე ჩემი საკუთარი ATX კვების ბლოკი)

9. გამაცხელებელი რადიატორი (მე გამოვარჩიე ძველი კომპიუტერიდან).

10. გამაძლიერებელი (ნორმალური მუსიკალური გამაძლიერებელი) ან გამაძლიერებელი წრე.

ნაბიჯი 2: ADC– ს თეორია PWM– ზე

ADC– დან PWM– ის თეორია
ADC– დან PWM– ის თეორია
ADC– დან PWM– ის თეორია
ADC– დან PWM– ის თეორია

ამ პროექტში მე გამოვიყენე Arduino– ს ჩამონტაჟებული ADC აუდიო სიგნალის მონაცემების შერჩევის მიზნით.

ADC (ანალოგურ-ციფრული გადამყვანი), როგორც სახელი განსაზღვრავს, ADC გარდაქმნის ანალოგურ სიგნალს ციფრულ ნიმუშებად. და არდუინოსთვის მაქსიმუმ 10 ბიტიანი სიღრმით. მაგრამ ამ პროექტისთვის ჩვენ გამოვიყენებთ 8 ბიტიან შერჩევას.

Arduino– ს ADC– ის გამოყენებისას უნდა გავითვალისწინოთ ADC_reference Voltage.

Arduino Uno გთავაზობთ 1.1V, 5V (შიდა მითითება, რომლის დადგენა შესაძლებელია კოდში) ან გარე მითითებას (რომელიც გარედან უნდა გამოვიყენოთ AREF პინზე).

ჩემი გამოცდილებით, ADV– დან კარგი შედეგის მისაღებად საორიენტაციო ძაბვად უნდა იქნას გამოყენებული მინიმუმ 2.0V. როგორც 1.1V არ იყო კარგად მაინც ჩემთვის. (Პირადი გამოცდილება)

*მნიშვნელოვანია**მნიშვნელოვანია ** მნიშვნელოვანია ** მნიშვნელოვანია ** მნიშვნელოვანია ** მნიშვნელოვანია*

ჩვენ უნდა გამოვიყენოთ გამაძლიერებელი აუდიო სიგნალი გამაძლიერებელიდან ან გამაძლიერებელი წრიდან 5 ვ პიკური ძაბვით (მაქს. ძაბვა)

იმის გამო, რომ მე დავაყენე შიდა ძაბვის მითითება 5V, ჩვენი პროექტისთვის. მე ვიყენებ გამაძლიერებელ სიგნალს ჩვეულებრივი გამაძლიერებლის (მუსიკალური გამაძლიერებელი) გამოყენებით, რომელიც უმეტესად ჩვენს ოჯახშია შესაძლებელი, ან შენ შეგიძლია შენ თვითონ ააწყო.

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

ამ პროექტში ჩვენ გამოვიყენებთ შერჩევის მაჩვენებელს 33,33 კჰც, ADC საათის დაყენებით 500 კჰც -ზე. იმის გასაგებად, თუ როგორ არის ეს, ჩვენ უნდა ვნახოთ ADC დროის გვერდი Atmega (328p) ჩიპის მონაცემთა ცხრილში.

ჩვენ ვხედავთ, რომ ჩვენ გვჭირდება 13.5 ADC საათის ციკლი ერთი ნიმუშის ავტომატური შერჩევით დასასრულებლად. 500Khz სიხშირით, ეს ნიშნავს 1/500Khz = 2uS ერთი ADC ციკლისთვის, რაც იმას ნიშნავს, რომ 13.5*2uS = 27uS საჭიროა ნიმუშის დასასრულებლად, როდესაც გამოიყენება ავტომატური შერჩევა. მიკროკონტროლერს 3uS მეტის მიცემით (უსაფრთხო მხარისათვის), სულ 30uS სულ ერთი ნიმუშისთვის.

ასე რომ 1 ნიმუში 30uS ნიშნავს 1/30uS = 33.33 KSamples/S.

შერჩევის მაჩვენებლის დასადგენად, რომელიც დამოკიდებულია Arduino– ს TIMER0– ზე, რადგანაც ADC ავტომატური შერჩევის გამომწვევი დამოკიდებულია ჩვენს შემთხვევაში, როგორც თქვენ ასევე შეგიძლიათ იხილოთ კოდსა და მონაცემთა ფურცელში, ჩვენ შევადგინეთ OCR0A = 60 (რატომ ასე ???)

რადგან მონაცემთა ცხრილში მოცემული ფორმულის მიხედვით.

სიხშირე (ან აქ ნიმუშის მაჩვენებელი) = Arduino/Prescaler– ის საათის სიხშირე*OCR0A– ს მნიშვნელობა (ჩვენს შემთხვევაში)

სიხშირე ან ნიმუშის მაჩვენებელი ჩვენ გვინდა = 33.33KHz

საათის სიხშირე = 16 MHz

პრესკალერის ღირებულება = 8 (ჩვენს შემთხვევაში)

OCR0A მნიშვნელობა = ჩვენ გვინდა ვიპოვოთ ??

რომელიც უბრალოდ იძლევა OCR0A = 60, ასევე ჩვენს არდუინოს კოდში.

TIMER1 გამოიყენება აუდიო სიგნალის გადამზიდავი ტალღისთვის და მე არ შევალ ამდენ დეტალებში.

ასე რომ, ეს იყო მოკლე თეორია ADC– ს PWM– ის კონცეფციის შესახებ Arduino– სთან ერთად.

ნაბიჯი 3: სქემატური

სქემატური
სქემატური

შეაერთეთ ყველა კომპონენტი, როგორც ეს მოცემულია სქემატურ რეჟიმში. ასე რომ თქვენ გაქვთ ორი ვარიანტი:-

1. შეაერთეთ სპიკერი (უკავშირდება 5 ვ)

2. შეაერთეთ Flyback Transformer (დაკავშირებულია 12V– თან)

ორივე ვცადე. და ორივე საკმაოდ კარგად მუშაობს.

*მნიშვნელოვანია**მნიშვნელოვანია ** მნიშვნელოვანია ** მნიშვნელოვანია ** მნიშვნელოვანია ** მნიშვნელოვანია*ჩვენ უნდა გამოვიყენოთ გამაძლიერებელი აუდიო სიგნალი გამაძლიერებელიდან ან გამაძლიერებელი წრიდან 5V პიკური ძაბვით (მაქს. ძაბვა)

უარი პასუხისმგებლობაზე:-

*მე გირჩევთ გამოიყენოთ Flyback Transformer სიფრთხილით, რადგან ის შეიძლება საშიში იყოს, რადგან ის აწარმოებს მაღალ ძაბვებს. და მე არ ვიქნები პასუხისმგებელი რაიმე სახის ზიანისთვის.*

ნაბიჯი 4: საბოლოო ტესტი

ასე რომ ატვირთეთ მოცემული კოდი თქვენს Arduino– ში და დააკავშირეთ გამაძლიერებელი სიგნალი A0 პინთან.

და არ უნდა დაგვავიწყდეს, რომ დააკავშიროთ ყველა დამჭერი საერთო ადგილს.

და უბრალოდ ისიამოვნეთ მუსიკის მოსმენით.

გირჩევთ: