☰
跟轨迹法全解析:从原理、绘图规则到工程应用实战
2026/10/16 8:10:31 网站建设 项目流程

学自动控制原理的时候,有一块内容躲不开,那就是线性系统的跟轨迹法。我念书那会儿觉得这章就是背规则、画草图、考试时手忙脚乱;后来真正做项目、调参数才发现,跟轨迹法解决的是一个特别朴素的问题:当系统某个参数(多半是增益)变化时,闭环极点到底往哪儿走。极点怎么走,系统稳不稳定、振荡不振荡、响应快不快,全都写在一张图上。

这篇笔记打算把跟轨迹法的原理、两条核心数学条件、手绘规则、一个完整的三阶系统算例,以及我在实际使用中踩过的坑,整理成一份可以照着做的清单。适合三类人看:正在备考自动控制原理的本科生、做运动控制或过程控制想快速判断系统稳定性边界的工程师、以及想把课本知识真正用起来的学习者。就算你只记得传递函数和拉普拉斯变换的基本概念,跟着这篇笔记走一遍,也能独立画出并读懂一张跟轨迹图。

1. 跟轨迹法到底要解决什么问题

线性定常系统的闭环行为,几乎全部由闭环传递函数的极点决定。极点决定稳定性:所有闭环极点都在复平面左半平面,系统就是稳定的;极点也决定动态品质:离虚轴近的极点对应衰减很慢的模态,离虚轴远的极点对应衰减快的模态,一对主导极点又决定了超调量和调节时间的大致范围。工程上最常做的操作就是调增益,增益一变,闭环特征方程变了,极点位置跟着变,那系统性能也就全变了。

直接解特征方程当然可以,但代价很高。三阶系统求根还能忍,五阶六阶系统没有计算工具时基本只能靠试凑;就算有工具,解出来的也是一堆离散数值,看不出“参数往哪个方向调,极点会往哪个方向跑”。劳斯判据能判断稳定性,但给出的答案是“是/否”的边界,回答不了“增益再大一点,系统是不是会更振荡”这种趋势问题。频域法也能衡量稳定裕度,但需要做频率响应计算,而且频域曲线和时域性能之间还隔着一层映射,初学者容易觉得绕。

跟轨迹法换了一个思路。开环传递函数通常可以写成零极点形式,而闭环特征方程把闭环极点和开环零极点直接联系在一起。既然闭环极点必须满足这个方程,那么随着某个参数从 0 变到无穷大,满足方程的复平面上的点就会连成一条条曲线,这就是跟轨迹。你只需要一个开环零极点分布,就能把闭环极点所有可能的位置画出来,稳定边界、阻尼比、自然频率都能直接读图。

我个人的体会是,跟轨迹法最值钱的地方不是“会画图”,而是“画图的过程本身就是在做设计”。你想让系统更稳,就得知道往哪里加零点;你发现增益高了会振荡,就得先找到虚轴交点对应的临界增益。这些动作都是设计动作,劳斯判据给不了,频域法给得绕,跟轨迹给得最直接。

跟轨迹法还能处理控制器设计里很经典的一类问题:给定一个性能指标,比如超调量不超过 16%,意味着二阶主导极点的阻尼比不低于 0.5,反过来求系统增益应该取多大。这种“由指标反算参数”的操作,在跟轨迹图上就是一条阻尼线与跟轨迹的交点,再用幅值条件量一量距离,增益就出来了。所以跟轨迹法适合所有线性时不变系统的分析场景:单回路反馈系统的稳定性判断、增益调节、校正网络参数整定,以及理解被控对象加上控制器之后整体动态行为会变成什么样。和劳斯判据互补着用最舒服——劳斯给准确边界,跟轨迹给全过程图景。

2. 数学本质:两个条件画出一张图

2.1 幅值条件与相角条件怎么来的

跟轨迹的数学起点是闭环特征方程。不管单位反馈还是非单位反馈,经过结构图化简,闭环特征方程最后都能写成:

1 + G(s)H(s) = 0

其中 G(s)H(s) 是开环传递函数。把它写成零极点形式:

G(s)H(s) = K* · ∏(s - z_i) / ∏(s - p_j)

这里 z_i 是开环零点,p_j 是开环极点,K* 是根轨迹增益。把 G(s)H(s) = -1 拆开,就得到两个条件:

  • 幅值条件:|G(s)H(s)| = 1
  • 相角条件:∠G(s)H(s) = (2k+1)π,k = 0, ±1, ±2, …

为什么一定要拆成两个?因为这两个条件的角色完全不同。相角条件只与零极点的相对位置有关,和 K* 的大小无关。一个测试点 s₀ 如果满足相角条件,说明无论 K* 取多少,这个点始终属于“闭环极点可能到达的集合”。幅值条件是用来定刻度的:把满足相角条件的点代入幅值条件,解出来的 K* 就是让这个点真正成为闭环极点所需的增益。

换句话说,相角条件负责画出轨迹的形状,幅值条件负责给轨迹标上增益刻度。跟轨迹上每一个点都对应一个增益值,这个值就是从幅值条件里反解出来的。

2.2 为什么说“相角定形状、幅值定刻度”

从几何上看,相角条件可以这样理解:把测试点 s₀ 放在复平面上,从每个开环零点向 s₀ 引一条向量,从每个开环极点也向 s₀ 引一条向量。所有零点向量相角之和减去所有极点向量相角之和,必须等于 180° 的奇数倍。这个“画向量、量角度”的过程,是所有手绘规则的源头,也是考试时检查轨迹有没有画错的最根本依据。

用最简单的例子建立直觉。设开环系统只有一个极点 s = -1,开环传递函数 G(s)H(s) = K*/(s+1)。闭环极点 s = -1 - K*,随着 K* 从 0 增大,闭环极点从 -1 沿着实轴往左走,一直走到负无穷。用相角条件验证一下:实轴上任意 s < -1,极点向量 (s+1) 的相角是 180°,满足相角条件;实轴上 s > -1,向量相角是 0°,不满足。所以跟轨迹就是 (-∞, -1] 这一段实轴。幅值条件给出对应关系 K* = |s+1|,想要极点落在 -4,增益取 3,想要落在 -10,增益取 9。

这个例子虽然简单,却把跟轨迹的机制演示得很清楚:开环极点是起点(K* = 0 时闭环极点等于开环极点),开环零点是终点(K* → ∞ 时轨迹趋向零点,零点不够就趋向无穷远)。零点和极点像磁铁一样“拉扯”轨迹,所有绘制规则都是从这个直觉里严格化出来的。

3. 手绘跟轨迹的规则清单,一条一条说人话

规则听起来有七八条,其实主线只有一条——每条规则都是从相角条件或幅值条件推出来的,孤立地背等于白背。先把每条规则说清楚,再讲它们怎么串起来。

规则 1:分支数、起点和终点。跟轨迹的分支数等于开环极点数 n,也就是闭环特征方程的阶数。K* = 0 时,闭环极点就是开环极点,所以每条分支从开环极点出发;K* → ∞ 时,闭环极点逼近开环零点,如果零点数 m 小于极点数 n,剩下 (n - m) 条分支趋向无穷远。

规则 2:关于实轴对称。闭环特征方程系数是实数,复根必然成共轭对出现,所以跟轨迹关于实轴对称。手绘时只需认真算上半平面,下半平面镜像补上就行。

规则 3:实轴上的跟轨迹区间。实轴上某一点,如果它右侧的开环零点数加极点数之和为奇数,那么这个点在跟轨迹上;为偶数就不在。原因是实轴上的测试点,只有右侧的零极点会贡献 180° 相角,左侧的贡献 0°,要凑出奇数个 180° 才能满足相角条件。

注意,统计的是右侧“零点加极点”的总数,不是只数极点。

规则 4:渐近线。当 n > m 时,有 (n - m) 条分支趋向无穷远,这些分支沿着渐近线走。渐近线与实轴交于一点 σ,夹角为 θ_k:

σ = (Σp_j - Σz_i) / (n - m)

θ_k = (2k+1)π / (n - m),k = 0, 1, …, n-m-1

夹角公式里的 (2k+1) 就是从相角条件来的:无穷远处,所有零极点向量方向近似相同,总共要凑出 180° 的奇数倍,自然就有这个奇数因子。

规则 5:分离点与会合点。两条分支在实轴上相遇又分开的点叫分离点,反过来从复平面回到实轴再分开的叫会合点。分离点处增益 K* 关于 s 的导数为零。标准做法是从特征方程解出 K* = -1/G0(s),其中 G0(s) 是不带增益的开环传函,然后解 dK*/ds = 0。解出多个候选点时,逐个检查是否落在规则 3 确定的实轴区间上,不在区间上的直接舍掉。

规则 6:与虚轴的交点。令 s = jω 代入特征方程 1 + G(s)H(s) = 0,让实部和虚部分别为零,解出 ω 和对应的 K*。这个 K* 就是临界增益,ω 是该增益下等幅振荡的频率。直观上,这就是系统从稳定走向不稳定的那扇门。

规则 7:出射角与入射角。开环复数极点处分之,分支离开极点的方向角叫出射角;开环复数零点处,分支进入零点的方向角叫入射角。计算从相角条件反解得到。手绘时只要系统存在共轭复数极点,不出射角,曲线一定画歪。

补充规则:标注方向。跟轨迹上增益是单调变化的,画图时要在分支上标箭头,箭头方向就是 K* 增大的方向。这是考试最容易丢分的地方——轨迹画对了,箭头忘了标。

这些规则像画地图的步骤:先确定边界(实轴区间)、再画骨架(渐近线)、然后找关键点(分离点、虚轴交点)、最后补细节(出射角入射角)。熟练之后,画一张完整轨迹图只需要三五分钟。

4. 完整实操:K/[s(s+2)(s+4)] 的跟轨迹全流程

理论讲再多,不如手算一个。我选一个非常经典的例子,开环传递函数:

G(s)H(s) = K / [s(s+2)(s+4)]

这是一个三阶无零点系统,很多教材拿它讲稳定边界。下面按我实际画图的顺序走一遍,每一步都可以直接照着做。

第 1 步:写零极点。开环极点:0、-2、-4;开环零点:没有,m = 0。分支数 n = 3,所以有 3 条跟轨迹分支,全部从开环极点出发,最终趋向无穷远。

第 2 步:画实轴区间。从左到右检查:

  • (-∞, -4):右侧有 3 个极点(0、-2、-4),奇数,属于跟轨迹;
  • (-4, -2):右侧有 2 个极点,偶数,不属于;
  • (-2, 0):右侧有 1 个极点,奇数,属于;
  • (0, +∞):右侧 0 个,不属于。

所以实轴上的跟轨迹是 (-∞, -4] 和 [-2, 0] 两段。

第 3 步:算渐近线。n - m = 3,三条渐近线。交点:

σ = (0 + (-2) + (-4)) / 3 = -2

夹角:

θ_k = (2k+1)π/3,k = 0,1,2,得到 ±60° 和 180°

180° 那条就是实轴上 (-∞, -4) 的渐近线,±60° 两条对称地从分离点附近进入复平面,弯向虚轴方向。

第 4 步:求分离点。闭环特征方程是:

s³ + 6s² + 8s + K = 0

所以 K = -(s³ + 6s² + 8s)。对 s 求导并令导数为零:

dK/ds = -(3s² + 12s + 8) = 0

解得 s = -2 ± 2√3/3,约等于 -0.845 和 -3.155。检查实轴区间:-0.845 落在 [-2, 0] 上,有效;-3.155 不在任何实轴轨迹区间上,舍掉。所以分离点在 s ≈ -0.845。

第 5 步:求虚轴交点。令 s = jω 代入特征方程:

(jω)³ + 6(jω)² + 8(jω) + K = 0

展开得到:

(-jω³) - 6ω² + 8jω + K = 0

实部:K - 6ω² = 0;虚部:8ω - ω³ = 0。虚部解得 ω = √8 ≈ 2.83(ω = 0 对应 K = 0 的平凡解,忽略),实部解得 K = 48。所以 K = 48 时系统临界稳定,振荡频率约 2.83 rad/s,跟轨迹在这个点穿过虚轴进入右半平面。

第 6 步:连图。三条分支这样走:第一条从开环极点 0 出发沿实轴向左到分离点 -0.845;第二条从 -2 出发沿实轴向右也到分离点 -0.845;两条在分离点相遇后,以 ±60° 方向进入复平面,对称地穿过虚轴 ±j2.83,最后沿渐近线趋向无穷。第三条从 -4 出发,沿实轴一直向左延伸,本身就是 180° 渐近线。标上箭头,K 增大方向从极点向外。

第 7 步:由性能指标反算增益。假设设计指标要求二阶主导阻尼比 ζ = 0.5,对应超调量约 16%。做法:在复平面原点画一条与负实轴夹角 β = arccos(0.5) = 60° 的射线,这条射线与跟轨迹的交点就是满足阻尼比的闭环主导极点候选点。交点处用幅值条件读增益:

K = |s| · |s+2| · |s+4|

想算得准,可以设交点 s = -σ + jω,由几何关系 ω = √3 σ,再代入特征方程分离实部虚部,解出 σ 和 ω,最后代回幅值条件得到 K。我手算时习惯用这个解析路径,比直接在图上量长度更可靠;纸面考试时按比例画图再用刻度尺量距离,也是常规操作。

第 8 步:用工具验证。画完手算图,我会用 MATLAB 的 rlocus 命令或 Python 控制系统库的 root_locus 函数验证。这个例子的调用方式是把开环传递函数 1/[s(s+2)(s+4)] 传进去,对应的多项式系数是 [1 6 8 0]。画出来的轨迹和手算完全一致:实轴区间、分离点 -0.845、虚轴交点 ±j2.83、临界增益 48,一个不差。

提示:画完手算图之后做三个自检——数一遍分支数是不是等于开环极点数;每一段实轴区间是否符合右侧零极点总数为奇数的规则;起点终点是否和开环零极点对应上。这三项能拦住八成低级错误。

5. 常见问题与排查技巧实录

跟轨迹这章的问题高度集中,我见过太多人在同一个地方反复踩坑,包括我自己早期也是这样。

问题一:实轴区间数错。最常见的是只数极点不数零点。正确规则是统计测试点右侧“极点 + 零点”的总数,奇数为轨迹区间。零点同样贡献 180° 相角,忽略它结果必然出错。最经典的陷阱题是开环传函长这样:K(s+1)/[s(s+3)],实轴区间判断错,后面渐近线、分离点全跟着错。

问题二:分离点候选解不会取舍。dK*/ds = 0 求出的 s 经常不止一个。取舍标准:第一,必须在实轴跟轨迹区间上;第二,如果多个候选解都在区间上,它们可能都是有效的分离点或会合点。比如开环传递函数含一对零点,两条分支从极点出发在零点之间会合,再用分离点分开,这种情况要按实际图景判断,不能机械地留一个扔一个。

问题三:渐近线角度公式用错。n - m = 2 时夹角是 ±90°;n - m = 3 时是 ±60°、180°;n - m = 4 时是 ±45°、±135°。这些都能从 (2k+1)π/(n-m) 推出来。注意 k 的取值范围是 0 到 n-m-1,少取会缺线,多取会画出一条不存在的渐近线。特别是 n = m 时没有渐近线,此时所有分支都终止于开环零点。

问题四:出射角入射角符号搞反。出射角 = 180° - Σ(其他开环极点贡献的相角) + Σ(所有开环零点贡献的相角)。漏掉零点项或者符号写反是高频错误。如果系统只有一对共轭复数极点,画完检查对称性——两条分支关于实轴对称,一眼就能看出有没有画歪。

问题五:增益概念混淆。根轨迹增益 K* 和开环增益(静态增益)不是一回事。开环传递函数写成零极点形式时,分子上的系数是根轨迹增益;写成时间常数形式时,常数因子才是教材里常说的开环增益。两者相差一个固定倍数。很多题目最后要求“使系统稳定的开环增益范围”,必须先完成 K* 到开环增益的换算,换算错,临界增益 48 也会变成错误的答案。

问题六:工具使用不当。rlocus 或者 root_locus 这类函数,输入的是开环传递函数,不是闭环传递函数。有人把闭环传函直接传进去,画出来的图完全不是想要的东西。另外一个高频低级错误是多项式系数写错,比如 1/[s(s+2)(s+4)] 的分母展开是 s³ + 6s² + 8s,写成 [1 6 8 0],少个系数或顺序颠倒,画出来的就是另一个系统。

排查技巧方面,我画完图一定会做三件事:数分支数、复核实轴区间、逆推起点终点。这三件事成本极低,但能拦住绝大多数低级错误。另外养成标箭头的习惯,这不光是考试采分点,在实际工作里和别人对图讨论时,箭头的方向代表增益增大的方向,是交流的基本语言。

6. 跟轨迹法在工程里的真正用法

课本上的跟轨迹题都是“给定开环传函求跟轨迹,给定阻尼比求增益”。到了真实项目里,开环传函往往不是你能选的,被控对象出厂就决定了,你能动的通常是控制器增益,顶多再加个校正环节。这时候跟轨迹法的价值体现在几件事上。

首先是快速评估“这个对象好不好控”。拿到一个对象的传递函数,扫一眼零极点分布,心里就有数。开环极点全在左半平面且离虚轴远,跟轨迹大概率稳稳地向左延伸,系统容易调;开环极点靠近虚轴甚至落在右半平面,开环零点又在右半平面,这系统要么难调,要么存在非最小相位行为,单纯靠增益很可能调不出想要的性能。跟轨迹一画,就能判断“单纯调增益这条路走不走得通”。

其次是利用稳定性边界定增益范围。分离点给出增益下限的思路——增益太低,主导极点太靠近原点,响应过慢;虚轴交点给出增益上限——增益太高,极点跨过虚轴,系统开始振荡。我曾经调过一个带柔性负载的伺服系统,特征方程阶数很高,理论临界增益算出来之后,我没有直接压着临界值用,而是先放到临界值的 60%,再逐步往上试探,每个增益点都看波形,最后稳定工作在临界值的 80% 附近。这就是跟轨迹给的工程直觉:临界增益是天花板,不是工作点,天花板往下留出余量才是能用的增益。

再就是指导校正结构选择。系统增加一个开环零点,跟轨迹向左弯曲,稳定性变好;增加一个开环极点,跟轨迹向右弯曲,稳定性变差。这个“向左好、向右坏”的规律,结合跟轨迹图能直观解释超前校正和滞后校正的本质差异。超前校正在开环传函里引入零点,目的是把跟轨迹往左拉,提高稳定裕度;滞后校正主要抬高低频增益,对根轨迹形状的局部改变有限。当年我怎么也理解不了超前环节为什么能改善相位裕度,后来在跟轨迹图上把零点加上再删掉、删掉再加上,来回试了几次,一下就明白了。

最后是多参数系统的延伸。严格的跟轨迹法是单参数扫描,但工程里经常有多个可调参数。这时候可以用广义跟轨迹:选定一个参数作为主参数,其他参数取固定值画图,逐个参数轮换考察。也可以借助参数平面上的跟轨迹族来做整定,比如比例-微分控制器里的两个增益,在参数平面上画出稳定域边界,再在边界内部选工作点。控制系统设计说到底是在参数空间里找可行域,跟轨迹法给出的是最直观的一维切片,逐片拼起来就是完整的可行域。

跟轨迹法也有明确的边界。它只适用于线性时不变系统,主要分析单输入单输出回路。系统带强非线性、参数时变或者多变量耦合时,跟轨迹图能提供的判断很有限,只能作为初步参考,不能替代时域仿真和现场调试。工程上的稳妥做法是:先用跟轨迹找到合理参数区间,再用仿真验证,最后在现场微调。这个流程我用了很多年,一直很稳。

这篇笔记写到这里,最想说的其实是一件事:学习跟轨迹千万不要上来就背规则。正确的路径是先把相角条件和幅值条件这两个源头吃透,再用规则表当快速草图工具,最后用软件验证自己画得对不对。三个环节缺一个,画图能力都是虚的。最后分享一个我实际做题时的小习惯:拿到系统的开环传函,先写特征方程 1 + G(s)H(s) = 0,再数零极点个数,最后才动笔画图。这一步多花三十秒,后面的所有规则都能对上号,也不会出现画到一半发现分支数都数错的尴尬。跟轨迹法的核心价值不在“会画”,而在“画完敢用它做判断”——这一点,等你真正在项目中用上一次,就会认同。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询