JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 PENGATUR KECEPATAN MOTOR DC DENGAN SENSOR SUHU BERBASIS MIKROKONTROLER ATMEGA16 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus* Dosen-Dosen Jurusan Teknik Elektro-FTI, Universitas Trisakti Abstract A telecommunication cabinet usually uses a Direct Current fan with a Direct Current motor (DC motor) to make the cabinet temperature does not exceed the temperature that is allowed. Using a DC motor has weaknesses because it always rotates in full speed although the temperature in the cabinet gets down already. It causes inefficiency of the power consumption and the DC motor’s lifetime is not long enough.The prototype of DC motor speed controller controls the speed of a DC motor with the temperature environment as its reference. This circuit is built by a temperature sensor LM35, a microcontroller ATmega16 as the processor that analizes the input from the temperature sensor and relays. This prototype is equipped with a Liquid Crystal Display (LCD) to display the temperature of the cabinet and the DC motor speed. After the prototype is assembled and tested, it is known that the circuit controls a DC motor speed according to the changes of the temperature that has been determined by the software program. The DC motor stops rotating if the temperature sensor senses the temperature below the minimum temperature level. Keywords: DC motor, temperature sensor, LCD, microcontroller 1. Pendahuluan Panel-panel peralatan elektronik harus dijaga temperaturnya agar tidak melebihi spesifikasi temperatur yang diijinkan. Pengaturan temperatur tersebut dapat dilakukan dengan menggunakan kipas angin yang diputar oleh motor DC untuk mengatur sirkulasi udara pada panel agar panas pada rangkaian dapat disalurkan. Biasanya kipas angin yang digunakan selalu berputar dengan kecepatan tetap sehingga pemakaian daya listrik boros dan kipas angin sering atau cepat rusak karena bantalan pelurunya cepat aus. Untuk dapat menghemat energi dan memperpanjang umur kipas angin dapat dilakukan dengan mengatur kecepatan putar motor kipas angin sesuai dengan temperature di dalam panel dan bahkan menghentikan putarannya bila temperatur sudah cukup rendah. * Alumni Jurusan Teknik Elektro FTI, Universitas Trisakti JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 Dengan menggunakan sensor suhu dan memproses keluaran sensor pada sebuah mikrokontroler maka kecepatan kipas angin dapat diatur sesuai temperature tertentu. 2. Diagram Blok Pada Gambar 1. (pada halaman berikut) terdapat diagram blok dari rangkaian pengatur kecepatan motor dc yang dirancang. Sensor suhu LM35 merupakan sensor yang mendeteksi besaran suhu ruangan menjadi besaran tegangan analog yang perubahannya linear terhadap perubahan suhu. Sensor suhu LM35 ini bekerja pada daerah 0° C sampai dengan 100° C dengan perubahan 10 mV/°C. Tegangan keluaran dari sensor suhu ini diperkuat oleh penguat non inverting Op-Amp dari IC LM324 (Boylestadt, 1987: 642). Keluaran tegangan dari penguat ini diterima oleh mikrokontroler untuk diproses menjadi tegangan digital oleh ADC yang terdapat pada mikrokontroler tersebut. Mikrokontroler ATmega16 mengolah tegangan digital tersebut dengan perangkat lunak untuk menghasilkan keluaran-keluaran yang diinginkan yaitu: - keluaran untuk tampilan LCD - keluaran untuk rangkaian photocoupler untuk menggerakkan motor DC - keluaran untuk rangkaian relay yang digunakan untuk mendeteksi kerusakan pada motor DC dan untuk mendeteksi temperature ruangan jika melebihi temperature maksimum yang telah ditentukan. Pengatur batas suhu 1 sampai dengan 4 adalah pengaturan suhu yang ditentukan secara manual untuk dibandingkan dengan suhu ruangan sehingga mempunyai kecepatan putar motor DC yang tertentu. Pengatur batas kecepatan 1 dan 2 adalah rangkaian pengaturan kecepatan motor DC secara manual untuk menentukan kecepatan putar motor DC bila mencapai suhu ruangan tertentu 34 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC Sensor suhu LM35 Penguat Non Inverting Rangkaian Photocouler Motor DC LCD 2 x 16 Pengatur Batas Suhu 1 Pengatur Batas Suhu 2 Pengatur Batas Suhu 3 Pengatur Batas Suhu 4 Mikrokontroler ATmega16 Rangkaian Relay Pengatur Batas Kecepatan 1 Pengatur Batas Kecepatan 2 Gambar 1. Diagram Blok Rangkaian Pengatur Kecepatan Motor DC 35 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 3. Rangkaian Alat Gambar 2. pada halaman berikut merupakan Rangkaian Pengatur Kecepatan Motor DC. Prototype pengatur kecepatan motor DC menggunakan trigger masukan berupa tegangan dari sensor suhu LM35 yang diproses oleh mikrokontroler ATmega16. Kecepatan motor DC diatur sesuai dengan pengaturan batas suhu dan kecepatan yang dinginkan. Tegangan keluaran sensor suhu LM35 dimasukkan ke rangkaian Analog to Digital Converter (ADC) internal mikrokontroler ATmega16 untuk diproses dan dibandingkan dengan tegangan sebagai batas suhu yang diatur secara manual dengan menggunakan variable resistor dan dikonversi oleh rangkaian ADC internal mikrokontroler. Dengan mengatur batas suhu dan kecepatan yang berbeda, maka setiap perubahan suhu yang terbaca oleh rangkaian sensor suhu akan menghasilkan kecepatan motor yang berbeda sesuai yang diinginkan. Pada Gambar 3 terdapat karakteristik dari sensor suhu LM35 menunjukkan grafik antara temperatur terhadap tegangan keluaran yang dihasilkan. Gambar 3. Karakteristik Sensor LM35 36 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC Gambar 2. Rangkaian Pengatur Kecepatan Motor DC 37 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 Nilai suhu yang terbaca oleh sensor suhu, batas suhu dan kecepatan dapat dilihat dengan menggunakan LCD yang dihubungkan ke mikrokontroler pada port D. Dengan tampilan LCD, pengaturan terhadap batas suhu maupun kecepatan menjadi lebih mudah dilakukan. Mikrokontroler ATmega16 memiliki 40 pin yang dibagi menjadi 4 port yaitu: a. PORT A b. PORT B c. PORT C d. PORT D. Keempat port ini dapat berfungsi sebagai input maupun output. Port A memiliki fungsi khusus sebagai port ADC. Pin 10, 30 dan 32 dihubungkan dengan Vcc dan pin 11 dan 31 dihubungkan dengan GND. Batas tegangan catu daya untuk mikrokontroler agar dapat bekerja secara normal sebesar 4,5 VDC sampai dengan 5,5 VDC. Pin 9 dari ATMega16 dihubungkan dengan rangkaian reset. Reset dapat pula dilakukan secara manual dengan cara menekan push-button pada rangkaian reset (ATmel, 2002 : 2). Pin 12 dan 13 pada ATmega16 dihubungkan dengan kristal. Kristal digunakan untuk men-drive on-chip oscillator dan kedua kapasitor 22 pF pada kaki input oscillator digunakan untuk menstabilkan sistem. Pada rangkaian oscillator ATmega16 dapat digunakan kristal sampai dengan 16 MHz. Pada rangkaian ini digunakan kristal 4 MHz (ATmel, 2002 : 1). fcycle = 4 MHz Tcycle = 1/ 4 MHz = 25 ns Pin 30 (AVCC) merupakan pin masukan tegangan untuk ADC sedangkan pin 32 (AREF) merupakan pin masukan tegangan referensi ADC. Pada rangkaian ini tegangan referensi yang digunakan sebesar Vcc. 38 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC Pada Tabel 1. diperlihatkan penggunaan pin dan port ATmega16. mikrokontroler Tabel 1. Konfigurasi Pin Pada Mikrokontroler ATmega16 No PIN PORT Input / Output 1 40 A Input Masukan tegangan sensor yang telah diperkuat oleh rangkaian penguat non-inverting 2 39-34 A Input Masukan tegangan keluaran dari variable resistor multiturn 3 14-16, 18-21 D output Terhubung dengan LCD 4 4 B Output Keluaran sinyal PWM yang terhubung dengan rangkaian Photocoupler 5 25-29 C Output Keluaran Relay, sebagai indikator overheat dan indikator motor fail Kegunaan PORTB.3 merupakan port khusus yang dapat mengeluarkan signal Pulse Width Modulator (PWM). Duty cycle dari signal PWM diatur oleh perangkat lunak sesuai dengan pengaturan suhu dan kecepatan yang diinginkan (Andrianto, 2008 : 139). Signal PWM ini digunakan untuk menggerakkan motor DC dengan kecepatan tertentu sesuai duty cycle yang telah ditentukan (Didik, 2007 : 158). Photocoupler digunakan sebagai rangkaian switching antara signal PWM dan motor DC yang berguna sebagai rangkaian isolasi yang mempunyai kecepatan switching yang tinggi sehingga sesuai dengan kecepatan perubahan PWM. Nilai tegangan rata-rata dari signal PWM ini setara dengan nilai tegangan DC yang diberikan kepada motor DC sehingga dapat mengatur kecepatan gerak motor (Pulse Width Modulator, 2009 : 1). Karena keluaran motor DC yang ingin diatur ada 4 buah, maka digunakan IC photocoupler TLP521-4 yang memiliki 4 buah phototransistor (Toshiba, 2002: 1). 39 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 4. Perancangan Perangkat Luna Pada Gambar 3. merupakan diagram Alir Perangkat Lunak START INISIALISASI ADC, SETTING PARAMETER RANGE TIDAK JIKA SUHU TERBACA KURANG DARI BATAS SUHU 1 YA SINYAL PWM OFF, KEC. MOTOR DC 0% TIDAK YA JIKA SUHU TERBACA DIANTARA RANGE SUHU 1 DAN RANGE SUHU2 SIGNAL PWM ON, MOTOR DC ON, KEC. MOTOR = “RANGE KECEPATAN 1” % TIDAK JIKA SUHU TERBACA DIANTARA RANGE SUHU 2 DAN RANGE SUHU3 YA SIGNAL PWM ON, MOTOR DC ON, KEC. MOTOR = “RANGE KECEPATAN 2” % TIDAK A.1 Gambar 3. Diagram Alir Perangkat Lunak (kontinyu) 40 A.2 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC A.2 A.1 JIKA SUHU TERBACA DIANTARA RANGE SUHU 3 DAN RANGE SUHU4 YA SIGNAL PWM ON, MOTOR DC ON, KEC. MOTOR = 100% YA SIGNAL PWM ON, MOTOR DC ON, KEC. MOTOR = 100% DAN RELAY ON (OVER HEAT) TIDAK JIKA SUHU TERBACA DIATAS RANGE SUHU 4 TIDAK TOMBOL POWER OFF END Gambar 3. Diagram Alir Perangkat Lunak (sambungan) Pada saat rangkaian pengatur kecepatan motor DC diberikan Vcc dan Gnd yang berasal dari catu daya, maka mikrokontroler melakukan inisialisasi pada ADC untuk sensor suhu LM35, batas suhu dan kecepatan. Setelah melakukan inisialisasi, perangkat lunak akan membandingkan suhu yang terbaca dari sensor suhu LM35 dengan batas suhu, mulai dari batas suhu 1sampai dengan batas suhu 4. Apabila suhu yang terbaca dari sensor suhu LM35 kurang dari batas suhu 1, maka mikrokontroler tidak akan mengeluarkan sinyal PWM pada port B.3 dan motor tidak bekerja. Ketika suhu yang terbaca di antara batas suhu 1 dan batas suhu 2 maka mikrokontroler akan mengeluarkan sinyal PWM sesuai dengan batas kecepatan 1. Ketika suhu meningkat lagi dan suhu yang terbaca di antara batas suhu 2 dengan batas suhu 3, maka sinyal PWM pada port B.3 dan kecepatan motor DC akan sesuai dengan batas kecepatan 2. 41 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 Apabila mikrokontroler membaca suhu yang terbaca di atas batas suhu 3, maka sinyal PWM pada port B.3 akan mempunyai duty cycle 100%, yang artinya kecepatan motor DC akan maksimum. Bila suhu yang terbaca oleh mikrokontroler melewati batas suhu 4 maka sinyal PWM dan kecepatan motor DC akan sama dengan kondisi suhu di atas batas suhu 3 dan relay indikator “Over Heat” akan on 5. Pengujian 5.1. Pengujian Tegangan Keluaran Sensor Suhu LM35 Tujuan pengujian ini adalah untuk mengetahui karakteristik tegangan keluaran sensor suhu LM35 terhadap perubahan suhu yang terjadi. Langkah-langkah pengujian yang dilakukan adalah: 1. Sensor suhu LM35 dirangkai sesuai dengan rangkaian pada gambar 4. 2. Rangkaian sensor suhu LM35 dihubungkan dengan Vcc dan Gnd. 3. Sensor suhu LM35 didekatkan dengan pemanas (solder) bersamaan dengan thermometer. 4. Keluaran sensor dihubungkan dengan positif voltmeter dan ground dihubungkan dengan negatif voltmeter. 5. Tegangan keluaran sensor dan suhu dari thermometer diamati pada suhu 50oC, 45oC,40 oC,35 oC,30 oC,25 oC. 6. Tegangan diukur pada suhu yang berbeda-beda. Vc Titik Vc Gambar 5. Rangkaian Pengujian Tegangan keluaran Sensor Suhu LM35 42 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC Tabel 2. Perbedaan Antara Data Pengujian dengan Data Karakteristik Sensor Suhu Tegangan keluaran Suhu Terbaca Tegangan Keluaran Sensor Suhu LM35 Sensor Suhu LM35 pada No Thermometer Sesuai Data Pengujian Sesuai Data Karakteristik ( oC ) ( VDC ) ( VDC ) 1 50 0,53 0,50 2 45 0,46 0,45 3 35 0,36 0,35 4 30 0,32 0,30 5 27 0,26 0,27 6 25 0,25 0,25 Pada hasil pengujian menunjukan bahwa terdapat sedikit perbedaan dari datasheet sensor suhu yang memiliki karakteristik kenaikan tegangan keluaran sebesar 10 mVDC/ oC. Pada Tabel 2. menunjukan perbedaan antara tegangan keluaran sensor suhu berdasarkan karakteristik dengan hasil pengujian. Perbedaan tersebut diakibatkan karena kesalahan pada pembacaan suhu yang terdapat pada thermometer. Perbedaan suhu antara thermometer dan sensor suhu LM35 dan perbedaan toleransi setiap sensor yang berbeda-beda pada masing-masing produksi. Rata-rata kesalahan adalah 3%. 5.2. Pengujian Bentuk Signal PWM Tujuan pengujian ini adalah untuk membuktikan adanya perubahan kecepatan motor sesuai perubahan duty cycle signal PWM. Semakin besar nilai duty cycle maka kecepatan motor semakin tinggi. 43 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 Langkah-langkah pengujian yang dilakukan: 1. Rangkaian pengatur kecepatan motor DC dirangkai seperti Gambar 6. Mikrokontroler Atmega16 Titik Uji Gambar 6. Rangkaian Pengujian Bentuk Sinyal PWM 44 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC 2. Rangkaian pengatur kecepatan motor DC dihubungkan dengan catu daya 5 VDC. 3. Batas suhu mulai dari batas suhu 1, 2, 3, 4 dan batas kecepatan 1 dan batas suhu kecepatan 2. a) Batas suhu 1 diatur sampai 26oC b) Batas suhu 2 diatur sampai 30oC c) Batas suhu 3 diatur sampai 35 oC d) Batas suhu 4 diatur sampai 40 oC e) Batas kecepatan 1 diatur sampai 40% f) Batas kecepatan 2 diatur sampai 80% 4. Sensor suhu didekatkan ke pemanas (solder) 5. Probe osiloskop dihubungkan pada keluaran sinyal PWM di port B.3 dan ground pada osiloskop dihubungkan pada ground dari rangkaian. 6. Perubahan sinyal PWM untuk setiap perubahan suhu diantara 2 buah batas suhu diamati. 7. Gambar bentuk gelombang dari sinyal PWM untuk semua suhu yang berbeda-beda direkam. Hasil pengujian Volt/ Div : 5 V/ Div Time/ Div : 50 µS Duty Cycle : 0 % Batas 0 VDC Gambar 7. Bentuk Gelombang Suhu di Bawah Batas Suhu 1 dengan PWM Off pada Suhu Sensor 23oC 45 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 Volt/ Div : 5 V/ Div Time/ Div : 50 µS Duty Cycle : 75% Gambar 8. Bentuk Gelombang Suhu di antara batas suhu 1 dan batas suhu 2 dengan Batas Kecepatan 40% pada Suhu Sensor 28oC Volt/ Div : 5 V/ Div Time/ Div : 50 µS Duty Cycle :85% Gambar 9. Bentuk Gelombang Suhu di antara batas suhu 2 dan batas suhu 3 dengan Batas Kecepatan 80% pada Suhu Sensor 33oC Volt/ Div : 5 V/ Div Time/ Div : 50 µS Duty Cyle : 100% Gambar 10. Bentuk Gelombang Suhu di antara batas suhu 3 dan batas suhu 4 dengan PWM Full ON pada Suhu Sensor 38oC 46 Kiki Prawiroredjo, Kuat Rahardjo TS & Stevanus. PENGATUR KECEPATAN MOTOR DC Pada hasil pengujian dengan mendekatkan sensor suhu dan thermometer dengan solder sebagai pemanasnya, di dapat bahwa: a. Pada saat suhu sensor terbaca di bawah 26oC, maka sinyal PWM menghasilkan duty cyle sebesar 0% b. Pada saat suhu sensor terbaca 28oC, maka sinyal PWM seharusnya menghasilkan duty cycle sebesar 40% namun kenyataannya duty cycle 75% hal ini bisa terjadi karena perhitungan yang salah dalam pemrograman dan penggunaan Bahasa C yang masih kurang sempurna dalam pemrograman mikrokontroler c. Pada saat suhu sensor terbaca 33oC, maka sinyal PWM seharusnya menghasilkan duty cycle sebesar 80% namun kenyataannya duty cycle 85% hal ini bisa terjadi karena perhitungan yang salah dalam pemrograman dan penggunaan Bahasa C yang masih kurang sempurna dalam pemrograman mikrokontroler d. Pada hasil pengujian saat suhu sensor terbaca 38oC maka sinyal PWM menghasilkan duty cycle 100% 6. Kesimpulan Setelah melalui proses perancangan serta pengujian alat diambil beberapa kesimpulan sebagai berikut: 1. Terdapat perbedaan tegangan keluaran sensor LM35 dari hasil pengujian dengan karakteristik tegangan keluaran dari datasheet dengan rata-rata perbedaan sebesar 3 %. 2. Terdapat kesalahan yang cukup besar pada signal PWM yang dikehendaki terhadap hasil pengujian terutama pada duty cycle 40 % pada perangkat lunak dihasilkan duty cycle sebesar 75 % pada pengujian. Hal ini dapat terjadi karena perangkat lunak yang digunakan dalam bahasa C yang masih kurang sempurna dalam pemrograman mikrokontroler. Daftar Pustaka 1. ATMEL, ATmega16, ATmega16L, 2002, (Online), (http://www.atmel.com/dyn/resources/prod_documents/doc2466.pdf, 12 November 2009: 20.22 WIB). 2. Toshiba, TLP 521-1, TLP 521-2, TLP 521-4, 2002, (Online), (http://www.datasheetcatalog.com, 15 November 2009, 20:51WIB). 3. Wiyono, Didik S.T. 2007, Panduan Praktis Mikrokontroler Keluarga AVR, Surabaya:Innovative Electronics. 47 JETri, Volume 9, Nomor 1, Agustus 2009, Halaman 33 - 48, ISSN 1412-0372 4. 5. 6. 48 Andrianto, Heri. 2008, Pemrograman Mikrokontroler AVR ATMEGA16 Menggunakan Bahasa C (CodeVision AVR), Bandung : INFORMATIKA. Pulse Width Modulator, (Online), (http://en.wikipedia.org/wiki/Pulse_Width_Modulator, 28 Desember 2009, 20:25 WIB). Boylestadt, Robert dan Louis Nashelsky. 1987. Electronic Device and Circuit Theory. Fourth Edition. USA : Prentice Hall, Inc.