matlab绘制奈奎斯特图和伯德图
·以G(s)=1/s(s+1)为例

回车后出现这些界面



clear%清空工作空间
clc%清屏
K=1;%比例系数
z=[];%开环零点
p=[0,-1];%开环极点
sys=zpk(z,p,K);%建立开环传递函数
figure(1)%建立图一
nyquist(sys)%绘制奈奎斯特曲线
axis([-1.1,0.1,-10,10]);%设置坐标显示区间
title('G(s)=1/s(s+1)的奈奎斯特曲线');%图像标题
figure(2)
w=logspace(-1,2);%在对数空间定义频率范围:0.1~100
bode(sys,w);%绘制里伯德图
grid on;%在图像中加网格线
title('G(s)=1/s(s+1)的里伯德图');
[Lg,Y,Wg,Wc]=margin(sys)%四者分别为幅值裕度、相位裕度、相位穿越频率、截止频率
%相位裕度:对于闭环稳定系统,如果系统开环相频特性再滞后Y 度,则系统将处于临界稳定状态
%相位穿越频率:系统开环频率特性上相位等于-180度时所对应的角频率称为相位穿越频率
%截止频率:系统开环频率特性上幅值为1时所对应的角频率称为幅值穿越频率或截止频率
本文以G(s)=1/s(s+1)为例,演示了如何使用MATLAB进行奈奎斯特图和伯德图的绘制。通过`clear`和`clc`清除工作空间和屏幕,然后设定比例系数、零点和极点,创建开环传递函数。使用`nyquist`函数绘制奈奎斯特曲线,并调整坐标显示区间。接着,利用`bode`函数绘制伯德图,展示幅频和相频特性,并添加网格线。最后,通过`margin`函数计算幅值裕度、相位裕度和截止频率,进一步分析系统稳定性。
1万+

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



