1 内容
已知典型二阶系统的传递函数为
其中 wn=2,阻尼比 分别为0.2,0.4,0.6,0.8,1,2时系统的单位阶跃响应曲线(绘制在同一张图上),并求出 =2,阻尼比 =0.4时系统的峰值时间和超调量。
2 求解
2.1 将所有的单位阶跃响应绘制在一起
matlab 版本: 7.9.0(Rb)
打开matlab,file-->New-->Blank M-file
dum=[4];den1=[1 0.8 4];den2=[1 1.6 4];den3=[1 2.4 4];den4=[1 3.2 4];den5=[1 4 4];den6=[1 8 4];sys1=tf(dum, den1);sys2=tf(dum, den2);sys3=tf(dum, den3);sys4=tf(dum, den4);sys5=tf(dum, den5);sys6=tf(dum, den6);step(sys1, sys2, sys3, sys4, sys5, sys6);
前面的一段代码表示传递函数的分子与分母的各系数,中间一段代码表示将传递函数返回给sysn,最后的一个step函数表示给括号里的系统一个阶跃响应,然后绘制出对应的阶跃响应曲线图。
将以上文件保存到matlab的工作空间,然后在以上文件中点击Debug-->Run或者按F5,执行结果如下
图1 在不同阻尼比下的阶跃响应曲线图
根据自动控制原理的功底,看出来哪条曲线对应的哪个阻尼比么?。
2.2 编写程序求取峰值时间和超调量
咱们将阻尼比不为0.4的曲线去掉,然后编写程序来求取峰值时间和超调量
dum=[4];den2=[1 1.6 4];sys2=tf(dum, den2);[y, t, x]=step(sys2);mp=max(y);%峰值时间tp=spline(y, t, mp)cs=length(t);%稳态值yss=y(cs)%超调量ct=(mp - yss)/yss
每个函数的作用也注释了一下子,运行程序在命令窗口中得到结果如下:
tp =
1.7220
yss =
0.9970
ct =
0.2576
峰值时间:1.7220s, 稳定值:0.9970,超调量:0.2576
关于此篇涉及到的matlab函数,看matlab help查看才是王道。
Matlab Note Over。