Sistem Kontrol Pergerakan pada Robot Line Follower Berbasis Hybrid PID-Fuzzy Logic
on
C-009
Prosiding Conference on Smart-Green Technology in Electrical and Information Systems
Bali, 14-15 November 2013
Sistem Kontrol Pergerakan Pada Robot Line Follower Berbasis Hybrid PID-Fuzzy Logic
I Putu Adinata Mas Pratama1, I Nengah Suweden2, I.B. Alit Swamardika3 Jurusan Teknik Elektro Fakultas Teknik Universitas Udayana Badung, Bali, Indonesia adinatapratama@ymail.com1
Abstrak—Pada umumnya sistem kendali robot line follower menggunakan kontroler konvensional atau yang biasa disebut dengan kontroler PID(Proposional Integral Derivativ). Hasil output dari penggunaan sistem kontrol jenis ini kadangkala dapat membuat pergerakan robot semakin tidak stabil jika diberikan nilai acuan (konstanta) yang sensitiv. Itu disebabkan karena semakin sensitivnilai acuan yang diberikan, maka respon dari robot jika ada gangguan(Disturbance), dapat menyebabkan nilai overshoot dan undershoot yang tinggi. Jika dibuat nilai acuan yang kurang sensitiv, dapat mengurangi nilai overshoot dan undershoot, namun itu akan memperpanjang recovery time.
Agar dapat mengatasi permasalahan ini, diterapkan metode gabungan (Hybrid) dari kontroler PID dengan Logika kabur (Fuzzy Logic). Fuzzy logic disini berfungsi untuk membantu menentukan parameter nilai error dan perubahan nilai error sebelumnya (Derror) serta memperkecil recovery time. Dari gabungan metode ini didapatkan hasil yaitu pergerakan robot semakin stabil dengan recovery time yang kecil.
Keywords—PID; Robot Line Follower; Fuzzy Logic; Sistem; Kontrol
Teknologi pada saat ini berkembang sangat pesat. Terutama pada bidang elektronika dan sistem kontrol. Hal ini ditandai oleh banyaknya bermunculan aplikasi-aplikasi kontrol baik melalui interface computer ataupun dalam bentuk modul-modul rangkaian. perkembangan ini sangat memberi pengaruh yang besar, baik itu dalam dunia pendidikan, industri dan kehidupan sehari-hari. Salah satunya adalah penerapan sistem kontrol kendali cerdas pada sebuah Plant. Sebagai contoh adalah kendali pergerakan pada mobile robot Line Follower yang berbasis Hybrid PID dan Fuzzy logic.
Telah banyak ditemukan metode-metode yang berkaitan dengan sistem kontrol. Diantaranya yang sering digunakan adalah kontroler PID, Fuzzy Logic, algoritma genetika, jaringan syaraf tiruan dan system pakar. Semua metode diatas memiliki kelebihan dan kekurangan yang berbeda-beda sesuai dengan kegunaanya.
Pada umumnya sistem kendali dari robot line follower adalah menggunakan kontroler PID (Propotional Integral
Derivatif). Kekurangan dari sistem kontrol ini adalah, jika diberikan nilai acuan (nilai konstanta) yang semakin sensitiv terhadap respon maka akan terjadi overshoot dan undershoot yang semakin besar. Namun jika nilai acuan dibuat kurang sensitiv terhadap respon, maka akan terjadi proses pemulihan (Recovery time) yang memerlukan waktu lebih lama. Sehingga akan menyebabkan pergerakan robot yang semakin kacau. Dari permasalahan yang demikian diperlukan metode kontrol yang lebih baik agar nantinya pergerakan robot dapat semakin halus.
-
A. Prinsip Kerja Robot Line Follower
Robot line follower adalah salah satu robot yang pada prinsip kerjanya memaanfaatkan perbedaan warna antara background dan garis (jalur). Dari hasil perbedaan warna pada keseluruhan sensornya tersebut dirubah menjadi suatu nilai-nilai yang merepresentasikan rangkaian logika biner. Rangkaian logika biner ini nantinya yang akan digunakan sebagai parameter dalam menentukan pergerakan dari robot [5].

∙∙∙∙∙∙∙
Gambar 1.Logika Sensor
Pv=0
Pv=-1
Pv=-2
Pv=-3
Pv=1
Pv=2
Pv=3
-3>Pv>3
Dapat dilihat pada Gambar 1, disana digambarkan bagaimana pemberian nilai biner untuk logika sensor. Kemudian nilai biner tersebut diasumsikan sebagai Process Variable (Pv) dari kondisi sensor. Nilai dari Pv tersebut dibuatpositif dan negatif dimaksudkan agar nantinya mempermudah dalam perhitungan pengontrolan putaran motor dari robot line follower.
-
B. PID Controler
PID adalah singkatan dari Proposional Integral dan Derivativ. PID merupakan suatu sistem kontrol yang digunakan untuk menentukan kontrol presisi suatu sistem instrumentasi dengan karakteristik adanya umpan balik (Feedback) pada sistem tersebut.
Gambar 2.Blok Diagram PID (Sumber: Radhesh.2008)
Ketika membuat suatu sistem kontrol, tentunya ada suatu hal yang menjadi tujuan. Tujuan dari pengontrolan suatu sistem tersebut biasa disebut dengan setpoint. sistem akan terus berusaha agar nilai dari setpoint tersebut selalu terpenuhi. Simpangan nilai antara setpoint dengan nilai kenyataan disebut dengan error. Nilai error disini didapatkan melalui rumus:
Error = Setpoint – Process Variable (1)
Sifat-sifat dan karakteristik dari masing-masing kontroler adalah: [3].
-
a) Proposional
Pengaruh kontroler proposional pada sistem adalah
-
• Dapat menambah atau mengurangi kestabilan sistem
-
• Dapat memperbaiki respon transien khususnya Rise time dan Setling time
-
• Dapat mengurangi (bukan menghilangkan) Eror steady state.
-
• Untuk menghilangkan error steady state dibutuhkan nilai konstanta (KP) yang besar yang akan membuat system lebih tidak stabil.
-
• Kontroler proposional memberikan pengaruh sebanding dengan nilai error
-
• Semakin besar eror, maka semakin besar sinyal kendali yang di hasilkan oleh kontroler
-
b) Integral
Pengaruh kontroler integral pada sistem adalah
-
• Dapat digunakan untuk menghilangkan error steady state
-
• Respon sistem lebih lambat jika dibandingkan dengan kontroler proposional
-
• Dapat menimbulkan ketidakstabilan karena kontroler ini bersifat menambah orde sistem
-
• Kontroler integral memberikan respons yang sebanding dengan perubahan eror
-
• Semakin besar nilai eror, maka semakin cepat sinyal kontrol berubah
-
c) Derivativ
Pengaruh kontroler derivative pada system adalah
-
• Memberikan efek redaman pada system yang
berosilasi, sehingga dapat memperbesar pemberian nilai KP
-
• Memperbaiki respon transien, karena
memberikan aksi saat ada perubahan error
-
• Kontroler derivativ hanya akan berubah saat
ada perubahan error, sehingga saat ada error statis, kontroler derivativ tidak akan beraksi. Sehingga kontroler derivativ tidak bisa digunakan sendiri, harus digunakan bersamaan dengan kontoler proposional
-
• Besarnya sinyal kontrol yang dihasilkan sebanding dengan perubahan error
-
• Semakin cepat eror berubah, maka semakin besar aksi kontrol yang ditimbulkan
-
C. Fuzzy Logic Control
Berbeda dengan system kontrol konvesional yang mendefinisikan sesuatu dengan kategori benar dan salah (1 atau 0) selain nilai itu akan dibulatkan atau diabaikan, logika fuzzy disini dapat mendefinisikan nilai dengan beberapa kategori. Seperti misalkan dalam bahasa keseharian manusia yang menyatakan sesuatu dengan kata “sangat banyak”, “banyak”, “sangat sedikit”, “sangat panas”, “sangat dingin” dan seterusnya. Maka nanti output dari logika fuzzy tidak hanya berupa nilai 1 atau 0, melainkan ada beberapa nilai yang menjadi output yang akan digunakan untuk melakukan proses pada sistem kontrol. Secara umum, struktur dasar logika fuzzy terdiri dari Pengetahuan dasar (Knowledge Base), Proses Fuzzifikasi, Mesin Inferensi, dan proses Defuzzifikasi.
Gambar 3.Struktur Dasar Logika Fuzzy
Penjelasan mengenai diagram struktur dasar logika fuzzy adalah sebagai berikut:
-
1. Basis Pengetahuan Fuzzy
Semua prosedur-prosedur yang akan digunakan dalam proses Fuzzifikasi, Interferensi, dan Defuzzifikasi mengacu pada apa yang ada pada basis pengetahuan fuzzy. Maka dari itu, basis pengetahuan fuzzy sangat berperan penting dalam sistem fuzzy.
-
2. Fuzzifikasi
Fuzzifikasi adalah bagian dari sistem Fuzzy yang berfungsi untuk merubah nilai yang bersifat pasti (Crispt) kedalam variabel linguistik. Proses ini terdiri dari pembentukan membership function yang sesuai dengan basis pengetahuan fuzzy.
-
3. Proses Inferensi
Proses inferensi bertujuan untuk memetakan logika untuk mengambil keputusan. Pada bagian ini biasanya digambarkan dengan table FAM (Fuzzy Associative Map). Pengambilan keputusan untuk output fuzzy disini ditentukan sendiri oleh operator yang membuat logika fuzzy tersebut, dengan mengacu pada basis pengetahuan fuzzy.Biasa proses ini berupa pernyataan implikasi seperti kata Jika-Maka atau yang biasa disebut dengan IF-Then Rules[2].
-
4. Defuzzifikasi
Proses terakhir dalam sistem fuzzy adalah defuzzifikasi, dimana proses ini bertujuan untuk merubah kembali nilai linguistik output dari proses inferensi menjadi nilai pasti (crispt) yang akan digunakan pada proses sistem kontrol selanjutnya.
Misalkan robot line follower memiliki tujuh sensor, maka sensor yang tepat berada ditengah akan menjadi setpoint. Seperti pada gambar 1. diatas, terdapat kondisi sensor dari robot line follower yang tepat berada diatas garis, kondisi tersebut diberikan nilai position value = 0.
-
A. Perancangan Sistem Kontrol PID
Walaupun sistem kontrol yang digunakan pada pengontrolan pergerakan robot line follower berbasis hybrid, namun tentunya kontroler PID disini masih tetap menjadi kontroler utama [1].
Dalam membuat suatu sistem kontrol yang ditanamkan pada robot tentunya harus diimplemantasikan kedalam suatu sintak program. Suatu rumus nantinya akan sedikit berubah penampilan jika telah diimplementasikan ke dalam program, karena pada pemrograman, hanya diperlukan sifat-sifat dan algoritma dari rumus tersebut. Pada perancangan sistem PID ini, akan di jabarkan mengenai pengimplementasian rumus menjadi suatu sintak program sebagai berikut [1]:
a) Proposional
Rumus dasar dari kontroler proposional adalah :
P = Kpe(t)
(2)
Dengan:
P adalah Proposional
Kp adalah nilai konstanta proposional
e(t) adalah nilai eror yang selalu akan berubah
Seperti yang dijelaskan pada dasar teori PID,
bahwa nilai error didapat dari:
e(t) = Sp-Pv
(3)
Sesuai dengan judul diatas, bahwa sistem kontrol pergerakan robot line follower yang akan dibahas pada paper ini berbasis hybrid antara metode kontrol PID dengan metode kontrol Fuzzy logic. Dimana nantinya akan ada dua metode kontrol yang bekerja secara bersama-sama di dalam

Gambar 4.Blok Diagram Hybrid PID-Fuzzy Logic
Dengan;
Sp adalah Setpoint
Pv adalah Process Variable
Jika dirubah kedalam sintak program maka akan menjadi:
Setpoint=0 error=Sp-Pv P=Kp*error
b) Integral
Rumus dasar dari kontroler Integral adalah:

(4)
seperti pada dasar teori sistem kontrol, bahwa ada sesuatu yang menjadi tujuan, mengapa sistem tersebut perlu untuk dikontrol. Tujuan tersebut berupa setpoint. Setpoint pada robot line follower adalah suatu keadaan dimana robotdiharuskan untuk tetap berada ditengah-tengah garis.
Dengan:
I adalah Integral
Ki adalah nilai konstanta integral
e(t) adalah nilai error
dt adalah nilai perubahan waktu (second)
Kontroler integral tidak dapat digunakan sendiri, maka dari itu harus digabungkan dengan kontroler proposional.
Jika dirubah kedalam sintak program maka akan menjadi:
Setpoint=0
error=Sp-Pv
P=Kp*error
I1=error+last_error
I2=I1*Ki
I=I/5 last_error=error PI= P+I
c) Derivativ
Rumus dasar dari kontroler Derivativ adalah:

(5)
Dengan:
D adalah Derivativ
Kd adalah nilai konstanta Derivativ
de(t) adalah nilai perubahan error
dt adalah nilai perubahan waktu (second)
Sama juga halnya dengan kontroler Integral, kontroler Derivativ juga tidak bisa digunakan sendirian, melainkan juga harus digabungkan dengan kontroler Proposional. Apabila tidak, maka kontroler Derivativ tidak akan dapat melakukan aksi apapun, karena tidak ada perubahan error.
Jika dirubah kedalam sintak program maka akan menjadi:
Setpoint=0
error=Sp-Pv
P=Kp*error
D1=error-last_error
D=D1*Kd
last_error=error
PD=P+D
Jadi jika ketiga kontroler tersebut digabungkan, maka sintak programnya akan menjadi:
Setpoint=0
error=Sp-Pv
P=Kp*error
I1=error+last_error
I2=I1*Ki
I=I/5
D1=error-last_error
D=D1*Kd
last_error=error
PD=P+D
PID=PD+I
Jadi nilai hasil penjumlahan ketiga kontroler tersebut akan dijumlahkan lagi dengan hasil perhitungan fuzzy logic, yang kemudian akan digunakan untuk mengontrol pergerakan robot.
-
B. Perancangan Sistem Kontrol Fuzzy Logic
Dalam perancangan sistem okntrol fuzzy logic, tentunya harus mengetahui terlebih dahulu basis pengetahuan fuzzy, mulai dari range semesta pembicaraan (Universe of Discourse) yang akan digunakan, range nilai yang akan digunakan pada masing-masing anggota himpunan fuzzy, dan bentuk pola kurva yang akan digunakan.
Metode pemecahan permasalahan fuzzy pada kasus ini adalah menggunakan metode Tsukamoto, karena rumus-rumus yang digunakan mulai dari proses fuzzifikasi sampai proses defuzzifikasi sangat sederhana dan mudah untuk diterapkan pada robot.
sistem kontrol fuzzy logic pada robot line follower ini menggunakan dua variable input, yaitu error dan derror dan dengan satu variabel output.
Gambar 5.Pemodelan Fuzzy pada Matlab
-
a) Proses Fuzzifikasi
Rancangan membership function dari variable input error adalah:
Gambar 6.Membership Function Variable Error
Keterangan:
SR = Sangat Rendah
R = Rendah
N = Normal
T = Tinggi
ST = Sangat Tinggi
Rancangan membership function dari variable input derror adalah:

Gambar 7.Membership Function Variable Derror
Keterangan:
SL = Sangat Lambat
L = Lambat
N = Normal
C = Cepat
SC = Sangat Cepat
S = Sedikit
N = Normal
B = Banyak
SB = Sangat Banyak
Setelah didapatkan aturan-aturan dalam proses inferensi, maka proses selanjutnya adalah merubah nilai-nilai linguistik tersebut kembali ke nilai pasti (Cripst Output) melaui proses defuzzifikasi metode rata-rata[3].
Persamaan defuzzifikasi metode Tsukamoto adalah: [2]

(7)
Keterangan:
Z = Output Crispt
a1 = Member ship function pertama
z1 = Nilai hasil inferensi pada member ship function pertama
Jadi setelah kedua sistem dibuat, maka hasil dari kontroler PID dijumlahkan dengan Cripst output dari Fuzzy logic. Sehingga hasil penjumlahan tersebut yang akan digunakan untuk mengendalikan kecepatan motor pada robot Line follower.
Persamaan yang digunakan dalam mencari nilai derajat keanggotaan pada kurva segitiga adalah [2]:
— |
< 0; |
x ≤ a atau x≥ c |
μ [x]= " |
(x-a)∕(b-a); |
a≤ x≤ b |
(b-x)∕(c-b); |
b≤ x≤ c | |
b) Proses Inferensi Pada Tabel FAM
Tabel I. Rule Pada TabelFAM
u_e u_de |
SR |
R |
N |
T |
ST |
SL |
SS |
SS |
N |
B |
B |
L |
SS |
S |
N |
N |
B |
N |
N |
N |
N |
N |
B |
C |
SS |
S |
N |
B |
SB |
SC |
S |
S |
B |
SB |
SB |
Keterangan:
SS = Sangat Sedikit
Dapat diperlihatkan potongan sintak program penjumlahan dan pengendalian kecepatan putaran motor sebagai berikut:
hybrid=PID+Z
motor_kanan=speed+hybrid motor_kiri=speed-hybrid
Berikut ini merupakan hasil pengujian yang dilakukan untuk membandingkan respon antara penggunaan kontroler hybrid dengan penggunaan kontroler PID murni. Analisa ini dilakukan dengan cara menguji pergerakan robot pada track yang memiliki satu buah tikungan. Tikungan tersebut diasumsikan adalah sebuah gangguan. Adapun parameter yang dijadikan perbandingan adalah nilai waktu untuk mencapai keadaan steady state dari respon sistem. Mula-mula robot bergerak lurus dengan kecepatan tertentu, kemudian secara tiba-tiba robot diberikan tikungan. Pada saat robot mengetahui adanya gangguan yang berupa tikungan, maka sistem akan mulai merekam nilai waktu yang dibutuhkan oleh robot untuk kembali stabil. Adapun robot line follower yang digunakan dalam pengujian adalah:

Gambar 8.Robot Yang Digunakan Pengujian
Adapun gambaran bentuk track yang digunakan untuk pengujian adalah sebagai berikut:


*Nilai parameter kecepatan adalah nilai PWM
*Satuan output dari pengujian adalah milli second (ms)
Dari hasil pengujian diatas dapat dibandingkan antara menggunakan kendali PID murni dengan menggunakan kendali hybrid dapat memberikan respon pergerakan robot yang lebih cepat dihitung mulai dari robot pertama kali terkena gangguan sampai robot kembali stabil pada garis.
Dari hasil pengujian yang dilakukan, dapat dismpulkan bahwa, metode fuzzy logic yang digabungkan dengan kontroler PID dapat diterapkan pada kendali pergerakan robot line follower untuk mempercepat nilai recovery time dari sistem. Karena, dari semesta nilai derror dan error yang ada, telah dipetakan sedemikian rupa kedalam derajat keanggotaan fuzzy, sehingga tanggpan respon lebih cepat.
Daftar Pustaka
-
[1] Fahmizal. 2011.Robot Line Follower dengan Kendali PID-Fuzzy. (www.fahmizaleeits.wordpress.com,
diakses 8 Oktober 2013).
-
[2] Suksmadana, B. 2011. “Rancang Bangun Robot Mobile Menggunakan Logika Fuzzy Untuk Bernavigasi Berbasiskan Mikrokontroler AVR Atmega 8535”. Dielektrika, ISSN 2086-9487 Vol.2, No. 1:9-17,Februari 2011
-
[3] Sutejo, T. , Mulyanto, E. & Suhartono, V. 2011. Kecerdasan Buatan. Yogyakarta: Andi Offset.
-
[4] Ogata, K.2002. Modern Control Engineering Fourth Edition. Tehran: Aeeizh
-
[5] Prabowo, Y. 2013. “Aplikasi PID pada Robot Line Follower Bebasis Mikrokontroler AT-8535”. Arsitron, Vol. 4 No.1 Juni 2013
Gambar 9.Bentuk Track Yang digunakan dalam uji coba
Tabel II. Hasil Pengujian Nilai Waktu Respon
No |
Input |
Output | ||||
Kecepatan |
KP |
KD |
KI |
Hybrid |
PID | |
1 |
80 |
20 |
30 |
1 |
- |
1190ms |
2 |
100 |
20 |
30 |
2 |
- |
1045ms |
3 |
110 |
30 |
40 |
3 |
- |
905ms |
4 |
120 |
30 |
40 |
3 |
- |
889ms |
5 |
120 |
40 |
50 |
4 |
- |
883ms |
6 |
80 |
20 |
30 |
1 |
699ms |
- |
7 |
100 |
20 |
30 |
2 |
643ms |
- |
8 |
110 |
30 |
40 |
3 |
598ms |
- |
9 |
120 |
30 |
40 |
3 |
556ms |
- |
10 |
120 |
40 |
50 |
4 |
403ms |
- |
Keterangan dari tabel tersebut adalah:
-Pengujian Hybrid
-Pengujian PID murni
164
ISBN: 978-602-7776-72-2 © Universitas Udayana 2013
Discussion and feedback