现代控制理论实验报告.doc

上传人:laozhun 文档编号:4193183 上传时间:2023-04-09 格式:DOC 页数:18 大小:384.50KB
返回 下载 相关 举报
现代控制理论实验报告.doc_第1页
第1页 / 共18页
现代控制理论实验报告.doc_第2页
第2页 / 共18页
现代控制理论实验报告.doc_第3页
第3页 / 共18页
现代控制理论实验报告.doc_第4页
第4页 / 共18页
现代控制理论实验报告.doc_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《现代控制理论实验报告.doc》由会员分享,可在线阅读,更多相关《现代控制理论实验报告.doc(18页珍藏版)》请在三一办公上搜索。

1、实验一 无限时间状态调节器问题的最优控制MATLAB仿真1.实验目的:(1) 通过上机操作,加深最优控制理论知识的理解。(2) 学习并掌握连续线性二次型最优控制的MATLAB实现。(3) 通过上机实验,提高动手能力,提高分析和解决问题的能力。2.实验时间:2010年5月26日3.实验步骤:(1)实验一中的状态方程如下: (1) (2) 根据状态方程(1),令输出量y(t)=x1(t),写出对应的A,B,C,D矩阵如下: 根据状态方程(2),写出对应的A,B,C,D矩阵如下: D=0(2)判定上述两个系统的可控性,分别求的第一个系统的秩判据=12,因此对应的系统不完全可控,所以无法设计对应的状态

2、调节器。第二个系统对应的秩判据=3,满足条件,因此可设计出对应的状态调节器。(3)根据从系统中得到的四个状态矩阵,由于是三维矩阵,对应的Q矩阵也为三维矩阵,取性能指标为:,其中矩阵Q的对角线上的值分别为:Q11、Q22、Q33,令R=1,则接下来就是通过改变Q11、Q22、Q33的值,即三个状态量在整个性能指标所占比重,来找到一组比较合适的数以使控制效果相对最优。(4)运用Matlab编写M-file求出对应不同Q矩阵权重值的控制向量K,改变权重,便可得到不同的控制向量K,比较对应得到的阶跃响应信号及状态量的变化曲线,分析实验结果。(5)由得到的控制向量K,可知:。结合状态方程,便可画出系统框

3、图,在这里可以用Matlab自带的Simulink工具箱完成,完成结构图后,便可在输入端加入阶跃信号和随机干扰信号,观察系统的性能,包括动态性能和稳态误差等系统参数。(6)重复上述步骤,得到一系列的控制向量K,总结规律,得到比较合适的权重Q,并推断能使性能优良的Q的取值范围。4、完成的实验内容:(1)首先编写实验程序,输入的系统各个矩阵A,B,C,D,改变权重,便可以得到对应的控制向量,其程序代码如下:A=0 1 0;0 0 1;-1 -4 -6;B=0 0 1;C=1 0 0;D=0;Q11=500;Q22=200;Q33=1;Q=diag(Q11,Q22,Q33);R=1;K=lqr(A,

4、B,Q,R);Ac=(A-B*K);Bc=B;Cc=C;Dc=D;T=0:0.005:5;U=1*ones(size(T);Cn=1 0 0 0;Y,X=lsim(Ac,Bc,Cc,Dc,U,T);figure(1);plot(T,Y);hold on;figure(2);plot(T,X(:,1),R);hold on;plot(T,X(:,2),M);hold on;plot(T,X(:,3),K);hold on;legend(X1,X2,X3)上述程序完成的功能是:已知A,B,Q,R,利用lqr()求出控制向量K,利用lsim()得到对应的阶跃信号状态响应和输出响应,并利用plot()

5、画出输出量的阶跃响应变化曲线以及X中三个状态量的变化曲线。(2)利用Simulink画出系统结构框图如下: 其中两个阶跃信号用来产生干扰信号,为时间从5s-6s的单位矩形脉冲信号。可以把它夹在上图中的四个相加节点位置(如上图),以表示干扰加在回路不同的位置,这样输出信号在加入状态调节器后便会有不同的响应曲线。 (3)给出不同的权值矩阵Q以后,运行上述程序,便得到不同的响应曲线,在此例中由于输出量:,所以应该把状态量的对应权重取得较大,分别取全职矩阵Q的值依次如下: (4)运行程序便可得到有上述Q对应的控制向量K,其对应值如下 并且得到了对应的响应曲线如下: 对应的输出响应曲线和状态变化曲线 对

6、应的输出响应曲线和状态变化曲线 对应的输出响应曲线和状态变化曲线 对应的输出响应曲线和状态变化曲线 对应的输出响应曲线和状态变化曲线 对应的输出响应曲线和状态变化曲线 对应的输出响应曲线和状态变化曲线从上面得到的响应曲线可以看出,改变权重值相应的阶跃响应变化不大,但是这并不能代表他们的性能相似,任意的权值都能达到使系统性能满足要求,其实不然,下面对系统加入单位矩阵脉冲干扰,可以发现他们的响应发生了一定的变化,很容易区分其中的优劣指标。(4)已知,利用lqr()函数可以求出对应的控制向量K,下面讨论,不同的K值作用系统后,对于干扰信号不同的输入点得到下列响应曲线,便可知不同的K决定了系统抗干扰能

7、力的强弱。 对应的干扰信号响应曲线 对应的干扰信号响应曲线 对应的干扰信号响应曲线 对应的干扰信号响应曲线 对应的干扰信号响应曲线 对应的干扰信号响应曲线上面各图中,左上方皆为当矩形脉冲干扰加在输出端时的输出响应曲线,右上方皆为矩形脉冲干扰加在通道上的输出响应曲线,左下方皆为当矩形脉冲干扰加在时的输出响应曲线,右下方皆为矩形脉冲干扰加在通道上的输出响应曲线,下图为输入矩形脉冲干扰波形: 由上面列出的各个Q对应下的响应曲线可以看出,当干扰信号加在输出端时,都会经历一次振荡才能回复到初始零状态,但是当Q中Q11,即对应的输出状态量权重加大时,输出的响应曲线明显得到了改善,振荡现象减弱,超调量减少,

8、且,整个调节时间也缩短了,所以,由以上分析可知,如果输出量就是某个状态量,则再设计反馈控制器的时候就优先考虑它的权重,这样当受到干扰时,就能够很快的恢复到零状态,即,当Q11从100到500变化时,显然,对应的输出响应曲线得到了一定的改善。当干扰从通道引入时,若此时只改变Q11的值,随着Q11的逐渐增大,显然输出的调节时间变短,且峰值变小,抗干扰性能逐渐变好,若在得到一定的控制效果后再适当改变Q22,逐渐增大Q22,右上面各图则会发现,进一步改善了输出响应,调节时间进一步缩短,且负的峰值逐渐变小,到最后整个输出响应都不会出现负值,控制效果得到很大的改善。同样,若干扰加在通道上,随着Q11的增大

9、,控制效果得到了改善,系统抗干扰性能明显变好了,同时,在此基础上若增大Q22的值,则会进一步改善性能,但是,与前面一样,如果加大Q33,则会又使得系统性能变差。若干扰出现在控制回路,出现的情况基本相同,唯一的区别就是当加大Q33权值时,输出响应曲线的峰值变小了,但是以牺牲调节时间为代价的。综上所述,当实际设计一个状态反馈控制器时,需要分析干扰的引入量在哪个环节,或者主要影响哪个环节,这样就可以根据实际情况来设计状态反馈向量了,当然,评判一个控制系统的好坏,还要看系统的功能以及系统的最重要的性能指标,如一些事需要小的峰值,一些是需要小的调节时将,一些是需要振荡环节等等,所以设计系统参数就要考虑到

10、多个因素,不仅要考虑外界干扰的存在,同时要考虑控制系统要实现的功能。实验二 无限时间跟踪问题的最优控制MATLAB仿真1.实验目的(1) 通过上机操作,加深最优控制理论知识的理解。(2) 学习并掌握连续线性二次型最优控制的MATLAB实现。(3) 通过上机实验,提高动手能力,提高分析和解决问题的能力。2.实验时间:2010年5月263.实验步骤: (1)实验系统状态方程如下: 性能指标为:根据状态方程求出它的各个矩阵: (2)判定上述两个系统的可控性,分别求的第一个系统的秩判据=2,因此对应的系统可控,可以设计对应的状态调节器。(3)根据从系统中得到的四个状态矩阵,显然,对应的Q=1,取性能指

11、标为:,令R=1,则接下来就是通过改变R的值,控制量在整个性能指标所占比重,来找到一组比较合适的数以使控制效果相对最优。(4)运用Matlab编写M-file求出对应不同R权重值的,改变权重,得到不同的B,P,g三个矩阵,并得到对应的阶跃响应曲线,再根据式可以求得近似最优控制u(t),比较不同的R对应得到的阶跃响应信号及状态量变化曲线,分析实验结果。 (5)由得到的近似最优控制u(t)。结合状态方程,便可画出系统框图,在这里可以用Matlab自带的Simulink工具箱完成,完成结构图后,便可在输入端加入阶跃信号和随机干扰信号,观察系统的性能,包括动态性能和稳态误差等系统参数。(6)重复上述步

12、骤,总结规律,得到比较合适的权重Q,并推断能使跟踪性能优良的R的取值范围。4.完成的实验内容:(1)首先编写实验程序,输入的系统各个矩阵A,B,C,D,改变权重,便可以得到对应的控制向量,其程序代码如下:A=0 1;0 0;B=0 1;C=1 0;D=0;Q=1;R=0.001;yr=1;E=B*inv(R)*B;F=C*inv(Q)*C;P=are(A,E,F);g=inv(P*E-A)*C*Q*yr;L=inv(R)*B*g;K=-inv(R)*B*P;M=A-E*P;y=poly(M);r=roots(y);S=E*inv(P*E-A)*C*Q;T=0:0.005:5;U=1*ones(

13、size(T);Y1,X1=lsim(A+B*K,S,C,D,U,T);Y2,X2=lsim(A,B,C,D,U,T);figure(1);plot(T,Y1);figure(2);plot(T,Y2);figure(3);plot(T,X1(:,1),R);hold on;plot(T,X1(:,2),B);legend(X1,X2)上述程序完成的功能是:已知A,B,Q,R,求出控制向量P,g,B,利用lsim()得到对应的阶跃信号状态响应和输出响应,并利用plot()画出输出量的阶跃响应变化曲线以及X中两个个状态量的变化曲线。(2)利用Simulink画出系统结构框图如下: 其中输入为单位

14、阶跃信号,它经过对应的增益后与控制量u(t)相加,而控制量是将求得的P,g,B矩阵带入上述的式中,便可得到控制量与状态量之间的关系式,这样输出信号在P,B,g变化时便会有不同的响应曲线,其跟踪性能也就不同。(3),给出不同的R,计算出对应的P,B,g矩阵,然后计算出上述系统结构图中的增益量,便可得到输出响应曲线,下面为不同的R值对应的响应曲线: R=1 R=0.5 R=0.3 R=0.1 R=0.05 从以上改变R的权值得到的不同的跟踪曲线,很明显的发现,随着R的减小,跟踪效果越来越好,调节时间越来越短,究其原因,是因为r越小,就是表示越少的考虑控制量能耗的权重,以下为控制量在不同R权重下的波

15、形,便可以看出控制量的变化规律: R=1 R=0.5 R=0.3 R=0.1 R=0.05从上列各图中可以看出,随着R的减少,控制量u(t)也发生了变化,它是逐渐变大的,即耗能是逐渐变大的,所以要想得到很好的跟踪效果就必须消耗更多的能耗才能得以实现,控制量必须要更大的代价才能将输出量与输入量拉近,跟踪效果越好,说明系统的滞后效果就越消弱,这样对于一个实时性要求很高的系统来说,是非常有必要的,然而这种一状态未反馈量的控制系统都存在一个很大的瓶颈,就是状态量必须能得到,即系统必须可观,否则就无法实现控制其的设计,其次,系统可观也不一定能直接设计出控制器,因为系统中可能存在状态量不能直接测量,这时就需要状态观测器来得到对应的状态估值,所以在实际应用中多为理论依据来指导设计实际的控制器。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号