ex8_6.m

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

M
18
字号
num=[-948.12, 30325, 56482, -1215.3];
den=[1, 64.554, 1167, 3728.6, -5495.4, 1102, 708.1];
G=ss(tf(num,den)); Xi=1e-4; Theta=1e-5;  
Q=diag([100,10,20,30,40,100]); R=1; 
[Kc,P]=lqr(G.a,G.b,Q,R); 
q0=[1,1e4,1e6,1e8,1e10,1e12,1e14];  w=logspace(-2,2);
[af,bf,cf,df]=ltru(G.a,G.b,G.c,G.d,Kc,Xi,Theta,q0,w);
hold on; nyquist(G.a,G.b,Kc,0); 

q0=[1,1e8,1e12,1e16,1e18,1e20];  
nyquist(ss(G.a,G.b,Kc,0)); hold on;
for i=1:length(q0)
   G1=ss(G.a,[G.b, G.b],G.c,[G.d,G.d]);
   [K_Sys,L,P2]=kalman(G1,q0(i)*Xi,Theta);
   a1=G.a-G.b*Kc-L*G.c; Gc=ss(a1,L,Kc,0);
   G_o=G*Gc; nyquist(G_o)
end

⌨️ 快捷键说明

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