- Gerekli Bileşenler:
- Devre Şeması ve Bağlantılar:
- Kod Açıklaması:
- DC-DC Buck Dönüştürücünün Çalışması:
Bu projede maksimum 6 amper akım kapasiteli Arduino ve N-Channel MOSFET kullanarak Buck Dönüştürücü Devresi yapacağız. 12v DC'yi 0 ile 10v DC arasındaki herhangi bir değere indireceğiz. Potansiyometreyi döndürerek çıkış voltaj değerini kontrol edebiliriz.
Buck dönüştürücü, DC voltajını düşüren bir DC'den DC'ye dönüştürücüdür. Tek farkı olan bir transformatör gibidir; trafo ise AC gerilimi düşürür, dönüştürücü DC gerilimi düşürür. Buck konvertörün verimi bir transformatörden daha düşüktür.
Kova dönüştürücünün temel bileşenleri mosfet; n-kanal veya p-kanal ve yüksek frekanslı Kare Darbe Üreteci (bir zamanlayıcı IC veya mikro denetleyici). Arduino burada Pulse Generator olarak kullanılmaktadır, 555 Timer IC de bu amaçla kullanılabilir. Burada, DC-Motor hızını Potansiyometre ile kontrol ederek bu Buck dönüştürücüyü gösterdik, ayrıca Multimetre kullanarak gerilimi test ettik. Bu makalenin sonundaki Videoyu kontrol edin.
Gerekli Bileşenler:
- Arduino Uno
- IRF540N
- İndüktör (100Uh)
- Kapasitör (100 uf)
- Schottky diyot
- Potansiyometre
- 10k, 100ohm Direnç
- Yük
- 12v Batarya
Devre Şeması ve Bağlantılar:
DC-DC Buck Dönüştürücü için yukarıdaki devre şemasında gösterildiği gibi bağlantıları yapın.
- Bir indüktör terminalini mosfet kaynağına ve diğerini 1k dirençli seri olarak LED'e bağlayın. Yük, bu düzenlemeye paralel olarak bağlanır.
- Kapı ve kaynak arasına 10k direnç bağlayın.
- Yüke paralel olarak kapasitör bağlayın.
- Akünün pozitif terminalini boşaltmaya ve negatifini kapasitörün negatif terminaline bağlayın.
- Diyotun p terminalini akünün negatifine ve n terminalini doğrudan kaynağa bağlayın.
- Arduino'nun PWM pini mosfet'in kapısına gidiyor
- Arduino'nun GND pini mosfet'in kaynağına gider. Oraya bağlayın yoksa devre çalışmayacaktır.
- Potansiyometrenin uç terminallerini sırasıyla Arduino'nun 5v pinine ve GND pinine bağlayın. Silecek terminali ise analog pin A1'e.
Arduino'nun İşlevi:
Daha önce açıklandığı gibi, Arduino MOSFET'in tabanına saat darbeleri gönderir. Bu saat darbelerinin frekansı yaklaşık. 65 Khz. Bu, mosfet'in çok hızlı değişmesine neden olur ve ortalama bir voltaj değeri elde ederiz. Arduino'da ADC ve PWM hakkında bilgi edinmelisiniz, bu da Arduino tarafından nasıl yüksek frekanslı darbelerin üretildiğini açıklığa kavuşturacaktır:
- PWM kullanarak Arduino Tabanlı LED Dimmer
- Arduino Uno'da ADC Nasıl Kullanılır?
MOSFET'in İşlevi:
Mosfet iki amaç için kullanılır:
- Çıkış geriliminin yüksek hızda anahtarlanması için.
- Daha az ısı yayılımı ile yüksek akım sağlamak.
İndüktörün işlevi: İndüktör, mosfet'e zarar verebilecek voltaj yükselmelerini kontrol etmek için kullanılır. İndüktör, mosfet açıkken enerji depolar ve mosfet kapalıyken bu depolanan enerjiyi serbest bırakır. Frekans çok yüksek olduğundan, bu amaç için gerekli endüktans değeri çok düşüktür (yaklaşık 100uH).
Schottky Diyotunun İşlevi:
Schottky diyodu, mosfet kapatıldığında akım döngüsünü tamamlar ve böylece yüke düzgün akım beslemesi sağlar. Bunun dışında schottky diyot çok düşük ısıyı dağıtır ve normal diyotlardan daha yüksek frekansta iyi çalışır.
LED'in İşlevi: LED'in
parlaklığı, yük boyunca voltaj düşüşünü gösterir. Potansiyometreyi döndürdüğümüzde LED'in parlaklığı değişir.
Potansiyometrenin işlevi:
Potansiyometrenin silecek terminali farklı bir konuma atıldığında, bununla toprak arasındaki voltaj değişir ve bu da arduino'nun A1 pini tarafından alınan analog değeri değiştirir. Bu yeni değer daha sonra 0 ile 255 arasında eşlenir ve ardından PWM için Arduino'nun 6. pinine verilir.
** Kondansatör, yüke verilen voltajı düzeltir.
Neden kapı ve kaynak arasındaki direnç?
MOSFET'in kapısındaki en ufak bir gürültü bile onu açabilir, bu nedenle bunun olmasını önlemek için her zaman kapı ile kaynak arasına yüksek değerli direnç bağlamanız önerilir.
Kod Açıklaması:
Yüksek frekanslı darbeler üretmek için eksiksiz Arduino kodu aşağıdaki kod bölümünde verilmiştir.
Kod basit ve açıklayıcıdır, bu yüzden burada kodun sadece birkaç parçasını açıkladık.
Değişken x, Arduino'nun analog pin A0'dan alınan analog değere atanır.
x = analogOku (A1);
W değişkenine, 0 ile 255 arasında eşlenen değer atanır. Burada Arduino'nun ADC değerleri, Arduino'daki harita işlevi kullanılarak 2 ila 255'e eşlenir.
w = harita (x, 0,1023,0,255);
Pim 6 için normal PWM frekansı yaklaşık 1 khz'dir. Bu frekans, kova dönüştürücü gibi amaçlar için uygun değildir. Dolayısıyla bu frekansın çok yüksek bir seviyeye çıkarılması gerekir. Bu, geçersiz kurulumda tek satırlık bir kod kullanılarak gerçekleştirilebilir:
TCCR0B = TCCR0B & B11111000 - B00000001; // pwm frekansını yaklaşık 65 KHZ olarak değiştirin.
DC-DC Buck Dönüştürücünün Çalışması:
Devre açıldığında, mosfet 65 khz frekansla açılır ve kapanır. Bu, indüktörün mosfet açıkken enerji depolamasına ve ardından bu depolanan enerjinin mosfet kapandığında yüklenmesine neden olur. Bu çok yüksek frekansta olduğu için, potansiyometrenin silecek terminalinin 5v terminaline göre konumuna bağlı olarak ortalama bir darbeli çıkış voltajı değeri elde ederiz. Silecek terminali ile toprak arasındaki bu voltaj arttıkça, pwm pin no. 6 Arduino.
Bu eşlenen değerin 200 olduğunu varsayalım. O zaman 6. pin üzerindeki PWM voltajı: = 3.921 volt olacaktır.
Ve MOSFET voltaja bağımlı bir cihaz olduğundan, bu pwm voltajı nihayetinde yük boyunca voltajı belirler.
Burada bu Buck dönüştürücüyü bir DC-Motor döndürerek ve Multimetre üzerinde gösterdik, aşağıdaki Videoyu kontrol edin. Potansiyometre ile motorun hızını kontrol ettik ve LED'in parlaklığını Potansiyometre ile kontrol ettik.