Listing Simulasi Matlab
-
Upload
rico-afrinando -
Category
Documents
-
view
90 -
download
14
description
Transcript of Listing Simulasi Matlab
BAB II
PEMBAHASAN
2.1. Deskripsi sistem
o Fungsi alih lingkar terbuka
%numG=[100]denG=[1 4]numH=[1]denH=[1][num,den]=series(numG,denG,numH,denH)printsys=tf(num,den)
numG = 100denG = 1 4numH = 1denH = 1num = 0 100
den = 1 4
Transfer function: 100-----s + 4
o Fungsi alih lingkar tertutup %
numG=[100]denG=[1 4]numH=[1]denH=[1]disp('Sistem Alih Lingkar Tertutup')[num,den]=feedback(numG,denG,numH,denH,-1)%printsys=tf(num,den)
numG = 100
denG = 1 4
numH = 1
denH = 1
Sistem Alih Lingkar Tertutup
num = 0 100
den = 1 104Transfer function: 100-------s + 104
o Fungsi alih antara kesalahan terhadap masukan
syms sG=1/(s+4)H=1E=(1)/(1+G*H)
G = 1/(s + 4)
H = 1
E = 1/(1/(s + 4) + 1)
2.2. Performansi system lingkar terbuka dalam domain waktu tanpa pengendali
clcclear allclose all%disp ('Fungsi Alih')num = [ 100 ]den = [ 1 4 ]sys= tf (num,den)disp ('Perhitungan Konstanta Kesalahan')errortf(num,den)
Fungsi Alih
num =
100
den =
1 4
Transfer function: 100
-----s + 4 Perhitungan Konstanta KesalahanTipe Sistem adalah 0 Konstanta Kesalahan Posisi (Kp) adalah 25.0000 Konstanta Kesalahan Kecepatan (Kv) adalah 0.0000 Konstanta Kesalahan Percepatan (Ka) adalah 0.0000 Kesalahan Keadaan Mantap Untuk Masukan Undak adalah 0.0385 Kesalahan Keadaan Mantap Untuk Masukan Laju adalah Inf Kesalahan Keadaan Mantap Untuk Masukan Parabolik adalah Inf
2.3. Performansi system lingkar tertutup dalam domain waktu tanpa pengendali
o Plot grafik tanggapan peralihan sistem terhadap masukan impulsa satuan
num= [100]den= [1 104]sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%Out put sistem terhadap masukan impulseimpulse(num,den)grid ontitle('Tanggapan terhadap masukan impulse') num =
100
den =
1 104 Transfer function: 100-------s + 104 Performansi Sistem dalam Domain Waktu
y =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
o Plot grafik tanggapan peralihan sistem terhadap masukan undak satuan
num= [100]den= [1 104]sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%Out put sistem terhadap masukan undak satuanstep(num,den)grid ontitle('Tanggapan terhadap masukan undak satuan')
num =
100
den =
1 104
Transfer function: 100-------s + 104 Performansi Sistem dalam Domain Waktu
y =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
o Plot grafik tanggapan peralihan sistem terhadap masukan ramp satuan
num= [100]den= [1 4]sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%out put sistem terhadap masukan rampstep(num,den)grid ontitle('Tanggapan terhadap masukan ramp')
num =
100
den =
1 4
Transfer function: 100-----s + 4 Performansi Sistem dalam Domain Waktu
y = RiseTime: 0.5496 SettlingTime: 0.9781 SettlingMin: 22.5707 SettlingMax: 24.9993 Overshoot: 0 Undershoot: 0 Peak: 24.9993 PeakTime: 2.6227
o Plot grafik tanggapan peralihan sistem terhadap masukan eksponensial
clc
clear allclose all%% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')num= [100]den= [1 104]sys = tf(num,den)%% Tanggapan Sistem Terhadap Masukan Eksponesialt = 0:0.1:20;r1 = exp(-2*t);y1 = lsim(num,den,r1,t);plot(t,r1,'b',t,y1,'r');grid ontitle('Tanggapan Terhadap Masukan Eksponensial ')ylabel('Keluaran')xlabel('detik')text(0.20,0.7,'Masukan Eksponensial')text(1.8,0.38,'Keluaran y(t)')%% Performansi Sistem Dalam Domain Waktudisp('Performansi Sistem Dalam Domain Waktu')y = lsiminfo(y1)
Fungsi Alih Lingkar Tertutup
num =
100
den =
1 104
Transfer function: 100-------s + 104 Performansi Sistem Dalam Domain Waktu
y = SettlingTime: 21.5848 Min: 0 MinTime: 1 Max: 0.8040 MaxTime: 2
2.4. Performansi sistem lingkar terbuka dalam domain frekuensi tanpa pengendali
numG= [100 0]denG= [1 4]disp('fungsi alih lingkar terbuka');sys=tf(num,den)bode(sys)disp('performasi sistem lingkar terbuka dalam domain frekuensi')y=allmargin(sys)numG = 100 0
denG =
1 4
fungsi alih lingkar terbuka Transfer function: 100-----s + 4 performasi sistem lingkar terbuka dalam domain frekuensiy = GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 92.2926 PMFrequency: 99.9127 DelayMargin: 0.0161 DMFrequency: 99.9127 Stable: 1
`2.5. Performansi system lingkar tertutup dalam domain frekuensi tanpa
pengendali
clc
num = [100];den = [1 104];T = tf(num,den)bode (T)[mag,pha]=bode(num,den);Mp = max(mag)BW = Bandwidth(T)
Transfer function: 100-------s + 104
Mp =
0.9615
BW =
103.7527
2.6. Performansi kestabilan sistem tanpa pengendali
Persamaan karakteristik
clcclear allclose all%num = [ 100 ];den = [ 1 4 ];%% Fungsi Alih Lingkar Terbukadisp('Fungsi Alih Lingkar Terbuka')sys1 = tf(num,den)%% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')T = feedback(sys1,1)%% Akar - Akar Persamaan Karakteristikdisp('Akar - Akar Persamaan Karakteristik')damp(T)%% Posisi Akar - Akar Persamaan Karakteristiksgridpzmap(T)grid on
Fungsi Alih Lingkar Terbuka
Transfer function:
100
-----
s + 4
Fungsi Alih Lingkar Tertutup
Transfer function:
100
-------
s + 104
Akar - Akar Persamaan Karakteristik
Eigenvalue Damping Freq. (rad/s)
-1.04e+002 1.00e+000 1.04e+002
-Kriteria Routh
clcclear allclose all%% Persamaan Karakteristikdisp('Persamaan Karakteristik')p = [ 0 100 400 ]%% Periksa Kestabilan Dengan Kriteria Routh
disp('Periksa Kestabilan Dengan Kriteria Routh')routh(p)
Persamaan Karakteristik
p =
0 100 400
Periksa Kestabilan Dengan Kriteria Routh Routh-Hurwitz Array 0 400 100 0 400 0
System is stable
- Kriteria Hurtwith
clcclear allclose all%kestabilan sistemdisp ('PERSAMAAN KARAKTERISTIK')P = [ 0 100 400 ]disp('akar-akar persamaan karakteristik')K = roots(P)disp ('KRITERIA HURWITZ')hurwitz (P)
PERSAMAAN KARAKTERISTIK
P =
0 100 400
akar-akar persamaan karakteristik
K =
-4
KRITERIA HURWITZ 100 40000
System is stable
2.7. Diagram tempat kedudukan akar tanpa pengendali
clear allclose alldisp('Fugsi Alih')num = [ 100 ]den = [ 1 4 ]sys = tf(num,den)%Diagram tempat kedudukan akarfigurerlocus(num,den)grid on
Fugsi Alih
num =
100
den =
1 4
Transfer function: 100-----s + 4
2.8. Kriteria perancangan dalam domain waktu dan domain frekuensi
a.Domain waktu
Tr = 0.1Mp < 5 % = 5 – 10 %Tp = 0.2 sTs = 0.5 s
b.Domain Frekuensi
Margin fasa = 30o - 60oBandwith = 4 rad/sMagnetude puncak = < 0.5
2.9. Perancangan Pengendali dan Kompensator Dengan Pendekatan Tempat Kedudukan Akar
o Proporsional (P)
clcclear allclose all%% pengendali proporsional% Pendekatan Tempat Kedudukan Akar num = [ 100 ]; den = [1 4];zeta = 0.09;%% Sistem Sebelum Pemasangan Pengendali Proporsionaldisp('Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional ')GH_op = tf(num,den)disp('Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional ')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%% Performansi Sistem Sebelum Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Sebelum Pemasangan Pengendali Proporsional ')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsionaldisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional')damp(GH_cl)%% Perancangan Pengendali Proporsional [numopen,denopen,dencl]=Pengendali_P_RL(num,den,zeta);%% Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsionaldisp('Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional')GH = tf(numopen,denopen)%
% Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsionaldisp('Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Pengendali Proporsional disp('Performansi Sistem Setelah Pemasangan Pengendali Proporsional ')y2 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsionaldisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional')damp(T)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Pengendali Proporsionalfiguresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Pengendali Proporsional')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Pengendali Proporsional')grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah% Pemasangan Pengendali Proporsional figuresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Pengendali Proporsional')subplot(212)t1 = 0:0.0001:5; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid on
title('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Pengendali Proporsional') %% Tempat Kedudukan Akar Sebelum dan Sesudah Pemasangan Pengendali Proporsionalfiguresubplot(211)rlocus(num,den)title('Tempat Kedudukan Akar Sebelum Pemasangan Pengendali Proporsional ')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on subplot(212)rlocus(numopen,denopen)title('Tempat Kedudukan Akar Setelah Pemasangan Pengendali Proporsional ')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional Transfer function: 100-----s + 4 Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional Transfer function: 100-------s + 104 Performansi Sistem Sebelum Pemasangan Pengendali Proporsional
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0
Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Warning: Nilai Zeta tidak berada dalam kedudukan akarError in ==> Pengendali_P_RL at 2c1=0:.1:10; c2=11:1:100; c3=110:10:1000;
??? Output argument "numopen" (and maybe others) not assigned during call to "E:\tugas besar\kontrol\outline9\Pengendali_P_RL.m>Pengendali_P_RL".
Error in ==> proporsional at 27[numopen,denopen,dencl]=Pengendali_P_RL(num,den,zeta);
o Proporsional Integral (PI)
clcclear allclose all% proposional integral% Pendekatan Tanggapan Tempat Kedudukan Akar num = [100]; den = [1 4];s1 = -1.85 ;% % Sistem Sebelum Pemasangan Pengendali Proporsional Integraldisp('Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional Integral')GH_op = tf(num,den)disp('Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional Integral ')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%% Performansi Sistem Sebelum Pemasangan Pengendali Proporsional Integral disp('Performansi Sistem Sebelum Pemasangan Pengendali Proporsional Integral ')
y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali% Proporsional Integraldisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional Integral')damp(GH_cl)%% Perancangan Pengendali Proporsional Integral [numopen,denopen,dencl]=Pengendali_PI_RL(num,den,s1);%% Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional Integraldisp('Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional Integral')GH = tf(numopen,denopen)%% Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional Integraldisp('Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Pengendali Proporsional Integraldisp('Performansi Sistem Setelah Pemasangan Pengendali Proporsional Integral ')y2 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali% Proporsional Integraldisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional Integral')damp(T)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Pengendali% Proporsional Integralfiguresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Pengendali Proporsional Integral')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Pengendali Proporsional Integral')
grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah% Pemasangan Pengendali Proporsional Integralfiguresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Pengendali Proporsional Integral')subplot(212)t1 = 0:0.0001:20; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Pengendali Proporsional Integral') %% Tempat Kedudukan Akar Sebelum dan Sesudah Pemasangan Pengendali% Proporsional Integralfiguresubplot(211)rlocus(num,den)title('Tempat Kedudukan Akar Sebelum Pemasangan Pengendali Proporsional Integral ')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on subplot(212)rlocus(numopen,denopen)title('Tempat Kedudukan Akar Setelah Pemasangan Pengendali Proporsional Integral')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional Integral Transfer function: 100
-----s + 4 Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional Integral Transfer function: 100-------s + 104 Performansi Sistem Sebelum Pemasangan Pengendali Proporsional Integral
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional Integral Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Masukan Nilai dari Zero Pengendali -> 2
Pengendali Proporsional Integral Gc = 0.265167 + 0.530333/s
Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional Integral Transfer function:26.52 s + 53.03--------------- s^2 + 4 s
Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional Transfer function: 26.52 s + 53.03---------------------s^2 + 30.52 s + 53.03 Performansi Sistem Setelah Pemasangan Pengendali Proporsional Integral
y2 =
RiseTime: 0.1093 SettlingTime: 0.7508 SettlingMin: 0.9257 SettlingMax: 1.0000 Overshoot: 0 Undershoot: 0 Peak: 1.0000 PeakTime: 4.3988
Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional Integral Eigenvalue Damping Freq. (rad/s) -1.85e+000 1.00e+000 1.85e+000 -2.87e+001 1.00e+000 2.87e+001
o Proporsional Diferensial (PD)
o Proporsional Integral Diferensial (PID)
clcclear allclose all% proposional integral diferensial% Pendekatan Tempat Kedudukan Akar num = [100]; den = [1 4];s1 = -250.09% % Sistem Sebelum Pemasangan Pengendali Proporsional Integral Diferensial disp('Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional Integral Diferensial')GH_op = tf(num,den)disp('Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional Integral Diferensial ')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%
% Performansi Sistem Sebelum Pemasangan Pengendali Proporsional Integral Diferensial disp('Performansi Sistem Sebelum Pemasangan Pengendali Proporsional Integral Diferensial ')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali% Proporsional Integral Diferensialdisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional Integral Diferensial')damp(GH_cl)%% Perancangan Pengendali Proporsional Integral Integral Diferensial [numopen,denopen,dencl]=Pengendali_PID_RL(num,den,s1);%% Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional% Integral Diferensialdisp('Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional Integral Diferensial')GH = tf(numopen,denopen)%% Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional% Integral Diferensialdisp('Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional Integral Diferensial')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Pengendali Proporsional Integral Diferensialdisp('Performansi Sistem Setelah Pemasangan Pengendali Proporsional Integral Diferensial ')y2 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali% Proporsional Integral Diferensialdisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional Integral Diferensial')damp(T)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Pengendali% Proporsional Integral Diferensialfigure
subplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Pengendali Proporsional Integral Diferensial')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Pengendali Proporsional Integral Diferensial')grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah% Pemasangan Pengendali Proporsional Integral Diferensialfiguresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Pengendali Proporsional Integral Diferensial')subplot(212)t1 = 0:0.0001:10; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Pengendali Proporsional Integral Diferensial') %% Tempat Kedudukan Akar Sebelum dan Sesudah Pemasangan Pengendali% Proporsional Integral Diferensialfiguresubplot(211)rlocus(num,den)title('Tempat Kedudukan Akar Sebelum Pemasangan Pengendali Proporsional Integral Diferensial ')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on subplot(212)rlocus(numopen,[denopen 0 0])
title('Tempat Kedudukan Akar Setelah Pemasangan Pengendali Proporsional Integral Diferensial')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on
s1 =
-250.0900
Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional Integral Diferensial Transfer function: 100-----s + 4 Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional Integral Diferensial Transfer function: 100-------s + 104 Performansi Sistem Sebelum Pemasangan Pengendali Proporsional Integral Diferensial
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional Integral Diferensial
Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Nilai Konstanta KI -> 1 Nilai Kontanta KP : 1
Pengendali PID Gc = 1 + 1/s + -0.00585749s
Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional Integral Diferensial Transfer function:-0.5857 s^2 + 100 s + 100------------------------- s^2 + 4 s Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional Integral Diferensial Transfer function:-0.5857 s^2 + 100 s + 100-------------------------0.4143 s^2 + 104 s + 100 Performansi Sistem Setelah Pemasangan Pengendali Proporsional Integral Diferensial
y2 =
RiseTime: 0.0095 SettlingTime: 0.0198 SettlingMin: 0.8717 SettlingMax: 0.9978 Overshoot: 0 Undershoot: 141.3993 Peak: 1.4140 PeakTime: 0
Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional Integral Diferensial Eigenvalue Damping Freq. (rad/s) -9.65e-001 1.00e+000 9.65e-001 -2.50e+002 1.00e+000 2.50e+002
o Kompensator Mendahului
clcclear allclose all% kompensator mendahului%% Pendekatan Tempat Kedudukan Akar num = [100]; den = [1 4];s1 = -110.0;%% Sistem Sebelum Kompensasi disp('Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Mendahului')GH_op = tf(num,den)disp('Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Mendahului')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%% Performansi Sistem Sebelum Pemasangan Kompensator Mendahului
disp('Performansi Sistem Sebelum Pemasangan Pengendali Kompensator Mendahului')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahuluidisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahului')damp(GH_cl)%% Perancangan Kompensator Mendahului [numopen,denopen,dencl]=Kompensator_Lead_RL(num,den,s1);%% Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Mendahuluidisp('Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Mendahului ')GH = tf(numopen,denopen)%% Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Mendahuluidisp('Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Mendahului ')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Kompensator Mendahuluidisp('Performansi Sistem Setelah Pemasangan Kompensator Mendahului')y2 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Mendahuluidisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Mendahului')damp(T)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Kompensator Mendahuluifiguresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Kompensator Mendahului')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Kompensator Mendahului')grid on
%% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah Pemasangan Kompensator Mendahuluifiguresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Kompensator Mendahului')subplot(212)t1 = 0:0.0001:5.00; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Kompensator Mendahului')%% Tempat Kedudukan Akar Sebelum dan Sesudah Pemasangan Kompensator Mendahuluifiguresubplot(211)rlocus(num,den)title('Tempat Kedudukan Akar Sebelum Pemasangan Kompensator Mendahului')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on subplot(212)rlocus(numopen,denopen)title('Tempat Kedudukan Akar Setelah Pemasangan Kompensator Mendahului')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Mendahului Transfer function: 100-----s + 4
Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Mendahului Transfer function: 100-------s + 104 Performansi Sistem Sebelum Pemasangan Pengendali Kompensator Mendahului
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahului Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Nilai DC Gain -> 1
Besar Magnitude Zero Kompensator -> 1 Gc(0) = 1, Gc = 1.05942(s + 1)/(s + 1.05942)
Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Mendahului Transfer function: 105.9 s + 105.9---------------------s^2 + 5.059 s + 4.238 Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Mendahului
Transfer function: 105.9 s + 105.9-------------------s^2 + 111 s + 110.2 Performansi Sistem Setelah Pemasangan Kompensator Mendahului
y2 =
RiseTime: 0.0199 SettlingTime: 0.0349 SettlingMin: 0.8695 SettlingMax: 0.9630 Overshoot: 0.1472 Undershoot: 0 Peak: 0.9630 PeakTime: 0.0954Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Mendahului Eigenvalue Damping Freq. (rad/s) -1.00e+000 1.00e+000 1.00e+000 -1.10e+002 1.00e+000 1.10e+002
o Kompensator Ketinggalan
clcclear allclose all
% kompensator ketinggalan%% Pendekatan Tempat Kedudukan Akar z = [0];p = [0 0 -4];k = 100;[num,den] = zp2tf(z,p,k);zeta = 0.985;%% Sistem Sebelum Kompensasi disp('Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Ketinggalan ')GH_op = tf(num,den)disp('Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Ketinggalan ')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%% Performansi Sistem Sebelum Pemasangan Pengendali Kompensator Ketinggalan disp('Performansi Sistem Sebelum Pemasangan Pengendali Kompensator Ketinggalan ')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahuluidisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Ketinggalan')damp(GH_cl)%% Perancangan Kompensator Ketinggalan [numopen,denopen,dencl]=Kompensator_Lag_RL(num,den,zeta);%% Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Ketinggalandisp('Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Ketinggalan')GH = tf(numopen,denopen)%% Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Ketinggalandisp('Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Ketinggalan')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Kompensator Ketinggalan disp('Performansi Sistem Setelah Pemasangan Kompensator Ketinggalan ')y2 = stepinfo(T)%
% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator% Ketinggalan disp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Ketinggalan')damp(T)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Kompensator% Ketinggalan figuresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Kompensator Ketinggalan')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Kompensator Ketinggalan')grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah% Pemasangan Kompensator Ketinggalan figuresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Kompensator Ketinggalan ')subplot(212)t1 = 0:0.0001:5; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Kompensator Ketinggalan ') %% Tempat Kedudukan Akar Sebelum dan Sesudah Pemasangan Kompensator% Ketinggalan figuresubplot(211)rlocus(num,den)title('Tempat Kedudukan Akar Sebelum Pemasangan Kompensator Ketinggalan ')
xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on subplot(212)rlocus(numopen,denopen)title('Tempat Kedudukan Akar Setelah Pemasangan Kompensator Ketinggalan')xlabel('Sumbu Real')ylabel('Sumbu Imaginer')grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Ketinggalan Transfer function: 100 s-----------s^3 + 4 s^2 Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Ketinggalan Transfer function: 100 s-------------------s^3 + 4 s^2 + 100 s Performansi Sistem Sebelum Pemasangan Pengendali Kompensator Ketinggalan
y1 =
RiseTime: 0.8222 SettlingTime: 1.1191 SettlingMin: 0.9915 SettlingMax: 1.0171 Overshoot: 1.7134 Undershoot: 0 Peak: 1.0171 PeakTime: 1.7269
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Ketinggalan Eigenvalue Damping Freq. (rad/s)
0.00e+000 -1.00e+000 0.00e+000 -2.00e+000 + 9.80e+000i 2.00e-001 1.00e+001 -2.00e+000 - 9.80e+000i 2.00e-001 1.00e+001 Nilai Gain K -> 1Magnitude Zero Kompensator -> 1 Nilai Gain K = 1 Gc(0) = 1, Gc = 0(s + 1)/(s + 0)
Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Ketinggalan Transfer function:0 Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Ketinggalan Transfer function:0 Performansi Sistem Setelah Pemasangan Kompensator Ketinggalan
y2 =
RiseTime: 0 SettlingTime: 0 SettlingMin: 0 SettlingMax: 0 Overshoot: Inf Undershoot: 0 Peak: 0 PeakTime: 0
Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Ketinggalan Eigenvalue Damping Freq. (rad/s) 0.00e+000 -1.00e+000 0.00e+000 0.00e+000 -1.00e+000 0.00e+000 0.00e+000 -1.00e+000 0.00e+000 -4.00e+000 1.00e+000 4.00e+000
2.10. Performansi system lingkar terbuka dalam domain waktu dengan pengendali
clear allclose alldisp ('')num = [105.9 105.9];den = [1 5.059 4.328];sys = tf(num,den) %perhitungan Konstanta Kesalahandisp ('Perhitungan Konstanta Kesalahan')errortf(num,den)
Transfer function: 105.9 s + 105.9---------------------s^2 + 5.059 s + 4.328 Perhitungan Konstanta KesalahanTipe Sistem adalah 0 Konstanta Kesalahan Posisi (Kp) adalah 24.4686 Konstanta Kesalahan Kecepatan (Kv) adalah 0.0000
Konstanta Kesalahan Percepatan (Ka) adalah 0.0000 Kesalahan Keadaan Mantap Untuk Masukan Undak adalah 0.0393 Kesalahan Keadaan Mantap Untuk Masukan Laju adalah Inf Kesalahan Keadaan Mantap Untuk Masukan Parabolik adalah Inf
2.11. Performansi system lingkar tertutup dalam domain waktu dengan pengendali
o Plot grafik tanggapan peralihan sistem terhadap masukan impulsa satuan
num= [105.9 105.9]den= [1 111 110.2]sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%Out put sistem terhadap masukan impulseimpulse(num,den)grid ontitle('Tanggapan terhadap masukan impulse')
num =
105.9000 105.9000
den =
1.0000 111.0000 110.2000
Transfer function: 105.9 s + 105.9-------------------s^2 + 111 s + 110.2 Performansi Sistem dalam Domain Waktu
y =
RiseTime: 0.0198 SettlingTime: 0.0348
SettlingMin: 0.8692 SettlingMax: 0.9626 Overshoot: 0.1655 Undershoot: 0 Peak: 0.9626 PeakTime: 0.0954
o Plot grafik tanggapan peralihan sistem terhadap masukan undak satuan
num= [105.9 105.9]den= [1 111 110.2] sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%Out put sistem terhadap masukan undak satuanstep(num,den)grid ontitle('Tanggapan terhadap masukan undak satuan')
num =
105.9000 105.9000
den =
1.0000 111.0000 110.2000
Transfer function: 105.9 s + 105.9-------------------s^2 + 111 s + 110.2 Performansi Sistem dalam Domain Waktu
y =
RiseTime: 0.0198 SettlingTime: 0.0348 SettlingMin: 0.8692 SettlingMax: 0.9626 Overshoot: 0.1655 Undershoot: 0 Peak: 0.9626 PeakTime: 0.0954
o Plot grafik tanggapan peralihan sistem terhadap masukan ramp satuan
num= [105.9 105.9]den= [1 111 110.2]sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%out put sistem terhadap masukan rampstep(num,den)grid ontitle('Tanggapan terhadap masukan ramp')
num =
105.9000 105.9000
den =
1.0000 111.0000 110.2000
Transfer function: 105.9 s + 105.9-------------------s^2 + 111 s + 110.2 Performansi Sistem dalam Domain Waktu
y =
RiseTime: 0.0198 SettlingTime: 0.0348 SettlingMin: 0.8692 SettlingMax: 0.9626 Overshoot: 0.1655 Undershoot: 0
Peak: 0.9626 PeakTime: 0.0954
o Plot grafik tanggapan peralihan sistem terhadap masukan eksponensial
clcclear allclose all%% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')num= [105.9 105.9]den= [1 111 110.2]sys = tf(num,den)%% Tanggapan Sistem Terhadap Masukan Eksponesialt = 0:0.1:20;r1 = exp(-2*t);y1 = lsim(num,den,r1,t);plot(t,r1,'b',t,y1,'r');grid ontitle('Tanggapan Terhadap Masukan Eksponensial ')
ylabel('Keluaran')xlabel('detik')text(0.20,0.7,'Masukan Eksponensial')text(1.8,0.38,'Keluaran y(t)')%% Performansi Sistem Dalam Domain Waktudisp('Performansi Sistem Dalam Domain Waktu')y = lsiminfo(y1)
Fungsi Alih Lingkar Tertutup
num =
105.9000 105.9000
den =
1.0000 111.0000 110.2000
Transfer function: 105.9 s + 105.9-------------------s^2 + 111 s + 110.2 Performansi Sistem Dalam Domain Waktu
y =
SettlingTime: 21.5244 Min: -7.9507e-007 MinTime: 71 Max: 0.8039 MaxTime: 2
2.12. Performansi system lingkar terbuka dalam domain frekuensi dengan pengendali
clear allclose allnum = [105.9 105.9]den = [1 5.059 4.328]disp('fungsi alih lingkar terbuka');sys=tf(num,den)bode(sys)disp('performasi sistem lingkar terbuka dalam domain frekuensi')y=allmargin(sys)
num =
105.9000 105.9000
den =
1.0000 5.0590 4.3280
fungsi alih lingkar terbuka Transfer function: 105.9 s + 105.9---------------------s^2 + 5.059 s + 4.328 performasi sistem lingkar terbuka dalam domain frekuensi
y =
GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 92.1969 PMFrequency: 105.8126 DelayMargin: 0.0152 DMFrequency: 105.8126 Stable: 1
2.13. Performansi system lingkar tertutup dalam domain frekuensi dengan pengendali
clear allclose allnum= [105.9 105.9]den= [1 111 110.2]disp('fungsi alih lingkar tertutup');sys=tf(num,den)bode(sys)disp('performasi sistem lingkar terbuka dalam domain frekuensi')[mag,pha]=bode(num,den);Mp=max(mag)BW=Bandwidth(sys)
num =
105.9000 105.9000
den =
1.0000 111.0000 110.2000
fungsi alih lingkar tertutup Transfer function: 105.9 s + 105.9-------------------s^2 + 111 s + 110.2 performasi sistem lingkar terbuka dalam domain frekuensi
Mp =
0.9622
BW =
110.1403
2.14. Performansi kestabilan sistem dengan pengendali
o Persamaan karakteristik
clear allclose alldisp('Persamaan Karakteristik')P = [1 111 110.2]disp('akar - akar persamaan karakteristik')K = roots(P)
P =
1.0000 111.0000 110.2000
akar - akar persamaan karakteristik
K =
-109.9982 -1.0018
o Kriteria Routh
clear allclose all% disp ('persamaan karakteristik')P = [1 111 110.2]%disp ('Periksa kestabilan dengan kriteria routh')routh (P)
persamaan karakteristik
P =
1.0000 111.0000 110.2000
Periksa kestabilan dengan kriteria routh Routh-Hurwitz Array 1.0000e+000 1.1020e+002 1.1100e+002 0 1.1020e+002 0
System is stable
o Kriteria Hurtwith
clear allclose all%kestabilan sistemdisp ('PERSAMAAN KARAKTERISTIK')P = [1 111 110.2]disp('akar-akar persamaan karakteristik')K = roots(P)disp ('KRITERIA HURWITZ')hurwitz (P)
PERSAMAAN KARAKTERISTIK
P =
1.0000 111.0000 110.2000
akar-akar persamaan karakteristik
K =
-109.9982 -1.0018
KRITERIA HURWITZ 1.0e+004 *
0.0111 1.2232
System is stable
2.15. Diagram tempat kedudukan akar dengan pengendali
clear allclose all% Terbukanum = [105.9 105.9]den = [1 5.059 4.328] sys = tf(num,den);%% Diagram Tempat Kedudukan Akarlocus(num,den); rlocus (num,den) grid on
num =
105.9000 105.9000
den =
1.0000 5.0590 4.3280
clear allclose all% Tertutupnum= [105.9 105.9]den= [1 111 110.2] sys = tf(num,den);%% Diagram Tempat Kedudukan Akarlocus(num,den); rlocus (num,den) grid on
num =
105.9000 105.9000
den =
1.0000 111.0000 110.2000
2.16. Perancangan Pengendali dan Kompensator Dengan Pendekatan Tanggapan Frekuensi
o Proporsional (P)
clcclear allclose all% proporsional% Pendekatan Tanggapan Frekuensi num = [ 100 ]; den = [1 4 ];% % Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional disp('Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional')GH_op = tf(num,den)%
% Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional disp('Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%% Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Proporsional')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsionaldisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional')damp(GH_cl)%% Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum % Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum Pemasangan Pengendali Proporsional')y2 = allmargin(GH_op)%% Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum% Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum Pemasangan Pengendali Proporsional')w = 0 :0.1 : 1000;[M1,ph1] =bode(GH_cl,w);frqspec(w,M1)%% Perancangan Pengendali Proporsional[numopen,denopen,dencl]= Pengendali_P_RF(num,den);%% Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsionaldisp('Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional')GH = tf(numopen,denopen)
%% Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsionaldisp('Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Setelah Pemasangan Pengendali Proporsional')y3 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsionaldisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional')damp(T) % Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah % Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah Pemasangan Pengendali Proporsional')y4 = allmargin(GH)%% Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah% Pemasangan Pengendali Proporsionaldisp('Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah Pemasangan Pengendali Proporsional')% w = 0 :0.1 : 1000;[M2,ph2] =bode(T,w);frqspec(w,M2)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Pengendali Proporsionalfiguresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Pengendali Proporsional')grid on
subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Pengendali Proporsional')grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah Pemasangan Pengendali Proporsionalfiguresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Pengendali Proporsional')subplot(212)t1 = 0:0.0001:20.00; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Pengendali Proporsional')%% Diagram Bode Sebelum dan Sesudah Pemasangan Pengendali Proporsionalfiguresubplot(211)margin(num,den)grid on subplot(212)margin(numopen,denopen)grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Pengendali Proporsional Transfer function: 100-----s + 4
Sistem Lingkar Tertutup Sebelum Pemasangan Pengendali Proporsional Transfer function: 100-------s + 104 Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Proporsional
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Pengendali Proporsional Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum Pemasangan Pengendali Proporsional
y2 =
GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 92.2926 PMFrequency: 99.9127 DelayMargin: 0.0161 DMFrequency: 99.9127 Stable: 1
Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum Pemasangan Pengendali ProporsionalBandwidth = 104
Sistem Sebelum Pemasangan Pengendali Proporsional Gain Margin = Inf Gain crossover w = NaNPhase Margin = Inf Phase crossover w = NaN
Konstanta Kp -> 0.3Gain Margin dan Phase Margins Setelah Pemasangan Pengendali Proporsional Gain Margin = Inf Gain crossover w = 29.7Phase Margin = 97.7 Phase crossover w = NaN
Bandwidth = 34
Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional Eigenvalue Damping Freq. (rad/s) -3.40e+001 1.00e+000 3.40e+001 Sistem Lingkar Terbuka Setelah Pemasangan Pengendali Proporsional Transfer function: 30-----s + 4 Sistem Lingkar Tertutup Setelah Pemasangan Pengendali Proporsional Transfer function: 30------s + 34 Performansi Sistem Setelah Pemasangan Pengendali Proporsional
y3 =
RiseTime: 0.0647 SettlingTime: 0.1151 SettlingMin: 0.7966 SettlingMax: 0.8823 Overshoot: 0 Undershoot: 0 Peak: 0.8823 PeakTime: 0.3085
Akar - Akar Persamaan Karakteristik Setelah Pemasangan Pengendali Proporsional Eigenvalue Damping Freq. (rad/s) -3.40e+001 1.00e+000 3.40e+001 Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah Pemasangan Pengendali Proporsional
y4 =
GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 97.6647 PMFrequency: 29.7226 DelayMargin: 0.0573 DMFrequency: 29.7226 Stable: 1
Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah Pemasangan Pengendali ProporsionalBandwidth = 34
o Proporsional Integral (PI)
o Proporsional Diferensial (PD)
o Proporsional Integral Diferensial (PID)
o Kompensator Mendahului
clcclear allclose all% kompensator mendahului% Pendekatan Tanggapan Frekuensi numG = [ 100 ]; denG = [ 1 4 ];%% Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Mendahuluidisp('Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Mendahului')GH_op = tf(numG,denG)%
% Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Mendahuluidisp('Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Mendahului')[num,den] = cloop(numG,denG,-1);GH_cl = tf(num,den)%% Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Kompensator Mendahuluidisp('Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Kompensator Mendahului')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahuluidisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahului')damp(GH_cl) % Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum % Pemasangan Kompensator Mendahuluidisp('Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum Pemasangan Kompensator Mendahului')y2 = allmargin(GH_op)%% Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum% Pemasangan Kompensator Mendahului disp('Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum Pemasangan Kompensator Mendahului')w = 0 :0.1 : 1000;[M1,ph1] =bode(GH_cl,w);frqspec(w,M1)%% Perancangan Kompensator Mendahului [numopen,denopen,dencl]=Kompensator_Lead_RF(num,den);%% Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Mendahuluidisp('Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Mendahului ')GH = tf(numopen,denopen)%% Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Mendahuluidisp('Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Mendahului ')T = tf(numopen,dencl)
%% Performansi Sistem Setelah Pemasangan Kompensator Mendahuluidisp('Performansi Sistem Setelah Pemasangan Kompensator Mendahului')y3 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Mendahuluidisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Mendahului')damp(T) % Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah % Pemasangan Kompensator Mendahuluidisp('Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah Pemasangan Kompensator Mendahului')y4 = allmargin(GH)%% Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah% Pemasangan Kompensator Mendahului disp('Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah Pemasangan Kompensator Mendahului')% w = 0 :0.1 : 1000;[M2,ph2] =bode(T,w);frqspec(w,M2)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Kompensator Mendahuluifiguresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Kompensator Mendahului')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Kompensator Mendahului')grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah Pemasangan Kompensator Mendahuluifiguresubplot(211)t = 0:0.01:20.00; [y,x,t] = step(num,den,t);
plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Kompensator Mendahului')subplot(212)t1 = 0:0.0001:5.00; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Kompensator Mendahului')%% Diagram Bode Sebelum dan Sesudah Pemasangan Kompensator Mendahuluifiguresubplot(211)margin(num,den)grid on subplot(212)margin(numopen,denopen)grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Mendahului Transfer function: 100-----s + 4 Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Mendahului Transfer function: 100-------s + 104 Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Kompensator Mendahului
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0
Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Mendahului Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum Pemasangan Kompensator Mendahului
y2 =
GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 92.2926 PMFrequency: 99.9127 DelayMargin: 0.0161 DMFrequency: 99.9127 Stable: 1
Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum Pemasangan Kompensator MendahuluiWarning: Could not find an exact (case-sensitive) match for 'frqspec'.E:\toolbox complete\Saadat hadi Matlab\Frqspec.m is a case-insensitive match and will be used instead.You can improve the performance of your code by using exactname matches and we therefore recommend that you update yourusage accordingly. Alternatively, you can disable this warning usingwarning('off','MATLAB:dispatcher:InexactCaseMatch').This warning will become an error in future releases. > In Contoh_9_1 at 36Bandwidth = 104
Nilai DC Gain Kompensator -> 0.1Phase Margin Diinginkan -> 1
Phase does not cross (-180 + P.M.). Error in ==> Kompensator_Lead_RF at 2r=abs(roots(den));
??? Output argument "numopen" (and maybe others) not assigned during call to "E:\tugas besar\kontrol\outline
16\Kompensator_Lead_RF.m>Kompensator_Lead_RF".
Error in ==> Contoh_9_1 at 39[numopen,denopen,dencl]=Kompensator_Lead_RF(num,den);
o Kompensator Ketinggalan
clcclear allclose all% kompensator ketinggalan% Pendekatan Tanggapan Frekuensinum = [ 100 ]; den = [1 4];%% Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Ketinggalandisp('Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Ketinggalan')GH_op = tf(num,den)%% Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Ketinggalandisp('Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Ketinggalan')[num_op,den_op] = cloop(num,den,-1);GH_cl = tf(num_op,den_op)%% Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Kompensator Ketinggalandisp('Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Kompensator Ketinggalan')y1 = stepinfo(GH_cl)%% Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Ketinggalandisp('Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Ketinggalan')damp(GH_cl) % Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum % Pemasangan Kompensator Ketinggalandisp('Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum Pemasangan Kompensator Ketinggalan')y2 = allmargin(GH_op)%% Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum% Pemasangan Kompensator Ketinggalandisp('Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum Pemasangan Kompensator Ketinggalan')w = 0 :0.1 : 1000;[M1,ph1] =bode(GH_cl,w);frqspec(w,M1)
%% Perancangan Kompensator Ketinggalan [numopen,denopen,dencl]=Kompensator_Lag_RF(num,den);%% Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Ketinggalandisp('Sistem Lingkar Terbuka Setelah Pemasangan Kompensator Ketinggalan ')GH = tf(numopen,denopen)%% Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Ketinggalandisp('Sistem Lingkar Tertutup Setelah Pemasangan Kompensator Ketinggalan ')T = tf(numopen,dencl)%% Performansi Sistem Setelah Pemasangan Kompensator Ketinggalandisp('Performansi Sistem Setelah Pemasangan Kompensator Ketinggalan')y3 = stepinfo(T)%% Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Ketinggalandisp('Akar - Akar Persamaan Karakteristik Setelah Pemasangan Kompensator Ketinggalan')damp(T) % Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah % Pemasangan Kompensator Ketinggalandisp('Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Setelah Pemasangan Kompensator Ketinggalan')y4 = allmargin(GH)%% Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah% Pemasangan Kompensator Ketinggalandisp('Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Setelah Pemasangan Kompensator Ketinggalan')% w = 0 :0.1 : 1000;[M2,ph2] =bode(T,w);frqspec(w,M2)%% Letak Pole Zero Sistem Lingkar Tertutup Tanpa dan Dengan Kompensator Ketinggalanfiguresubplot(211)pzmap(GH_cl)title('Letak Pole Zero Sistem Lingkar Tertutup Tanpa Kompensator Ketinggalan')grid on subplot(212)pzmap(T)title('Letak Pole Zero Sistem Lingkar Tertutup Dengan Kompensator Ketinggalan')grid on %% Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum dan Setelah Pemasangan Kompensator Ketinggalanfiguresubplot(211)
t = 0:0.01:20.00; [y,x,t] = step(num_op,den_op,t);plot(t,y,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Sebelum Pemasangan Kompensator Ketinggalan')subplot(212)t1 = 0:0.0001:20.00; [y1,x1,t1] = step(numopen,dencl,t1);plot(t1,y1,'k-');grid ontitle('Tanggapan Sistem Terhadap Masukan Undak Satuan Setelah Pemasangan Kompensator Ketinggalan')%% Diagram Bode Sebelum dan Sesudah Pemasangan Kompensator Ketinggalanfiguresubplot(211)margin(num,den)grid on subplot(212)margin(numopen,denopen)grid on
Sistem Lingkar Terbuka Sebelum Pemasangan Kompensator Ketinggalan Transfer function: 100-----s + 4 Sistem Lingkar Tertutup Sebelum Pemasangan Kompensator Ketinggalan Transfer function: 100-------s + 104 Performansi Sistem Dalam Domain Waktu Sebelum Pemasangan Pengendali Kompensator Ketinggalan
y1 =
RiseTime: 0.0211 SettlingTime: 0.0376 SettlingMin: 0.8681 SettlingMax: 0.9615 Overshoot: 0 Undershoot: 0 Peak: 0.9615 PeakTime: 0.1009
Akar - Akar Persamaan Karakteristik Sebelum Pemasangan Kompensator Ketinggalan Eigenvalue Damping Freq. (rad/s) -1.04e+002 1.00e+000 1.04e+002 Performansi Sistem Lingkar Terbuka Dalam Domain Frekuensi Sebelum Pemasangan Kompensator Ketinggalan
y2 =
GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 92.2926 PMFrequency: 99.9127 DelayMargin: 0.0161 DMFrequency: 99.9127 Stable: 1
Performansi Sistem Lingkar Tertutup Dalam Domain Frekuensi Sebelum Pemasangan Kompensator KetinggalanBandwidth = 104
Nilai DC Gain Kompensator -> 2Phase Margin Diinginkan -> 2
Phase does not cross (-180 + P.M.). Error in ==> Kompensator_Lag_RF at 2r=abs(roots(den));
??? Output argument "numopen" (and maybe others) not assigned during call to "E:\tugas besar\kontrol\outline16\Kompensator_Lag_RF.m>Kompensator_Lag_RF".
Error in ==> Contoh_9_2 at 39[numopen,denopen,dencl]=Kompensator_Lag_RF(num,den);
2.17. Performansi system lingkar terbuka dalam domain waktu dengan pengendali
clcclear allclose all
%disp ('Fungsi Alih')num = [105.9 105.9]den = [1 5.059 4.328] sys = tf (num,den)disp ('Perhitungan Konstanta Kesalahan')errortf(num,den)
Fungsi Alih
num =
105.9000 105.9000
den =
1.0000 5.0590 4.3280
Transfer function: 105.9 s + 105.9---------------------s^2 + 5.059 s + 4.328 Perhitungan Konstanta KesalahanTipe Sistem adalah 0 Konstanta Kesalahan Posisi (Kp) adalah 24.4686 Konstanta Kesalahan Kecepatan (Kv) adalah 0.0000 Konstanta Kesalahan Percepatan (Ka) adalah 0.0000 Kesalahan Keadaan Mantap Untuk Masukan Undak adalah 0.0393 Kesalahan Keadaan Mantap Untuk Masukan Laju adalah Inf Kesalahan Keadaan Mantap Untuk Masukan Parabolik adalah Inf
2.18. Performansi system lingkar tertutup dalam domain waktu dengan pengendali
o Plot grafik tanggapan peralihan sistem terhadap masukan impulsa satuan
clcclear allclose all%% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')num = [ 30 ];den = [ 1 34 ];sys = tf(num,den)%% Pole - Zero - Gaindisp('Pole - Zero - Gain')[r,p,k] = residue(num,den)%% Tanggapan Sistem Terhadap Masukan Impulsa Satuant = 0:0.01:10;y = impulse(num,den,t);plot(t,y)grid ontitle('Tanggapan Terhadap Masukan Impulsa Satuan ')xlabel('detik')ylabel('Keluaran')%% Performansi Sistem Dalam Domain Waktudisp('Performansi Sistem Dalam Domain Waktu')y = lsiminfo(y)
Fungsi Alih Lingkar Tertutup Transfer function: 30------s + 34 Pole - Zero - Gain
r =
30
p =
-34
k =
[]
Performansi Sistem Dalam Domain Waktu
y =
SettlingTime: 12.5483 Min: 6.5614e-147 MinTime: 1001 Max: 30 MaxTime: 1
o Plot grafik tanggapan peralihan sistem terhadap masukan undak satuan
clcclear allclose all% Contoh 1%
% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')num = [ 30 ];den = [ 1 34 ];sys = tf(num,den)%% Pole - Zero - Gaindisp('Pole - Zero - Gain')[r,p,k] = residue(num,den)%% Performansi Sistem Dalam Domain Waktudisp('Performansi Sistem Dalam Domain Waktu')y = stepinfo(tf(num,den))%% Tanggapan Sistem Terhadap Masukan Undak Satuanstep(num,den)grid ontitle('Tanggapan Terhadap Masukan Undak Satuan ')Fungsi Alih Lingkar Tertutup Transfer function: 30------s + 34 Pole - Zero - Gain
r =
30
p =
-34
k =
[]
Performansi Sistem Dalam Domain Waktu
y =
RiseTime: 0.0647 SettlingTime: 0.1151 SettlingMin: 0.7966 SettlingMax: 0.8823 Overshoot: 0 Undershoot: 0 Peak: 0.8823 PeakTime: 0.3085
o Plot grafik tanggapan peralihan sistem terhadap masukan ramp satuan
clcclear allclose all%num= [ 30 ]den= [ 1 34 ]sys=tf(num,den)%disp('Performansi Sistem dalam Domain Waktu')y=stepinfo(tf(num,den))%out put sistem terhadap masukan ramp
step(num,den)grid ontitle('Tanggapan terhadap masukan ramp')
num =
30
den =
1 34
Transfer function: 30------s + 34 Performansi Sistem dalam Domain Waktu
y =
RiseTime: 0.0647 SettlingTime: 0.1151 SettlingMin: 0.7966 SettlingMax: 0.8823 Overshoot: 0 Undershoot: 0 Peak: 0.8823 PeakTime: 0.3085
o Plot grafik tanggapan peralihan sistem terhadap masukan eksponensial
clcclear allclose all%% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')num = [ 30 ];den = [ 1 34 ];sys = tf(num,den)%% Tanggapan Sistem Terhadap Masukan Eksponesialt = 0:0.1:20;r1 = exp(-2*t);y1 = lsim(num,den,r1,t);plot(t,r1,'b',t,y1,'r');grid on
title('Tanggapan Terhadap Masukan Eksponensial ')ylabel('Keluaran')xlabel('detik')text(0.20,0.7,'Masukan Eksponensial')text(1.8,0.38,'Keluaran y(t)')%% Performansi Sistem Dalam Domain Waktudisp('Performansi Sistem Dalam Domain Waktu')y = lsiminfo(y1)
Fungsi Alih Lingkar Tertutup Transfer function: 30------s + 34 Performansi Sistem Dalam Domain Waktu
y =
SettlingTime: 21.7857 Min: 0 MinTime: 1 Max: 0.7384 MaxTime: 2
2.19. Performansi system lingkar terbuka dalam domain frekuensi dengan pengendali
clcclear allclose all%num=[ 30 ]den=[ 1 4 ]disp('fungsi alih lingkar terbuka');sys=tf(num,den)bode(sys)disp('performasi sistem lingkar terbuka dalam domain frekuensi')y=allmargin(sys)
num =
30
den =
1 4
fungsi alih lingkar terbuka Transfer function: 30-----s + 4 performasi sistem lingkar terbuka dalam domain frekuensi
y =
GainMargin: [1x0 double] GMFrequency: [1x0 double] PhaseMargin: 97.6647 PMFrequency: 29.7226 DelayMargin: 0.0573 DMFrequency: 29.7226 Stable: 1
2.20. Performansi system lingkar tertutup dalam domain frekuensi dengan pengendali
clcclear allclose all%num = [ 30 ];den = [ 1 34 ];T = tf(num,den)bode (T)[mag,pha]=bode(num,den);Mp = max(mag)BW = Bandwidth(T)
Transfer function: 30------s + 34 Mp =
0.8820BW = 33.9191
2.21. Performansi kestabilan sistem dengan pengendali
o Persamaan karakteristik
clcclear allclose all%num = [30];den = [1 4]; %% Fungsi Alih Lingkar Terbukadisp('Fungsi Alih Lingkar Terbuka')sys1 = tf(num,den)%% Fungsi Alih Lingkar Tertutupdisp('Fungsi Alih Lingkar Tertutup')T = feedback(sys1,1)%% Akar - Akar Persamaan Karakteristikdisp('Akar - Akar Persamaan Karakteristik')damp(T)%% Posisi Akar - Akar Persamaan Karakteristiksgrid
pzmap(T)grid on
Fungsi Alih Lingkar Terbuka Transfer function: 30-----s + 4 Fungsi Alih Lingkar Tertutup Transfer function: 30------s + 34 Akar - Akar Persamaan Karakteristik Eigenvalue Damping Freq. (rad/s) -3.40e+001 1.00e+000 3.40e+001
o Kriteria Routh
clcclear allclose all%% Persamaan Karakteristikdisp('Persamaan Karakteristik')p = [ 1 34 ]%% Periksa Kestabilan Dengan Kriteria Routhdisp('Periksa Kestabilan Dengan Kriteria Routh')routh(p)
Persamaan Karakteristik
p =
1 34
Periksa Kestabilan Dengan Kriteria Routh Routh-Hurwitz Array 1 34
System is stable
o Kriteria Hurtwith
clcclear allclose all%kestabilan sistemdisp ('PERSAMAAN KARAKTERISTIK')P = [ 1 34 0 ]disp('akar-akar persamaan karakteristik')K = roots(P)disp ('KRITERIA HURWITZ')hurwitz (P)
PERSAMAAN KARAKTERISTIK
P =
0 1 34
akar-akar persamaan karakteristik
K =
-34
KRITERIA HURWITZ 1 34
System is stable