用 MATLAB 对控制系统进行时域分析,包括典型响应、判断系统稳 定性和分析系统的动态特性。

二、典型响应及其性能分析
1、单位阶跃响应
单位阶跃响应调用格式为:
(1) step(num,den)
(2) step(num,den,t)
(3) step(G)
(4) step(G,t)
该函数将绘制出系统在单位阶跃输入条件下的动态响应图,同时给出稳态值。其中 t 为图像显示的时间长度,是用户指定的时间向量。
如果需要将输出结果返回到 MATLAB 工作空间中,则采用以下调用格式:
c=step(G)
2、求阶跃响应的性能指标
MATLAB 提供了强大的绘图计算功能,可以用多种方法求取系统的动态响应指标。
(1) 最简单的方法――游动鼠标法
在程序运行完毕后,用鼠标左键点击时域响应图线任意一点,
系统会自动跳出一个小方框, 小方框显示了这一点的横坐标 (时间)和纵坐标 (幅值)。按住鼠标左键在曲线上移动,可以找到曲线幅值最大的一点, 即曲线最大峰值,此时小方框中显示的时间就是此二阶系统的峰值时间,根据观察到的稳态值和峰值可以计算出系统的超调量。
这种方法简单易用,但同时应注意它不适用于用 plot()命令画出的图形。
(2) 用编程方式求取时域响应的各项性能指标
由上面内容可知, 用阶跃响应函数 step( )可以获得系统输出量,若将输出量
返回到变量 y 中,可以调用如下格式命令:
[y,t]=step(G)
该函数还同时返回了自动生成的时间变量 t,对返回的这一对变量 y 和 t 的
值进行计算,可以得到时域性能指标。
① 峰值时间
[Y,k]=max(y);timetopeak=t(k)
应用取最大值函数 max()求出 y 的峰值及相应的时间,并存于变量 Y 和 k 中。
然后在变量 t 中取出峰值时间,并将它赋给变量 timetopeak。
② 超调量
C=dcgain(G);[Y,k]=max(y);overshoot=100*(Y-C)/C
dcgain( )函数用于求取系统的终值,将终值赋给变量 C,然后依据超调量的
定义,由 Y 和 C 计算出超调量。
③ 上升时间
可以用 while 语句编写以下程序得到:
在阶跃输入条件下, y 的值由零逐渐增大,当以上循环满足 y=C 时,退出
循环,此时对应的时刻,即为上升时间。
对于输出无超调的系统响应,上升时间定义为输出从稳态值的 10%上升到
90%所需时间,则计算程序如下:
④ 调节时间(取误差带为 0.02)
C=dcgain(G);i=length(t);
while(y(i)>0.98*C)&(y(i)<1.02*C)
i=i-1;
end
setllingtime=t(i)
用向量长度函数 length( )可求得 t 序列的长度,将其设定为变量 i 的上限值。
3、脉冲响应
脉冲响应调用格式为:
(1) impulse (num,den)
(2) impulse (num,den,t) 时间向量 t 的范围可以由人工给定(例如 t=0:0.1:10)
(3) [y,x]=impulse(num,den) 返回变量 y 为输出向量, x 为状态向量
(4) [y,x,t]=impulse(num,den,t) 向量 t 表示脉冲响应进行计算的时间
4、高阶系统的降阶处理
利用闭环主导极点的概念, 可将高阶系统进行降阶处理。
5、分析零点对系统单位阶跃响应的影响
三、系统稳定性分析
MATLAB 中有以下三种方法对系统进行稳定性分析:
1、利用 pzmap 绘制连续系统的零极点图;
2、利用 tf2zp 求出系统零极点;
3、利用 roots 求分母多项式的根来确定系统的极点
1.
由图可知,当 =1rad/s, 分别为 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 1.0, 2.0 时的单位阶跃响应曲线中,=0.4到0.8时(‘+’线附近)性能最好。
=0时是无阻尼二阶系统,单位阶跃响应是一条平均值为1的余弦形式的等幅振荡曲线,
0<<1的范围内是欠阻尼二阶系统,随着的增大,单位阶跃响应的为衰减的余弦振荡曲线,振荡幅度逐渐减小;
=1时为临界阻尼二阶系统,单位阶跃响应没有了振荡,是一条稳态值为1的无超调单调上升的曲线;
>1时为过阻尼二阶系统,随着的增大,单位阶跃响应为上升的非振荡曲线,斜率随着的增大,逐渐减小。
在过阻尼和临界阻尼的响应曲线中,临界阻尼响应具有最短的上升时间,响应速度最快。在欠阻尼响应曲线中,阻尼比越小,超调量越大,上升时间越短,在=0.4-0.8时超调量适度,调节时间较短,故通常可在此范围内的选取。
2.
由图可知,当 =0.6, n 分别为 2, 4, 6, 8, 10, 12rad/s 时的单位阶跃响应曲线中,随着n的增大,上升时间越短,峰值时间越快到达,调节时间越短,性能越好。
pole =
-0.2939 + 2.1097i
-0.2939 - 2.1097i
-1.0000 + 0.0000i
-0.2061 + 0.4218i
-0.2061 - 0.4218i
z =
-0.5000 + 0.8660i
-0.5000 - 0.8660i
p =
k =
零极点图如上图所示,由图和计算结果可知,该系统的所有极点均不具
有正实部,故系统稳定。