Matlab论坛
直播中

anger9649

4年用户 32经验值
擅长:电源/新能源
私信 关注
[问答]

自控小白,有大神愿意教一下怎么使用Matlab画伯德图吗?

详细参数请私信,麻烦了
QQ图片20200415164312.png

回帖(2)

乂统天下

2020-4-15 16:45:00
matlab中根轨迹分析函数
pzmap:绘制线性系统的零极点图
rlocus:求系统根轨迹。
rlocfind:计算给定一组根的根轨迹增益。
sgrid:在连续系统根轨迹图和零极点图中绘制出阻尼系数和自然频率栅格。
[p,z]=pzmap(a,b,c,d):返回状态空间描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。
[p,z]=pzmap(num,den):返回传递函数描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。
pzmap(a,b,c,d)或pzmap(num,den):不带输出参数项,则直接在s复平面上绘制出系统对应的零极点位置,极点用×表示,零点用o表示。
pzmap(p,z):根据系统已知的零极点列向量或行向量直接在s复平面上绘制出对应的零极点位置,极点用×表示,零点用o表示。
rlocus(a,b,c,d)或者rlocus(num,den):根据SISO开环系统的状态空间描述模型和传递函数模型,直接在屏幕上绘制出系统的根轨迹图。开环增益的值从零到无穷大变化。
rlocus(a,b,c,d,k)或rlocus(num,den,k):通过指定开环增益k的变化范围来绘制系统的根轨迹图。
r=rlocus(num,den,k) 或者[r,k]=rlocus(num,den) :不在屏幕上直接绘出系统的根轨迹图,而根据开环增益变化矢量k ,返回闭环系统特征方程1+k*num(s)/den(s)=0的根r,它有length(k)行,length(den)-1列,每行对应某个k值时的所有闭环极点。或者同时返回k与r。
若给出传递函数描述系统的分子项num为负,则利用rlocus函数绘制的是系统的零度根轨迹。(正反馈系统或非最小相位系统)
[k,p]=rlocfind(a,b,c,d)或者[k,p]=rlocfind(num,den)
它要求在屏幕上先已经绘制好有关的根轨迹图。然后,此命令将产生一个光标以用来选择希望的闭环极点。命令执行结果:k为对应选择点处根轨迹开环增益;p为此点处的系统闭环特征根。
不带输出参数项[k,p]时,同样可以执行,只是此时只将k的值返回到缺省变量ans中。
sgrid:在现存的屏幕根轨迹或零极点图上绘制出自然振荡频率wn、阻尼比矢量z对应的格线。
sgrid(‘new’):是先清屏,再画格线。
sgrid(z,wn):则绘制由用户指定的阻尼比矢量z、自然振荡频率wn的格线


使用Matlab画伯德图的具体实现方法可以见附件:
用matlab画bode图.pdf (262.2 KB)
(下载次数: 11, 2020-4-26 22:23 上传)



1 举报

王萍

2020-4-15 18:31:08
还要私信,那怎么解决
举报

更多回帖

发帖
×
20
完善资料,
赚取积分