二级倒立摆系统的控制与仿真_第1页
二级倒立摆系统的控制与仿真_第2页
二级倒立摆系统的控制与仿真_第3页
二级倒立摆系统的控制与仿真_第4页
二级倒立摆系统的控制与仿真_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、二级倒立摆系统的控制与仿真一、引言在计算机参与的具有联系受控对象的控制系统中,有必要对联系控制系统设计数字控制器的必要,一般对于联系的控制对象设计数字控制器的方法有:第一种是应用联系系统理论得到的联系控制规律,再将控制规律离散化,用控制器实现,第二种是将联系的控制对象离散化,用离散控制理论设计控制器参数,数字再设计就是根据连续系统及相应的控制规律如何重新设计对应的离散系统与相应的离散控制规律。我们采用的是最优等价准则、双线性变换法、平均增益法进行数字再设计。二、LQR控制器设计(1) 二级倒立摆系统的状态空间模型设线性定常系统为x=A*x(t)+B*u(t),y=C*x(t) 其初始条件为x(

2、t)=x0; 其中:A=0,1,0,0;40,0,0,0;0,0,0,1;-6,0,0,0;B=0;-2;0;0.8;C=1,0,0,0;0,0,1,0(2) 系统的能控性判定n=size(A); Tc=ctrb(A,B); nc=rank(Tc)n=6 6 nc=6从运行结果可知,系统的阶次为6,能控性矩阵的秩也为6,因此系统是能控的。(3) 系统的能观性判定To=obsv(A,C);no=rank(To)no=6从运行结果可知,能观性矩阵的秩为6,与系统的阶次相等,因此系统是能观测的。(4) LQR控制设计基于一级倒立摆系统具有能控性和能观性,因此可采用LQR进行控制,经大量反复试验和仿真

3、,选取R=0.2,Q=1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;F=lqr(A,B,Q,R)得到:F = 2.2361 106.6465 -155.4620 5.1719 4.9639 -24.5330三、仿真曲线 采用LQR控制方式,设初始状态为x(0)=1,-1,0,0,在相同采样周期T下应用数字再设计方法对一级倒立摆系统进行仿真,其中F(T)分别取为:1. F(T)=F1(T)=F2. F(T)=F2(T)=FI+(A+BF)T/23. F(T)=F3(T)=FI-(A+BF)/2

4、-1(1) T=0.013s, øc=e(A+BF)T时系统的极点、状态x1、x2、x3的离散仿真曲线A=0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0;B=0;0;0;1;5.7012;-0.0728;C=1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0;D=0;0;0;Q=1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0

5、0 0;R=0.2;F=lqr(A,B,Q,R)T=0.013;G,H=c2d(A-B*F,B,T); %离散一的函数p0=eig(G),x0=1 -1 0.5 0 0 0'y,x t=dinitial(G,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=1 0 0 0 0 0*x' %响应曲线plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=0 1 0 0 0 0*x'plot(t,x2);grid;title('状态变量x2的响应曲线'

6、)subplot(3,1,3),x3=0 0 1 0 0 0*x'plot(t,x3);grid;title('状态变量x3的响应曲线')p0 = 0.8647 + 0.0473i 0.8647 - 0.0473i 0.9224 + 0.0618i 0.9224 - 0.0618i 0.9932 + 0.0066i 0.9932 - 0.0066i 图1 øc=e(A+BF)T(2) T=0.013s, øc=ø +F1(T)时系统的极点、状态x1、x2、x3的离散仿真曲线A=0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,

7、0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0;B=0;0;0;1;5.7012;-0.0728;C=1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0;D=0;0;0;Q=1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;R=0.2;F=lqr(A,B,Q,R)T=0.013;Ad,B=c2d(A,B,T); %离散二的函数Ad=Ad-B*F;p1=eig(Ad)x0=1 -1 0.5 0

8、0 0'y,x t=dinitial(Ad,B,C,D,x0);t=0:0.1:(t-1)/10;subplot(3,1,1),x1=1 0 0 0 0 0*x' %显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=0 1 0 0 0 0*x'plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=0 0 1 0 0 0*x'plot(t,x3);grid;title('状态变量x3的响应曲线')p

9、1 = 0.8349 + 0.0388i 0.8349 - 0.0388i 0.9247 + 0.0561i 0.9247 - 0.0561i 0.9932 + 0.0066i 0.9932 - 0.0066i图2 øc=ø +F1(T)(3) T=0.013s,øc=ø+F2(T)时系统的极点、F(T)值和状态x1、x2、x3的离散仿真曲线A=0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8186,0,0,0;B=0;0;0;

10、1;5.7012;-0.0728;C=1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0;D=0;0;0;Q=1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;R=0.2;F=lqr(A,B,Q,R)T=0.013;P2=(A-B*F)*T/2; %离散3的函数F2=F*(eye(size(P2)+P2)Add,B=c2d(A,B,T);Ad=Add-B*F2;p2=eig(Ad)x0=1 -1 0.5 0 0 0'y,x,t=dinitial(Ad,B,C,D,x0

11、);t=0:0.1:(t-1)/10; subplot(3,1,1),x1=1 0 0 0 0 0*x' %显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=0 1 0 0 0 0*x'plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=0 0 1 0 0 0*x'plot(t,x3);grid;title('状态变量x3的响应曲线')F2 = 1.7236 90.8365 -126.5481 4.00

12、12 4.5195 -19.9211p2 = 0.8676 + 0.0465i 0.8676 - 0.0465i 0.9224 + 0.0627i 0.9224 - 0.0627i 0.9932 + 0.0066i 0.9932 - 0.0066i图3 øc=ø+F2(T)(4) T=0.013s,øc=ø+F3(T)时系统的极点、F(T)值和状态x1、x2、x3的离散仿真曲线A=0,0,0,1,0,0;0,0,0,0,1,0;0,0,0,0,0,1;0,0,0,0,0,0;0,77.0642,-21.1927,0,0,0;0,-38.5321,37.8

13、186,0,0,0;B=0;0;0;1;5.7012;-0.0728;C=1,0,0,0,0,0;0,1,0,0,0,0;0,0,1,0,0,0;D=0;0;0;Q=1 0 0 0 0 0;0 64 0 0 0 0;0 0 256 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;0 0 0 0 0 0;R=0.2;F=lqr(A,B,Q,R)T=0.013;P3=(A-B*F)*T/2; %离散4的函数F3=F*(eye(size(P3)-P3)-1Add,B=c2d(A,B,T);Ad=Add-B*F3;p3=eig(Ad),y,x,t=dinitial(Ad,B,C,D,x0)

14、;t=0:0.1:(t-1)/10; subplot(3,1,1),x1=1 0 0 0 0 0*x' %显示程序plot(t,x1);grid;title('状态变量x1的响应曲线')subplot(3,1,2),x2=0 1 0 0 0 0*x'plot(t,x2);grid;title('状态变量x2的响应曲线')subplot(3,1,3),x3=0 0 1 0 0 0*x'plot(t,x3);grid;title('状态变量x3的响应曲线')F3 = 1.7779 92.1683 -129.2365 4.123

15、8 4.5459 -20.3464p3 = 0.8655 + 0.0476i 0.8655 - 0.0476i 0.9222 + 0.0622i 0.9222 - 0.0622i 0.9932 + 0.0066i 0.9932 - 0.0066i图4 øc=ø+F3(T)由上面的1-4图我们可以知道:F(T)分别取F1(T),F2(T),F3(T)构成的闭环离散系统时仿真曲线基本一致,相应情况的闭环极点也基本相同,而取F(T)=F3(T)时,从系统的极点看,用øc=ø+F3(T)代替øc=e(A+BF)T 构成闭环系统的精确度相当好。(5) 当

16、T=0.07s时,重新运行上述程序,运行结果及仿真曲线如下:F = 2.2361 106.6465 -155.4620 5.1719 4.9639 -24.5330p0 = 0.4410 + 0.1336i 0.4410 - 0.1336i 0.6133 + 0.2309i 0.6133 - 0.2309i 0.9635 + 0.0344i 0.9635 - 0.0344ip1 = -1.6200 0.4446 0.6537 + 0.1930i 0.6537 - 0.1930i 0.9634 + 0.0345i 0.9634 - 0.0345iF2 = -0.5233 21.5158 0.22

17、83 -1.1321 2.5709 0.3004p2 = 1.5961 0.4379 0.6521 + 0.1966i 0.6521 - 0.1966i 0.9634 + 0.0345i 0.9634 - 0.0345iF3 = 0.6369 51.2148 -58.6229 1.4954 3.2064 -9.0394p3 = 0.5960 + 0.3519i 0.5960 - 0.3519i 0.5336 + 0.1127i 0.5336 - 0.1127i 0.9636 + 0.0342i 0.9636 - 0.0342i图5 T=0.07s,øc=e(A+BF)T仿真曲线 图6

18、 T=0.07s,øc=ø+F1(T)仿真曲线图7 T=0.07s,øc=ø+F2(T)仿真曲线图8 T=0.07s,øc=ø+F3(T)时仿真曲线由以上图5-8可知,当F(T)取F1(T)或F2(T)构成闭环离散系统时,仿真曲线已经发散,系统变得不稳定了,而用F(T)= F3(T)构成闭环离散系统时,该仿真曲线与øc=e(A+BF)T时系统的仿真曲线基本一致,并且相应的闭环极点仍保持一定的精度。五、结束语从两次仿真结果可知,当采样时间很小时,人们通常用连续系统的状态反馈矩阵F构成闭环离散系统,这没有多大问题。但是随着采样时间的增大,仍采取这种方法,则闭环系统的状态响应变坏,甚至出现不稳定现象。这时应用闭环系统离

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论