Abstrak— In this practicum, we will learn Adapun tujuan dari praktikum percobaan
and understand about Control Systems IV ini adalah:
Design With PID And Pole Placement. This
PID controller is the most widely used, a. Kami mahasiswa mampu merancang
because it is easy and easy to learn and adjust PID Controller dan melakukan simulasi
its parameters. More than 95% industrial dengan menggunakan m-file pada
processes use this controller. This controller software MATLAB.
is a combination of Proportional (P), Integral b. Kami mahasiswa mampu melakukan
(I), and Derivative (D) control. analisis terhadap hasil rancangan
pengendalian yang telah dibuat.
c. Kami mahasiswa mampu merancang
Keywords – PID Controller,
pengendali dengan metode zero-pole
Proportional (P), Integral (I), Derivative (D),
Industrial Processes.
placement dengan menggunakan
software MATLAB.
I. PENDAHULUAN
P
II. LANDASAN TEORETIS
ada percobaan ini yang berjudul
Control Systems Design With PID PID Controller merupakan pengendali
And Pole Placement. Dimana yang memiliki 3 tipe dasar, yakni
pengendalian PID paling banyak Proportional (P), Integral (I), dan
dipergunakan karena sederhana dan sangat Derivative (D). Kombinasi 3 tipe dasar
mudah dipelajari serta tuning parameternya. pengendalian tersebut dapat berupa PI, PD,
Lebih dari 95% proses di industri maupun PID. PID Controller sangat
mempergunakan pengendalian ini. bermanfaat dan banyak digunakan di
Pengendalian ini merupakaan gabungan dari industri karena memiliki respon yang
pengendalian Proportional (P), Integral (I), dinamik terhadap objek yang dikendalikan
dan Derivative (D). dan sangat mudah dipelajari serta tuning
parameternya.
Berikut ini merupakan blok diagram dari
sistem pengendali dengan closed loop.
numo =
III. HASIL DAN ANALISIS
10 500
Latihan 1.
Code yang dibuat : deno =
%Praktikum Sistem Kendali % 1 10 20
%Modul : 4 %
%Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
%Kelas : 13 TE 2 % g2 =
num = [1];
10 s + 500 %Modul : 4 %
%Nama : Josua Marihot Panjaitan %
---------------
%NIM : 14S17048 %
s^2 + 10 s + 20 %Kelas : 13 TE 2 %
g=
1
---------------
s^2 + 10 s + 20
k=
1
---------------
s^2 + 10 s + 21
Pada latihan 1 memiliki fungsi transfer
sebagai berikut: Continuous-time transfer function.
1
G ( S )= 2
( S +10 S +20) numo3 =
10 500
Latihan 2.
Code yang dibuat : deno3 =
%Praktikum Sistem Kendali %
1 10 20 num2 = [1];
den2 = [1 1 0];
g4 = tf(num2,den2)
k4 = feedback (g4,1)
g3 = step(k4,'b')
hold on
10 s + 500 Tz = 0.5;
--------------- z1 = [Tz 1];
numz = conv(num2, z1);
s^2 + 10 s + 20 g5 = tf(numz, den2)
k5 = feedback (g5,1)
Continuous-time transfer function. step(k5,'r')
hold on
k3 =
Pada latihan 3 memiliki fungsi transfer
10 s + 500 sebagai berikut:
----------------
1
s^2 + 20 s + 520 G ( S )=
S (S+1)
Continuous-time transfer function.
g4 =
1
-------
s^2 + s
k4 =
1
-----------
s^2 + s + 1
k5 =
0.5 s + 1
--------------- Hasil setelah di-run :
s^2 + 1.5 s + 1
Latihan4
Continuous-time transfer function.
g6 =
Hasil gambar : 1
-------
s^2 + s
k6 =
1
-----------
s^2 + s + 1
g7 =
1
Latihan 4. -----------------
Code yang dibuat : s^3 + 3 s^2 + 2 s
g=
1
---------------
s^2 + 10 s + 20
k=
1
---------------
s^2 + 10 s + 21
Tugas 1.
Continuous-time transfer function.
Bagian A.
(i) Kp = 500, Kd = 5. numo =
Code yang dibuat :
5 500
%Praktikum Sistem Kendali %
%Modul : 4 %
%Nama : Josua Marihot Panjaitan % deno =
%NIM : 14S17048 %
%Kelas : 13 TE 2 %
1 10 20
num = [1];
den = [1 10 20];
g = tf(num,den) g2 =
k = feedback (g,1)
step(k,'b')
hold on 5 s + 500
Kp = 500; ---------------
Kd = 5; s^2 + 10 s + 20
numc = [Kd Kp];
numo = conv(numc, num) Continuous-time transfer function.
deno = den
g2 = tf(numo, deno)
k2 = feedback (g2,1)
step(k2,'r') k2 =
hold on
5 s + 500
----------------
s^2 + 15 s + 520
Hasil gambar :
Hasil gambar :
(iv) Kp = 400, Kd = 10. (v) Kp = 600, Kd = 10.
Code yang dibuat : Code yang dibuat :
%Praktikum Sistem Kendali % %Praktikum Sistem Kendali %
%Modul : 4 % %Modul : 4 %
%Nama : Josua Marihot Panjaitan % %Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 % %NIM : 14S17048 %
%Kelas : 13 TE 2 % %Kelas : 13 TE 2 %
Kp2 =600;
Kd2 =10;;
numc2=[Kd2 Kp2];
numo2=conv(numc2, num)
deno2=den
g3=tf(numo2, deno2)
k3=feedback (g3,1)
Hasil gambar :
step(k3,'k') k=
hold on
1
Kp3 =300;
Kd3 =10;; ---------------
numc3=[Kd3 Kp3]; s^2 + 10 s + 21
numo3=conv(numc3, num)
deno3=den Continuous-time transfer function.
g4=tf(numo3, deno3)
k4=feedback (g4,1)
step(k4,'g')
hold on numo =
stepinfo(k) 10 400
stepinfo(k2)
stepinfo(k3)
stepinfo(k4)
deno =
Hasil gambar : 1 10 20
g2 =
10 s + 400
---------------
s^2 + 10 s + 20
k2 =
10 s + 400
----------------
s^2 + 20 s + 420
RiseTime: 0.0656
numo3 = SettlingTime: 0.3779
SettlingMin: 0.8906
10 300 SettlingMax: 1.1462
Overshoot: 20.3543
Undershoot: 0
deno3 = Peak: 1.1462
PeakTime: 0.1474
1 10 20
ans =
g4 =
struct with fields:
10 s + 300
--------------- RiseTime: 0.0518
s^2 + 10 s + 20 SettlingTime: 0.3211
SettlingMin: 0.8998
Continuous-time transfer function. SettlingMax: 1.2373
Overshoot: 27.8583
Undershoot: 0
k4 = Peak: 1.2373
PeakTime: 0.1197
10 s + 300
----------------
s^2 + 20 s + 320 ans =
Continuous-time transfer function. struct with fields:
RiseTime: 0.0777
ans = SettlingTime: 0.2897
SettlingMin: 0.8490 stepinfo(k)
stepinfo(k2)
SettlingMax: 1.0813
stepinfo(k3)
Overshoot: 15.3418 stepinfo(k4)
Undershoot: 0
Peak: 1.0813
PeakTime: 0.1704 Hasil gambar :
Kp Konstan.
Code yang dibuat :
num =[1];
den = [1 10 20];
g=tf(num,den)
k=feedback (g,1)
step(k,'b')
hold on
Kp=500;
Kd=5; Hasil setelah di-run :
numc=[Kd Kp];
numo=conv(numc, num) Tugas_1B_Kp_Konstan
deno=den
g2=tf(numo, deno)
k2=feedback (g2,1) g=
step(k2,'r')
hold on 1
---------------
Kp2 =500;
Kd2 = 0.1;;
s^2 + 10 s + 20
numc2=[Kd2 Kp2];
numo2=conv(numc2, num) Continuous-time transfer function.
deno2=den
g3=tf(numo2, deno2)
k3=feedback (g3,1) k=
step(k3,'k')
hold on
1
Kp3 =500; ---------------
Kd3 = 0.01;; s^2 + 10 s + 21
numc3=[Kd3 Kp3];
numo3=conv(numc3, num) Continuous-time transfer function.
deno3=den
g4=tf(numo3, deno3)
k4=feedback (g4,1)
step(k4,'g') numo =
hold on
5 500 ------------------
s^2 + 10.1 s + 520
1 10 20
numo3 =
g2 = 0.0100 500.0000
5 s + 500
--------------- deno3 =
s^2 + 10 s + 20
1 10 20
Continuous-time transfer function.
g4 =
k2 =
0.01 s + 500
5 s + 500 ---------------
---------------- s^2 + 10 s + 20
s^2 + 15 s + 520
Continuous-time transfer function.
Continuous-time transfer function.
k4 =
numo2 =
0.01 s + 500
0.1000 500.0000 -------------------
s^2 + 10.01 s + 520
1 10 20
ans =
1
ans = ---------------
s^2 + 10 s + 20
struct with fields:
Continuous-time transfer function.
RiseTime: 0.0540
SettlingTime: 0.7441
SettlingMin: 0.7281 k=
SettlingMax: 1.4346
Overshoot: 49.1933 1
Undershoot: 0 ---------------
Peak: 1.4346 s^2 + 10 s + 21
PeakTime: 0.1380
Continuous-time transfer function.
Tugas 2.
numo3 =
Bagian A.
10 400
den = [1 10 20];
g = tf(num,den)
k = feedback (g,1)
deno3 = step(k,'b')
hold on
1 10 20 Kp = 500;
Ki = 100;
numc3 = [Kp Ki];
numo3 = conv(numc, num)
g3 = deno3 = den
g3 = tf(numo, deno)
10 s + 400 k3 = feedback (g3,1)
--------------- step(k3,'g')
s^2 + 10 s + 20 hold on
k=
Hasil gambar :
1
---------------
s^2 + 10 s + 21
numo3 =
10 400
(viii) Kp = 500, Ki = 100.
Code yang dibuat :
deno3 =
%Praktikum Sistem Kendali %
%Modul : 4 % 1 10 20
%Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
%Kelas : 13 TE 2 %
g3 =
num = [1];
10 s + 400 g = tf(num,den)
k = feedback (g,1)
---------------
step(k,'b')
s^2 + 10 s + 20 hold on
Kp = 500;
Continuous-time transfer function. Ki = 500;
numc3 = [Kp Ki];
numo3 = conv(numc, num)
deno3 = den
k3 = g3 = tf(numo, deno)
k3 = feedback (g3,1)
10 s + 400 step(k3,'g')
---------------- hold on
s^2 + 20 s + 420
g=
Hasil gambar :
1
---------------
s^2 + 10 s + 20
k=
1
---------------
s^2 + 10 s + 21
numo3 =
10 400
(ix) Kp = 500, Ki = 500.
Code yang dibuat :
deno3 =
%Praktikum Sistem Kendali %
%Modul : 4 % 1 10 20
%Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
%Kelas : 13 TE 2 %
g3 =
num = [1];
den = [1 10 20]; 10 s + 400
--------------- k = feedback (g,1)
step(k,'b')
s^2 + 10 s + 20
hold on
Kp = 400;
Continuous-time transfer function. Ki = 100;
numc3 = [Kp Ki];
numo3 = conv(numc, num)
k3 = deno3 = den
g3 = tf(numo, deno)
k3 = feedback (g3,1)
10 s + 400 step(k3,'g')
---------------- hold on
s^2 + 20 s + 420
g=
Hasil gambar :
1
---------------
s^2 + 10 s + 20
k=
1
---------------
s^2 + 10 s + 21
numo3 =
k=
1
---------------
s^2 + 10 s + 21
numo3 =
10 400
(xi) Kp = 600, Ki = 100.
Code yang dibuat :
deno3 =
%Praktikum Sistem Kendali %
%Modul : 4 % 1 10 20
%Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
%Kelas : 13 TE 2 %
g3 =
num = [1];
den = [1 10 20]; 10 s + 400
g = tf(num,den) ---------------
k = feedback (g,1)
step(k,'b')
s^2 + 10 s + 20
Continuous-time transfer function. Ki = 100;
numc3 = [Kp Ki];
numo3 = conv(numc, num)
deno3 = den
k3 = g3 = tf(numo, deno)
k3 = feedback (g3,1)
10 s + 400 step(k3,'g')
---------------- hold on
s^2 + 20 s + 420
k=
1
---------------
s^2 + 10 s + 21
numo3 =
10 400
(xii) Kp = 300, Ki = 100.
Code yang dibuat :
deno3 =
%Praktikum Sistem Kendali %
%Modul : 4 % 1 10 20
%Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
%Kelas : 13 TE 2 %
g3 =
num = [1];
den = [1 10 20]; 10 s + 400
g = tf(num,den) ---------------
k = feedback (g,1) s^2 + 10 s + 20
step(k,'b')
hold on
Kp = 300; Continuous-time transfer function.
Kp=400;
Ki=100;
k3 = numc=[Ki Kp];
numo=conv(numc, num)
10 s + 400 deno=den
---------------- g2=tf(numo, deno)
s^2 + 20 s + 420 k2=feedback (g2,1)
step(k2,'r')
hold on
Continuous-time transfer function.
Kp2 =600;
>> Ki2 =100;;
numc2=[Ki2 Kp2];
numo2=conv(numc2, num)
Hasil gambar : deno2=den
g3=tf(numo2, deno2)
k3=feedback (g3,1)
step(k3,'k')
hold on
Kp3 =300;
Ki3 =100;;
numc3=[Ki3 Kp3];
numo3=conv(numc3, num)
deno3=den
g4=tf(numo3, deno3)
k4=feedback (g4,1)
step(k4,'g')
hold on
stepinfo(k)
stepinfo(k2)
stepinfo(k3)
stepinfo(k4)
numo = k3 =
k2 = g4 =
numo2 = k4 =
ans =
RiseTime: 0.0215
SettlingTime: 0.0421
SettlingMin: 0.8575
SettlingMax: 0.9487
Overshoot: 0
Undershoot: 0
Peak: 0.9487
PeakTime: 0.2428
ans =
RiseTime: 0.0217
SettlingTime: 0.0407
SettlingMin: 0.8740 Kp Konstan.
SettlingMax: 0.9665
Code yang dibuat :
Overshoot: 0
Undershoot: 0 %Praktikum Sistem Kendali %
Peak: 0.9665 %Modul : 4 %
PeakTime: 0.2917 %Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
%Kelas : 13 TE 2 %
Kp3 =500; g2 =
Ki3 =500;;
numc3=[Ki3 Kp3]; 10 s + 500
numo3=conv(numc3, num) ---------------
deno3=den
s^2 + 10 s + 20
g4=tf(numo3, deno3)
k4=feedback (g4,1)
step(k4,'g') Continuous-time transfer function.
hold on
stepinfo(k) k2 =
stepinfo(k2)
stepinfo(k3)
stepinfo(k4) 10 s + 500
----------------
s^2 + 20 s + 520
k= g3 =
1 100 s + 500
--------------- ---------------
s^2 + 10 s + 21 s^2 + 10 s + 20
RiseTime: 0.0576
numo3 = SettlingTime: 0.3479
SettlingMin: 0.8964
500 500 SettlingMax: 1.1965
Overshoot: 24.4409
Undershoot: 0
deno3 = Peak: 1.1965
PeakTime: 0.1289
1 10 20
ans =
g4 =
struct with fields:
500 s + 500
---------------
RiseTime: 0.0217
s^2 + 10 s + 20
SettlingTime: 0.0424
Continuous-time transfer function. SettlingMin: 0.8658
SettlingMax: 0.9580
Overshoot: 0
k4 = Undershoot: 0
Peak: 0.9580
500 s + 500 PeakTime: 0.2100
-----------------
s^2 + 510 s + 520
ans =
Continuous-time transfer function.
struct with fields:
Kp3 = 300;
Kd3 = 10;
Ki3 = 100;
numc3 = [Kd3 Kp3 Ki3];
numo3 = conv(numc3, num)
deno3 = den
g4 = tf(numo3, deno3)
k4 = feedback (g4,1)
step(k4,'g')
hold on
stepinfo(k)
stepinfo(k2)
stepinfo(k3)
stepinfo(k4)
Tugas 3.
Kp konstan
Code yang dibuat :
numo = k3 =
k2 = g4 =
numo2 = k4 =
ans =
RiseTime: 7.4478
SettlingTime: 13.3988
SettlingMin: 0.8335
SettlingMax: 0.8409
Overshoot: 16.5831
Undershoot: 0
Peak: 0.9715
PeakTime: 0.1121
Tugas 4.
Code yang dibuat :
ans =
%Praktikum Sistem Kendali %
struct with fields: %Modul : 4 %
%Nama : Josua Marihot Panjaitan %
%NIM : 14S17048 %
RiseTime: 11.1295 %Kelas : 13 TE 2 %
SettlingTime: 19.9231
SettlingMin: 0.8335 num3 = [1];
SettlingMax: 0.8409 den3 = [1 2 0];
Overshoot: 17.7477
Tp = 1;
Undershoot: 0 p1 = [Tp 0.5];
Peak: 0.9812 denp1 = conv(den3, p1);
PeakTime: 0.0900 g6 = tf(num3,denp1)
k6 = feedback (g6,1)
step(k6,'b')
hold on
ans =
Tp2=1;
struct with fields: p2=[Tp2 0.25];
denp2 = conv(den3, p2);
g7 = tf(num3, denp2)
RiseTime: 5.5971
k7 = feedback (g7,1)
SettlingTime: 10.1277 step(k7,'r')
SettlingMin: 0.8336 hold on
SettlingMax: 0.8409
Overshoot: 15.4444 stepinfo(k6)
stepinfo(k7)
Undershoot: 0
Hasil keluaran setelah di-run : Overshoot: 52.8604
Undershoot: 0
>> Tugas_4 Peak: 1.5286
PeakTime: 5.2237
g6 =
1
ans =
-----------------
s^3 + 2.5 s^2 + s
struct with fields:
Continuous-time transfer function.
RiseTime: 1.6618
SettlingTime: 338.0693
k6 = SettlingMin: 0.1403
SettlingMax: 1.9071
1 Overshoot: 90.7113
--------------------- Undershoot: 0
s^3 + 2.5 s^2 + s + 1 Peak: 1.9071
PeakTime: 5.1572
Continuous-time transfer function.
>>
g7 =
Hasil gambar :
1
----------------------
s^3 + 2.25 s^2 + 0.5 s
k7 =
1
--------------------------
s^3 + 2.25 s^2 + 0.5 s + 1
ans =
IV. KESIMPULAN.
struct with fields:
Adapun kesimpulan yang didapatkan
RiseTime: 1.9210 pada praktikum ini adalah:
SettlingTime: 30.4230
SettlingMin: 0.7076
SettlingMax: 1.5286
a. Semakin besar atau semakin tinggi [6] Dorf, Richard.C. (Farid Ruskanda),
frekuensi cross-over, maka bandwith 1980, Sistem Pengaturan, Erlangga, Jakarta.
akan lebih besar.
[7] Mc. Graw Hill International Brok
b. Keberadaan kontroller dalam sebuah
Company, Singapore.
sistem kendali mempunyai kontribusi
yang sangat besar terhadap perilaku [8] Distefano, Joseph.J, et.al, Theory and
suatu sistem. Problems of Feedback and Control System,
c. Salah satu tugas komponen kontroller 1983, Schaum Outlines Series.
adalah mereduksi sinyal kesalahan, yaitu
perbedaan antara sinyal setting dan [9] Kuo, Benyamin.C, 1976, Automatic
sinyal aktual. Hal ini disesuaikan dengan Control Systems, Preutice Hall of India,
tujuan sistem kendali yang dimana New Delhi.
adalah mendaptkan sinyal aktual
senantiasa (diinginkan) sama dengan
sinyal setting.
d. Semakin cepat reaksi sistem mengikuti
sinyal aktual dan semakin kecil
kesalahan yang terjadi, semakin baiklah
kinerja sistem kendali yang diterapkan.
e. Karakteristik kontroller PID sangat
dipengaruhi oleh kontribusi besar dari
ketiga parameter P, I, dan D. Penyetelan
konstanta Kp, Ti, dan Td akan
mengakibatkan penonjolan sifat dari
masing-masing elemen.
V. REFERENSI
[1] Sulasno, Thomas, 1991, Dasar Sistem
Pengaturan, Satya Wacana, Semarang.
[2] Pakpahan, Sahat,, 1988, Kontrol
Otomatik Teori dan Penerapan, Erlangga,
Jakarta.
[3] Widodo, R.J, 1976, Sistem Pengaturan
Dasar, ITB.
[4] https://docplayer.info/30664627-
Praktikum-i-pengendali-pid.html.
[5] Ogata, Katshuhiko, 1997, Modern
Control Engineering, Preutice-Hall
International, Singapore.