首页 考试资料幻灯片工程技术公务员考试小学教学中学教学大学教学外语资料
倒立摆全套资料 word g格式


3.1.2 系统阶跃响应分析
上面已经得到系统的状态方程,先对其进行阶跃响应分析,在 MATLAB 中 键入以下命令: clear; A=[ 0 1 0 000 000 0 0 29.4 B=[ 0 1 0 C=[ 1 0 0 010 D=[ 0 0 ]'; step(A, B ,C ,D) 0; 0; 1; 0]; 3]'; 0; 0];

得到如下计算结果:

?Googol 2005

35

第 3 章 直线倒立摆建模、仿真及实验

图 3-3 直线一级倒立摆单位阶跃响应仿真

可以看出,在单位阶跃响应作用下,小车位置和摆杆角度都是发散的。

?Googol 2005

36

第 3 章 直线倒立摆建模、仿真及实验

3.1.3 直线一级倒立摆根轨迹控制实验
闭环系统瞬态响应的基本特性与闭环极点的位置紧密相关,如果系统具有可 变的环路增益,则闭环极点的位置取决于所选择的环路增益,从设计的观点来看, 对于有些系统,通过简单的增益调节就可以将闭环极点移到需要的位置,如果只 调节增益不能满足所需要的性能时,就需要设计校正器,常见的校正器有超前校 正、滞后校正以及超前滞后校正等。

3.1.3.1根轨迹分析
前面我们已经得到了倒立摆系统的开环传递函数,输入为小车的加速度,输 出为倒立摆系统摆杆的角度,被控对象的传递函数为: ?(s) V (s) ?? ml (I?? ml )s 2?mgl
2

给系统施加脉冲扰动,输出量为摆杆的角度时,系统框图如下:

图 3-4 直线一级倒立摆闭环系统图(脉动干扰)

考虑到输入 r (s)?? 0,结构图变换成:

图 3-5 直线一级倒立摆闭环系统简化图(脉动干扰)

该系统的输出为:

?Googol 2005

37

第 3 章 直线倒立摆建模、仿真及实验

其中

num ——被控对象传递函数的分子项; den ——被控对象传递函数的分母项; numlead 、 denlead ——控制器超前环节传递函数的分子项 ;

numlag 、 denlag ——控制器滞后环节传递函数的分子项和分母项;
k ——控制器增益

闭环传递函数可以由 Matlab 命令求出。 实际系统的开环传递函数为: ?(s) V (s) ?? 0.02725 0.0102125s 2?0.26705

在 MATLAB 下新建一个文件,键入如下命令: clear; num=[0.02725 ]; den=[0.0102125 0 -0.26705]; rlocus(num,den) z=roots(num); p=roots(den); 得到结果如下: z= 0 0 p= 5.1136 -5.1136 可以看出,系统有两个零点,有两个极点,并且有一个极点为正。 画出系统闭环传递函数的根轨迹如图 3-6,可以看出闭环传递函数的一个极 点位于右半平面,并且有一条根轨迹起始于该极点,并沿着实轴向左跑到位于原 点的零点处,这意味着无论增益如何变化,这条根轨迹总是位于右半平面,即系 ?Googol 2005
38

第 3 章 直线倒立摆建模、仿真及实验

统总是不稳定的。

图 3-6 直线一级倒立摆开环根轨迹图

3.1.3.2根轨迹校正及仿真

3.1.3.2.1根轨迹校正
直线一级倒立摆的根轨迹校正可以转化为如下的问题: 对于传递函数为: 0.02725 G(s)??? 0.0102125s 2?0.26705 的系统,设计控制器,使得校正后系统的要求如下: 调整时间 t s?? 0.5s(2%) ; 最大超调量 M p?? 10% 根轨迹设计步骤如下: 1) 确定闭环期望极点 s d 的位置,由最大超调量 M p?? e? (? /
1 ? 2 ) ?

? 10%

可以得到:???? 0.591155 ,近似取???? 0.6 。 由???? Cos(? ) 可以得到: ??? 0.938306(弧度) 其中? 为位于第二象限的极点和 o 点的连线与实轴负方向的夹角。

?Googol 2005

39

第 3 章 直线倒立摆建模、仿真及实验

jw × wn ?? 0 ×
图 3-7 性能指标与根轨迹关系图

wd ??

又由: t s??? 4 ?? n ? 0.5s

可以得到:?? n?? 13.5328,于是可以得到期望的闭环极点为: 13.5328( Cos??? jSin? ) 2) 未校正系统的根轨迹在实轴和虚轴上,不通过闭环期望极点,因此需要对系 统进行超前校正,设控制器为: K (s)?? a s?? z c Ts?? 1 ?? aTs?? 1 s?? pc (a?? 1)

3) 计算超前校正装置应提供的相角,已知期望的闭环主导极点和系统原来的极 点的相角和为:  ???? 13.5328Sin????? ?????? 1? 13.5328Sin????? ????? ?  ?tan? ? G(s d )??? tan?1? ?  ?? 6.28 ?  ????13.5328Cos??5.1136? ?????13.5328Cos??? 5.1136? ????? ? ?? 4.27676 因此校正装置提供的相角为: ???? 3.14?( 4.27676)?? 1.13517 4) 设计超前校正装置,已知:??? 0.938306 对于最大的 a 值的?? 角度可由下式计算得到: 1 2 所以有:????? 1 ( ? ??? ?? )?? 0.534059 2

?Googol 2005

40

第 3 章 直线倒立摆建模、仿真及实验

图 3-8 直线一级倒立摆根轨迹计算图

按最佳确定法作图规则,在上图中画出相应的直线,求出超前校正装置的零点和 极点,分别为: z c??? 6.92214; z p??? 26.4568 校正后系统的开环传递函数为: Q?? G(s)K (s)??? K (s?? 6.92214) 0.02725 (s?? 26.4568) 0.0102125s 2?0.26705

5) 由幅值条件 G(s d )H (s d )?? 1,并设反馈为单位反馈,所以有 k?? 141.137 ; 6) 于是我们得到了系统的控制器: G(s)??? 141.137 (s?? 6.92214) s?? 26.4568 7) 上述过程手动计算比较复杂,可以采用编程程序自动计算得到: 在 Mathematica 中编写如下所示的程序,计算以上步骤: 计 算 文 件 请 参 见 “ GLIP2001 建 模 文 件 MathematicaFile ” 中 的 “L1DIPRLocusCompute.nb”文件。

?Googol 2005

41

第 3 章 直线倒立摆建模、仿真及实验

PRO 3-2 直线一级倒立摆根轨迹计算 Mathematics 程序

?Googol 2005

42

第 3 章 直线倒立摆建模、仿真及实验

3.1.3.2.2 MATLAB 计算仿真
在 MATLAB 中编写如下的 m 文件,对系统进行仿真。
PRO 3-3 直线一级倒立摆根轨迹计算 MATLAB 程序

clear; num=[0.02725]; % Transfer function of the Linear 1 stage den=[0.0102125 0 -0.26705]; % inverted penulum numlead=-6.92214; % Controller Zeros denlead=-26.4568; % Controller Poles [Z,P,K]=tf2zp(num,den); Za=[Z;numlead]; Pa=[P;denlead];

% Add Zeros to the LIP system % Add Poles to the LIP system

[num2,den2]=zp2tf(Za,Pa,K); sys=tf(num2,den2); rlocus(sys); KK=141.137 % compensated system sys2=zpk(Za,Pa,KK*K); sysc=sys2/(1+sys2); t=0:0.005:5; step(sysc,t) % Response of the Close-loop system 运行即可以得到以上的计算结果,校正后系统的跟轨迹如下图所示:

12345678910111213141516171819202122232425262728

 


 

  【Top

最新搜索

 


 

热点推荐