Anda di halaman 1dari 10

Kendali PID Pada “ROBOT LINE FOLLOWER”

Kontroler PID adalah kontroler umpan balik yang paling populer. Selama lebih dari 50 tahun,
kontroler PID terbukti dapat memberikan performa kontrol yang baik meski mempunyai algoritma
sederhana yang mudah dipahami. Hal krusial dalam desain kontroler PID ialah tuning atau pemberian
parameter P, I, dan D agar didapatkan respon sistem yang diinginkan.

Didalam suatu sistem kontrol kita mengenal adanya beberapa macam aksi kontrol, diantaranya
yaitu aksi kontrol proporsional, aksi kontrol integral dan aksi kontrol derivative . Masing-masing aksi
kontrol ini mempunyai keunggulan-keunggulan tertentu, dimana aksi kontrol proporsional mempunyai
keunggulan risetime yang cepat, aksi kontrol integral mempunyai keunggulan untuk memperkecil error ,
dan aksi kontrol derivative mempunyai keunggulan untuk memperkecil derror atau meredam
overshot/undershot. Untuk itu agar kita dapat menghasilkan output dengan risetime yang tinggi dan error
yang kecil kita dapat menggabungkan ketiga aksi kontrol ini menjadi aksi kontrol PID, dan pada
penulisan ini sistem kendali yang digunakan adalah sistem kendali PID digital.

kontroler PID ialah penentuan parameter kontroler PID supaya sistem close loop memenuhi
kriteria performansi yang diinginkan. Hal ini disebut juga dengan tuning kontroler.

Tunning kontrol PID ini bertujuan untuk menentukan paramater aksi kontrol Proportional,
Integratif. Derivatif pada robot line follower. Proses ini dapat dilakukan dengan cara trial and error .
Keunggulan cara ini kita tidak perlu mengidentifikasi plant, membuat model matematis plant,
menentukan parameter pant dengan grafis ataupun analitis. cukup dengan cara coba-coba memberikan
konstanta P-I-D pada formula PID hingga di peroleh hasil yang di inginkan, dengan mengacu pada
karakteristik masing-masing kontrol P-I-D.

Bergerak smooth-nya robot sangat tergantung dari aksi kontrol robot tersebut, jika hanya
menngunakan kontrol on-offf (diskontinyu) akan sangat berbeda dengan aksi kontrol kontinyu PID.
Kontrol PID saat ini banyak digunakan dalam aksi-aksi di dunia industri dan juga kontrol robot

Berbicara kontrol robot line follower dengan PID maka bukanlah kontrol PID yang sebenarnya.
sebab pada robot line follower elemen ukur (sensor) tidak terdapat pada plant (motor penggerak) dari
robot, yang serharusnya ialah sensor terdapat di plant(motor penggerak), dengan contoh tachometer
sebagai sensor pada motor, encoder atau yang laennya yang terletak pada plant. sedangkan pada robot line
follower sensor berupa pendeteksi garis (tidak terletak pada plant) dan dari hasil kondisi garis tersebut
barulah dikontrol ke motor (plant), namun walaupun begitu kontrol PID masih dapat diterapkan untuk
mengendalikan robot line follower.

Jika menggunakan kendali PID artinya bertujuan mengolah suatu sinyal kesalahan atau error,
nilai error tersebut diolah dengan formula PID untuk dijadikan suatu sinyal kendali atau sinyal kontrol
yang akan diteruskan ke aktuator. Gampangnya perhatikan saja blok diagram umpan balik loop tertutup
pada perancangan kedali PID pada robot line follower berikut ini:
Dari blok diagram diatas dapat dapat dijelaskan

1. SP = Set point, secara simple maksudnya ialah suatu prameter nilai acuan atau nilai yang kita
inginkan.
2. PV = Present Value, kalo yang ini maksudnya ialah nilai bobot pembacaan sensor saat itu atau
variabel terukur yang di umpan balikan oleh sensor (sinyal feedback dari sensor).
3. Error = nilai kesalahan, nach kalo yang ini pengertiannya ialah Deviasi atau simpangan antar
variabel terukur atau bobot sensor (PV) dengan nilai acuan (SP)

Formula matematis dari PID:

Dari formula tersebut dapat dirumuskan menjadi pen-digitalization PID dengan berbagai metode,
dengan cara transformasi Z, ZOH, bilinier transformartion, Eulers method. Sehingga diperoleh bentuk
digital diskritnya menjadi persamaan dibawah ini.

Bentuk kontroler PID diskrit:

jika kita terapkan dalam bahasa pemrograman menjadi….

Dimana; Ts ialah time sampling, error ialah nilai kesalahan dan last_error ialah nilai error sebelumnya.
Berikut contoh ilustrasi penerapan kontrol PID pada robot line follower:

dari blok iliustrasi tersebut dapat dijelaskan sebagai berikut:

S1,S2…,S8 merupakan sensor dengan pemberian bobot Present Value (PV) PV=0, PV=-1, PV= 1 dst.

Deviasi/simpangan antar variabel terukur (PV) dengan nilai acuan (SP) disebut error (galat)
Nilai error dari pembacaan sensor ini yang dijadikan aksi perhitungan kendali PID, lalu nilai
perhitungan PID tersebut dijumlahkan dengan setpoint PWM untuk dijadikan sebagai nilai aktual PWM
motor dari robot line follower, berikut formula perhitungan nilai PWM kiri dan kanan dari robot line
follower:

Untuk dapat lebih mudah memahami algoritma kendali PID robot line follower, berikut diagram alir
programnya :
Setelah memahami alur pengendalian PID nach berikut ilustrasi pemberian bobot sensor (nilai
kesalahan pembacaan sensor) pada robot line follower:

Dari blok iliustrasi tersebut dapat dijelaskan sebagai berikut :

Proses pemberian bobot sensor dapat dilakukan dengan proses pemetaan (mapping) pembacaan
sensor terhadap garis, berikut salah satu sample proses mapping sensor:

11111110 (PV=-7)

11111000 (PV=-6)

11111100 (PV=-6)

11111101 (PV=-5)

11110001 (PV=-4)

11111001 (PV=-4)

11111011 (PV=-3)

11100011 (PV=-2)

11110011 (PV=-2)

11110111 (PV=-1)

11100111 (PV=0)

11101111 (PV=1)

11000111 (PV=2)
11001111 (PV=2)

11011111 (PV=3)

10001111 (PV=4)

10011111 (PV=4)

10111111 (PV=5)

00011111 (PV=6)

00111111 (PV=6)

01111111 (PV=7)

11111111 (PV=8 / -8)

kondisi ideal robot terjadi saat kondisi robot pada PV= 0 (misal kondisi nilai sensor = 11100111,
nilai 0 merepresentasikan sensor mengenai garis). Atau SP = 0 ialah kondisi ideal dari robot line follower.
Jika PV tidak sama dengan 0 berarti robot tidak berada pada kondisi ideal dan artinya ada sinyal
kesalahan (error). Pada kondisi error inilah formula PID akan menentukan hasil sinyal kendalinya.
Berikut ini penjelasan tentang penerapan PID pada robot line follower:

Proporsional kontrol

Kondisi ideal pada robot adalah bergerak maju lurus mengikuti garis, dengan kata lain PV = 0
(nilai sensor = 11100111). Dari sini dapat diasumsikan bahwa Set Point (SP) / kondisi ideal adalah saat
SP = 0. Nilai sensor yang dibaca oleh sensor disebut Process Variable (PV) / nilai aktual pembacaan.
Menyimpangnya posisi robot dari garis disebut sebagai error (e), yang didapat dari e = SP – PV. Dengan
mengetahui besar error, mikrokontroler dapat memberikan nilai PWM motor kiri dan kanan yang sesuai
agar dapat menuju ke posisi ideal (SP = 0). Besarnaya nilai PWM ini dapat diperoleh dengan
menggunakan kontrol Proporsional (P), dimana P = e Kp (Kp adalah konstanta proporsional yang
nilainya di set sendiri dari hasil tuning).

Saat Sensor = 11111111 nilai PV dapat ditentukan dengan cara membandingkan kondisi PV
sebelumnya, jika PV lebih besar dari 0, maka nilai PV dapat diasumsikan 30 dan jika PV kurang dari 0,
maka nilai PV dapat diasumsikan -30 atau dengan cara menyimpan nilai error yang lalu.

Dalam pemrograman robot line follower ini kodenya ditulis secara sederhana seperti berikut:

If Sensor = &B11111111 Then

If Pv < 0 Then : Pv = -30


End If

If Pv > 0 Then : Pv = 30

End If

End If

Perhitungan kendali proporsional

Sp_sensor = 0 ‘setpoint sensor

Error = Sp_sensor – Pv ‘nilai error

P = Kp * Error ‘proporsional kontrol

Aplikasi kontrol proporsional pada PWM ialah sebagai berikut:

Pwm = Sp_kecepatan + P ‘motor kiri

Pwm = Sp_kecepatan – P ‘motor kanan

Derivatif kontrol

Jika pergerakan robot masih terlihat bergelombang, bisa ditambahkan kontrol Derivatif (D). Kontrol D
digunakan untuk mengukur seberapa cepat robot bergerak dari kiri ke kanan atau dari kanan ke kiri.
Semakin cepat bergerak dari satu sisi ke sisi lainnya, maka semakin besar nilai D. Konstanta D (Kd)
digunakan untuk menambah atau mengurangi imbas dari derivatif. Dengan mendapatkan nilai Kd yang
tepat pergerakan sisi ke sisi yang bergelombang akibat dari kontrol proporsional bisa diminimalisasi.
Nilai D didapat dari D = Kd/Ts * rate, dimana Ts ialah time sampling atau waktu cuplik dan rate = e(n) –
e(n-1). Dalam program nilai error (SP – PV) saat itu menjadi nilai last_error. sehingga rate didapat dari
error – last_error. Untuk menambahkan kontrol D, program dimodifikasi menjadi:

Perhitungan kendali proporsional + Derivatif

Sp_sensor = 0 ‘setpoint sensor

Error = Sp_sensor – Pv ‘nilai error

P = Kp * Error ‘proporsional kontrol

D1 = Kd * 10 ‘derivatif kontrol

D2 = D1 / Ts
D3 = Error – Last_error ‘rate

D = D2 * D3

Last_error = Error ‘error lampau

Pd = P + D ‘proporsional-derivatif kontrol

Aplikasi kontrol proporsional dan drivatif pada PWM ialah sebagai berikut:

Pwm = Sp_kecepatan + Pd ‘motor kiri

Pwm = Sp_kecepatan – Pd ‘motor kanan

Integratif kontrol

Jika dengan P + D sudah membuat pergerakan robot cukup smooth, maka penambahan Integratif
menjadi opsional. Jika ingin mencoba-coba bisa ditambahakan Integratif (I). I digunakan untuk
mengakumulasi error dan mengetahui durasi error. Dengan menjumlahkan error disetiap pembacaan PV
akan memberikan akumulasi offset yang harus diperbaiki sebelumnya. Saat robot bergerak menjauhi
garis, maka nilai error akan bertambah. Semakin lama tidak mendapatkan SP, maka semakin besar nilai I.
Degan mendapatkan nilai Ki yang tepat, imbas dari Integratif bisa dikurangi. Nilai akumulasi error
didapat dari: error + last_error. Untuk menambahkan kontrol I, maka program di modifikasi menjadi:

Perhitungan kendali proporsional + integratif + derivatif

Sp_sensor = 0 ‘setpoint sensor

Error = Sp_sensor – Pv ‘nilai error

P = Kp * Error ‘proporsional kontrol

D1 = Kd * 10 ‘derivatif kontrol

D2 = D1 / Ts

D3 = Error – Last_error ‘rate

D = D2 * D3

I1 = Ki / 10 ’integratif kontrol

I2 = Error + Last_error ‘akumulasi error

I3 = I1 * I2
I = I3 * Ts

Last_error = Error ‘error lampau

Pd = P + D ‘proporsional-derivatif kontrol

Pid = Pd+I ‘proporsional-integratif-derivatif

Aplikasi kontrol proporsional, integratif dan drivatif pada PWM ialah sebagai berikut:

Pwm = Sp_kecepatan + Pid ‘motor kiri

Pwm = Sp_kecepatan – Pid ‘motor kanan

Parameter Nilai Konstanta PID

Nilai konstanta perhitungan PID di tuning secara trial and error, proses ini dilakukan dengan metode
mencoba-coba nilai proporsional, derivatif dan integratif pada formula PID hingga ditemukan hasil sistem
yag stabil, adapun cara yang dilakukan untuk mentuning PID pada robot line follower ialah sebagai
berikut:

1. Langkah awal gunakan kontrol proporsional terlebih dahulu, abaikan konstanta integratif dan
derivatifnya dengan memberikan nilai nol pada integratif dan derivatif.
2. Tambahkan terus konstanta proporsional maksimum hingga keadaan stabil namun robot masih
berosilasi.
3. Untuk meredam osilasi, tambahkan konstanta derivatif dengan membagi dua nilai proporsional,
amati keadaan sistem robot hingga stabil dan lebih responsif.
4. Jika sistem robot telah stabil, kontrol integratif dapat menjadi opsional, dalam artian jika ingin
mencoba-coba tambahkan kontrol integratif tersebut, namun pemberian nilai integratif yang tidak
tepat dapat membuat sistem robot menjadi tidak stabil.
5. Nilai set point kecepatan dan nilai batas bawah/atas memberikan patokan kecepatan robot.
6. Nilai time sampling (waktu cuplik) juga mempengaruhi perhitungan PID, tentunnya saat
penggunaan kontrol integratif dan derivatif.
7. Periksa kembali perfoma sistem hingga mendapatkan hasil yang memuaskan.

Referensi :

 http://en.wikipedia.org/wiki/PID_controller
 http://id-evotech.com/
 http://www.chibots.org/drupal/?q=node/339
 http://gedex.web.id/archives/2008/07/09/line-follower-robot-dengan-pid/
 http://fahmizaleeits.wordpress.com/2010/08/24/tuning-kontrol-pid-pada-robot-line-follower/
 www.google.com

Anda mungkin juga menyukai