ex6_6.m

来自「反馈控制系统分析与设计,虽然有点抽象」· M 代码 · 共 29 行

M
29
字号
A=[-0.2,0.5,0,0,0;0,-0.5,1.6,0,0;0,0,-14.3,85.8,0;
    0,0,0,-33.3,100;0,0,0,0,-10];
B=[0; 0; 0; 0; 30]; Q=diag([1,0,0,0,0]); R=1;
C=[1,0,0,0,0]; D=0; [K,P]=lqr(A,B,Q,R)

Ac=A-B*K; step(ss(Ac,B,C,D))

rho=[1,5,10,50,100]; 
for i=1:length(rho)
   Q(1,1)=rho(i); [K,P]=lqr(A,B,Q,R);
   Ac=A-B*K; step(ss(Ac,B,C,D)); hold on
end

w=logspace(0,3); m=[]; p=[];
for i=1:length(rho)
   Q(1,1)=rho(i); [K,P]=lqr(A,B,Q,R);
   Ac=A-B*K; [m1,p1]=bode(ss(Ac,B,C,D),w);
   m=[m,m1(:)]; p=[p,p1(:)];
end
subplot(211), semilogx(w,20*log10(m))
subplot(212), semilogx(w,p)

[y,t,x]=step(ss(Ac,B,C,D)); plot(t,x(:,2:5))

Q=diag([10,2,6,2,1]); [K,P]=lqr(A,B,Q,R); 
Ac=A-B*K; step(ss(Ac,B,C,D))

[y,t,x]=step(ss(Ac,B,C,D)); plot(t,x(:,2:5))

⌨️ 快捷键说明

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