Sebenarnya Ini adalah tugas Mata Kuliah kontrol adaptive tentang ARMA yaitu Auto Regresive Moving Average, metode ini digunakan untuk identifikasi suatu sistem.. objektif dari simulasi berikut ini adalah agar sistem adaptive dapat mengikuti plant linear. ga jauh beda dengan objektive JST. Oke langsung aja dicoba di Matlab..
dan Blok Simulinknyafunction Yo=P2SRO(inp)
global ym um arrYK arrUK arrTime Q status Teta startTime ZTeta YK ZData Teta_rata2;
% Penyelesaian Persamaan Simultan Parameter Total
ym = inp(1);
um = inp(2);
uTime = inp(3);
na = inp(4);
nb = inp(5);
Horizon = inp(6);
Yo=zeros(1,6);
%inisialisasi saat t=0
if uTime==0
arrYK=[];
arrUK=[];
arrTime=[];
arrYK=[arrYK,ym];
arrUK=[arrUK,um];
arrTime=[arrTime,uTime];
status=0;
startTime=0;
Teta_rata2=zeros(6,5);
elseif uTime<=Horizon/10
arrYK=[arrYK,ym];
arrUK=[arrUK,um];
arrTime=[arrTime,uTime];
elseif uTime>(Horizon/10)
Q=[];
ZData =Horizon;
for i=1:na
YK=arrYK((na-i+1):ZData-(i));
Q=[Q,YK'];
end
for i=1:na
UK=arrUK((na-i+1):ZData-(i));
Q=[Q,UK'];
end
YK=arrYK((na+1):ZData);
Teta=pinv(Q'*Q)*Q'*YK'; %Dapatkan Nilai Teta
Teta_rata2=[Teta_rata2,Teta];
ZTeta=zeros(6,1);
for i=1:6
ZTeta = ZTeta + Teta_rata2(:,i);
end
rata_rata =ZTeta/6;
save('data','Teta','YK','Q');
Yo=rata_rata;
arrYK(:,[1])=[]; %Hapus data pertama arrYK dan UK
arrUK(:,[1])=[];
arrYK=[arrYK,ym]; %ganti dengan data baru
arrUK=[arrUK,um];
Teta_rata2(:,[1])=[];
save('dataTotal','arrYK','arrUK','Teta_rata2','Teta');
end
end
Hasil Grafik
Untuk File Lengkapnya Silakan Email : swadexi@gmail.com :)
tenang aja ga minta bayaran kok.. cuma lagi males upload aja
0 comments: