单倒置摆控制系统的状态空间建模及MATLAB仿真_第1页
单倒置摆控制系统的状态空间建模及MATLAB仿真_第2页
单倒置摆控制系统的状态空间建模及MATLAB仿真_第3页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、单倒置摆控制系统的建模及MATLAB仿真背景:单倒置摆系统是一个不稳定系统,当给系统施加外力时,倒置摆向左或向右倾倒,影响系统稳定,同时单倒置摆系统典型的高阶次、多变量、严重不稳定和强耦合的非线性系统。本文通过建立单倒置摆系统的数学模型 , 应用状态反馈控制配置系统极点设计单倒置摆系统的控制器, 实现其状态反馈 , 从而使单倒置摆系统稳定工作。再通过 MATLAB软件中 Simulink 工具对单倒置摆的运动进行计算机仿真。首先分别用经典控制理论和现代控制理论的知识推导了单倒置摆系统的数学模型;其次分别使用模糊控制理论、 状态空间法、模糊控制等方法对单级单倒置摆系统进行了实际系统实时控制效果的

2、实验对比, 从理论和实验方法上讨论了这类典型非线性自不稳定系统的线性控制器的设计方法及其实际控制效果的特点;最后提出了单倒置摆控制系统各部分选型及实现方案, 设计了单倒置摆系统的机械构。问题:本文就当倒置摆无论出现向左或向右倾倒时,通过控制直流电动机,使小车在水平方向运动,倒置摆能否保持在垂直位置上为问题进行研究。以此问题为核心,就单倒置摆系统进行分析和研究, 建立单倒置摆系统的数学模型 , 采用状态反馈极点配置的方法设计控制器, 并应用 MATLAB软件进行仿真。论述:一、单倒置摆系统的建模1. 系统的物理模型如图 1 所示 , 设摆的长度为L、质量为m,用铰链安装在质量为 M的小车上。小车

3、由一台直流电动机拖动,在水平方向对小车施加控制力f=u, 相对参考系产生位移x=z. 若不给小车施加控制力,则倒置摆会向左或向右倾倒。这样,整个单倒置摆系统就受到重力图 1,水平控制力和摩擦力的3 个外力的共同作用。2. 系统的数学模型在系统数学模型中,忽略摆杆质量、执行电动机惯性以及摆轴、轮轴=轮与接触面之间的摩擦及风力。设小车瞬时位置为x=z, 倒置摆出现的偏角为,则摆心瞬时位置为(z+lsin)。在控制力u 作用下,小车及摆均产生加速运动。根据牛顿第二定律,在水平直线运动方向的惯性力应与控制力u 平衡,求得系统的运动方程为:d 2 zdMdt2m dt22( zl sin)u即 (M m

4、)z ml cos ml 2 sin u(1)由于绕摆轴旋转运动的惯性力矩应与重力矩平衡,因而有m d dt22( zsin)l cosmglsin即z cosl cos 2l sin cosg sin( 2)方程( 1),( 2)是非线性方程,由于控制的目的是保持单倒置摆直立,因此,在施加合适u 的条件下,可认为 均接近零,此时 , ,且可忽略项,于是得到倒置摆系统的数学模型:( Mm) zmlu( 3)z lg( 4)联立求解式(3)、(4),可得zmg1u( 5)MM( Mm )1u(6)MlgMl消去中间变量,可得到输入量为u、输出量为z 的微分方程为z 4( Mm ) gz1ugu(

5、7)MlMMl3. 系统的状态方程选取小车的位移z 及其速度、摆的角位置及其角速度作为状态变量, z 为输出变量,并考虑d z z ,ddt,以及式( 5)、(6)、( 7),则一级单倒置摆系统的状态方程为:dt0100000mg01MMux0 01 x( 8a)0000( M m)g01MlMly100 0 x(8b)式中xzzT为方便研究,假定系统的参数 M=1kg,m=0.1kg,l=1m, g9.81m / s2, 则系统状态方程中参数矩阵为:0100000101100 0(9)A00, b, c010001101此时倒置摆的状态空间模型表达式为:010000010x1x001u( 1

6、0)00001101y1000 x其系统的结构图如下:图 1单倒置摆开环系统结构图4. 被控对象特性分析1. 能控性分析根据能控性的秩判据,并将式(9)的有关数据带入该判据,可得rank Mrank bAbA 2 bA 3b4( 11)因此,单倒置摆的运动状态是可控的。换句话说, 这意味着总存在一控制作用u, 将非零状态x 转移到零。仿真 :代码: A=0,1,0,0,;0,0,-1,0;0,0,0,1;0,0,11,0;b=0;1;0;-1;c=1,0,0,0;d=0;N=size(A);n=N(1);sys0=ss(A,b,c,d);S=ctrb(A,b);f=rank(S);if f=n

7、disp('系统能控 ')elsedisp('系统不能控 ')end结果截图:系统能控2. 稳定性分析由单倒置摆系统的状态方程,可求的其特征方程为:IA2 ( 211) 0(12)解得特征值为0,0 ,11 ,-11 。四个特征值中存在一个正根,两个零根,这说明单倒置摆系统,即被控系统不稳定的。仿真 :采用 matlab 对被控对象进行仿真, 如下图所示为倒摆没有添加任何控制器下四个变量的单位阶跃响应。如图可知,系统不稳定,不能到达控制目的。代码:A=0,1,0,0,;0,0,-1,0;0,0,0,1;0,0,11,0;b=0;1;0;-1;c=1,0,0,0;

8、d=0;sys0=ss(A,b,c,d);>> t=0:5;>> y,t,x=step(sys0,t);>> subplot(2,2,1);>> plot(t,x(:,1);grid>> xlabel('t(s)');ylabel('x(t)');>> title('z');>> subplot(2,2,2);>> plot(t,x(:,2);grid;>> xlabel('t(s)');ylabel('x(t)&#

9、39;);>> title('z的微分 ');>> subplot(2,2,3);>> plot(t,x(:,3);grid>> xlabel('t(s)');ylabel('x(t)');>> title('theta')>> subplot(2,2,4);>> plot(t,x(:,4);grid>> xlabel('t(s)');ylabel('x(t)');>> title('

10、theta的微分 ')结果:图 2单倒置摆开环系统的个变量的阶跃响应曲线由上面两个方面对系统模型进行分析,可知被控系统是具有能控性的,但是被控系统是不稳定的,需对被控系统进行反馈综合,使四个特征值全部位于根平面S 左半平面的适当位置,以满足系统的稳定工作已达到良好、静态性能的要求。因此我们需要设计两种控制器方案来使系统到达控制的目的,分别为:全维状态观测器的设计和降维观测器的设计。五 两个方案1. 单倒置摆全状态反馈采用全状态反馈。取状态变量z 、 z 、为反馈信号,状态控制规律为uvkx( 13)设kk0k1k2k3式中,k0 k3 分别为z 、 z 、反馈至参考输入v的增益。则闭环

11、控制系统的状态方程为x(Abk )xbv设置期望闭环极点为-1 ,-2 ,-1+i,-1-i由 matlab 可求得:k0 =, k1 =-1 , k 2 =, k3 =-6如下图画出状态反馈系统结构图:图 3单倒置摆全反馈系统结构图仿真:代码: A=0,1,0,0,;0,0,-1,0;0,0,0,1;0,0,11,0;b=0;1;0;-1;c=1,0,0,0;d=0;N=size(A);n=N(1);sys0=ss(A,b,c,d);P_s=-1,-2,-1+i,-1-i;k=acker(A,b,P_s)A1=A-b*k;sys=ss(A1,b,c,d);t=0:5;y,t,x=step(s

12、ys,t);>> subplot(2,2,1);plot(t,x(:,1);gridxlabel('t(s)');ylabel('x(t)');title('z');subplot(2,2,2);plot(t,x(:,2);grid;xlabel('t(s)');ylabel('x(t)');title('z的微分 ');subplot(2,2,3);plot(t,x(:,3);gridxlabel('t(s)');ylabel('x(t)');title

13、('theta')subplot(2,2,4);plot(t,x(:,4);gridxlabel('t(s)');ylabel('x(t)');title('theta的微分 ')>> t=0:10;y,t,x=step(sys,t);subplot(2,2,1);plot(t,x(:,1);gridxlabel('t(s)');ylabel('x(t)');title('z');subplot(2,2,2);plot(t,x(:,2);grid;xlabel('

14、t(s)');ylabel('x(t)');title('z的微分 ');subplot(2,2,3);plot(t,x(:,3);gridxlabel('t(s)');ylabel('x(t)');title('theta')subplot(2,2,4);plot(t,x(:,4);gridxlabel('t(s)');ylabel('x(t)');title('theta的微分 ')结果:k =图 4单倒置摆全状态反馈的阶跃响应曲线如仿真图可知,单倒置摆的

15、全状态反馈为稳定的闭环系统。观察仿真曲线:单位阶跃的作用下,输出变量逐渐趋于某一常数,状态变量则是逐渐趋于0。当参考输入v 单位阶跃时,状态向量在单位阶跃的作用下相应逐渐趋于稳定,这时摆杆回到原始位置(即=0),小车也保持稳定(即z=某一常数)。如果不将4 个状态变量全用作反馈,该系统则不能稳定。方案一:全维观测器的设计为实现单倒置摆控制系统的全状态反馈,必须获取系统的全部状态,即z、 z 、的信息。因此,需要设置z、 z 、的四个传感器。在实际的工程系统中往往并不是所有的状态信息都是能检测到的,或者,虽有些可以检测,但也可能由于检测装置昂贵或安装上的困难造成难于获取信息,从而使状态反馈在实际

16、中难于实现,甚至不能实现。在这种情况下设计全维状态观测器,解决全维状态反馈的实现问题。(1)判定系统状态的能观测性将式( 9)中的数值代入能观测性秩判据,得:rank Nrank cTA T cT(A T ) 2 cT( A T ) 3 cT4(14)或者由 matlab 中的 obsv(A,c)命令来求秩, 可得秩为4(见仿真 )。可见被控系统的4 个状态均是可观测的,即意味着其状态可由一个全维(四维)状态观测器给出估值。其中,全维观测器的运动方程为?Gy(15)x ( AGC )x Bu式中GTg 0g 1 g 2g 3全维观测器已G配置极点,决定状态向量估计误差衰减的速率。设置状态观察器

17、的期望闭环极点为-2 ,-3,-2+i,-2-i 。由于最靠近虚轴的希望闭环极点为-2 ,这意味着任一状态变量估计值至少以e 2 t 规律衰减。由 matlab 可求的出 G:g0 =9, g1 =42, g2 =-148 , g3 =-492根据计算值可画出结构图仿真:代码 1:A=0,1,0,0,;0,0,-1,0;0,0,0,1;0,0,11,0;b=0;1;0;-1;c=1,0,0,0;d=0;>> V=obsv(A,c);m=rank(V);if m=ndisp('系统能观 ')elsedisp('系统不能观 ')end结果 1:代码 2:

18、A=0,1,0,0,;0,0,-1,0;0,0,0,1;0,0,11,0;b=0;1;0;-1;c=1,0,0,0;d=0;N=size(A);n=N(1);sys0=ss(A,b,c,d);P_s=-1,-2,-1+i,-1-i;P_o=-2,-3,-2+i,-2-i;k=acker(A,b,P_s)g=(acker(A',c',P_o)'A1=A ,-b*k;g*c,A-b*k-g*c;b1=b;b;c1=c zeros(1,4);d1=0;sys=ss(A1,b1,c1,d1);t=0:10;y,t,x=step(sys,t);figure(1);plot(t,x

19、(:,1:4),'-');gridxlabel('t(s)');ylabel('x(t)');figure(2);plot(t,x(:,5:8),'-');gridxlabel('t(s)');ylabel('x(t)');figure(3)>> subplot(4,1,1); plot(t,(x(:,1)-x(:,5);grid ylabel('z'); subplot(4,1,2); plot(t,(x(:,2)-x(:,6);gridylabel('z的微分

20、 ');subplot(4,1,3);plot(t,(x(:,3)-x(:,7);gridylabel('theta');>> figure(3)>> subplot(4,1,1);>> plot(t,(x(:,1)-x(:,5);grid>> subplot(4,1,2); plot(t,(x(:,2)-x(:,6);gridylabel('z的微分 ');>> subplot(4,1,3); plot(t,(x(:,3)-x(:,7);gridylabel('theta');

21、>> subplot(4,1,4);>> plot(t,(x(:,4)-x(:,8);grid>> ylabel('theta的微分 ');结果:状态反馈下的状态变量的阶跃响应曲线图 6状态反馈下的状态变量的阶跃响应曲线注:“ ”表示z 的阶跃响应;“ ”表示z 的阶跃响应“ ”表示的阶跃响应;“ ”表示的阶跃响应;。带全维观测器的状态反馈下的状态变量的阶跃响应图 7带全维观测器的状态反馈下的状态变量的阶跃响应曲线注:同上。系统状态与全维观测器得到的估计状态之间的误差曲线图 8系统状态与全维观测器得到的估计状态之间的误差曲线由上图可知,全维状

22、态观测器观测到的4 个变量的阶跃响应曲线与全状态反馈时的阶跃响应曲线基本相似(如图 6 与图 7 所示),但是二者还是有误差的,只不过误差很小(如系统状态与全维观测器得到的估计状态之间的误差曲线图8 所示,它们的误差都在10 10 级别的,很小),全维状态观测器所得的性能基本满足要求(系统能控且稳定),但是由于观测器的数目多,导致中间过程的损耗也大。实际上,本系统中的小车位移 z ,可由输出传感器获得,因而无需估计,可以设计降维观测器,这样可减小误差)。方案二:降维观测器的设计由于单倒置摆控制系统中的小车位移,可由输出传感器测量,因而无需估计,可以设计降维(3 维)状态的观测器。通过重新排列被

23、控系统状态变量的次序,把需由降维状态观测器估计变量与输出传感器测得的状态变量分开,也就是说,将z 作为第四个状态变量,则按照被控系统的状态和输出方程可变换为:z0100z1d0010(16)0dt01100u1z1000z0zy000 10简记为x 1A 11A 12x 1b 1u(17)x 2A 21A 22x 2b 2式中y y0I 1x1x2z010,A120, b1x 1, A1100100011001x 2z y , A 211 0 0A220 , b 20, I11 ,故单倒置摆三维子系统动态方程为z010z1( 18)d0010dtu01101z( 19)z100使用 matla

24、b 对其的观测性检查,结果是客观的。因为降维状态观测器动态方程的一般形式为w ( A 11 h A 21 ) w ( b 1 h b 2 )u ( A 11 hA 21 ) h A 12 h A 22 y( 20)?wh yx 1式中, hh0h1h2T 。使用 matlab可求出降维状态观测器特征多项式为I(A 11h A 21 )32( 11 h1 )( 11 h0 h 2 )h0设期望的观测器闭环极点为-3 ,2i ,则由 matlab仿真可得,期望特征多项式为(3)(2i )(2i )37 21715由 matlab 可得, h0 =7, h1 =-28 , h2 =-92所以由 ma

25、tlab 的仿真可得降维观测器的动态方程为710121w2801w0u104y9211013367?w28x 1xy0y921( 21)( 22)( 23)( 24)( 25)使用降维状态观测器实现状态反馈的的单倒置摆系统结构图simulink连接的仿真图 所示。仿真:代码:A=0,-1,0,0;0,0,1,0;0,11,0,0;1,0,0,0;b=1;0;-1;0;c=0,0,0,1;d=0;N=size(A);n=N(1);sys=ss(A,b,c,d);S=ctrb(A,b)f=rank(S);if f=ndisp('系统能控 ')elsedisp('系统不能控

26、')endV=obsv(A,c);m=rank(V);if m=ndisp('系统能观 ')elsedisp('系统不能观 ')endP_s=-1,-2,-1+i,-1-i;k=acker(A,b,P_s);syms h0 h1 h2syms sh=h0;h1;h2;A11=0,-1,0;0,0,1;0,11,0;A12=0;0;0;P=-3,-2+i,-2-i;A22=0;A21=1,0,0;eq=collect(det(s*eye(3)-(A11-h*A21),s)systemeq=expand(s-P(1)*(s-P(2)*(s-P(3)h0,h1

27、,h2 =sOlve('h0=7','-11-h1=17','-11*h0-h2=15')h=h0;h1;h2;AW=(A11-h*A21)b1=1;0;-1;b2=0;BU=b1-h*b2BY=(A11-h*A21)*h+A12-h*A22结果:其中, AW、BU、BY分别为降维观测器的动态方程中w、 u、 y 的系数矩阵。使用 MATLAB中 simulink连接的仿真图:图 9单倒置摆全反馈的降全维观测器的结构图仿真结果截图:(1)降维状态观测器时,变量z 以及变量z 的阶跃响应曲线(2)降维状态观测器时,变量以及变量的阶跃响应曲线观察上面

28、的仿真图可知,在给系统状态全反馈加上降维观测器之后,单位阶跃的作用下,小车的位移z 逐渐趋于一个常数(即) ,而倒置摆出现的偏角也逐渐趋于0,可见带降维观测器的系统是一个稳定的系统,同时在性能方面符合空间的设计要求。六 分析比较两种设计方案的性能单倒置摆原系统(即开环系统)不稳定的,因此我们设计了单倒置摆全状态反馈系统,由仿真图(即状态反馈下的状态变量的阶跃响应曲线)可知,单倒置摆的全状态反馈系统是稳定的,为了获取 4 个状态变量z、 z 、,我们为单倒置摆的全状态反馈系统设计两种观测器:全维状态观测器和降维状态观测器。使用 matlab 做出两种不同的观测器下两个状态变量z、的单位阶跃响应曲

29、线(另外两个变量分别为他们的微分,故这里可以不用在比较了)。如下图所示为simulink仿真图(方法:将两种观测器的下的simulink仿真图的状态变量通总线的方式连接到示波器scope 上便可观测到变量单位阶跃响应曲线的比较图了)图 10比较全维观测器与降全维观测器性能的结构图图仿真截图:变量 z 在使用不同观测器下的单位阶跃响应曲线比较图:图 11 变量 z 在使用不同观测器下的单位阶跃响应曲线比较图注:黄色曲线“ ”为全维观测器下的;紫色曲线“ ”为全维观测器下的。变量在使用不同观测器下的单位阶跃响应曲线比较图:注:黄色曲线“ ”为全维观测器下的;紫色曲线“ ”为全维观测器下的。图 12 变量在使用不同观测器下的单位阶跃响应曲线比较图比较两种不同的观测器

温馨提示

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

评论

0/150

提交评论