data x(k) dan y(k) :
Data output dari simulasi simulink di atas :
Running Program yang sudah dibuat dari editor, untuk mendapatkan tethaProgram berikut terdapat 3 Model pendekatan sistem yaitu :
b1)y(k)=-a1*y(k-1)-a2*y(k-2)+b0*x(k-1)+b1*x(k-2) nA=2,nB=1,d=1 >> tipe 1
b2)y(k)=-a1*y(k-1)-a2*y(k-2)-a3*y(k-3)+b0*x(k-1) nA=3,nB=0,d=1 >> tipe 2
b3)y(k)=-a1*y(k-1)+b0*x(k-1)+b1*x(k-2)+b2*x(k-3)+b3*x(k-4)) nA=1,nB=3,d=1 >> tipe 3
clc;
disp(' Ahmad Roni Utomo (22101015012)')
disp('Langkah - langkah :')
disp('1. Jalankan data_output_xkyk.mdl --> Untuk mendapatkan x(k) dan y(k)')
disp('Tentukan Model pendekatan sistem adalah:')
disp('b1)y(k)=-a1*y(k-1)-a2*y(k-2)+b0*x(k-1)+b1*x(k-2) nA=2,nB=1,d=1')
disp('b2)y(k)=-a1*y(k-1)-a2*y(k-2)-a3*y(k-3)+b0*x(k-1) nA=3,nB=0,d=1')
disp('b3)y(k)=-a1*y(k-1)+b0*x(k-1)+b1*x(k-2)+b2*x(k-3)+b3*x(k-4)) nA=1,nB=3,d=1')
disp('Masukkan data sesuai ketentuan diatas :')
na=input('Panjang nA model: ');
nb=input('Panjang nB model: ');
d=input('Panjang d model: ');
disp('Hasil =')
y=zeros((na+nb+d),1); %vektor y
T=zeros((na+nb+d),1); %vektor theta
P=zeros((na+nb+d),(na+nb+d));%jumlah MATRIX P
Theta=zeros((na+nb+d),1); %vektor theta
m=max(na,nb+d) %nilai m
n=na+nb+d %total n
k=length(yk)-1 %total data
p=k-(m+n)+2 %total perulangan
m=m+1; %berhubung data dimulai dari 1
for k=m:p+m-1 %perulangan dari dari data k=m+1 sampai p
for a=1:n %a=1 sampai n
for i=1:na %i=1 sampai 2 (na=2)P(n,i)=-yk(n+na-i+k)
P(a,i)=-yk(a+k-i-1); %(m+1)-i
end
for j=1:(nb+d) %j=1 sampai 2 (nb+d=2)P(n,j+na)=xk(n+nb+d-j+k)
P(a,j+na)=xk(a+k-j-1);%(m+1)-j
end
y(a,1)=yk(k+a-1);%
end
y
P
T= (inv(P)*y)
Theta=Theta+T
end
Theta=Theta/((p+m-1)-m+1)Langkah - langkah :
1. Jalankan data_output_xkyk.mdl --> Untuk mendapatkan x(k) dan y(k)
Tentukan Model pendekatan sistem adalah:
tipe 2)y(k)=-a1*y(k-1)-a2*y(k-2)-a3*y(k-3)+b0*x(k-1) nA=3,nB=0,d=1
tipe 3)y(k)=-a1*y(k-1)+b0*x(k-1)+b1*x(k-2)+b2*x(k-3)+b3*x(k-4)) nA=1,nB=3,d=1
Masukkan data sesuai ketentuan diatas :
Panjang nA model: 2
Panjang nB model: 1
Panjang d model: 1
Hasilnya adalah=
m =
2
n =
4
k =
10
p =
6
y =
0.0678
0.1239
0.1565
0.1967
P =
-0.0522 0 0.5470 0.7190
-0.0678 -0.0522 1.1789 0.5470
-0.1239 -0.0678 1.1793 1.1789
-0.1565 -0.1239 1.4347 1.1793
T =
-1.4425
0.4493
0.0726
-0.0657
Theta =
-1.4425
0.4493
0.0726
-0.0657
y =
0.1239
0.1565
0.1967
0.1832
P =
-0.0678 -0.0522 1.1789 0.5470
-0.1239 -0.0678 1.1793 1.1789
-0.1565 -0.1239 1.4347 1.1793
-0.1967 -0.1565 0.8835 1.4347
T =
-1.4425
0.4493
0.0726
-0.0657
Theta =
-2.8849
0.8987
0.1452
-0.1315
y =
0.1565
0.1967
0.1832
0.1918
P =
-0.1239 -0.0678 1.1793 1.1789
-0.1565 -0.1239 1.4347 1.1793
-0.1967 -0.1565 0.8835 1.4347
-0.1832 -0.1967 1.0194 0.8835
T =
-1.4425
0.4493
0.0726
-0.0657
Theta =
-4.3274
1.3480
0.2178
-0.1972
y =
0.1967
0.1832
0.1918
0.2240
P =
-0.1565 -0.1239 1.4347 1.1793
-0.1967 -0.1565 0.8835 1.4347
-0.1832 -0.1967 1.0194 0.8835
-0.1918 -0.1832 1.3310 1.0194
T =
-1.4425
0.4493
0.0726
-0.0657
Theta =
-5.7698
1.7973
0.2905
-0.2629
y =
0.1832
0.1918
0.2240
0.1883
P =
-0.1967 -0.1565 0.8835 1.4347
-0.1832 -0.1967 1.0194 0.8835
-0.1918 -0.1832 1.3310 1.0194
-0.2240 -0.1918 0.5346 1.3310
T =
-1.4425
0.4493
0.0726
-0.0657
Theta =
-7.2123
2.2466
0.3631
-0.3287
y =
0.1918
0.2240
0.1883
0.1760
P =
-0.1832 -0.1967 1.0194 0.8835
-0.1918 -0.1832 1.3310 1.0194
-0.2240 -0.1918 0.5346 1.3310
-0.1883 -0.2240 0.5535 0.5346
T =
-1.4425
0.4493
0.0726
-0.0657
Theta =
-8.6547
2.6960
0.4357
-0.3944
Theta =
-1.4425
0.4493
0.0726
-0.0657Lakukan juga simulasi untuk mendapatkan theta tipe 2 dan tipe 3. jika sudah maka lakukan pengecekan dengan menggunakan simulink dan program dari editor pada matlab seoerti dibawah ini :
Nilai theta dari masing-masing model pendekatan sistem diatas, dibandingkan dengan respons step, disini
time samplingnya adalah 0.5:
Pada tab Matlab Function isikan sesuai output program dalam hal ini ada tiga macam program yang ingin di ambil datanya yaitu à “ thetabaru_1” ; “ thetabaru_2” ; “thetabaru_3”
Dimana perintah pada MATLAB Fcn adalah:
theta =
a1 = -1.4425
b0 = 0.0726
b1 =-0.0657
global yk xk
t=data(1) %timer 0.5 1 1.5 2 2.5 dst
d=1+(t/0.5) %d= 1,2,3,4,5
xk(d)=data(2) %ambil data xk
output=0;yk(d)=0;
if d>2 %karena m=2
% Masukkan tetha yang didapat ke dalam Rumus -->
% y(k)=-a1y(k-1) –a2y(k-2) +b0x(k-1) +b1x(k-2)
yk(d)=-(-1.4425*yk(d-1))-(0.4493*yk(d-2))+(0.0726*xk(d-1))+(-0.0657*xk(d-2))
output=yk(d)
end
end
Theta =
a2 = -0.0439
a3 = -0.1289
b0 = 0.0677
function output = thetabaru_2(data) %Function definition line
global yk xk
t=data(1) %timer 0.5 1 1.5 2 2.5 dst
d=1+(t/0.5) %d= 1,2,3,4,5
xk(d)=data(2) %ambil data xk
output=0;yk(d)=0;
if d>3 %karena m=3
% Masukkan tetha yang didapat ke dalam Rumus -->
%y(k)=-a1*y(k-1)-a2*y(k-2)-a3*y(k-3)+b0*x(k-1)
yk(d)=-(-0.5084*yk(d-1))-(-0.0439*yk(d-2))-(-0.1289*yk(d-3))+(0.0677*xk(d-1))
output=yk(d)
end
end
Ø Biru langit = Input step
Ø Ungu = Respon plant (Transfer Fcn)
Ø Kuning = Respon pendekatan sistem ( Hasil perhitunganTetha)
Dari ketiga metode dapat dilihat mana pemodelan yang hasil simulasinya mendekati dengan plant !!!
Tidak ada komentar:
Posting Komentar