2
PID Controller
Fatchul Arifin
(fatchul@uny.ac.id)
PID Controller merupakan salah satu jenis pengatur yang banyak digunakan.
Selain itu sistem ini mudah digabungkan dengan metoda pengaturan yang lain seperti
Fuzzy dan Robust. Sehingga akan menjadi suatu sistem pengatur yang semakin baik
Tulisan ini dibatasi pada sistem dengan Unity Feedback System, yang gambarnya
sebagai berikut :
Controller Plant +
Gambar 1
Blok diagram untuk Unity Feedback Systems [1]
PID Controller memiliki transfer function sebagai sebagai berikut :
H (s) = 3K D s + 2K P s +K I
(1)
s + K D s + K P s +K I
PID Controller sebenarnya terdiri dari 3 jenis cara pengaturan yang saling
dikombinasikan, yaitu P (Proportional) Controller, D (Derivative) Controller, dan I
(Integral) Controller. Masing-masing memiliki parameter tertentu yang harus diset
untuk dapat beroperasi dengan baik, yang disebut sebagai konstanta. Setiap jenis,
memiliki kelebihan dan kekurangan masing-masing, hal ini dapat dilihat pada tabel di
bawah ini :
Tabel 1
Respon PID Controller Terhadap Perubahan Konstanta[1]
Closed-Loop
Response
Rise Time Overshoot Settling Time SS Error
Kp Decrease Increase Small change Decrease
Parameter-parameter tersebut, tidak bersifat independen, sehingga pada saat salah satu
nilai konstantanya diubah, maka mungkin sistem tidak akan bereaksi seperti yang
diinginkan. Tabel di atas hanya dipergunakan sebagai pedoman jika akan melakukan
perubahan konstanta. Untuk merancang suatu PID Controller, biasanya dipergunakan
metoda trial & error. Sehingga perancang harus mencoba kombinasi pengatur beserta
konstantanya untuk mendapatkan hasil terbaik yang paling sederhana.
c. Metode Konvensional
Desain sebuah sistem kontrol, dimulai dengan membuat blok diagram sistem.
Blok diagram (yang berisi transfer function) tersebut selanjutnya akan dianalisa
dengan menggunakan aksi pengontrolan yang berbeda. Dengan perubahan sinyal
input sehingga perancang dapat melihat respon sistem jika mendapat input sinyal
tertentu. Kombinasi antara sinyal input dan jenis aksi pengontrolan ini akan
menghasilkan respon yang berbeda-beda.
Dahulu untuk melihat respon suatu sistem dengan berbagai macam kombinasi
sinyal input dan aksi pengontrolan merupakan hal yang sulit dan membosankan.
Adapun prosedur yang harus dilalui adalah sebagai berikut [2]:
1. Mendapatkan transfer function sistem (dalam s-domain) dengan Laplace
Transform.
2. Menentukan jenis aksi pengontrolan beserta dengan konstantanya.
3. Menggabungkan transfer function yang sudah didapatkan dengan jenis aksi
pengontrolan.
4. Menentukan sinyal input yang akan dimasukkan (biasanya fungsi step, fungsi
ramp dan pulse) dan menggabungannya ke dalam transfer function yang baru.
5. Melakukan perhitungan invers Laplace Transform untuk mendapatkan fungsi
dalam t-domain.
6. Menggambar respon berdasarkan fungsi dalam t-domain.
Untuk melakukan langkah-langkah di atas diperlukan ketelitian yang tinggi
dan hasil penggambarannya sering kali kurang (tidak) akurat. Selain itu, jika
perancang ingin mengamati respon sistem terhadap sinyal input yang lain, maka
proses-proses tersebut sebagian besar akan diulang kembali. Hal ini bertambah
kompleks jika perubahan yang dilakukan tidak terbatas pada sinyal input, tetapi juga
Sehingga untuk mendapatkan respon dari berbagai macam kombinasi,
membutuhkan waktu yang relatif lama. Selain itu, perancang juga melakukan proses
perhitungan yang rumit dan membosankan.
d. Metode Simulasi Menggunakan Komputer
Perkembangan teori kontrol juga diikuti oleh software pendukungnya. Mulai
dari software untuk pemrograman sistem, sampai dengan software untuk proses
simulasinya. Salah satu software yang dapat dipergunakan untuk simulasi tersebut
adalah MatLab dari Mathworks, Inc.
Software ini dilengkapi dengan berbagai toolbox yang memudahkan pemakai
untuk melakukan perhitungan-perhitungan tertentu. Bahkan saat ini sudah
dikembangkan toolbox khusus untuk simulasi yang diberi nama Simulink. [3]
Aplikasi MatLab dalam bidang pengaturan dilengkapi Control Toolbox.
Toolbox ini sudah dilengkapi dengan berbagai macam fungsi pendukung yang
dipergunakan dalam analisa sistem kontrol. Beberapa fungsi pendukung yang sering
dipergunakan untuk menganalisa suatu sistem adalah : feedback, step, rlocus, series,
dll. Untuk menganalisa suatu sistem, software hanya memerlukan masukan berupa
transfer function yang ditulis dalam Laplace Transform (dalam s-domain) atau
matriks. Untuk selanjutnya, pemakai tinggal memilih analisa yang akan dipergunakan.
Tulisan ini akan membahas penggunaannya secara khusus untuk merancang PID
Controller pada suatu sistem.
Sebagai contoh, suatu sistem kontrol memiliki transfer function sebagai
berikut :
H (s) =
1
s 2 + 10s + 20
Dengan kriteria perancangan sebagai berikut :
1. memiliki rise time yang cepat
2. overshoot sekecil mungkin
3. tidak memiliki steady state error.
Dari fungsi di atas, maka parameter-parameter yang dimasukkan berupa
koefisien pembilang dan penyebutnya. Biasanya dipergunakan variabel num untuk
pen
ggunaan na
p untuk men
Langka
masukkan ke
againya. Se
is input yang
Fungsi d
p(num,den,t
nghasilkan g
num =
den =
step(n
title(
spon sistem
Sistem
pon tertingg
miliki rise
nguntungka
Untuk m
ose loop sy
ndisi sesung
ama variabe
nganalisa sis
ah kedua ya
e dalam si
ebagai dasar
g lain akan
dasar yang
) untuk s-d
gambar resp
[1];
[1 10 20
num,den)
‘Open Lo
terbuka (op
Re
di atas m
gi hanya di
time yang
n.
menghasilk
ystem). Sis
guhnya den
el yang lain
stem kontro
ang perlu d
stem. Input
r analisa ak
dibicarakan
akan serin
domain ata
pon sistem b
0];
oop Resp
pen loop res
espon Sistem
emiliki ste
idapatkan p
cukup bes
an sistem k
stem ini m
ngan seting p
n juga diperb
ol.
dilakukan a
t ini bisa b
kan diperlun
n pada bagia
ng dipergu
au step(A,B
bila diberi i
ponse’)
sponse) dap
Gambar 2
m Dengan U
eady state e
pada amplit
sar (sekitar
kontrol yang
memiliki fe
poin yang d
bolehkan. S
adalah mem
berupa step
nakan fungs
an akhir tul
unakan adal
B,C,D) untu
nput unit st
pat dilihat pa
Unit Step In
error yang
tudo 0,05.
r 1,5 detik)
g baik, dipe
eedback, ya
diberikan.
Setelah itu k
milih jenis i
p, pulse, ra
si step. Seda
isan ini.
lah step, d
uk state sp
ep dalam
t-ada gambar
nput
tinggi, yai
Selain itu,
). Hal terse
rlukan siste
ang akan m
komputer su
input yang
amp, sinus,
ang penggu
dengan syn
pace. Fungs
domain.
r di bawah in
itu 0,95. S
sistem ter
ebut jelas
em yang ter
membandin
rtutup
men
e. Proporti
Dari ta
nambah ov
ction sistem
sal, diambil
Kp = 3
nambahan v
s/d t=2, den
Dari g
ngurangi ris
rshoot yan
rshoot yang
timenya m
erkecil.
ional Contr
abel 1 dik
vershoot, d
m di atas den
H (
konstanta K
00;
ariabel t=0
ngan step 0,
gambar 2 d
se time dan
ng terjadi m
g terjadi ju
menjadi kec roller
etahui bahw
dan mengur
ngan mengg
(s) = s 2 + 1
Kp = 300, m
0+Kp];
: 2;
-Loop St
Respo
Menggu
0:0.01:2
,01 detik.
di atas, da
n steady st
masih terla
uga semakin
cil. Kebalik
hwa P Con
rangi stead
gunakan P C
K P
0s + (20 + K
maka :
tep Kp =
Gambar 3
on Sistem T
unakan P C
dimaksud
apat diliha
tate error,
alu besar. J
n besar, set
kan dari k
P
ntroller dap
dy state er
Controller ad
K )
300’)
ertutup
ontroller
dkan untuk
at bahwa p
tetapi men
Jika konsta
ttling time
eadaan itu
pat mengur
rror. Close
dalah sebag
(3)
melihat resp
penambahan
ambah ove
anta Kp di
juga semak
terjadi jik
rangi rise
ed-loop tra
gai berikut :
pon sistem
an P Contr
ershoot. Na
iperbesar, m
kin besar, t
ka konstanta time,
ansfer
dari
roller
amun,
maka
tetapi
f. Proporti
sed-Loop tr
sal, Kp = 30
spon sistem
rdasarkan ga
n settling tim
g. Proport
sed-Loop tr
Integral
rshoot dan
ak dimiliki o
ional-Deriv
ransfer func
H (
tergambar s
ambar di ata
me, tetapi tid
ional-Integ
ransfer func
H (
l Controller
setling tim
oleh jenis ya
vative Cont
ction sistem
(s) =
-Loop St
seperti di ba
Respo Menggun
as, penggun
dak member
gral Contro
ction sistem
(s) = s 3 + 10
r memiliki
me, serta me
ang lain).
tep Kp=30
awah ini.
Gambar 4 on Sistem T unakan PD C
naan PD Co
rikan damp
oller
ngan PD Con
KP
+ (20 + K P )
00 Kd=10
ertutup Controller
ntroller dap
at apa pun t
ngan PD Con
K I
K P )s + K I
ik mengura
an steady s
ntroller ada
(4)
’)
pat mengura
terhadap ste
ntroller ada
(5)
aangi rise t
tate error ( alah :
angi oversho
eady state er
alah :
time, menam
(karakteristi oot
rror.
mbah
Mis
rshoot. Ole
g berlebiha
niadakan ste
ilangkan.
mbar di baw
ri gambar di
il, serta stea
h. Proport
Bagian
ction untuk
Kp = 3
troller mem
eh karena i
an. Nilai K
eady state e
wah ini mem
Respon S
i atas terlih
ady state err
ional-Integ
akhir dari
sistem di at
3
-Loop St
miliki karak
tu, nilai Kp
Ki diambil
error. Jika K
mperlihatkan
Sistem Tertu
at bahwa ri
rornya dapa
gral-Deriva
simulasi in
tas adalah :
K D s
+ (10 + K D )
2
;
tep Kp=30
akteristik ya
p harus dik
lebih besa
Kp > Ki, m
n respon sis
Gambar 5
utupMengg
ise time sist
at dihilangka
ative Contr
ni adalah PI
+ K P s + K I
2
s + (20 +
0 Ki=70’
ang sama
kurangi unt
ar dari Kp,
maka steady
tem dengan
gunakan PI C
tem menuru
an.
roller
ID Controll
I
K P )s + K I
)
dalam hal
tuk menghi
, karena di
y state error
n PI Control
Controller
un, dengan
er, yang me
(6)
rise time
indari overs
iinginkan u
rnya tidak d
ller
overshoot y
Dari ga
penuhi, yaitu
ady state er
cobaan (tria
g berlainan
a salah satu
n didapatka
agai pedom
ikut ini beb
nginkan :
5. Kombin
diingink
Dalam
nggunakan
[Kp Ki K
[1 10+kd
: 0.01 :
num,den)
‘Closed-Respon Si
ambar di a
u tidak me
rror. Nilai-n
al and error)
n, untuk me
u konstanta
an hasil se
man.
berapa tips
kan respon s
yang harus
hkan P Cont
hkan D Con
hkan I Cont
nasikan ko
kan.
mengimp
PID Contro Kd];
d 20+Kp
: 2;
-Loop St
istem Tertut
atas terlihat
miliki over
nilai konstan
). Sehingga
emenuhi kr
a akan berp
esuai denga
yang dapat
sistem terbu
dieprbaiki
troller untuk
ntroller untu
troller untuk
onstanta y
lementasika
oller. Jika s
Ki];
tep Kp=35
Gambar 6
tup Menggu
t bahwa kr
rshoot, rise
anta yang te
a perancang
riteria di at
pengaruh pa
an tabel 1.
t diperguna
uka sistem
(rise time,
k memperba
uk memperb
k menghilan
yang ada
an sistem
sistem sudah
50 Ki=30
unakan PID
riteria siste
time yang
erdapat pad
yang berbe
tas. Hal itu
ada konstan
. Tabel ter
akan untuk
(open-loop)
settling tim
aiki rise tim
baiki oversh
ngkan stead
untuk me
kontrol,
h memberik
0 Kd=50’
Controller
em yang di
cepat, dan
a tulisan in
eda akan me
u terjadi ka
nta yang lain
sebut hany
mendapatka
) untuk men
me, oversho
me.
hoot.
y state error
endapatkan
sebenarny
kan respony ’)
iinginkan s
n tidak mem
ni diperoleh
endapatkan
arena perub
in. Artinya
ya dipergun
an respon y
nentukan ba
oot, steady
r.
respon
ya tidak
yang cukup sudah
miliki
dalamnya. Sehingga sistem menjadi lebih sederhana (kombinasi yang main banyak
membuat sistem menjadi makin kompleks)
Analisa pada contoh di atas, dilakukan dengan input unit step. Apabila diinginkan
analisa dengan input yang berbeda, maka harus dilakukan modifikasi transfer
function,Untuk menganalisa sistem dengan input impulse function, maka transfer function
dikalikan dengan faktor s. Demikian juga untuk input ramp function, perlu dikalikan dengan
faktor 1/s.
i. Kesimpulan
Merancang suatu PID Controller memang tidak mudah, sebab penentuan
konstantanya dilakukan secara trial and error. Selain itu perubahan salah satu
konstanta akan berpengaruh terhadap parameter yang lain. Namun demikian,
kesulitan tersebut sudah sedikit teratasi dengan bantuan komputer. Sebab respon dapat
langsung dilihat tanpa melakukan perhitungan yang rumit dan memakan waktu panjang.
Penggunaan MatLab tidak terbatas pada perancangan PID Controller saja, melainkan ada berbagai macam analisa sistem kontrol seperti Bode Diagram, analisa kestabilan Nyquist, Root Locus, State Space, dll. Fungsi-fungsi untuk keperluan di atas sudah tersedia di dalam Control Toolbox. Jika tidak tersedia, pemakai dapat membuat m-file yang sesuai
dengan kebutuhan.