原文:http://tecdat.cn/?p=3871
根轨迹分析
在下文中,我们提供了用于根轨迹分析的强大MATLAB命令的简要描述。读者可能想知道为什么当强大的MATLAB命令可用时,教师强调学习手工计算。对于给定的一组开环极点和零点,MATLAB立即绘制根轨迹。在极点和零点中进行的任何更改都会立即产生新的根位点,依此类推。
MATLAB允许特征方程的根轨迹
1 + G(s)H(s)= 0
用rlocus(GH)命令绘制 。可以使用[K,p] = rlocfind(GH)命令以交互方式选择根轨迹上的点(将十字准线放置在适当的位置)。然后MATLAB 在该点产生增益K以及具有该增益的所有极点p。根轨迹可以在使用sgrid(zeta,wn)命令生成的网格上绘制,该命令允许恒定阻尼比zeta和恒定固有频率 wn曲线。命令rlocus(GH,K)允许我们指定用于绘制根轨迹的增益K的范围。还研究命令[p,K] = rlocus(GH) 和 [p] = rlocus(GH,K) 使用MATLAB在线帮助。
考虑图M6.1的框图中所示的系统。
图M6.1
系统的特征方程是
1 + G(s)= 0
同
以下MATLAB脚本绘制了根轨迹
s = tf('s');G = 1/(s*(s+7)*(s+11));rlocus(G);axis equal;
单击根轨迹与虚轴的交点将得到图M6.2中所示的数据。我们发现闭环系统对于K <1360 是稳定的; 并且K > 1360 不稳定。
图M6.2
>> K = 860;
>> step(feedback(K*G,1),5)
>> hold;
% Current plot held
>> K = 1460;
>> step(feedback(K*G,1),5)
图M6.3
例M6.2
考虑图M6.4所示的系统。
图M6.4
植物转移函数G(s)如下给出
clear all;
close all;
s = tf('s');
G = (s+1)/(s*(0.1*s-1));
rlocus(G);
axis equal;
sgrid;
title('Root locus for (s+1)/s(0.1s-1)');
[K,p]=rlocfind(G)
图M6.5
selected_point =
-2.2204 + 3.0099i
K =
1.4494
p =
-2.2468 + 3.0734i
-2.2468 - 3.0734i
例M6.3
用于具有开环传递功能的单位反馈系统
s = tf('s');
G =(s ^ 2-4 * s + 20)/((s + 2)*(s + 4));
rlocus(G);
zeta = 0.45;
wn = 0;
使用 右键单击 - >属性 - >限制正确地重新定义根轨迹的轴 。
图M6.6
点击根轨迹与zeta = 0.45线的交点给出系统增益K = 0.415,其对应于闭环极点,点击根轨迹与实轴的交点,给出分离点和该点处的增益。