前言
波特图作为传递函数分析中最常用的手段,讨论如何使用MATLAB绘制参数可变的波特图具有实际应用的意义。特别是在实验报告,期刊论文等中,常需要进行波特图的绘制,涉及多个传递函数的对比波特图等。常用的绘图函数在图线的颜色,线形,线宽的调整上存在不便,本文给出一些波特图绘制的手段。
目录
1基础的波特图绘制
采用一个简单的三阶系统作为示例,基础的波图图绘制仅需采用bode()函数,输入系统的传递函数即可生成对应的波特图。
Gp=tf(1,[4e-9 4e-7 1])*tf(1,[0.001 1]);
figure;
bode(Gp);

2.bode()相关的绘图函数
bode()函数相关的衍生有bodeplot()函数,bodemag()函数。前者与bode()函数的应用相同,后者可以单独得到幅值响应图像。如果需要单独得到相位响应函数则需要采用bode()函数的返回值得到相位数据后自行绘制。
Gp=tf(1,[4e-9 4e-7 1])*tf(1,[0.001 1]);
figure;
subplot(1,2,1);
bodeplot(Gp);
subplot(1,2,2);
bodemag(Gp);
3.bodeoptions
bodeoptions中提供了常见的波特图绘制设置,常用的设置主要有两个,一个是FreqUnits,其能够设置横坐标的类型,可选频率Hz与角频率rad/s的单位。另一个是PhaseWrapping,其为相位绕组设置,选择相位绕组后相位响应的范围为-180°至180°,超过范围的相位会以绕组的形式呈现。特别用在高阶系统,其经常出现过大的相位变化,不利于观察特征频段,故采用绕组形式。
op = bodeoptions;
op.FreqUnits = 'Hz';
op.PhaseWrapping = 'on';
Gp=tf(1,[4e-9 4e-7 1])*tf(1,[0.001 1]);
figure;
bode(Gp,op);</

最低0.47元/天 解锁文章
3962

被折叠的 条评论
为什么被折叠?



