matlab 绘制系统的单位阶跃响应曲线 并编写程序求峰值时间 超调量 [李园7舍_404]
1 內容
已知典型二階系統的傳遞函數為
?????????????????????????????
其中 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,執行結果如下
圖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。
總結
以上是生活随笔為你收集整理的matlab 绘制系统的单位阶跃响应曲线 并编写程序求峰值时间 超调量 [李园7舍_404]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【调剂】东北石油大学计算机科学与技术专业
- 下一篇: 你的交际力能否通吃?