《单倒置摆的状态空间设计》由会员分享,可在线阅读,更多相关《单倒置摆的状态空间设计(21页珍藏版)》请在金锄头文库上搜索。
1、现代控制理论基础期中设计作业名称:倒置摆控制系统状态的状态空间设计班级:学号:姓名:倒置摆控制系统状态的状态空间设计一立题背景如图 1 所示,为单倒置摆系统的原理图。设摆的长度为L、质量为m ,用铰链安装在质量为 M的小车上。小车有一台直流电动机拖动,在水平方向对小车施加控制力u, 相对参考系产生位移z。若不给小车施加控制力,则倒置摆会向左或向右倾倒,因此,它是一个不稳定系统。控制的目的是,当倒置摆无论出现向左或向右倾倒时,通过控制直流电动机,使小车在水平方向运动,将倒置摆保持在垂直位置上。图 1 二抽象出研究对象为简化问题, 工程上可以忽略一些次要因素。在本例中, 我们为了简化问题,方便研究
2、系统空间的设计问题,忽略了摆杆质量、执行电动机惯性以及摆轴、轮轴、轮与接触面之间的摩擦及 风力 。设小 车的 瞬时 位置为z, 倒置 摆出现 的偏 角为 ,则 摆心 瞬时 位置为)sin(lz。在控制力u 的作用下,小车及摆均产生加速运动,根据牛顿第二定律,在水平直线运动方向的惯性力应与控制力u 平衡,则有ulz dtdm dtzdM)sin(2222即umlmlzmMsincos)(2(1) 由于绕摆旋转运动的惯性力矩应与重力矩平衡,因而有s i nc o s)s i n(22m g llz dtdm即s i nc o ss i nc o sc o s2gllz( 2)式( 1) 、式( 2
3、)两个方程都是非线性方程,需作线性化处理。由于控制的目的是保持倒置摆直立,因此,在施加合适u 的条件下,可以认为、均接近于零,此时sin,1cos, 且可以忽略2项,于是有umlzmM)(( 3)glz( 4)连联立求解式(3) 、式( 4) ,可得u MMmgz1( 5)u Mlg MlmM1)(( 6)消去中间变量 ,可得输入量为u、输出量为z 的微分方程为u Mlgu Mz MlgmMz1)(4( 7)综合上述的分析,可抽象出系统的研究对象为:位移 z、小车的速度z、摆的角速度 及其角速度的。系统的研究对象抽象成这四个四个变量建立空间状态方程,并分析被控对象的特性。三建立倒置摆的状态空间
4、模型再上一步中,我们已经选取了四个研究对象作为状态变量,它们分别为:位移z、小车的速度z、摆的角速度 及其角速度的。Z 为输出变量,在考虑zz dtd, dtd以及式( 5) 、 (6) 、 (7) ,可列出倒置摆的状态空间模型表达式为:uMlMMlgmMMmg10100)(0010000000010xx(8a)x0001y(8b) 式中T zzx为方便研究, 假定系统的参数M=1kg,m=0.1kg,l=1m,2/81.9smg, 则系统状态方程中参数矩阵为:01100100001000010A,1010b,0001c( 9)此时倒置摆的状态空间模型表达式为:u101001100100001
5、000010xx(10)x0001y其系统的结构图如下:图 1 单倒置摆开环系统结构图四 对模型进行分析(即对被控对象进行分析)以及相应仿真在建立完模型后我们需要对模型进行分析。作为被控制的倒置摆, 当它向左或向右倾倒时,能否通过控制作用使它回复到原直立位置,这取决于其能控性。因此我们首先分析它的能控性。1.能控性分析根据能控性的秩判据,并将式(9)的有关数据带入该判据,可得4bAbAAbbM32rankrank(11)因此,单倒置摆的运动状态是可控的。换句话说,这意味着总存在一控制作用u, 将非零状态x转移到零。仿真 :代码: A=0,1,0,0,;0,0,-1,0;0,0,0,1;0,0,
6、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 disp(系统能控 ) else disp(系统不能控 ) end 结果截图:2.稳定性分析由单倒置摆系统的状态方程,可求的其特征方程为:0)11(22AI(12)解得特征值为0,0 ,11 ,-11 。四个特征值中存在一个正根,两个零根,这说明单倒置摆系统,即被控系统不稳定的。仿真 :采用matlab对被控对象进行仿真,如下图所示为倒摆没有添加任何控制器下四个变量的单位阶跃响应。如图可知,系统不稳定,
7、不能到达控制目的。代码: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);grid xlabel(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);
8、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(theta的微分 ) 结果:图 2 单倒置摆开环系统的个变量的阶跃响应曲线由上面两个方面对系统模型进行分析,可知被控系统是具有能控性的,但是被控系统是不稳定的,需对被控系统进行反馈综合,使四个特征值全部位于根平面S左半平面的适当位置,以满足系统的稳定工作已达到良好、静态性能的要求。因此我们需要设计两种控制器方案来使系统到达控制的目的,分别为:全维状态观测器的设计和降维观测器的设计
9、。五 两个方案1.单倒置摆全状态反馈采用全状态反馈。取状态变量z、z、 、为反馈信号,状态控制规律为kxvu(13)设3210kkkkk式中,30 kk分别为 z、z、反馈至参考输入v 的增益。则闭环控制系统的状态方程为vbxbkAx)(设置期望闭环极点为-1,-2 ,-1+i,-1-i 由 matlab 可求得:0k=-0.4,1k =-1,2k =-21.4 ,3k=-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
10、);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);grid xlabel(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)
11、;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(theta 的微分 ) t=0:0.01:10; y,t,x=step(sys,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); title(z 的微分 );
12、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(theta 的微分 ) 结果:k = -0.4000 -1.0000 -21.4000 -6.0000 图 4 单倒置摆全状态反馈的阶跃响应曲线如仿真图可知,单倒置摆的全状态反馈为稳定的闭环系统。观察仿真曲线: 单位阶跃的作用下, 输出变量逐渐趋于某一常数,状态变量 则是逐渐趋于0。当参考输入v 单位阶跃时,状态向量在单
13、位阶跃的作用下相应逐渐趋于稳定,这时摆杆回到原始位置(即 =0) ,小车也保持稳定(即z=某一常数)。如果不将4 个状态变量全用作反馈,该系统则不能稳定。方案一:全维观测器的设计为实现单倒置摆控制系统的全状态反馈,必须获取系统的全部状态,即z、z、的信息。因此,需要设置z、z、的四个传感器。在实际的工程系统中往往并不是所有的状态信息都是能检测到的,或者, 虽有些可以检测,但也可能由于检测装置昂贵或安装上的困难造成难于获取信息,从而使状态反馈在实际中难于实现,甚至不能实现。 在这种情况下设计全维状态观测器,解决全维状态反馈的实现问题。(1)判定系统状态的能观测性将式( 9)中的数值代入能观测性秩
14、判据,得:4)()(TTTTTTrankrankcAcAcAcN32T(14)或者由 matlab 中的 obsv(A,c)命令来求秩,可得秩为4(见仿真 ) 。可见被控系统的4 个状态均是可观测的,即意味着其状态可由一个全维(四维)状态观测器给出估值。其中,全维观测器的运动方程为GyBuxGCAx?)(?(15)式中Tgggg3210G全维观测器已G配置极点,决定状态向量估计误差衰减的速率。设置状态观察器的期望闭环极点为-2 ,-3,-2+i,-2-i。由于最靠近虚轴的希望闭环极点为-2 ,这意味着任一状态变量估计值至少以te2规律衰减。由 matlab 可求的出 G:0g=9,1g =42
15、,2g=-148 ,3g=-492 根据计算值可画出结构图图 5 单倒置摆全反馈的全维观测器的结构图仿真:代码 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=n disp(系统能观 ) else disp(系统不能观 ) 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; 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:0.01:10; y,t,x=step(sys,t); figure(1); plot(t,x(:,1:4),