İçindekiler:

Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino İle Şarkı Çalın: 4 Adım
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino İle Şarkı Çalın: 4 Adım

Video: Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino İle Şarkı Çalın: 4 Adım

Video: Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino İle Şarkı Çalın: 4 Adım
Video: Flyback Converter Design Deep Dive 2024, Kasım
Anonim
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın
Flyback Transformer veya Hoparlörde ADC - PWM Kullanarak Arduino ile Şarkı Çalın

Selam beyler, Bu, başka bir talimatımın ikinci kısmı (bu çok zordu), Temel olarak, Bu Projede, Ses Sinyalini bir PWM Sinyaline dönüştürmek için Arduino'mdaki ADC ve ZAMANLAYICILARI kullandım.

Bu, önceki Eğitilebilirliğimden çok daha kolay, Görmek istiyorsanız, ilk Eğitilebilirliğimin bağlantısı burada. bağlantı

Ses sinyali teorisini anlamak için Bit Hızı, Bit derinliği, Örnekleme hızı, Teoriyi Instructable ile ilgili son dersimde okuyabilirsiniz. Bağlantı yukarıda.

Adım 1: Bu Proje İçin İhtiyacımız Olan Şeyler (Gereksinimler)

1. Arduino Board (herhangi bir Board (328, 2560) yani Mega, Uno, Mini, vb. ancak belirli farklı pinlerle kullanabiliriz)

2. Arduino Studio'lu PC.

3. Breadboard veya Perfboard

4. Bağlantı Kabloları

5. TC4420 (Mosfet sürücüsü veya benzeri bir şey)

6. Power Mosfet(N veya P kanalı, lütfen uygun şekilde kablolayın) (N-kanal kullandım)

7. Hoparlör veya Flyback Transformer(Evet doğru okudunuz!!)

8. Uygun Güç Kaynağı (0-12V) (Kendi ATX Güç Kaynağımı kullandım)

9. Isı Emici (Eski bilgisayarımdan kurtardım).

10. Bir Amplifikatör (normal Müzik Amplifikatörü) veya Amplifikatör Devresi.

Adım 2: ADC'den PWM'ye Teori

ADC'den PWM'ye Teori
ADC'den PWM'ye Teori
ADC'den PWM'ye Teori
ADC'den PWM'ye Teori

Bu Projede, bir Ses Sinyalinin veri örneklemesini yapmak için yerleşik Arduino ADC'sinde kullandım.

ADC(Analog-Dijital Dönüştürücü) adından da anlaşılacağı gibi, ADC Analog sinyali Dijital örneklere dönüştürür. Ve maksimum 10 bit derinliğe sahip Arduino için. Ancak bu Proje için 8-bit Örnekleme kullanacağız.

Arduino'nun ADC'sini kullanırken, ADC_referans Voltajını aklımızda tutmalıyız.

Arduino Uno, 1.1V, 5V (kodda tanımlanabilen dahili referans) veya harici bir referans (harici olarak AREF pinine uygulamamız gereken) sunar.

Tecrübelerime göre, ADC'den iyi bir sonuç almak için referans voltaj olarak minimum 2.0V kullanılmalıdır. 1.1V en azından benim için iyi gitmedi. (Kişisel deneyim)

*ÖNEMLİ* *ÖNEMLİ**ÖNEMLİ**ÖNEMLİ**ÖNEMLİ*

Bir Amplifikatörden veya bir Amplifikatör Devresinden, tepe voltajı (Maks. Voltaj) 5V olan güçlendirilmiş bir ses sinyali kullanmamız gerekiyor

Çünkü Projemiz için 5V dahili Voltaj Referansını ayarladım. Ve çoğunlukla evimizde bulunan veya kendiniz için bir tane oluşturabileceğiniz normal bir Amplifikatör (Müzik Amplifikatörü) kullanarak güçlendirilmiş bir Sinyal kullanıyorum.

Yani şimdi ana kısım. Örnekleme Hızı, yani ADC'mizin saniyede ne kadar örnek aldığı, dönüşüm oranı daha fazla, çıktı sonucu daha iyi olacak, girdi ile karşılaştırıldığında çıktı dalgası daha benzer olacaktır.

Bu projede ADC saatini 500Khz olarak ayarlayarak 33.33Khz örnekleme hızı kullanacağız. Bunun nasıl olduğunu anlamak için Atmega(328p) çipinin veri sayfasındaki ADC Zamanlama Sayfasını görmemiz gerekiyor.

Bir örneği otomatik örnekleme ile tamamlamak için 13,5 ADC saat döngüsüne ihtiyacımız olduğunu görebiliriz. 500Khz frekans ile, bir ADC döngüsü için 1/500Khz=2uS anlamına gelir; bu, otomatik örnekleme kullanıldığında bir örneği tamamlamak için 13,5*2uS=27uS gerektiği anlamına gelir. Mikrodenetleyiciye 3uS fazlasını vererek(güvenli taraf için), Bir numune için toplamda 30uS yapmak.

Yani 30uS'de 1 Örnek 1/30uS=33.33 KSörnek/S anlamına gelir.

Arduino'nun TIMER0'ına bağlı olan Örnekleme oranını ayarlamak için, ADC otomatik örnekleme tetikleyicisi buna bağlı olduğundan, bizim durumumuzda kod ve veri sayfasında da görebileceğiniz gibi, OCR0A=60 değerini yaptık(Neden öyleyse ???)

Çünkü veri sayfasında verilen formüle göre.

frekans(veya burada Örnek Hızı)=Arduino/Prescaler'ın saat frekansı*OCR0A değeri (bizim durumumuzda)

İstediğimiz Frekans veya Örnekleme oranı=33.33KHz

Saat frekansı=16MHz

Ön ölçekleyici değeri=8(bizim durumumuzda)

OCR0A=bulmak istediğimiz değeri??

Arduino kodumuzda da OCR0A=60 verir.

TIMER1, bir ses sinyalinin taşıyıcı dalgası için kullanılır ve bunun çok fazla detayına girmeyeceğim.

Yani, Arduino ile ADC'den PWM'ye kavramının kısa teorisi buydu.

Adım 3: Şematik

Şematik
Şematik

Tüm Bileşenleri şemada gösterildiği gibi bağlayın. Yani burada iki seçeneğiniz var: -

1. Bir Hoparlör Bağlayın (5V ile Bağlı)

2. Bir Flyback Trafo Bağlayın (12V ile Bağlı)

Her ikisini de denedim. Ve ikisi de oldukça iyi çalışıyor.

*ÖNEMLİ* *ÖNEMLİ**ÖNEMLİ**ÖNEMLİ**ÖNEMLİ*Bir Amplifikatörden veya bir Amplifikatör Devresinden gelen ve tepe voltajı(Maks. Voltaj) 5V olan güçlendirilmiş bir ses sinyali kullanmamız gerekiyor

Sorumluluk Reddi: -

* Yüksek Gerilim ürettiği için tehlikeli olabileceğinden Flyback Transformatör'ü Tedbirli kullanmanızı tavsiye ederim. Ve herhangi bir zarardan sorumlu olmayacağım.*

Adım 4: Son Test

Bu yüzden verilen kodu Arduino'nuza yükleyin ve Güçlendirilmiş Sinyali A0 pinine bağlayın.

Ve tüm topraklama pinlerini ortak bir toprağa bağlamayı unutmayın.

Ve Sadece Müzik Dinlemenin Keyfini Çıkarın.

Önerilen: