matlab在同一张图上画二阶系统不同阻尼比的奈奎斯特图
时间: 2023-05-31 10:05:01 浏览: 345
以下是一个示例代码,可以绘制不同阻尼比的二阶系统的奈奎斯特图:
```matlab
% 二阶系统参数
omega_n = 1; % 自然频率
zeta = [0.1, 0.3, 0.5, 0.7, 0.9]; % 阻尼比
% 创建奈奎斯特图
figure
hold on
for i = 1:length(zeta)
s = tf('s');
G = omega_n^2 / (s^2 + 2*zeta(i)*omega_n*s + omega_n^2);
nyquist(G);
end
axis([-2 2 -2 2]);
```
在上面的代码中,我们使用了 `tf` 函数来创建二阶系统的传递函数。然后,我们使用 `nyquist` 函数来绘制奈奎斯特图。通过在 `nyquist` 函数中传递不同的传递函数,我们可以绘制不同阻尼比的奈奎斯特图。最后,我们使用 `axis` 函数来设置图像的坐标轴范围。
运行上面的代码,我们将得到一个包含不同阻尼比的二阶系统的奈奎斯特图的图像。
相关问题
假设所研究的系统中存在一个典型二阶系统模块,该模块中的阻尼比为0.5,自然振荡频率为15。试绘制出对应的伯德图与奈奎斯特图,并分析该二阶模块的性能。
好的,我会为您解答该问题。
根据给定的阻尼比和自然振荡频率,我们可以得到该二阶系统的传递函数:
$$
G(s) = \frac{\omega_n^2}{s^2+2\zeta\omega_ns+\omega_n^2} = \frac{225}{s^2+15s+225}
$$
1. 伯德图
伯德图可以用于直接确定系统的稳定性,以及稳态响应特性。我们可以使用MATLAB中的margin函数来绘制伯德图。
代码如下:
```matlab
G = tf(225, [1 15 225]);
margin(G);
```
运行后,我们可以得到伯德图。从图中可以看出,该系统的相位裕度为30度,增益裕度为11.3dB,且相位裕度大于0度,增益裕度大于0dB,表明该系统是稳定的。
2. 奈奎斯特图
奈奎斯特图可以用于分析系统的稳定性和动态性能特性。我们可以使用MATLAB中的nyquist函数来绘制奈奎斯特图。
代码如下:
```matlab
G = tf(225, [1 15 225]);
nyquist(G);
```
运行后,我们可以得到奈奎斯特图。从图中可以看出,奈奎斯特曲线的圆心位于原点左侧,且曲线只绕过原点一次,表明该系统是稳定的。此外,奈奎斯特曲线绕过$(-1,0)$点,表明系统的相位裕度为30度,与伯德图所得到的结果一致。
3. 性能分析
从伯德图和奈奎斯特图可以看出,该二阶系统是稳定的,并且具有较好的相位裕度和增益裕度。此外,我们可以通过奈奎斯特图的形状来分析该系统的动态性能。由于奈奎斯特曲线只绕过原点一次,表明该系统是一个带有振荡的二阶系统。绕过原点的方向和角度可以反映系统的相位和幅频响应特性。
在matlab利用代码做出下列二阶振荡环节奈奎斯特图。G(s)=1/(T^2s^2+2§Ts+1),T=1,§=0.1,0.2,0.2,0.5,0.7,1.0。
以下是在MATLAB中绘制二阶振荡环节奈奎斯特图的代码:
```matlab
T = 1;
zeta = [0.1, 0.2, 0.5, 0.7, 1.0];
s = tf('s');
figure;
hold on;
for i = 1:length(zeta)
G = 1 / (T^2 * s^2 + 2 * zeta(i) * T * s + 1);
nyquist(G);
end
legend('\zeta=0.1', '\zeta=0.2', '\zeta=0.5', '\zeta=0.7', '\zeta=1.0');
```
在这个代码中,我们首先定义了转移函数的参数T和阻尼比zeta。然后,使用tf函数创建一个s域传递函数G。接着,使用nyquist函数绘制奈奎斯特图。最后,使用legend函数添加图例。
注意,这个代码中只绘制了阻尼比为0.1、0.2、0.5、0.7和1.0的奈奎斯特图。如果你想绘制阻尼比为0.3、0.4、0.6、0.8和0.9的奈奎斯特图,只需将zeta数组的值更改为[0.3, 0.4, 0.6, 0.8, 0.9]即可。
阅读全文