TUGAS AKHIR SISTEM KONTROL SIMULASI KONTROL PROPORSIONAL, PI, PD, PID
Oleh : Dina Mulya Siltri 1101444
Dosen Mata Kuliah : Yohandri , Ph.D
JURUSAN FISIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI PADANG 2014
A-3-14 Anggaplah sistem ketinggian air pada Gambar 1 pada keadaan tetap, kecapatan aliran
, dan tingkat aliran antara tangki . Pada saat = 0, kecepatan aliran adalah nol. Kepala tangki 1 dan 2 disimbolkan ke + , di mana q adalah sebuah perubahan kecil pada masuk berubah dari aliran masuk. Perubahan yang dihasilkan pada kepala (ℎ dan ℎ ) dan kecepatan aliran ( dan ) diasumsikan sangat kecil. Kapasitansi pada tangki 1 dan 2 masingmasing adalah dan . Resistansi pada katup antara tangki adalah dan pada aliran keluar adalah . Turunkan model matematika untuk sistem apabila (a) adalah input dan ℎ adalah output, (b) adalah input dan adalah output, dan (c) adalah input dan ℎ output. masuk dan aliran keluar disimbolkan dengan
1
1
2
2
1
2
1
2
2
2
1
solusi (a)
adalah input dan ℎ
2
adalah output
Untuk tangki 1, kita memiliki:
ℎ = 1
1
(1)
1
Dimana
= ℎ − ℎ 2
1
1
1
Sehingga
ℎ = ℎ −ℎ 2
1
1
1
1
ℎ + ℎ = ℎ 1 1
1
1
2
(2)
Untuk tangki 2, kita peroleh
ℎ = − − 2
2
1
(3)
2
Dimana
= ℎ − ℎ 2
1
1
= ℎ
2
,
2
1
2
Sehingga
ℎ = −ℎ − ℎ − ℎ 2
2
1
2
2
1
2
ℎ + ℎ + ℎ = − ℎ ℎ + ℎ + ℎ = − ℎ 2
2
2
1
1
2
1
2
2 2
Dengan mengeliminasi
ℎ
1
2
2 1
2
2
2
2
1
(4)
1
dari persamaan tangki 1 dan tangki 2 diperoleh
ℎ + + + ℎ + ℎ = + 2
1 1
2 2
2 2
2
1 1
2 2
2 1
2
1 2 1
2
Sehingga didapatkan fungsi transfer:
( ) = ( + 1) () + + + + 1 2
2
1 1
2 2
2
1 1
1 1
2 2
Gambar 1. Sistem ketinggian air
2 1
(5)
Simulasi Scilab
= 100Ω = 220Ω 1
2
= 1000 = 2200 1
2
program //fungsi transfer r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; num=r2(r1*c1*s+1); denum=((r1*c1*r2*c2*s^2)+((r1*c1)+(r2*c2)+(r2*c1))*s+1); ft=syslin('c',num,denum) disp('fungsi transfer'); disp(ft); t=0:.01:3; res=csim('step',t,ft); plot(t,res); xgrid(4); xtitle('Fungsi Transfer','waktu ','ketinggian')
a. Kontroler Proporsional
_ = + ( + + +1) + (1 + ) 2
1 1 2 2
2
1 1
1 1
2 2
2 1
//proporsional r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=80; num=(r2(r1*c1*s+1))*kp; denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1)*s+(1+kp)); ft_p=syslin('c',num,denum); disp('Fungsi transfer Kontroler proporsional'); disp(ft_p) t=0:.01:3; res=csim('step',t,ft_p); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler Proporsional','waktu ','ketinggian')
Tampilan console
b. Kontroler Proposional Differensial
_ = + + +1 +( + +) + (1 + ) 2
1 1
2 2
2
1 1
1 1
2 2
2 1
//proposional differensial
r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=8; kd=3; num=((r2(r1*c1*s+1))*(kp+kd*s)); denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1+kd)*s+(1+kp)); ft_pd=syslin('c',num,denum); disp('Fungsi transfer Kontroler PD'); disp(ft_pd) t=0:.01:2.5; res=csim('step',t,ft_pd); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler PD','waktu ','ketinggian')
Tampilan console
c. Kontroler PI
) _ = + + +1 +( + + 1 + + 2
1 1
2 2
2
1 1
1 1
2 2
2 1
//proposional integral; r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=10; ki=1; num= ((r2(r1*c1*s+1))*(ki+kp*s)); denum=((r1*c1*r2*c2*s^2)+((r1*c1)+(r2*c2)+(r2*c1))*s+(1+kp)*s+ki); ft_pi=syslin('c',num,denum); disp('Fungsi transfer Kontroler PI'); disp(ft_pi) t=0:.01:2.5; res=csim('step',t,ft_pi); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler PI','waktu ','ketinggian')
tampilan console
d. Kontroler PID
= + + + 1 + + + 1 + + 2
1 1 2 2
2
1 1
1 1
2 2
2 1
//proposional integral Differensial; r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=10; ki=15; kd=80; num= ((r2(r1*c1*s+1))*(kd*s^2+kp*s+ki)); denum=((r1*c1*r2*c2*s^3)+((r1*c1)+(r2*c2)+(r2*c1)+kd)*s^2+(1+kp)*s+ki); ft_pid=syslin('c',num,denum); disp('Fungsi transfer Kontroler PID'); disp(ft_pid) t=0:.01:2.5; res=csim('step',t,ft_pid); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler PID','waktu ','ketinggian')
Tampilan console
(b)
adalah input dan adalah output Substitusi ℎ = ke persamaan (5), menghasilkan + + + + = + 2
2
2
1 1 2 2
2 2
2 2
2
1 1
2 2
2 1
2
1 1
Maka fungsi transfer menjadi:
( ) = + 1 () + + + + 1 2
1 1
1 1
2 2
2
1 1
2 2
Simulasi Scilab //fungsi transfer r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; num=(r1*c1*s+1); denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1)*s+1); ft=syslin('c',num,denum) disp('fungsi transfer'); disp(ft); t=0:.01:3; res=csim('step',t,ft); plot(t,res); xgrid(4); xtitle('Fungsi Transfer','waktu ','ketinggian')
tampilan console
2 1
a. kontroler Proporsional
_ = + ( + +1) + + (1 + ) 1 1
1 1 2 2
2
1 1
2 2
2 1
//proporsional r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=90; num=(r1*c1*s+1)*kp; denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1)*s+(1+kp)); ft_p=syslin('c',num,denum); disp('Fungsi transfer Kontroler proporsional'); disp(ft_p) t=0:.01:3; res=csim('step',t,ft_p); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler Proporsional','waktu ','ketinggian')
tampilan console
b. kontroler Proporsional Differensial
) _ = + + + 1( + + + + (1 + ) 1 1
1 1
2 2
2
1 1
2 2
2 1
//proposional differensial r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=5; kd=7; num=(r1*c1*s+1)*(kp+kd*s); denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1+kd)*s+(1+kp)); ft_pd=syslin('c',num,denum); disp('Fungsi transfer Kontroler PD'); disp(ft_pd) t=0:.01:2.5; res=csim('step',t,ft_pd); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler PD','waktu ','ketinggian')
tampilan console
c. Kontroler Proporsional Integral
) _ = + + + 1 +( + + 1 + + 1 1
1 1
2 2
2
1 1
2 2
2 1
//proposional integral; r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=15; ki=8; num=(r1*c1*s+1)*(ki+kp*s); denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1)*s+(1+kp)*s+ki); ft_pi=syslin('c',num,denum); disp('Fungsi transfer Kontroler PI'); disp(ft_pi) t=0:.01:2.5; res=csim('step',t,ft_pi); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler PI','waktu ','ketinggian')
Tampilan console
d. Kontroler PID
+ ) _ = + + + 1( + + + + 1 + + 2
1 1
1 1
2 2
2
1 1
2 2
2 1
2
//proposional integral Differensial; r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=10; ki=15; kd=80; num=(r1*c1*s+1)*(kd*s^2+kp*s+ki); denum=((r1*c1*r2*c2*s^3)+(r1*c1+r2*c2+r2*c1+kd)*s^2+(1+kp)*s+ki); ft_pid=syslin('c',num,denum); disp('Fungsi transfer Kontroler PID'); disp(ft_pid) t=0:.01:2.5; res=csim('step',t,ft_pid); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler PID','waktu ','ketinggian')
Tampilan console
(c)
adalah input dan ℎ output Eliminasi ℎ dari persamaan (2) dan (4)menghasilkan ℎ + + + ℎ + ℎ = 1
2
2
1 1 2 2
2 2
1
1 1
2 2
2 1
1
2
Maka fungsi transfer menjadi
( ) = () + + + + 1 1
2
1 1
2 2
2
1 1
Simulasi Scilab //fungsi transfer r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; num=r2; denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1)*s+1); ft=syslin('c',num,denum) disp('fungsi transfer') disp(ft); t=0:.01:3; res=csim('step',t,ft); plot(t,res);
2 2
2 1
xgrid(4); xtitle('grafik','x','y') xtitle('Fungsi Transfer','waktu ','ketinggian')
Tampilan console
a. kontroler Proporsional
_ = + + ∗ + + (1 + ) 2
1 1
2 2
2
1 1
2 2
//proporsional r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=70; num=r2*kp; denum=((r1*c1*r2*c2*s^2)+(r1*c1+r2*c2+r2*c1)*s+(1+kp)); ft_p=syslin('c',num,denum); disp('Fungsi transfer Kontroler proporsional'); disp(ft_p) t=0:.01:3;
2 1
res=csim('step',t,ft_p); plot(t,res); xgrid(4); xtitle('Fungsi Transfer Kontroler Proporsional','waktu ','ketinggian')
Tampilan console
b. kontroller PID
+ + ) _ = + + ( + + + 1 + + 2
2
1 1
2 2
3
1 1
2 2
2 1
2
//proposional integral Differensial; r1=100; r2=220; c1=0.001; c2=0.0022; s=%s; kp=10; ki=15; kd=80; num=r2*(kd*s^2+kp*s+ki); denum=((r1*c1*r2*c2*s^3)+(r1*c1+r2*c2+r2*c1+kd)*s^2+(1+kp)*s+ki); ft_pid=syslin('c',num,denum); disp('Fungsi transfer Kontroler PID'); disp(ft_pid) t=0:.01:2.5; res=csim('step',t,ft_pid); plot(t,res);
xgrid(4); xtitle('Fungsi Transfer Kontroler PID','waktu ','ketinggian')
Tampilan console