1. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 1 of 7
KONTROL KECEPATAN MOTOR DC DENGAN KONTROL
PID BERBASIS MIKROKONTROLLER ATMEGA 8535
Chardian Arguta1)
, Sulastri Rubiyanti2)
, Eko Sulistyo ST, MT3)
1,2
Teknik Elektronika, Politeknik Manufaktur Negeri Bangka Belitung
3
Dosen Prodi Teknik Elektronika, Politeknik Manufaktur Negeri Bangka Belitung
Kawasan Industri Air Kantung - Sungailiat,
Telp. (0717) 93586, Fax. (0717) 93585
email: chardian.arguta@gmail.com
email: lass_lullaby@yahoo.com
email: sulistyo.eko@gmail.com
Abstract
DC motors are widely used in small and large industrivers. DC motor speed is often unstable
due to interference from outside or change the parameters of the fabrication thus necessary to
design the controller. PID controller is designed using which consists of three types of controlling
combined, they are P for Proportional, I for Integral, and D for Derivative. In this observation, the
PID controller is used in a DC motor without load using close loop control with encoder feedback
and input -based microcontroller ATMega8535 be set on the keypad. The simulation results show
PID controller for DC motor speed control without the burden of generating a stable condition at the
time with Kp = 2.0, Ki = 0.5, and Kd = 0.1 at the beginning of the desired speed when approaching a
set point at the 0.5 second.
Keywords: encoder feedback, PID controller, DC motors, set point
Abstrak
Motor DC banyak digunakan di industri kecil dan besar. Kecepatan motor DC sering tidak stabil
akibat gangguan dari luar maupun perubahan parameter dari fabrikasinya sehingga perlu dilakukan
rancangan kontroller. Kontroller yang dirancang menggunakan PID yang terdiri dari tiga jenis
pengaturan yang dikombinasikan, yaitu kontrol P (Proportional), I (Integral), dan D (Derivatif).
Dalam penelitian ini, kontroller PID yang digunakan pada motor DC tanpa beban menggunakan
kontrol close loop dengan feedback encoder berbasis mikrokontroller ATMega8535 dan input disetting
pada keypad. Hasil simulasi menunjukkan kontroller PID untuk kendali kecepatan motor DC tanpa
beban menghasilkan kondisi yang stabil pada saat Kp= 2,0; Ki= 0,5; dan Kd= 0,1 dengan kecepatan
awal yang diinginkan saat mendekati set point pada detik ke-0,5.
Kata kunci : feedback encoder, kontroller PID, motor DC, set point
1. PENDAHULUAN
Motor DC telah dikenal lama sejak teori
gaya Lorentz dan induksi elektromagnetik
ditemukan. Motor DC sering digunakan karena
kemudahan dalam aplikasinya sehingga dipakai
pada berbagai macam keperluan, mulai dari
peralatan industri, rumah tangga, hingga didapati
2. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 2 of 7
pada mainan anak-anak maupun piranti
pendukung dalam sistem instrumen elektronik.
Namun pada kenyataannya, kecepatan putar
motor DC sulit untuk dikendalikan dikarenakan
lajunya yang tidak stabil [1].
Untuk mengatasi hal ini maka diperlukan
suatu perancangan sistem kontrol kecepatan
motor DC agar motor DC tersebut bergerak
sesuai dengan kecepatan yang diinginkan. Yakni
kontroller Proportional Integral Derivatif (PID)
yaitu kontrol yang terdiri dari konfigurasi standar
Kp, Ki, dan Kd yang nilainya ditentukan / setting
agar mendapatkan hasil atau kecepatan yang
diinginkan yaitu kecepatan dengan stabilitas yang
baik dengan tingkat eror dan oershoot
(melampaui) yang kecil. Dalam penelitian ini,
sistem kontrol PID yang akan dibahas
menggunakan prinsip kerja feedback encoder
dengan optocoupler berbasis Mikrokontroller
ATMega8535 yang akan diaplikasikan pada
motor DC tanpa beban. Pembahasan dilakukan
dengan mengamati perubahan pada kontrol PID
yang disetting pada keypad serta waktu terbaik
(Time Sampling) yang diperoleh guna
mendapatkan kestabilan dari kecepatan motor DC
yang diinginkan.
1.1 Motor DC
Motor DC yang digunakan dalam penelitian
ini merupakan motor DC 15-20 VDC dengan
RPM maksimal tanpa beban 2000 yang
merupakan motor DC magnet permanen.
1.2 Sensor Kecepatan
Sensor adalah proses mengkonversi energi
dari satu bentuk ke bentuk lainnya. Sensor dapat
didefinisikan sebagai perangkat pengubah
pengukuran (apa yang akan diukur) menjadi
pengukuran yang diinginkan. Sensor kecepatan
digunakan rotary encoder dan pendeteksian
dilakukan oleh optocoupler sebagai penerima
cahaya. Setiap lubang yang terdeteksi akan
diakumulasikan pada rutin interupt timer 2.
Sensor optocoupler umumnya menggunakan
sensor optik untuk menghasilkan serial pulsa
yang dapat diartikan menjadi gerakan, posisi,
arah, dan kecepatan [2].
1.3 Mikrokontroller ATMega8535
Dalam penelitian ini, mikrokontroller yang
digunakan adalah ATMega8535 untuk
penghitungan RPM motor DC sekaligus
pengiriman nilai RPM kepada program CVAVR
dan pengiriman sinyal PWM kepada driver.
Kristal yang digunakan sebesar 16MHz.
ATMega8535 berfungsi sebagai pengolah data
dari sensor rotari dan kecepatan motor,
melakukan proses logika PID. ATMega8535
mempunyai saluran I/O 32 buah, ADC 10bit
sebanyak 8 saluran, 3 buah Timer/Counter, CPU
yang terdiri atas 32 register, SRAM sebesar
512byte, memori Flash sebesar 8 kB, serta
EEPROM sebesar 412 byte.
1.4 Driver Motor
Motor DC tidak dapat dikendalikan langsung
oleh mikrokontroller karena kebutuhan daya
listrik yang cukup besar pada motor DC
sedangkan keluaran pada mikrokontroller sangat
kecil. Sehingga mikrokontroller membutuhkan
rangkaian driver yang mampu memperbesar daya
dari 0 V - 5 V menjadi 0 V – 12 V. Ada beberapa
jenis driver motor yang dapat digunakan untuk
mengatur kecepatan motor, yaitu menggunakan
rangkaian H-Bridge Transistor, H-Bridge
MOSFET, dan IC driver motor. Pada penelitian
ini, driver motor menggunakan H-Bridge IRF540
berbasis H-Bridgde [2].
1.5 Kontroller PID
Kontroller otomatis membandingkan nilai
sebenarnya dari keluaran sistem secara
keseluruhan (plant) dengan mengacu pada nilai
masukan (nilai yang dikehendaki), menentukan
penyimpangan dan menghasilkan sinyal kontrol
yang akan mengurangi penyimpangan menjadi
nol atau nilai yang terkecil. Kontroller PID dapat
dituning dengan beberapa cara, antara lain
Zivergler-Nicholls tuning, loop tuning, metode
analitis, optimasi, pole placement, auto tuning,
dan direct tuning. Namun yang dipakai dalam
3. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 3 of 7
penelitian untuk menentukan parameter aksi
kontrol PID ini adalah direct tuning [4].
1.5.1 Kontrol Proporsional
Kontroler adalah sebuah penguat input
sehingga output tidak semakin kecil pada suatu
sistem. Kontrol proposional berfungsi untuk
memperkuat sinyal kesalahan penggerak (sinyal
eror ), sehingga akan mempercepat keluaran
sistem mencapai titik referensi[5].
persamaan dalam bentuk pemrograman:
P(out) = Kp. Eror
Kp = Konstanta Proposional.
Keterangan :
Kontroler proporsional menghasilkan nilai
keluaran yang berbanding lurus dengan nilai
kesalahan. Responnya dapat diatur dengan
mengalikan kesalahan (eror) dengan konstanta Kp.
Diagram blok kontrol proporsional
ditunjukkan pada gambar 4 dibawah ini.
Gambar 1.5.1. Blok diagram Kp
Gambar 1.5.1 menunjukkan blok diagram
yang menggambarkan hubungan antara besaran
masukan (set point), besaran aktual (present
value) dengan besaran keluaran kontroller
proporsional. Sinyal kesalahan (eror) merupakan
selisih antara set point dengan present value.
Selisih ini akan mempengaruhi kontroler.
1.5.2 Kontrol Integral
Kontrol integral pada prinsipnya bertujuan
untuk menghilangkan offset (eror sistem pada
keadaaan tunak atau steady state) yang biasanya
dihasilkan oleh kontrol proposional[5].
Kontrol integral (I) adalah penjumlahan
dari eror sebelumnya. Proses penjumlahan eror
akan berlangsung sampai nilai dari output sistem
sama dengan nilai referensi yang diinginkan, dan
hasil ini dalam keadaan nilai eror yang tidak
berubah (stationary eror) ketika nilai referensi
stabil. Dalam artiannya keluaran kontroler sangat
dipergaruhi oleh perubahan yang sebanding
dengan nilai sinyal eror.
Hubungan antara output kontrol integral
dengan sinyal eror terlihat pada persamaan
dibawah ini:
persamaan dalam bentuk pemrograman:
I(out) = Ki.(Eror + Last Eror)
Ki = Konstanta integral
Keterangan :
Kontroler integral menghasilkan nilai keluaran
yang berbanding lurus dengan besar dan lamanya
eror. Integral dalam kontroler PI adalah jumlahan
eror setiap waktu dan mengakumulasi offset yang
sebelumnya telah dikoreksi. Eror terakumulasi
dikalikan dengan konstanta integral (Ki) dan
menjadi keluaran kontroler.
Diagram blok kontrol proporsional
ditunjukkan pada gambar 1.5.2 dibawah ini.
Gambar 1.5.2. Blok diagram Ki
Ketika sinyal kesalahan berharga nol,
keluaran kontroler akan bertahan pada nilai
sebelumnya. Sinyal. Jika sinyal kesalahan tidak
berharga nol, keluaran akan menunjukkan
kenaikan atau penurunan yang dipengaruhi oleh
besarnya sinyal kesalahan dan nilai Ki. Konstanta
integral Ki yang berharga besar akan
mempercepat hilangnya offset. Tetapi semakin
besar nilai konstanta Ki akan mengakibatkan
peningkatan osilasi dari sinyal keluaran kontroler.
Keluaran kontroler membutuhkan selang waktu
tertentu, sehingga kontroler integral cenderung
memperlambat respon.
1.5.3 Kontrol Derivatif
Kontrol derivatif dapat digunakan untuk
memperbaiki respon transivern dengan
4. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 4 of 7
memprediksi eror yang akan terjadi. Kontrol
Derivatif hanya berubah saat ada perubahan eror
sehingga saat eror statis kontrol ini tidak akan
bereaksi, hal ini pula yang menyebabkan
kontroler Derivatif tidak dapat dipakai sendiri
Ciri-ciri pengontrol derivatif :
1. Pengontrol tidak dapat menghasilkan keluaran
jika tidak ada perubahan pada masukannya
(berupa perubahan sinyal kesalahan)
2. Jika sinyal kesalahan berubah terhadap waktu,
maka keluaran yang dihasilkan pengontrol
tergantung pada nilai Kd dan laju perubahan
sinyal kesalahan.
Dengan meningkatkan nilai Kd, dapat
meningkatkan stabilitas sistem dan mengurangi
overshoot.
Berdasarkan karakteristik pengontrol ini,
pengontrol derivatif umumnya dipakai untuk
mempercepat respon awal suatu sistem, tetapi
tidak memperkecil kesalahan pada keadaan
tunaknya. Kerja pengontrol derivatif hanyalah
efektif pada lingkup yang sempit, yaitu pada
periode peralihan. Oleh sebab itu pengontrol
diferensial tidak pernah digunakan tanpa ada
kontroler lainnya.
2. METODE PENELITIAN
Metode yang digunakan untuk
menyelesaikan penelitian ini terdiri dari beberapa
tahapan sesuai dengan Gambar 2.1 di bawah ini.
Gambar 2.1 Flowchart Penelitian
2.1 Pengumpulan dan Pengolahan Data
Pengumpulan dan pengolahan data
dilakukan untuk mengetahui karakteristik
hardware yang dibuat meliputi karakteristik
motor DC yang digunakan, mikrokontroler
ATMega8535, dan prinsip kerja feedback encoder
dengan optocoupler.
2.2 Perancangan Alat
Metode yang digunakan untuk kendali
kecepatan motor DC disini yaitu menggunakan
kontroller PID.
Gambar 2.2 Blok diagram hardware kontrol
kecepatan motor DC
Perancangan sistem kontrol motor DC yaitu
sebagai berikut:
a. Encoder digunakan sebagai sensor untuk
mengetahui rpm kecepatan putaran dari
motor yang digunakan, prinsip kerja encoder
yang digunakan adalah incremental encoder
dimana terdapat lempengan dengan 36 buah
lubang yang akan dideteksi oleh optocoupler.
Dimana dalam 1 putaran penuh, sensor akan
menghasilkan sinyal 36 pulsa yang terbaca
oleh mikrokontroller melalui counter 1.
b. Kontrol motor DC yang akan digunakan
adalah dengan metode PWM ( Pulse Width
Modulation ) dengan tegangan input sebesar
12 volt, mikrokontroller bertindak sebagai
pengatur kecepatan dengan fitur PWM yang
ada pada mikrokontroller pada terhubung ke
PORTB.3, yang merupakan port untuk
PWM (PWM0) dengan range nilai antara 0-
255. Untuk mengaktifkan pulsa PWM
tersebut dengan menggunakan fitur timer 1
Tidak
Perancangan Alat
Pengumpulan dan Pengolahan Data
Mulai
Ya
Selesai
Penarikan Kesimpulan
Kecepatan motor DC
sesuai dengan set
point?
Pembuatan Hardware dan Software
5. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 5 of 7
pada mikrokontroller dengan resolusi 8 bit (0
s/d 255). Mikrokontroller mendapatkan
supply 5 volt dari usb connector yang
digunakan sebagai line komunikasi serial PC
dan mikrokontroller, sedangkan driver motor
menggunakan supply 12 volt dari power
supply.
c. Keypad (4x4) sebagai tombol input untuk
masukan nilai set point kecepatan maupun
parameter nilai PID (KI, Kp, Kd). Data akan
ditampilkan pada LCD (2x16) untuk
pencapaian nilai rpm dan dengan input dari
keypad untuk penentuan set point kecepatan
maupun parameter nilai PID (KI, Kp, Kd).
2.3 Pembuatan Hardware dan Software
Pembuatan hardware kontrol motor DC ini
meliputi pembuatan rangkaian kontrol motor DC,
sistem minimum ATMega8535, dan rangkaian
encoder. Sedangkan untuk pembuatan software
meliputi proses pemrograman yang berfungsi
untuk mengaktifkan keypad sebagai inputan,
mengontrol hardware motor DC agar dapat
bekerja sesuai dengan kontrol PID yang
diinginkan, dan menampilkan data tersebut
sekaligus output melalui LCD.
Gambar 2.3 Hardware rangkaian kontrol
Adapun flowchart software kontrol motor
DC dapat terlihat seperti gambar di bawah ini :
Gambar 2.4 Flowchart software kontrol
motor DC
3. HASIL DAN PEMBAHASAN
3.1 Kontrol PID (Proporsional, Integral, dan
Derivatif)
PID merupakan kontroler untuk menentukan
presisi suatu sistem instrumentasi dengan
karakteristik adanya umpan balik pada sistem
tersebut. Komponen pada PID terdiri dari tiga
jenis yaitu Proporsional, Integral, dan Derivatif.
Ketiganya bisa dipakai bersamaan ataupun
6. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 6 of 7
sendiri-sendiri, tergantung dari respon yang kita
inginkan dari suatu plant [3].
Berikut listting program utama:
void Control_PID()
{
TCCR2=0x00;
count++;
if(count>=20){
count=0;
TCCR1B=0x00;//counter1 off
counter1=TCNT1;//jumlah hole=36
rps=counter1*5;
rpm=rps*60/36;
Control_PID();
TCNT1=0;
TCCR1B=0x06;
sprintf (str,"%d rpm ",rpm);
lcd_gotoxy(2,1);
lcd_puts(str);
}
TCNT2=99;
TCCR2=0x07;
}
3.2 Pengujian Kontrol PID terhadap Motor
DC Tanpa Beban dengan Feedback Encoder
Pengaturan speed / kecepatan motor adalah
dengan menerapkan metode pengaturan
kecepatan menggunakan PWM ( Pulse Width
Modulation ), yaitu metode dengan merubah nilai
duty cycle pada driver motor , dengan begitu
tegangan yang dialirkan pada motor dapat diatur ,
PWM yang digunakan pada penelitian ini
menggunakan fitur timer 0 pada mikrokontroller
dengan resolusi 8 bit ( 0 s/d 255 ) , berikut
perhitungan pwm yang digunakan :
Pengujian yang dilakukan menerapkan
control Proporsional, Integral, dan Derivatif
(PID) untuk memperbaiki nilai perbaikan
kecepatan terhadap nilai eror system yg didapat
dari perbedaan nilai set point terhadap present
value rpm motor. Dalam aplikasi ini akan
digunakan rpm 1000 dengan trial dan eror untuk
penentuan nilai Kp, Ki, dan Kd.
Tabel 3.2 Hasil waktu perbaikan kecepatan 1000
rpm motor tanpa beban dengan direct tunning Kp
diperbesar, Ki dan Kd
No Kp Ki Kd Ts
1. 1 0,5 0,1 2s
2. 1,5 0,5 0,1 1s
3. 2 0,5 0,1 0,5s
Analisa : semakin besar nilai Kp maka semakin
responsif kecepatan motor DC .
Gambar 3.1 Grafik kecepatan motor menuju
SP = 1000 dengan Kp =1; Ki=0,5; dan Kd=0,1.
Gambar 3.2 Grafik kecepatan motor menuju
SP = 1000 dngan Kp =1,5; Ki=0,5; dan Kd=0,1.
7. Kontrol Kecepatan Motor DC dengan Kontrol PID Bebasis Mikrokontroller ATMega 8535
Page 7 of 7
Gambar 3.3 Grafik kecepatan motor menuju
SP = 1000 dengan Kp =2; Ki=0,5; dan Kd=0,1.
4. SIMPULAN
Kesimpulan yang dapat diambil :
1. Parameter P (Proporsional) berperan dalam
mempercepat waktu untuk kecepatan motor
meraih set poin yang diinginkan
2. Parameter I (Integral) digunakan untuk
menghilangkan eror sehingga sistem menjadi
stabil
3. Parameter D (Derivatif) berperan mengurangi
oershoot (melampaui)
4. Dengan nilai kontrol yang diberikan yaitu Kp
= 2, Ki = 0,5, dan Kd = 0,1 didapati kecepatan
motor DC tanpa beban yang mulai stabil
dengan set point 1000rpm dalam jangka waktu
0,5s.
6. REFERENSI
[1] Waluyo, Aditya F, dan Syahrial. 2012.
Analisis Penalaan Kontrol PID pada Simulasi
Kendali Kecepatan Putaran Motor DC
Berbeban menggunakan Metode Heuristik.
Jurnal Teknik Elektro Itenas, Vol. 1, No. 2.
http://
[2] Faishol A Muhamad. Sistem Kontrol
Kecepatan Motor DC D-6759 Berbasis
Arduino Mega.http://
[3] Ogata K. (1994). Solving Control
Engineering Problems with MATLAB. Prentice
Hall International, Inc: Prentice Hall.
[4] Giap, N. , Shin, J. and Kim, W. 2014. A
Study on Autotuning Controller for Servo
System. Intelligent Control and Automation, 5,
102-110.
[4] Jimmy. 2011. Pengendali Motor Servo DC
Menggunakan PI Untuk Diimplementasikan
Pada Mesin CNC. Di unduh pada tanggal 1
Agustus 2016, pukul 13.40 WIB di
http://researchdashboard.binus.ac.id/uploads/pa
per/document/publication/Journal/Teknik.