Analog Devre Tasarımı Ve Arduino

Merhabalar. Uzun zamandır yazı yazamadık sınavlardan ve projelerden dolayı kusura bakmayın. Artık projelerde  anlatmaya çalıştığımız “Arduino’nun DAC’si yok PWM çıkışı var” dediÄŸimizde sorular soruluyor Arduino’ya yeni baÅŸlayan hocalarımızdan…

  analog-devre-tasarimi

 Bugün bunlara cevap vermeye çalışacağız. Analog devre tasarımı için ben LTSpice programını kullanıyorum. Öğrenmek isteyen arkadaşlar şu yazıda  başlamış olduğumuz eğitimlere devam edebilirler. Eğitim diyoruz fakat beraber öğreniyoruz tabiki. Bugün LTSpice ile Analog Devre Tasarımı yapacağız. Yazımız Arduino ile PWM ilişkisi, devrede alt kesim ve üst kesim frekansları ve bunların elektronik devrelerde kullanımı hakkında olacaktır.

Ltspice

Åžekil-1

Örnek bir bjt kuvvetlendirici devre üzerinden gidelim.

Çıkış Geriliminin Ayarlanması

Åžekil-1’de verilen devre bir BJT kuvvetlendirici devredir.  Devredeki giris kısmında iÅŸaret üreteci devreden çıkarılarak vc geriliminin 6 volt olabilmesi için R1 deÄŸerinin kaç olacağı bulalım ilk önce.  Manüel olarak ayarlanan  R1 deÄŸeri 6.422k olarak bulunur. R1 ve R3 direnci gerilim bölücü olarak kullanılıyor.

002

Åžekil-2

Çıkışta 6 Volt değerini elde etmiş bulunuyoruz (Şekil-2).  Daha önce LSpice yazımızda anlattığımız gibi  V(vc) değeri Simulate>Run komutu ile  elde edildir.

Transient Analiz

Daha sonra işaret üreteci SINE () olarak ayarlandı. Tepeden tepeye 30 mV olduğu için SINE içerisine 15 mV değeri konulur.  VIN=30mV (tepeden tepeye) 1kHz uygulanarak VOUT ile Vin işaretlerinin  transient analizi yapılır.(Şekil-3)

 

003

Åžekil-3

 

Ä°ÅŸaret üreteci konulduktan sonra girÅŸteki ve çıkıştaki sinyalleri Åžekil-4’ten görüyoruz.

 

004

Åžekil-4

Alt Kesim ve Üst Kesim Frekansının Bulunması

Sıra devrenin alt kesim ve üst kesim frekanslarını bulmaya geldi. Kesim frekansı,  kuvvetlendiricilerde  bizlere  frekans cevabı hakkında bilgi verir.

005

Åžekil-5

 

Kazanç-frekans eÄŸrisinde(Åžekil-6), genliÄŸin 0.707’sine (yani %70.7’sine)  düştüğü frekans, kesim frekansı olarak tanımlanır.

006

Åžekil-6

 

Alt kesim ve üst kesim frekansı  için band geçiren bir filtre ele alalım bunda alt kesim frekansının aşağısındaki ve üst kesim frekansının yukarısındaki sinyaller zayıflatılır, aradaki frekans bandı geçirme bandını oluşturur.

Alt kesim frekansı  3dB  düştüğü yer bulunarak alt kesim frekansı bulundu. falt= 67.66 Hz .(Şekil-7)

007

Åžekil-7

Bir alçak geçiren filtrede ise kesim frekansının aşağısındaki kısım geçirme bandını, yukarısındaki kısım ise durdurma bandını oluşturur.  Yani, kesim frekansının üzerinde kazanç çok fazla düşer ve sinyal zayıflamaya uğrar.

3 dB düştüğü yer program içerisinden hesaplanarak üst kesim frekansı bulundu .füst =15 MHz(Şekil-8)

008

Åžekil-8

 

Gelelim Arduino’da analog çıkış meselesine. Arduino’da analogwrite komutu verildiÄŸinde “buna baÄŸlı olarak” bir çıkış voltajı gözlemlenmez. Biz bu iÅŸlemi Arduino’da PWM yardımı ile yapabiliriz. Bunun nedeni Arduino’da bir DAC’nin bulunmayışıdır[1] . Fakat Arduino üzerinde ADC vardır [2]. Zaten bu sayede örneÄŸin bir potansiyometre yardımı ile servo motorun konumunu ayarlayabiliriz.

PWM  hakkında detaylı bilgiyi daha önce  Ömer Koman tarafından yazılmış olan bu yazıdan bulabilrsiniz.

pwm-anasayfa

Yukarıda gerçekleştirdğimiz transient işlemini şu sayfadan kolaylıkla yapabilirsiniz.

CoÅŸkun TaÅŸdemir’in “Arduino” adlı kitabından yararlanarak analog-PWM iliÅŸkisi ile ilgili ÅŸu kodu yazabiliriz.

PWM

int pwm = 9; // pwm çıkış pini
int pot = 3; // potansiyometre voltaj ayar pini
int deg = 0; 
float voltaj = 0;
void setup()
{
pinMode(pwm, OUTPUT); 
}
void loop()
{
deg = analogRead(pot); 
voltaj =(5.0 * deg) / 1023;
deg = 255 * (voltaj / 5);
analogWrite(pwm, deg); // yazımızda belirttiğimiz analogWrite
}

 

[1] DAC- Digital to Analog Converter

[2] ADC-Analog to Digital Converter

 

NOT: Yazının bütün hakları ArduinoTürkiye‘ye aittir.

Ä°zinsiz kopyalanamaz hatta yapıştırılamaz yazmamız gerekir bu yorumlardan sonra” But We love Open Source”…

Herkese iyi çalışmalar…

Yücel Çetin

İstanbul Üniversitesi Elektrik-Elektronik Mühendisliği'nde öğrenci, Arduino sevdalısı, python meraklısı bir canlı...

2 comments

  1. Ömer Koman dedi ki:

    transient işlemin anlatıldğı (kodun üstündeki mavili kırmızılı -v -b başlıklı)grafikte çift fazlı pwm sinyali görüntüsü var arduinoda ise tek fazlı pwm oluşturuyoruz. kafa karıştırıcı olmuş. dac dönüşümü için transient hesaplama linkinkindeki grafik ve r-c devresi de konsa daha anlaşılır olacak.

  2. […]   Geçen gün yazdığımız  ”Analog Devre Tasarımı Ve Arduino“  yazısında PWM hakkında verdiÄŸimiz bilgilerin eksik kaldığını hissettim ve tekrar […]

E-posta adresiniz gösterilmeyecek. Gerekli alanlar * ile işaretlidir.

*



Sosyal AÄŸlar