matlab的setup阶跃曲线图,matlab 绘制系统的单位阶跃响应曲线 并编写程序求峰值时间 超调量 | 学步园...

1 内容

已知典型二阶系统的传递函数为

e8252e246e0d1d8e521ac50f1cd5156a.png

其中 wn=2,阻尼比 分别为0.2,0.4,0.6,0.8,1,2时系统的单位阶跃响应曲线(绘制在同一张图上),并求出 =2,阻尼比 =0.4时系统的峰值时间和超调量。

2 求解

2.1 将所有的单位阶跃响应绘制在一起

matlab 版本: 7.9.0(R2009b)

打开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,执行结果如下

3a728a6b147b914efdbc5d80c1974158.png

图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查看才是王道哈。

此次笔记记录完毕。

  • 12
    点赞
  • 98
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值