1. 根轨迹法:工程师的稳定性分析利器
控制系统设计中最让人头疼的问题之一,就是如何判断系统在不同参数下的稳定性。1948年,伊文思(W.R. Evans)发明的根轨迹法彻底改变了这一局面。这种方法通过在复平面上绘制系统极点随参数变化的轨迹,让工程师能够直观地预测系统行为。
我至今记得第一次用根轨迹法调试无人机飞控系统的场景。当时PID控制器的增益怎么调都出现振荡,直到画出根轨迹图才发现,在某个增益区间存在一对共轭极点穿越虚轴。这种视觉化的分析方式,比单纯看波特图或奈奎斯特图要直观得多。
根轨迹本质上描述了闭环系统极点随开环增益K从0→∞变化时的运动轨迹。它揭示了三个关键要素:
- 极点(Poles):系统自由运动的模态,决定瞬态响应特性
- 零点(Zeros):影响各模态在输出中的权重
- 稳定性边界:虚轴(Re=0)是稳定与不稳定的分界线
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 构建根轨迹的黄金法则
2.1 起点与终点:极点和零点的引力作用
每个根轨迹分支都起始于开环极点(K=0时),终止于开环零点(K→∞时)。这就像在复平面上的引力系统:
- 当m个零点吸引n个极点时(n>m),会有n-m条轨迹趋向无穷远
- 我常把这种情况比喻成"磁铁效应"——零点像磁铁一样吸引着极点轨迹
举例说明:
matlab复制% 开环传递函数示例
num = [1 2]; % 零点在s=-2
den = [1 5 6]; % 极点在s=-2, -3
rlocus(num,den)
2.2 实轴上的分布规律
实轴上的根轨迹存在于奇数个开环极零点左侧的区域。这个规律在快速手绘根轨迹时特别有用:
- 标出所有极点和零点
- 从实轴最右端开始向左扫描
- 遇到第一个极点/零点时开始绘制轨迹
- 每经过一个极点/零点就切换绘制状态
注意:共轭复数极零点不影响实轴上的根轨迹分布
2.3 渐近线与分离点计算
当系统存在多余极点时(n>m),根轨迹会沿着渐近线趋向无穷远。这些渐近线的角度和交点由以下公式决定:
code复制渐近线角度:φ=(2q+1)180°/(n-m) q=0,1,...,n-m-1
渐近线交点:σ=(Σ极点-Σ零点)/(n-m)
分离点(Breakaway Points)是多个根轨迹分支相遇又分离的点,可通过求解dK/ds=0得到。在实际工程中,我常用试探法:
- 观察实轴上两个极点间的区域
- 假设分离点σ在此区间
- 计算1/(σ-p1) + 1/(σ-p2) = 1/(σ-z1)
- 解这个方程得到精确位置
3. 稳定性判据与设计应用
3.1 穿越虚轴的临界点
根轨迹穿越虚轴的点对应系统临界稳定状态。计算这个关键点的方法:
- 构造特征方程1+KG(s)H(s)=0
- 令s=jω代入
- 分别求解实部和虚部为零的方程
例如某系统特征方程为:
s³ + 5s² + (6+K)s + 2K = 0
令s=jω得:
-jω³ -5ω² +j(6+K)ω +2K =0
解得临界增益K=15,ω=√6
3.2 阻尼比与动态性能
在二阶系统中,极点的位置直接决定了超调量和调节时间:
- 阻尼比ζ=cosθ(θ为极点与负实轴夹角)
- 超调量% = e^(-ζπ/√(1-ζ²))×100%
- 调节时间Ts≈4/(ζωn)
经验法则:我通常将极点配置在45°线(ζ=0.707)附近,这样能获得约5%的超调量和较快的响应速度。
3.3 实战案例:直流电机速度控制
假设某直流电机传递函数为:
G(s) = 1/[s(s+2)(s+5)]
设计步骤:
- 画出开环极点在s=0,-2,-5
- 确定实轴轨迹:(-5,-2)和(-∞,0)
- 计算渐近线:角度60°,180°,300°;交点σ=-2.33
- 求分离点:约在s=-0.88
- 确定临界增益K=70(此时ω=√10)
通过根轨迹分析发现,当K>70时系统将失稳。因此设计时应保持K<70,并留出足够稳定裕度。
4. 高阶系统与特殊情况的处理技巧
4.1 非最小相位系统
含有右半平面零点的系统会表现出反直觉的特性。我曾遇到一个火箭姿态控制系统,其传递函数包含右半平面零点,导致根轨迹出现反常分支:
- 部分轨迹会先向右移动再折返
- 这种现象称为"反根轨迹"
- 设计时需要特别关注相位变化
4.2 多环系统的简化策略
对于复杂多环系统,我通常采用分层分析法:
- 先固定内环参数,分析外环根轨迹
- 然后考虑内环极点对外环的影响
- 使用主导极点概念简化分析
例如某双环控制系统:
内环传递函数:G1(s)=10/(s+10)
外环传递函数:G2(s)=1/(s(s+2))
可先令内环闭环极点s≈-10,再分析外环轨迹。
4.3 数字控制系统的根轨迹
在离散时间系统中,稳定性边界变为单位圆。绘制步骤:
- 对连续系统进行离散化(如ZOH法)
- 将z=e^(sT)代入特征方程
- 在z平面绘制根轨迹
关键区别:
- 稳定区域在单位圆内
- 需要考虑采样周期T的影响
5. 现代工具与传统方法的结合
5.1 MATLAB实战技巧
虽然手绘根轨迹是基本功,但现代工具能极大提高效率。我常用的MATLAB命令组合:
matlab复制sys = tf(num,den); % 创建传递函数
rlocus(sys); % 绘制根轨迹
rlocfind(sys); % 交互式选取点
sgrid(z,wn); % 添加阻尼比和自然频率网格
实用技巧:先用鼠标选取大致位置,再用键盘方向键微调,可以精确获取特定点的增益值。
5.2 参数根轨迹的应用
当变化参数不是增益K时(如时间常数),可以使用广义根轨迹:
- 将特征方程整理为1+λP(s)=0的形式
- 对P(s)绘制根轨迹
这种方法在分析传感器动态特性时特别有用。
5.3 与频域法的互补使用
在实际工程中,我常将根轨迹法与波特图结合:
- 根轨迹:确定极点位置和瞬态响应
- 波特图:分析频响特性和噪声抑制
例如在设计滤波器时,先用根轨迹确定阻尼特性,再用波特图检查阻带衰减。
在调试某卫星姿态控制系统时,发现根轨迹显示稳定但实际出现振荡。后来结合奈奎斯特分析才发现是相位裕度不足导致的问题。这提醒我们:没有任何单一方法能解决所有稳定性问题,多种工具的综合运用才是工程实践的关键。
