⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wl.m

📁 参考模型为三阶的模型参考自适应控制
💻 M
字号:
clear all;
h=0.1;t=0.1;N=8000;a1=2;a2=1.4;a3=0.6;
r1=1;r2=1;r3=1;r4=1;
xm10=0;xm20=0;xm30=0;
xp10=0;xp20=0;xp30=0;
u0=0;k0=0;
f10=0;f20=0;f30=0;
e10=0;e20=0;e30=0
k11=0;k12=0;
for i=1:N
    k11=xm20;k12=xm20+k11*h;xm1=xm10+(k11+k12)*h/2;
    k21=xm30;k22=xm30+k21*h;xm2=xm20+(k21+k22)*h/2;
    k31=-xm10-2*xm20-3*xm30+sin(2*t);
    k32=-xm10-2*xm20-3*xm30+sin(2*t)+k31*h;
    xm3=xm30+(k31+k32)*h/2;                 %2阶rd法求参考模型
    Xm1(i)=xm1;Xm2(i)=xm2;Xm3(i)=xm3;
    
    k11=xp20;k12=xp20+k11*h;xp1=xp10+(k11+k12)*h/2;
    k11=xp30;k12=xp30+k11*h;xp2=xp20+(k11+k12)*h/2;
    k31=(a1*xp10+a2*xp20+a3*xp30+u0);
    k32=(a1*xp10+a2*xp20+a3*xp30+u0)+k31*h;
    xp3=xp30+(k31+k32)*h/2;            % 2阶rd法求实际模型
    Xp1(i)=xp1;Xp2(i)=xp2;Xp3(i)=xp3;
    e1=Xm1(i)-Xp1(i);e2=Xm2(i)-Xp2(i);e3=Xm3(i)-Xp3(i);
    E1(i)=e1; E2(i)=e2; E3(i)=e3;
   
    f1=f10+h*(0.5*e10+13*e20/10+3*e30/5)*r1*xp1;
    f2=f20+h*(0.5*e10+13*e20/10+3*e30/5)*r2*xp2;
    f3=f30+h*(0.5*e10+13*e20/10+3*e30/5)*r3*xp3;  %F(t)=(f1 f2 f3)
    k=k0+h*(0.5*e10+13*e20/10+3*e30/5)*sin(2*t)*r4;
    u=k*sin(2*t)+f1*xp1+f2*xp2+f3*xp3;
    xm10=xm1;xm20=xm2;xm30=xm3;    %倒腾有关量
    xp10=xp1;xp20=xp2;xp30=xp3;
    k0=k;u0=u;
    f10=f1;f20=f2;f30=f3;
    e10=e1; e20=e2; e30=e3;
    tt(i)=t;t=t+h;
end

figure(1);
plot(tt,E1);
title('E1响应曲线');
figure(2);
plot(tt,E2);
title('E2响应曲线');
figure(3);
plot(tt,E3);
title('E3响应曲线');

    
    
    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -