二阶体系的阶跃响应分析与 MATLAB 实现
在控制体系的设计与分析中,二阶体系一个非常重要的研究对象。这篇文章小编将对二阶体系的阶跃响应进行深入分析,并通过 MATLAB 代码实现相关指标的计算。
二阶体系的定义
二阶体系通常通过下面内容标准传递函数表示:
[
G(s) = fracomega_n^2s^2 + 2 zeta omega_n s + omega_n^2
]
其中,(omega_n) 是体系的天然频率,(zeta) 是阻尼比。二阶体系的表现依赖于这两个参数的选择,影响响应特性,如超调量、调整时刻等。
二阶体系的阶跃响应指标
在二阶体系的阶跃响应分析中,有几许重要的时刻指标需要注意:
1. 延迟时刻 (td):响应曲线第一次达到终值的 50% 所需的时刻。
2. 上升时刻 (tr):响应曲线第一次达到终值的 90% 所需的时刻。
3. 峰值时刻 (tp):响应曲线超过最终值并达到峰值所需时刻。
4. 超调量 (Mp):响应曲线峰值超出最终值的量,计算公式为:
[
Mp = frach(tp) – h(infty)h(infty) times 100%
]
5. 调整时刻 (ts):体系响应曲线达到 ±5% 的终值并保持在该范围内所需的时刻。
MATLAB 中的阶跃响应计算
下面的 MATLAB 代码完成上述指标的计算:
“`matlab
% 定义传递函数
num = [100]; % 系数
den = [1, 3, 100]; % 分母系数
sys = tf(num, den); % 创建传递函数
% 计算阶跃响应
[y, t] = step(sys);
C = dcgain(sys); % 稳态值
% 计算峰值时刻和超调量
[Y, k] = max(y);
tp = t(k);
Mp = (Y – C) * 100 / C;
% 计算上升时刻
n = 1;
while(y(n) < 0.9 * C)
n = n + 1;
end
tr = t(n);
% 计算稳态时刻
i = length(t);
while (y(i) > 0.98 * C) && (y(i) < 1.02 * C)
i = i – 1;
end
ts = t(i);
% 输出结局
fprintf(‘峰值时刻 tp = %.4f sn’, tp);
fprintf(‘超调量 Mp = %.4f %%n’, Mp);
fprintf(‘上升时刻 tr = %.4f sn’, tr);
fprintf(‘稳态时刻 ts = %.4f sn’, ts);
“`
在这段代码中,我们使用 MATLAB 的控制体系工具箱创建了一个二阶体系,并计算了阶跃响应的关键性能指标。
不同参数对阶跃响应的影响
我们可以通过改变天然频率和阻尼比来观察不同条件下体系的阶跃响应。例如,将阻尼比从 0 增加到 2,可以得到不同的响应形态:
– 欠阻尼 ((zeta < 1)):体系会出现振荡,具有较大的超调量。
– 临界阻尼 ((zeta = 1)):体系在不振荡的情况下达到稳态。
– 过阻尼 ((zeta > 1)):响应曲线单调上升,超调量为零。
拓展资料
这篇文章小编将详细分析了二阶体系的阶跃响应及其关键指标的计算,包括延迟时刻、上升时刻、峰值时刻、超调量和调整时刻等。通过 MATLAB 代码,展示了怎样实现这些计算,并进一步探讨了不同参数对体系响应的影响。掌握这些基本概念和计算方式,对于控制体系的设计与优化至关重要。希望这篇文章小编将能够为无论兄弟们在二阶体系的进修和应用中提供帮助。