现代控制理论课程设计题目:单倒置摆控制系统的状态空间设计学院:专业班级:姓名:学号:指导教师:设计日期:2011.5.20一、设计题目及原理图如图1所示,为单倒置摆系统的原理图。设摆的长度为、质量为m,用铰链安装在质量为M的小车上。小车有一台直流电动机拖动,在水平方向对小车施加控制力u,相对参考系产生位移z。若不给小车施加控制力,则倒置摆会向左或向右倾倒,因此,它是一个不稳定系统。控制的目的是,当倒置摆无论出现向左或向右倾倒时,通过控制直流电动机,使小车在水平方向运动,将倒置摆保持在垂直位置上。二、倒置摆的状态空间方程为简化问题,工程上可以忽略一些次要因素。在本例中,我们为了简化问题,方便研究系统空间的设计问题,忽略了摆杆质量、执行电动机惯性以及摆轴、轮轴、轮与接触面之间的摩擦及风力。设小车的瞬时位置为z,倒置摆出现的偏角为θ,则摆心瞬时位置为)sin(lz。在控制力u的作用下,小车及摆均产生加速运动,根据牛顿第二定律,在水平直线运动方向的惯性力应与控制力u平衡,则有ulzdtdmdtzdM)sin(2222即umlmlzmMsincos)(2(1)由于绕摆旋转运动的惯性力矩应与重力矩平衡,因而有sincos)sin(22mgllzdtdm即sincossincoscos2gllz(2)式(1)、式(2)两个方程都是非线性方程,需作线性化处理。由于控制的目的是保持倒置摆直立,因此,在施加合适u的条件下,可以认为、均接近于零,此时sin≈,1cos,且可以忽略2项,于是有MZu图1单倒置摆系统的原理图mLumlzmM)((3)z+l=g(4)连联立求解式(3)、式(4),可得uMMmgz1(5)uMlgMlmM1)((6)消去中间变量θ,可得输入量为u、输出量为z的微分方程为uMlguMzMlgmMz1)(4(7)综合上述的分析,可抽象出系统的研究对象为:位移z、小车的速度z、摆的角速度θ及其角速度的。系统的研究对象抽象成这四个变量后,接下来就可以根据前面的方程为这四个变量建立空间状态方程,并分析被控对象的特性。三、建立倒置摆的状态空间模型再上一步中,我们已经选取了四个研究对象作为状态变量,它们分别为:位移z、小车的速度z、摆的角速度θ及其角速度的。Z为输出变量,在考虑zzdtd,dtd以及式(5)、(6)、(7),可列出倒置摆的状态空间模型表达式为:uMlMMlgmMMmg10100)(0010000000010xx(8a)x0001y(8b)式中Tzzx为方便研究,假定系统的参数M=1kg,m=0.1kg,l=1m,2/81.9smg,则系统状态方程中参数矩阵为:01100100001000010A,1010b,0001c(9)此时倒置摆的状态空间模型表达式为:u101001100100001000010xxx0001y四、对模型进行分析(即对被控对象进行分析)以及相应仿真在建立完模型后我们需要对模型进行分析。作为被控制的倒置摆,当它向左或向右倾倒时,能否通过控制作用使它回复到原直立位置,这取决于其能控性。因此我们首先分析它的能控性。1.能控性分析根据能控性的秩判据,并将式(9)的有关数据带入该判据,可得4bAbAAbbM32rankrank(10)因此,单倒置摆的运动状态是可控的。换句话说,这意味着总存在一控制作用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);iff==ndisp('系统能控')elsedisp('系统不能控')end结果截图:2.稳定性分析由单倒置摆系统的状态方程,可求的其特征方程为:0)11(22AI(11)解得特征值为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];d=0;sys0=ss(A,b,c,d);t=0:0.01:5;[y,t,x]=step(sys0,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('\theta')subplot(2,2,4);plot(t,x(:,4));gridxlabel('t(s)');ylabel('x(t)');title('\theta的微分')仿真结果如下:由上面两个方面对系统模型进行分析,可知被控系统是具有能控性的,但是被控系统是不稳定的,需对被控系统进行反馈综合,使四个特征值全部位于根平面S左半平面的适当位置,以满足系统的稳定工作已达到良好、静态性能的要求。因此我们需要设计两种控制器方案来使系统到达控制的目的,分别为:全维状态观测器的设计和降维观测器的设计。3、单倒置摆系统的综合采用全状态反馈。取状态变量z、z、θ、为反馈信号,状态控制规律为kxvu(12)设3210kkkkk式中,30~kk分别为z、z、θ、反馈至参考输入v的增益。则闭环控制系统的状态方程为vbxbkAx)(设置期望闭环极点为-1,-2,-1+i,-1-i由MATLAB可求得:0k=-0.4,1k=-1,2k=-21.4,3k=-6如下图画出状态反馈系统结构图:相应的Scope图形如下:仿真的代码如下: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:0.01:5;[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('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的微分')t=0:0.01: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('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=-0.4000-1.0000-21.4000-6.0000图单倒置摆全状态反馈的阶跃响应曲线如仿真图可知,单倒置摆的全状态反馈为稳定的闭环系统。观察仿真曲线:单位阶跃的作用下,输出变量逐渐趋于某一常数,状态变量θ则是逐渐趋于0。当参考输入v单位阶跃时,状态向量在单位阶跃的作用下相应逐渐趋于稳定,这时摆杆回到原始位置(即θ=0),小车也保持稳定(即z=某一常数)。如果不将4个状态变量全用作反馈,该系统则不能稳定。五、设计方案方案一:全维观测器的设计为实现单倒置摆控制系统的全状态反馈,必须获取系统的全部状态,即z、z、θ、的信息。因此,需要设置z、z、θ、的四个传感器。在实际的工程系统中往往并不是所有的状态信息都是能检测到的,或者,虽有些可以检测,但也可能由于检测装置昂贵或安装上的困难造成难于获取信息,从而使状态反馈在实际中难于实现,甚至不能实现。在这种情况下设计全维状态观测器,解决全维状态反馈的实现问题。(1)判定系统状态的能观测性将式(9)中的数值代入能观测性秩判据,得:4)()(TTTTTTrankrankcAcAcAcN32T故北控系统的4个状态均是可观测的。这意味着,其状态可由一个全维(四维)状态观测器给出估值。GyBuxGCAxˆ)(ˆ式中Tgggg3210G全维观测器已G配置极点,决定状态向量估计误差衰减的速率。设置状态观察器的期望闭环极点为-2,-3,-2+i,-2-i。由于最靠近虚轴的希望闭环极点为-2,这意味着任一状态变量估计值至少以te2规律衰减。由MATLAB可求的出G:0g=9,1g=42,2g=-148,3g=-492为实现单倒置摆控制系统的全状态反馈,必须获取系统的全部状态,即z、z、θ、的信息。因此,需要设置z、z、θ、的四个传感器。在实际的工程系统中往往并不是所有的状态信息都是能检测到的,或者,虽有些可以检测,但也可能由于检测装置昂贵或安装上的困难造成难于获取信息,从而使状态反馈在实际中难于实现,甚至不能实现。在这种情况下设计全维状态观测器,解决全维状态反馈的实现问题。使用simulink仿真图:全维状态观测器实现状态反馈的结构图:相应的Scope显示如下:仿真的代码如下:代码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);ifm==ndisp('系统能观')elsedisp('系统不能观')end结果1:代码2: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)h=(acker(A',c',P_s))'A1=[A,-b*k;h*c,A-b*k-h*c];b1=[b;b];c1=[czeros(1,4)];