matlab 极点配置 误差太大,实验五利用MATLAB求解极点配置问题

41528d3028836879cd698677c3999917.gif实验五利用MATLAB求解极点配置问题

现代控制理论第四次上机实验报告 实验五 利用MATLAB求解极点配置问题 实验目的: 1、学习极点配置状态反馈控制器的设计算法; 2、通过编程、上机调试,掌握系统极点配置设计方法。 实验步骤: 1、极点配置状态反馈控制器的设计,采用MATLAB的m-文件编程; 2、在MATLAB界面下调试程序,并检查是否运行正确。 实验要求: 1、 在运行以上程序的基础上,针对状态空间模型为 的被控对象设计状态反馈控制器,使得闭环极点为-4和-5,并讨论闭环系统的稳态性能。 先判断系统能控性: >> A = [0 1 ;-3 -4]; B = [0;1]; Tc=ctrb(A,B) n=size(A); if rank(Tc)==n(1) disp( The system is controlled ) else disp( The system is not controlled ) end Tc = 0 1 1 -4 The system is controlled 再求状态反馈器: >> A = [0 1 ;-3 -4]; B = [0;1]; J = [-4 -5]; K = place(A,B,J) K = 17.0000 5.0000 即状态反馈控制器为:u=-Kx 状态反馈闭环系统状态空间表达式: x=A-BKx A1=A-BK=[0 1;-20 -9] 配置极点前: >> A=[0 1 ;-3 -4]; B=[0;1]; C=[3 2]; D=0; step(A,B,C,D) 得到波形: 配置极点后:A变为A1 >> A=[0 1 ;-20 -9]; B=[0;1]; C=[3 2]; D=0; step(A,B,C,D) 得到波形: 由上述两图对比可知,配置极点后,系统动态性能变好,但是稳态误差变大。 2、 分析极点配置对稳态性能有何影响?如何消除对稳态性能的负面影响? 答:配置极点后动态性能变好,但是稳态误差不能消除。为了消除极点配置对稳态性能的负面影响,在选择期望极点时,要确定各综合指标,一般要注意以下两点: (1)对一个n维系统,必须指定n个实极点或共轭复极点。 (2)极点位置的确定,要充分考虑他们对于系统性能的主导影响及其与系统零点分布的状况关系。同时还要兼顾系统抗干扰的能力和对参数漂移低敏感性的要求。 3、 受控系统的传递函数为 根据性能指标设计状态反馈控制器,将希望极点配置为 运行以下m-程序: >> num=[20]; den=[1,20,20]; [A,B,C,D]=tf2ss(num,den); J=[-7.07+j*7.07 -7.07-j*7.07]; K=place(A,B,J) K = -5.8600 79.9698 即状态反馈控制器为:u=-Kx 4、输出(线性)反馈能使系统极点任意配置吗? 答:不能。对完全能控的单输入——单输出系统Σ=(A,b,c),不能采用输出线性反馈来实现闭环系统极点的任意配置。为了克服这个弱点,在经典控制理论中,往往采取引入附加校正网络,通过增加开环零、极点的方法改变更轨迹走向,从而使其落在指定的期望位置上。 实验心得: 通过此次实验,我更加了解了设计反馈控制器和进行极点配置的方法。通过MATLAB仿真,更加清晰地认识到了极点配置对系统的影响,对所学到的知识有了更加深刻的掌握。

你可能感兴趣的:(matlab,极点配置,误差太大)