Anda di halaman 1dari 8

Desain PID Controller Dengan Software MatLab

Hany Ferdinando

Dosen Tetap Fakultas Teknik Jurusan Teknik Elektro


Universitas Kristen Petra
Surabaya

Abstrak:

Perancangan PID Controller selama ini menggunakan metoda trial and error dengan
perhitungan yang memakan waktu lama. MatLab yang dilengkapi Control Toolbox,
membantu perancang untuk melihat respon berbagai kombinasi konstanta dengan
variasi input yang berbeda. Penggunaan MatLab ini sangat membantu perancang dalam
menentukan kombinasi di antara P, I, dan D Controller untuk menghasilkan sistem
pengaturan yang baik dan sederhana.

Abstract:

In PID Controller design, designers used trial and error method to obtain the optimum
result. However, this method needs more time and higher mathematics computation.
MatLab with Control Toolbox helps them to see response of the system, in many
combination and input variety. This softeare is very helpful to determine which controller
should choose, to get the simplest and best control system.

1. Pendahuluan mendapatkan gambaran respon


sistemnya. Gambaran tersebut meliputi :
Kontrol otomatis saat ini memberikan 1. Respon sistem terhadap berbagai
peran yang sangat besar dalam kehidupan macam input (step function, ramp
manusia, terutama dalam bidang ilmu function, dan impulse function, dll),
pengetahuan dan industri. Beberapa di termasuk jika adanya gangguan dari
antaranya adalah robot, pengaturan suhu luar.
sebuah tangki, pengaturan kelembaban 2. Kestabilan sistem (metode : root
udara dalam sebuah ruangan, tekanan locus, frekuensi respon, state space).
udara dalam suatu pipa tertutup yang 3. Respon sistem terhadap berbagai
dijaga tetap, dll. Penguasaan sistem macam jenis kontroler (P, I, D,
kontrol baik dalam hal teori maupun dan/atau kombinasinya).
praktek akan menghasilkan suatu sistem
dengan respon yang sesuai dengan Namun demikian, ada paling tidak 2
kebutuhan. kendala dalam menganalisa sistem yang
akan dibuat, yaitu bagaimana
Sebuah sistem kontrol yang dirancang, mendapatkan transfer function dari
perlu dianalisa terlebih dahulu untuk sistem tersebut kemudian
menganalisanya secara cepat dan mudah.
Sampai saat ini, para perancang sistem 2. PID Controller
kontrol masih mendapatkan kesulitan
untuk mendapatkan transfer function PID Controller merupakan salah satu
suatu sistem. Namun jika persamaan jenis pengatur yang banyak digunakan.
tersebut sudah didapatkan, maka proses Selain itu sistem ini mudah digabungkan
analisanya tidak terlalu sulit. Sebab saat dengan metoda pengaturan yang lain
ini sudah dikembangkan software- seperti Fuzzy dan Robust. Sehingga akan
software yang akan membantu proses di menjadi suatu sistem pengatur yang
atas. Salah satu software tersebut adalah semakin baik Tulisan ini dibatasi pada
MatLab dari Mathworks, Inc. 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 dikombinasikan, yaitu P (Proportional)


sebagai sebagai berikut : Controller, D (Derivative) Controller, dan
I (Integral) Controller. Masing-masing
K D s 2 + K P s +K I memiliki parameter tertentu yang harus
H ( s) = 3 (1) diset untuk dapat beroperasi dengan baik,
s + K D s 2 + K P s +K I
yang disebut sebagai konstanta. Setiap
jenis, memiliki kelebihan dan kekurangan
PID Controller sebenarnya terdiri dari 3 masing-masing, hal ini dapat dilihat pada
jenis cara pengaturan yang saling 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
Ki Decrease Increase Increase Eliminate
Kd Small change Decrease Decrease Small change

Parameter-parameter tersebut, tidak konstanta. Untuk merancang suatu PID


bersifat independen, sehingga pada saat Controller, biasanya dipergunakan
salah satu nilai konstantanya diubah, metoda trial & error. Sehingga
maka mungkin sistem tidak akan bereaksi perancang harus mencoba kombinasi
seperti yang diinginkan. Tabel di atas pengatur beserta konstantanya untuk
hanya dipergunakan sebagai pedoman mendapatkan hasil terbaik yang paling
jika akan melakukan perubahan sederhana.
3. Metode Konvensional sistem terhadap sinyal input yang lain,
maka proses-proses tersebut sebagian
Desain sebuah sistem kontrol, dimulai besar akan diulang kembali. Hal ini
dengan membuat blok diagram sistem. bertambah kompleks jika perubahan yang
Blok diagram (yang berisi transfer dilakukan tidak terbatas pada sinyal
function) tersebut selanjutnya akan input, tetapi juga pada jenis aksi
dianalisa dengan menggunakan aksi pengontrolannya.
pengontrolan yang berbeda. Dengan
perubahan sinyal input sehingga Sehingga untuk mendapatkan respon dari
perancang dapat melihat respon sistem berbagai macam kombinasi,
jika mendapat input sinyal tertentu. membutuhkan waktu yang relatif lama.
Kombinasi antara sinyal input dan jenis Selain itu, perancang juga melakukan
aksi pengontrolan ini akan menghasilkan proses perhitungan yang rumit dan
respon yang berbeda-beda. membosankan.

Dahulu untuk melihat respon suatu sistem 4. Metode Simulasi Menggunakan


dengan berbagai macam kombinasi sinyal Komputer
input dan aksi pengontrolan merupakan
hal yang sulit dan membosankan. Adapun Perkembangan teori kontrol juga diikuti
prosedur yang harus dilalui adalah oleh software pendukungnya. Mulai dari
sebagai berikut [2]: software untuk pemrograman sistem,
1. Mendapatkan transfer function sistem sampai dengan software untuk proses
(dalam s-domain) dengan Laplace simulasinya. Salah satu software yang
Transform. dapat dipergunakan untuk simulasi
2. Menentukan jenis aksi pengontrolan tersebut adalah MatLab dari Mathworks,
beserta dengan konstantanya. Inc.
3. Menggabungkan transfer function
yang sudah didapatkan dengan jenis Software ini dilengkapi dengan berbagai
aksi pengontrolan. toolbox yang memudahkan pemakai
4. Menentukan sinyal input yang akan untuk melakukan perhitungan-
dimasukkan (biasanya fungsi step, perhitungan tertentu. Bahkan saat ini
fungsi ramp dan pulse) dan sudah dikembangkan toolbox khusus
menggabungannya ke dalam transfer untuk simulasi yang diberi nama
function yang baru. Simulink. [3]
5. Melakukan perhitungan invers
Laplace Transform untuk Aplikasi MatLab dalam bidang
mendapatkan fungsi dalam t-domain. pengaturan dilengkapi Control Toolbox.
6. Menggambar respon berdasarkan Toolbox ini sudah dilengkapi dengan
fungsi dalam t-domain. berbagai macam fungsi pendukung yang
dipergunakan dalam analisa sistem
Untuk melakukan langkah-langkah di kontrol. Beberapa fungsi pendukung yang
atas diperlukan ketelitian yang tinggi dan sering dipergunakan untuk menganalisa
hasil penggambarannya sering kali suatu sistem adalah : feedback, step,
kurang (tidak) akurat. Selain itu, jika rlocus, series, dll. Untuk menganalisa
perancang ingin mengamati respon suatu sistem, software hanya memerlukan
masukan berupa transfer function yang syntax : step(num,den,t) untuk s-domain
ditulis dalam Laplace Transform (dalam atau step(A,B,C,D) untuk state space.
s-domain) atau matriks. Untuk Fungsi ini menghasilkan gambar respon
selanjutnya, pemakai tinggal memilih sistem bila diberi input unit step dalam t-
analisa yang akan dipergunakan. Tulisan domain.
ini akan membahas penggunaannya
secara khusus untuk merancang PID num = [1];
Controller pada suatu sistem. den = [1 10 20];
step(num,den)
Sebagai contoh, suatu sistem kontrol title(‘Open Loop
memiliki transfer function sebagai Response’)
berikut :
Respon sistem terbuka (open loop
1 response) dapat dilihat pada gambar di
H ( s) = (2) bawah ini :
s + 10 s + 20
2

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 pembilang dan den untuk
penyebut. Kedua nama variabel tersebut
tidak mutlak, jadi penggunaan nama Gambar 2
variabel yang lain juga diperbolehkan. Respon Sistem Dengan Unit Step Input
Setelah itu komputer sudah siap untuk
menganalisa sistem kontrol. Sistem di atas memiliki steady state error
yang tinggi, yaitu 0,95. Sebab respon
Langkah kedua yang perlu dilakukan tertinggi hanya didapatkan pada
adalah memilih jenis input yang akan amplitudo 0,05. Selain itu, sistem
dimasukkan ke dalam sistem. Input ini tersebut memiliki rise time yang cukup
bisa berupa step, pulse, ramp, sinus, dan besar (sekitar 1,5 detik). Hal tersebut
sebagainya. Sebagai dasar analisa akan jelas tidak menguntungkan.
diperlunakan fungsi step. Sedang
penggunaan jenis input yang lain akan Untuk menghasilkan sistem kontrol yang
dibicarakan pada bagian akhir tulisan ini. baik, diperlukan sistem yang tertutup
(close loop system). Sistem ini memiliki
Fungsi dasar yang akan sering feedback, yang akan membandingkan
dipergunakan adalah step, dengan kondisi sesungguhnya dengan seting poin
yang diberikan.
5. Proportional Controller Dari gambar 2 di atas, dapat dilihat
bahwa penambahan P Controller
Dari tabel 1 diketahui bahwa P Controller mengurangi rise time dan steady state
dapat mengurangi rise time, menambah error, tetapi menambah overshoot.
overshoot, dan mengurangi steady state Namun, overshoot yang terjadi masih
error. Closed-loop transfer function terlalu besar. Jika konstanta Kp
sistem di atas dengan menggunakan P diperbesar, maka overshoot yang terjadi
Controller adalah sebagai berikut : juga semakin besar, settling time juga
semakin besar, tetapi rise timenya
KP menjadi kecil. Kebalikan dari keadaan itu
H (s) = terjadi jika konstanta Kp diperkecil.
s + 10 s + (20 + K P )
2

(3) 6. Proportional-Derivative Controller


Misal, diambil konstanta Kp = 300, maka Closed-Loop transfer function sistem di
: atas dengan PD Controller adalah :
Kp = 300;
KDs + KP
num = [Kp]; H ( s) =
den = [1 10 20+Kp]; s + (10 + K D ) s + (20 + K P )
2

t = 0 : 0.01 : 2; (4)
step(num,den)
title(‘Closed-Loop Step Misal, Kp = 300 dan Kd = 10, maka :
Kp = 300’)
Kp = 300;
Kd = 10;
num = [Kd Kp];
den = [1 10+Kd 20+Kp];
t = 0 : 0.01 : 2;
step(num,den)
title(‘Closed-Loop Step
Kp=300 Kd=10’)

Gambar 3
Respon Sistem Tertutup
Menggunakan P Controller

Penambahan variabel t=0:0.01:2


dimaksudkan untuk melihat respon
sistem dari t=0 s/d t=2, dengan step 0,01
detik. Respon sistem tergambar seperti di
bawah ini.
Gambar 4 Menggunakan PD Controller
Respon Sistem Tertutup

Berdasarkan gambar di atas, penggunaan Gambar di bawah ini memperlihatkan


PD Controller dapat mengurangi respon sistem dengan PI Controller
overshoot dan settling time, tetapi tidak
memberikan dampat apa pun terhadap
steady state error.

7. Proportional-Integral Controller

Closed-Loop transfer function sistem di


atas dengan PD Controller adalah :

KPs + KI
H ( s) = (5)
s + 10s + ( 20 + K P ) s + K I
3 2

Gambar 5
Integral Controller memiliki karakteristik Respon Sistem Tertutup
menguraangi rise time, menambah Menggunakan PI Controller
overshoot dan setling time, serta
menghilangkan steady state error Dari gambar di atas terlihat bahwa rise
(karakteristik ini tidak dimiliki oleh jenis time sistem menurun, dengan overshoot
yang lain). yang kecil, serta steady state errornya
dapat dihilangkan.
Misal, Kp = 30 dan Ki = 70, maka :
8. Proportional-Integral-Derivative
Kp = 300; Controller
Ki = 70;
num = [Kp Ki];
Bagian akhir dari simulasi ini adalah PID
den = [1 10 20+Kp Ki];
Controller, yang memiliki transfer
t = 0 : 0.01 : 2;
step(num,den) function untuk sistem di atas adalah :
title(‘Closed-Loop Step
Kp=30 Ki=70’) KDs2 + KPs + KI
(6)
s 3 + (10 + K D ) s 2 + (20 + K P ) s + K I
P dan I Controller memiliki karakteristik
yang sama dalam hal rise time dan Kp = 350;
overshoot. Oleh karena itu, nilai Kp harus Ki = 300;
dikurangi untuk menghindari overshoot Kd = 50;
yang berlebihan. Nilai Ki diambil lebih num = [Kp Ki Kd];
besar dari Kp, karena diinginkan untuk den = [1 10+kd 20+Kp
meniadakan steady state error. Jika Kp > Ki];
Ki, maka steady state errornya tidak t = 0 : 0.01 : 2;
dapat dihilangkan. step(num,den)
title(‘Closed-Loop Step
Kp=350 Ki=300 Kd=50’)
Respon sistem tergambar di bawah ini
(rise time, settling time, overshoot,
steady state error).
2. Tambahkan P Controller untuk
memperbaiki rise time.
3. Tambahkan D Controller untuk
memperbaiki overshoot.
4. Tambahkan I Controller untuk
menghilangkan steady state error.
5. Kombinasikan konstanta yang ada
untuk mendapatkan respon yang
diinginkan.

Dalam mengimplementasikan sistem


Gambar 6 kontrol, sebenarnya tidak perlu
Respon Sistem Tertutup menggunakan PID Controller. Jika sistem
Menggunakan PID Controller sudah memberikan responyang cukup
baik hanya dengan PI Controller, maka
Dari gambar di atas terlihat bahwa tidak perlu menambahkan D Controller
kriteria sistem yang diinginkan sudah ke dalamnya. Sehingga sistem menjadi
terpenuhi, yaitu tidak memiliki lebih sederhana (kombinasi yang main
overshoot, rise time yang cepat, dan tidak banyak membuat sistem menjadi makin
memiliki steady state error. kompleks)
Nilai-nilai konstanta yang terdapat pada Analisa pada contoh di atas, dilakukan
tulisan ini diperoleh dari percobaan (trial dengan input unit step. Apabila
and error). Sehingga perancang yang diinginkan analisa dengan input yang
berbeda akan mendapatkan nilai yang berbeda, maka harus dilakukan
berlainan untuk memenuhi kriteria di modifikasi transfer function.
atas. Hal itu terjadi karena perubahan
pada salah satu konstanta akan Untuk menganalisa sistem dengan input
berpengaruh pada konstanta yang lain. impulse function, maka transfer function
Artinya tidak akan didapatkan hasil dikalikan dengan faktor s. Demikian juga
sesuai dengan tabel 1. Tabel tersebut untuk input ramp function, perlu
hanya dipergunakan sebagai pedoman. dikalikan dengan faktor 1/s.

Berikut ini beberapa tips yang dapat 9. Kesimpulan


dipergunakan untuk mendapatkan respon
yang diinginkan : Merancang suatu PID Controller memang
1. Dapatkan respon sistem terbuka tidak mudah, sebab penentuan
sistem (open-loop) untuk menentukan konstantanya dilakukan secara trial and
bagian mana yang harus dieprbaiki 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.

Kepustakaan :

1. Messner, William and Dawn Tilbury.


Control Tutorials for MatLab
and Simulink. A Web Based
Approach. Addisson Wesley,
Inc. 1999.

2. Ogata, Katsuhiko. Modern Control


Engineering. 3rd ed. Prentice
Hall International. 1997

3. http://www.mathworks.com

4. Ogata, Katsuhiko. Solving Control


Engineering Problems with
MatLab. Englewood Cliffs,
New Jersey : Prentice Hall
Inc. 1994

5. _______. MatLab High Performance


Numeric Computation and
Visualization Software. The
Mathworks, Inc. 1992

Anda mungkin juga menyukai