1、现代控制理论第五次上机实验报告实验六 利用 MATLAB 设计状态观测器实验目的:1、学习观测器设计算法; 2、通过编程、上机调试,掌握基于观测器的输出反馈控制系统设计方法。实验步骤1、基于观测器的输出反馈控制系统的设计,采用 MATLAB 的 m-文件编程; 2、在 MATLAB 界面下调试程序,并检查是否运行正确。 实验要求 1在运行以上例程序的基础上,考虑图 6.3 所示的调节器系统,试针对被控对象设计基于全阶观测器和降阶观测器的输出反馈控制器。设极点配置部分希望的闭环极点是 ,希望的观测器极1,23j点是(a) 对于全阶观测器, 和 ;182(b) 对于降阶观测器, 。比较系统对下列指
2、定初始条件的响应: (a) 对于全阶观测器: 1212(0),()0,(),(0)xe(b) 对于降阶观测器: 121(),(),()x进一步比较两个系统的带宽。图 6.3 调节器系统设计闭环极点: a=0 1;0 -2;b=0;1; c=4 0; v1=-2+j*2*sqrt(3) -2-j*2*sqrt(3); K=acker(a,b,v1) K =16.0000 2.0000全阶状态观测器: v2=-8 -8;G=(acker(a-b*K),c,v2)G =30降阶状态观测器: T1 =0 1;4 0 ; T =0 0.25;1 0; a1 =T1*a*Tb1 =T1*b;c1 =c*T
3、;Aaa=-2;Aab=0; Aba=4; Abb=0; Ba=1; Bb=0; v3=-8; l=(acker(Aaa,Aba,v3) Ahat=Abb-l*Aab Bhat=Ahat*l+Aba-l*Aaa Fhat=Bb-l*Ba a1 =-2 04 0l =1.5000Ahat =0Bhat =7Fhat =-1.5000全阶观测器响应: sys=ss(a-b*K,0;0,eye(2),0);t=0:0.01:4; x=initial(sys,1;0,t); x1=1 0 *x; x2=0 1 *x; subplot(4,2,1);plot(t,x1),grid title(x1) y
4、label(x1)subplot(4,2,2);plot(t,x2),grid title(x2) ylabel(x2)sys1=ss(a-G*c,0;0,eye(2),0);t=0:0.01:4;e=initial(sys1,1;0,t); e1=1 0 *x+x1; e2=0 1 *x+x2; subplot(4,2,3);plot(t,e1),grid title(全阶状态观测 x1) ylabel(x1guji)subplot(4,2,4);plot(t,e2),grid title(全阶状态观测 x2)ylabel(x2guji) 降阶观测器响应: sys2=ss(Aaa-l*Aba
5、,1,eye(1),0);t=0:0.01:4;e3=initial(sys2,1,t); e4=e3+x1; e5=x2; subplot(4,2,5);plot(t,e4),grid title(降阶状态观测 x1) ylabel(x1guji)subplot(4,2,6);plot(t,e5),grid title(降阶状态观测 x2)ylabel(x2guji) 由上述两图对比可得,降阶观测器衰减速度比全阶观测器快,带宽比全阶观测器窄。2假设 SISO 受控系统的开环传递函数为 21()Gs(1)若根据系统的性能指标要求,希望配置的系统极点为 12,3j求受控系统的状态反馈矩阵。(2)设计观测器反馈系数矩阵 ,使全维状态观测器的希望极点均为-3.L状态反馈矩阵: A=0 1 0;0 0 1;0 0 -1; B=0;0;1;C=1 0 0;J= -3 -2+j*2 -2-j*2; K=acker(A,B,J)K =24 20 6全维观测器: v=-3 -3 -3;L=acker(A,B,v)L =27 27 8实验心得:这次实验做的很艰难,但一点点弄出来之后对观测器的理解也表的更加深刻,通过 matlab 编程仿真更加形象地了解了全阶观测器和降阶观测器的特点。