MATLAB绘图——波特图

前言

        波特图作为传递函数分析中最常用的手段,讨论如何使用MATLAB绘制参数可变的波特图具有实际应用的意义。特别是在实验报告,期刊论文等中,常需要进行波特图的绘制,涉及多个传递函数的对比波特图等。常用的绘图函数在图线的颜色,线形,线宽的调整上存在不便,本文给出一些波特图绘制的手段。

目录

前言

1基础的波特图绘制

2.bode()相关的绘图函数

​编辑3.bodeoptions

4.多曲线共同绘制

5.曲线完全自定义修改

6.进一步问题


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);</
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值