Dalam projek ini kita akan membuat Buck Converter Circuit menggunakan Arduino dan N-Channel MOSFET dengan kapasiti arus maksimum 6 amp. Kami akan menurunkan 12v DC ke nilai antara 0 dan 10v DC. Kita dapat mengawal nilai voltan keluaran dengan memutar potensiometer.
Penukar buck adalah penukar DC ke DC, yang menurunkan voltan DC. Ia sama seperti pengubah dengan satu perbezaan; sedangkan pengubah turun turun voltan AC penukar turun voltan DC. Kecekapan penukar buck lebih rendah daripada pengubah.
Komponen utama penukar buck adalah mosfet; sama ada saluran n atau p-saluran dan frekuensi tinggi Square Pulse Generator (sama ada pemasa IC atau mikrokontroler). Arduino digunakan di sini sebagai Pulse Generator, 555 Timer IC juga dapat digunakan untuk tujuan ini. Di sini kami telah menunjukkan penukar Buck ini dengan mengawal kelajuan DC-Motor dengan Potentiometer, juga menguji voltan menggunakan Multimeter. Lihat Video di akhir artikel ini.
Komponen yang diperlukan:
- Arduino Uno
- IRF540N
- Induktor (100Uh)
- Kapasitor (100uf)
- Schottky Diode
- Potensiometer
- Perintang 10k, 100ohm
- Beban
- Bateri 12v
Diagram dan Sambungan Litar:
Buat sambungan seperti yang ditunjukkan dalam rajah litar di atas untuk DC-DC Buck Converter.
- Sambungkan satu terminal induktor ke sumber mosfet, dan yang lain ke LED secara bersiri dengan perintang 1k. Beban dihubungkan selari dengan susunan ini.
- Sambungkan perintang 10k antara pintu dan sumber.
- Sambungkan kapasitor selari dengan beban.
- Sambungkan terminal positif bateri ke saliran dan negatif ke terminal negatif kapasitor.
- Sambungkan terminal p diod ke negatif bateri dan terminal n terus ke sumber.
- PWM pin Arduino menuju ke pintu mosfet
- Pin GND Arduino menuju ke sumber mosfet. Sambungkannya di sana atau litar tidak akan berfungsi.
- Sambungkan terminal ekstrim potensiometer ke pin 5v dan pin GND Arduino masing-masing. Manakala terminal pengelap ke pin analog A1.
Fungsi Arduino:
Seperti yang telah dijelaskan, Arduino menghantar denyutan jam ke pangkalan MOSFET. Kekerapan denyutan jam ini lebih kurang. 65 Khz. Ini menyebabkan pertukaran mosfet sangat cepat dan kami memperoleh nilai voltan purata. Anda harus belajar mengenai ADC dan PWM di Arduino, yang akan menjelaskan kepada anda bagaimana denyutan frekuensi tinggi dihasilkan oleh Arduino:
- Dimmer LED Berasaskan Arduino menggunakan PWM
- Bagaimana Menggunakan ADC di Arduino Uno?
Fungsi MOSFET:
Mosfet digunakan untuk dua tujuan:
- Untuk pertukaran voltan output dengan kelajuan tinggi.
- Untuk memberikan arus yang tinggi dengan penyebaran haba yang kurang
Fungsi induktor:
Induktor digunakan untuk mengawal lonjakan voltan yang boleh merosakkan mosfet. Induktor menyimpan tenaga semasa mosfet dihidupkan dan melepaskan tenaga tersimpan ini semasa mosfet dimatikan. Oleh kerana frekuensi sangat tinggi, nilai induktansi yang diperlukan untuk tujuan ini sangat rendah (sekitar 100uH).
Fungsi Diod Schottky:
Dioda Schottky melengkapkan gelung arus apabila mosfet dimatikan dan dengan itu memastikan bekalan arus lancar untuk dimuat. Selain itu, dioda schottky menghilangkan haba yang sangat rendah dan berfungsi dengan baik pada frekuensi yang lebih tinggi daripada diod biasa.
Fungsi LED:
Kecerahan LED menunjukkan voltan turun merentasi beban. Semasa kita memutar Potensiometer, kecerahan LED berbeza-beza.
Fungsi potensiometer:
Apabila terminal pengelap potensiometer dilemparkan ke kedudukan yang berbeza, voltan di antara ia dan tanah berubah yang seterusnya mengubah nilai analog yang diterima oleh pin A1 dari arduino. Nilai baru ini kemudian dipetakan antara 0 dan 255 dan kemudian diberikan kepada pin 6 Arduino untuk PWM.
** Kapasitor melancarkan voltan yang diberikan untuk dimuat.
Mengapa perintang antara pintu dan sumber?
Kebisingan sekecil mana pun di pintu masuk MOSFET dapat menghidupkannya, oleh itu untuk mengelakkan ini berlaku, selalu disarankan untuk menyambungkan perintang nilai tinggi antara pintu dan sumber.
Penjelasan Kod:
Kod Arduino lengkap, untuk menghasilkan denyutan frekuensi tinggi, diberikan di bahagian kod di bawah.
Kod mudah dan jelas, jadi di sini kami telah menerangkan hanya beberapa bahagian kod.
Pemboleh ubah x diberikan nilai analog yang diterima dari pin analog A0 dari Arduino
x = analogRead (A1);
Pemboleh ubah w diberikan nilai yang dipetakan antara 0 dan 255. Di sini nilai ADC Arduino dipetakan menjadi 2 hingga 255 menggunakan fungsi peta di Arduino.
w = peta (x, 0,1023,0,255);
Kekerapan normal PWM untuk pin 6 adalah kira-kira 1khz. Kekerapan ini tidak sesuai untuk tujuan seperti penukar buck. Oleh itu frekuensi ini mesti ditingkatkan ke tahap yang sangat tinggi. Ini dapat dicapai dengan menggunakan kod satu baris dalam penyediaan kosong:
TCCR0B = TCCR0B & B11111000 - B00000001; // ubah frekuensi pwm kepada 65 KHZ lebih kurang.
Kerja Penukar Buck DC-DC:
Apabila litar dihidupkan, mosfet menghidupkan dan mematikan dengan frekuensi 65 khz. Ini menyebabkan induktor menyimpan tenaga ketika mosfet dihidupkan dan kemudian memberikan tenaga yang disimpan ini untuk dimuat ketika mosfet dimatikan. Oleh kerana ini berlaku pada frekuensi yang sangat tinggi, kita mendapat nilai purata voltan output berdenyut bergantung pada kedudukan terminal pengelap potensiometer berkenaan dengan terminal 5v. Dan apabila voltan ini antara terminal pengelap dan tanah meningkat begitu juga nilai yang dipetakan pada pin pwm no. 6 dari Arduino.
Katakan nilai yang dipetakan ini ialah 200. Kemudian voltan PWM pada pin 6 akan berada pada: = 3.921 volt
Dan kerana MOSFET adalah peranti yang bergantung kepada voltan, voltan pwm ini akhirnya menentukan voltan merentasi beban.
Di sini kami telah menunjukkan penukar Buck ini dengan memutar DC-Motor dan pada Multimeter, periksa Video di bawah. Kami telah mengawal kelajuan motor dengan Potentiometer dan mengawal kecerahan LED dengan Potentiometer.