MATLAB 绘制伯德图的代码
时间: 2024-09-28 22:02:43 浏览: 119
MATLAB绘制伯德图
在MATLAB中,绘制伯德图(Bode Plot)通常用于分析系统的频率响应,它显示了系统增益和相位随频率变化的情况。以下是一个简单的伯德图绘制示例:
```matlab
% 创建示例的传递函数(例如一个简单的比例积分控制器)
sys = tf([1 0.5], [1 1]);
% 使用bode函数绘制伯德图
[bodeMag, bodePhase] = bode(sys);
% 设置频率范围
w = linspace(0, 100, 1000); % 频率向量
% 绘制幅频特性(增益)
plot(bodeMag, w)
xlabel('频率 (rad/s)')
ylabel('增益 (dB)')
title('幅频特性')
% 绘制相频特性(相位)
hold on
plot(bodePhase, w, 'r')
xlabel('频率 (rad/s)')
ylabel('相位 (度)')
% 添加网格线和坐标轴标签
grid on
xlim([0 max(w)])
ylim([-60 0]) % 确保增益轴可见于大部分应用范围
% 显示并关闭帮助窗口
help bode
```
在这个例子中,`tf`函数创建了一个传递函数模型,然后`bode`函数生成了对应的幅值和相位数据。通过`plot`命令将它们分别绘制成两条曲线。`hold on`是为了在同一图形上添加相位曲线。
如果你需要进一步定制图例、标题或其他特性,可以继续修改上述代码。
阅读全文