pengatur kecepatan motor dc dengan sensor suhu berbasis

advertisement
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.
Download