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

📄 ex8_24.m

📁 华东理工大学自动化系《控制系统分析、设计和应用》教材配套程序实例,有关说明: 1. 安装MATLAB软件。安装时
💻 M
字号:
% ex8_24
% 计算对角线解耦的预对角化网络
G=tf({1.02 -0.52;-0.54 1.04},{[11.76 1],[10.1 1];[10.4 1],[2.6 1]});
syms k11 k12 k21 k22 s s11 s12 s21 s22
G11=G(1,1);G12=G(1,2);
G21=G(2,1);G22=G(2,2);
m1=G11*G22,m2=G12*G21,
m3=G12*G22;m4=G11*G21
mn=conv(m1.num{1},m2.den{1})-conv(m2.num{1},m1.den{1});
md=conv(m1.den{1},m2.den{1});
kp11n=deconv(conv(m1.num{1},md),G22.den{1});
kp11d=deconv(conv(m1.den{1},mn),G22.den{1});
kp11=tf(kp11n,kp11d)
kp12n=deconv(conv(m3.num{1},md),G12.den{1});
kp12d=deconv(conv(m3.den{1},mn),G12.den{1});
kp12=tf(-kp12n,kp12d)
kp21n=deconv(conv(m4.num{1},md),G21.den{1});
kp21d=deconv(conv(m4.den{1},mn),G21.den{1});
kp21=tf(-kp21n,kp21d)
kp22n=deconv(conv(m1.num{1},md),G11.den{1});
kp22d=deconv(conv(m1.den{1},mn),G11.den{1});
kp22=tf(kp22n,kp22d)
fbk=tf({1 0;0 1},{1 1;1 1});
[a,b,c,d]=ssdata(G);
ap=a;
bp=b;[rwc clc]=size(c);
cp=[c; zeros(2,clc)];
dp=[d; eye(2)];
Gc1=tf([1 1]*0.0475,[1 0]);
Gc2=tf([1 1]*0.365,[1 0]);
GC=[Gc1,0;0 Gc2];
Gm=ss(ap,bp,cp,dp);
KP=[kp11,kp12;kp21,kp22];
C=KP*GC;
sys=feedback(Gm*C,fbk,1:2,1:2);
figure('pos',[200,200,200,300],'color','w');
[yy,t,x]=step(sys,0:0.1:150);
axes('pos',[0.13,0.56,0.75,0.38]),
plot(t,[yy(:,3:4,1), yy(:,1:2,1)]);
axis([0 150 -0.5 2])
axes('pos',[0.13,0.1,0.75,0.38]),
plot(t,[yy(:,3:4,2),yy(:,1:2,2)]);
axis([0 100 -0.5 1.5])

⌨️ 快捷键说明

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