关于系统稳定性,我们从《电路》的微分方程学到《自控》的根轨迹,再到《模电》的相位裕度。然而,当真正面对电路设计中的零极点对消(Pole-Zero Cancellation)或 Gain Boosting 的辅助运放设计时,这些孤立的理论往往让人感到困惑:为什么频响分析要扔掉 σ \sigmaσ ?零点究竟如何影响瞬态?包含虚部的共轭零点/极点又如何影响瞬态?Pole-Zero Doublet 为何会恶化建立时间?明显感到这些理论背后有一套统一的机制,但教科书却往往分而治之。本文试图厘清这些似是而非的概念,挖掘理论背后的统一机制,为复杂的电路设计建立更深刻的直观理解。
其它相关内容:
一个连续线性时不变系统,通过 Laplace 变换分析,其传递函数可以写成如下形式
H ( s ) = K ( s − z 1 ) ( s − z 2 ) … ( s − p 1 ) ( s − p 2 ) … (Root Locus From) = K z 1 z 2 p 1 p 2 ( 1 − s z 1 ) ( 1 − s z 2 ) … ( 1 − s p 1 ) ( 1 − s p 2 ) … (Bode From / Time Constant Form) \begin{aligned}
H(s)&=K\cfrac{(s-z_1)(s-z_2)\dots}{(s-p_1)(s-p_2)\dots}
&& \text{(Root Locus From)}
\\[0.8em]
&=K\frac{z_1z_2}{p_1p_2}
\cfrac{
\left(1-\cfrac{s}{z_1}\right)
\left(1-\cfrac{s}{z_2}\right)
\dots}
{
\left(1-\cfrac{s}{p_1}\right)
\left(1-\cfrac{s}{p_2}\right)
\dots}
&& \text{(Bode From / Time Constant Form)}
\end{aligned}H ( s ) = K ( s − p 1 ) ( s − p 2 ) … ( s − z 1 ) ( s − z 2 ) … = K p 1 p 2 z 1 z 2 ( 1 − p 1 s ) ( 1 − p 2 s ) … ( 1 − z 1 s ) ( 1 − z 2 s ) … (Root Locus From) (Bode From / Time Constant Form)
Root-Locus Form 是控制理论和数学计算视角的标准形式:其一,根轨迹分析,比如分析运放的稳定性、PLL环路中,我们经常研究当增益 K KK 变化时,闭环极点会在复平面上如何移动。在这种分析下,K KK 是唯一的变量,如果将系数 K KK 和后面的零极点混在一起就会变得非常麻烦;其二,可以很方便地看出高频 s → ∞ s\rightarrow \inftys → ∞ 时系统的状态;其三:在进行部分分式展开求解 Inverse Laplace Transform 的时候,与公式表的形式对应
Bode Form 在模拟电路设计中,通常关心DC增益(直流增益)和带宽非常直观
这里 s = σ + j ω s=σ+jωs = σ + j ω ,是一个复数平面,z 1 , 2 … z_{1,2\dots}z 1 , 2 … 是让分子等于 0 的值,称之为零点;p 1 , 2 … p_{1,2\dots}p 1 , 2 … 是让分子等于 0 的值,称之为极点;通过他们的实部的正负,来判断他们处在左半平面还是右半平面,称之为为 RHP/LHP/LHZ/RHZ,对应的英文全称是 R ight/L eft H alf Plane P ole/Z ero
考虑一个 R C RCR C 响应并增加一条前馈路径 C f C_fC f 的系统,列出节点的电压和电流关系
{ i 2 ( t ) = C d y ( t ) d t i 1 ( t ) = u ( t ) − y ( t ) R + C f d ( u ( t ) − y ( t ) ) d t i 2 ( t ) = i 1 ( t ) \begin{cases}\begin{aligned}
i_2(t) &= C\frac{dy(t)}{dt} \\[0.8em]
i_1(t) &= \frac{u(t) - y(t)}{R}+C_f\frac{d(u(t)-y(t))}{dt} \\[0.8em]
i_2(t) &= i_1(t)
\end{aligned}\end{cases}
⎩ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎧ i 2 ( t ) i 1 ( t ) i 2 ( t ) = C d t d y ( t ) = R u ( t ) − y ( t ) + C f d t d ( u ( t ) − y ( t ) ) = i 1 ( t )
消去连接的桥梁,i 2 ( t ) i_2(t)i 2 ( t ) 和 i 1 ( t ) i_1(t)i 1 ( t ) ,只分析输入电压与输出电压在系统参数影响下的关系,就得到了微分方程:
R ( C f + C ) d y ( t ) d t + y ( t ) = u ( t ) + R C f d u ( t ) d t R(C_f+C) \frac{dy(t)}{dt} + y(t) = u(t)+RC_f\frac{du(t)}{dt}
R ( C f + C ) d t d y ( t ) + y ( t ) = u ( t ) + R C f d t d u ( t )
将这个方程进行 Laplace 变换,可以继续得到复频域的传递函数:
R ( C f + C ) ( s Y ( s ) − y ( 0 − ) ) + Y ( s ) = U ( s ) + R C f ( s U ( s ) − u ( 0 − ) ) Y ( s ) = R ( C f + C ) 1 + s R ( C f + C ) y ( 0 − ) ⏟ ZIR:零输入响应 + 1 + s R C f 1 + s R ( C f + C ) U ( s ) ⏟ ZSR:零状态响应 − R C f 1 + s R ( C f + C ) u ( 0 − ) ⏟ 输入初始跳变修正项 \begin{gathered}
R(C_f+C)(sY(s)-y(0-))+Y(s)=U(s)+RC_f(sU(s)-u(0-)) \\[0.8em]
Y(s)=\underbrace{\frac{R(C_f+C)}{1+sR(C_f+C)}y(0-)}_{\text{ZIR:零输入响应} }+
\underbrace{\frac{1+sRC_f}{1+sR(C_f+C)}U(s)}_{\text{ZSR:零状态响应} }-
\underbrace{\frac{RC_f}{1+sR(C_f+C)}u(0-)}_{\text{输入初始跳变修正项} }
\end{gathered}R ( C f + C ) ( s Y ( s ) − y ( 0 − ) ) + Y ( s ) = U ( s ) + R C f ( s U ( s ) − u ( 0 − ) ) Y ( s ) = ZIR: 零输入响应 1 + s R ( C f + C ) R ( C f + C ) y ( 0 − ) + ZSR: 零状态响应 1 + s R ( C f + C ) 1 + s R C f U ( s ) − 输入初始跳变修正项 1 + s R ( C f + C ) R C f u ( 0 − )
从时域的视角去观察复频域的传递函数:
ZIR 零输入响应: 这是系统内部存储的能量释放,存储在 C CC 和 C f C_fC f 上的初始电荷通过 R RR 释放到 0,因为此时是零输入;
ZSR 零状态响应: 完全由输入驱动的响应,低频 s → 0 s\rightarrow 0s → 0 时候,增益是 1;高频 s → ∞ s\rightarrow \inftys → ∞ 时增益是 C f / ( C f + C ) C_f/(C_f+C)C f / ( C f + C ) ,这就是为什么阶跃响应会有跳变,能量通过 C f C_fC f 这个“快速通道”瞬间分压到输出端
输入初始跳变修正项: 在 Laplace 变换中,阶跃输入信号 u ( t ) = K u(t)=Ku ( t ) = K 的复频域是 U ( s ) = K / s U(s)=K/sU ( s ) = K / s ,如果 u ( o − ) = K u(o-)=Ku ( o − ) = K ,即输入其实没有发生跳变,那 ZSR 中分子的快速前馈通路应该是不起作用的,这个修正项正好减去了这个跳变
在控制与系统这门课中,二阶系统具有非常重要的作用,微分方程描述如下, y ( t ) y(t)y ( t ) 是输出;u ( t ) u(t)u ( t ) 是输入; ζ \zetaζ (Zeta) 是阻尼比;ω n \omega_nω n 是自然频率(固有频率)
d 2 y ( t ) d t 2 + 2 ζ ω n d y ( t ) d t + ω n 2 y ( t ) = ω n 2 u ( t ) \frac{d^2y(t)}{dt^2} + 2\zeta\omega_n \frac{dy(t)}{dt} + \omega_n^2 y(t) = \omega_n^2 u(t)
d t 2 d 2 y ( t ) + 2 ζ ω n d t d y ( t ) + ω n 2 y ( t ) = ω n 2 u ( t )
计算传递函数得到
H ( s ) = Y ( s ) U ( s ) = ω n 2 s 2 + 2 ζ ω n s + ω n 2 H(s)=\frac{Y(s)}{U(s)} = \frac{\omega_n^2}{s^2 + 2\zeta\omega_n s + \omega_n^2}
H ( s ) = U ( s ) Y ( s ) = s 2 + 2 ζ ω n s + ω n 2 ω n 2
这个分母 D ( s ) = s 2 + 2 ζ ω n s + ω n 2 D(s) = s^2 + 2\zeta\omega_n s + \omega_n^2D ( s ) = s 2 + 2 ζ ω n s + ω n 2 被称为特征多项式。它的根(极点)直接决定了系统的稳定性表现,和我们在时域上的齐次解是一一对应的,令分母为 0 求根:
r 1 , 2 = − 2 ζ ω n ± ( 2 ζ ω n ) 2 − 4 ω n 2 2 = − ζ ω n ⏟ σ ± j ω n ζ 2 − 1 ⏟ j ω d r_{1,2} = \frac{-2\zeta\omega_n \pm \sqrt{(2\zeta\omega_n)^2 - 4\omega_n^2} }{2} = \underbrace{-\zeta\omega_n}_{σ} \pm \underbrace{j\omega_n\sqrt{\zeta^2 - 1} }_{jω_d}
r 1 , 2 = 2 − 2 ζ ω n ± ( 2 ζ ω n ) 2 − 4 ω n 2 = σ − ζ ω n ± j ω d j ω n ζ 2 − 1
只要 ζ ω n ≥ 0 \zeta\omega_n\geq0ζ ω n ≥ 0 ,系统就是稳定的,意味着零输入响应下,输出总是衰减的
阻尼状态 (State)
阻尼比条件 (ζ)
极点特征 (Poles)
物理/数学描述
过阻尼 (Overdamped)
ζ > 1 \zeta > 1ζ > 1
两个不相等的实数极点
根号内是正数,系统不震荡,响应较慢。
临界阻尼 (Critically Damped)
ζ = 1 \zeta = 1ζ = 1
两个重合的实数极点 (s = − ω n s = -\omega_ns = − ω n )
根号内为 0,不发生震荡前提下最快回到稳态。
欠阻尼 (Underdamped)
0 < ζ < 1 0 < \zeta < 10 < ζ < 1
一对共轭复数极点 (s = − σ ± j ω d s = -\sigma \pm j\omega_ds = − σ ± j ω d )
根号内是负数,出现虚数 j jj ,系统会震荡。实部决定衰减速度,虚部决定震荡频率。
无阻尼 (Undamped)
ζ = 0 \zeta = 0ζ = 0
极点在虚轴上 (s = ± j ω n s = \pm j\omega_ns = ± j ω n )
对应 LC 永不停歇的等幅震荡。
主要目的是从开环传递函数,分析闭环传递函数的特性,为什么我们总是分析 0dB 的 Phase Margin,负反馈的机制是“做减法”,即输入减去反馈信号。如果一个正弦波信号在环路里跑了一圈,相移达到了 180°,它就变成了一个反相的波形(比如波峰变成了波谷)。这时候,“输入 - 反馈” 变成了 “输入 - (-反馈)”,也就是 “输入 + 反馈”。原本用来纠错的负反馈,瞬间变成了推波助澜的正反馈。如果此时环路增益 ∣ L ( s ) ∣ ≥ 1 |L(s)| \ge 1∣ L ( s ) ∣ ≥ 1 ,这个误差就会被无限放大,导致振荡发散。所以,180° 是“负反馈失效并转为正反馈”的临界线
接着观察开环到闭环的过程,假设开环传递函数是 L ( s ) = K N ( s ) / D ( s ) L(s) = K{N(s)}/{D(s)}L ( s ) = K N ( s ) / D ( s ) ,在单位负反馈下,闭环传递函数就是
G ( s ) = L ( s ) 1 + L ( s ) = K N ( s ) / D ( s ) 1 + K N ( s ) / D ( s ) = K N ( s ) D ( s ) + K N ( s ) G(s) = \frac{L(s)}{1 + L(s)} = \frac{KN(s)/D(s)}{1 + KN(s)/D(s)} = \frac{KN(s)}{D(s) + KN(s)}
G ( s ) = 1 + L ( s ) L ( s ) = 1 + K N ( s ) / D ( s ) K N ( s ) / D ( s ) = D ( s ) + K N ( s ) K N ( s )
关于零点:开环的零点,直接就是闭环的零点, 你看 G ( s ) G(s)G ( s ) 的分子依然是 N ( s ) N(s)N ( s ) 乘以个系数。这意味着,如果你在开环里引入了一个零点,它会原封不动地出现在闭环传递函数里。这非常关键,因为零点代表了系统对某些频率成分的“微分”或“加速”作用,这个特性在闭环后依然保留
关于极点:开环的极点,只是闭环极点的“出发点” G ( s ) G(s)G ( s ) 的分母变成了 D ( s ) + K N ( s ) D(s)+KN(s)D ( s ) + K N ( s ) 。这意味着闭环极点完全变了,它们不再是 D ( s ) D(s)D ( s ) 的根,而是特征方程 1 + L ( s ) = 0 1 + L(s) =01 + L ( s ) = 0 的根。随着增益 K 的变化,闭环极点会从开环极点出发,沿着根轨迹移动。我们做零点频率补偿,本质上就是通过修改 N ( s ) N(s)N ( s ) 和 D ( s ) D(s)D ( s ) ,来控制 D ( s ) + K N ( s ) = 0 D(s) + KN(s) = 0D ( s ) + K N ( s ) = 0 的根尽量落在左半平面的实轴上。
Bode Plot
伯德图中,传函相乘,幅度响应相加;传函相加,幅度响应取决于更大的一个
类型
幅频特性 ω ∼ ∞ ω\sim\inftyω ∼ ∞
相频特性 ω / 10 ∼ 10 ω \omega/10 \sim 10\omegaω / 1 0 ∼ 1 0 ω
稳定性影响
左半平面极点 (LHP Pole)
-20dB/dec
滞后 (下降) -90°
正常系统组成部分
右半平面极点 (RHP Pole)
-20dB/dec
系统不稳定
左半平面零点 (LHP Zero)
+20dB/dec
超前 (上升) +90°
增强稳定性 (增加相位裕度)
右半平面零点 (RHP Zero)
+20dB/dec
滞后 (下降) -90°
削弱稳定性 (减小相位裕度,引起下冲)
根轨迹仍然分析是闭环传递函数,分析的是如下方程的根,从 K = 0 → ∞ K=0 \rightarrow \inftyK = 0 → ∞ 变换过程根轨迹的变化,总是开始于从开环极点(x)出发,终止于开环零点(o)
1 + L ( s ) = 0 ⟹ 1 + K N ( s ) D ( s ) = 0 ⟹ D ( s ) + K N ( s ) = 0 \begin{gathered}
1+L(s)=0 \implies 1+K\frac{N(s)}{D(s)}=0 \implies D(s)+KN(s)=0
\end{gathered}1 + L ( s ) = 0 ⟹ 1 + K D ( s ) N ( s ) = 0 ⟹ D ( s ) + K N ( s ) = 0
手绘有很多法则,但是利用工具会更加方便,如下图是利用 Mathematica 进行的根轨迹分析,开环极点(x)/开环零点(o)/ K=0.35(●)
K=0.35 的时候闭环极点仍然处于实轴上,从齐次解的求解过程中,我们知道此时只有衰减项没有振荡项,观察其阶跃响应确实没有Overshoot;
根轨迹只分析闭环极点,不分析闭环零点,因为闭环零点不随 K 变化,但是我们实际分析系统的瞬态响应时,需要考虑零点的作用;阶跃刚开始,由于共轭零点的微分作用,并不是从0开始的,而是直接有了一个跳变,观察 t = 0 t=0t = 0 时刻的 y ( 0 ) ≈ 0.259 y(0)\approx 0.259y ( 0 ) ≈ 0 . 2 5 9 解释了这一点,初始态的跳变非常快,系统响应取决于高频增益,也就是 G ( ∞ ) G(∞)G ( ∞ )
接下来我们发现阶跃响应有个下探的过程,而不是向着终值单调变化,这是因为 t = 0 t=0t = 0 时刻的系统的零点决定的变化率 y ′ ( 0 ) = − 0.864 y'(0)=-0.864y ′ ( 0 ) = − 0 . 8 6 4 是负数,决定此后输出将会向下走;然后最终的 y ( ∞ ) = 0.583 y(∞)=0.583y ( ∞ ) = 0 . 5 8 3 所以接下来会上扬并最终稳定(详细分析见后续章节 #5.1 零点作用过程分析 )
ClearAll["Global`*"]
(* 1.定义开环/闭环传递函数 *)
L[s_, k_] := k*(s^2 + s + 10)/((s + 5/10)*(s + 5));
G[s_, k_] := L[s, k]/(1 + L[s, k]);
(* 2.绘制根轨迹 (Root Locus) *)
rlPlot = RootLocusPlot[L[s, k], {k, 0, 100},
PlotRange -> { {-6, 3}, {-4, 4} },
PoleZeroMarkers -> {"ParameterValues" -> {0.35} },
AxesLabel -> {"Real \[Sigma]", "Imaginary j\[Omega]"},
GridLines -> Automatic,
Frame -> True
]
(* 3.分析不同 K 值下的阶跃响应 *)
kvalue = 0.35;
system = TransferFunctionModel[G[s, kvalue], s];
response = OutputResponse[system, UnitStep[t], t];
Plot[response, {t, 0, 5}, PlotRange -> {0, 0.8},
PlotLabel -> "Step Response",
GridLines -> Automatic,
Axes -> True
]
(*4.计算y(0)=0.259,y'(0)=-0.864,y(∞)=0.583*)
y0 = Series[s*(1/s)*G[s, kvalue], {s, Infinity, 0}] // Normal
y0d = Series[s*(s*(1/s)*G[s, kvalue] - y0), {s, Infinity, 0}] // Normal
yinf = Series[s*((1/s)*G[s, kvalue]), {s, 0, 0}] // Normal
高频单零点(左图);共轭低频零点(中图);共轭高频零点(右图);
无零点(左图);单右零点(中图);单中频零点(右图);
闭环极点总是从开环极点出发,终止于开环零点(或无穷远处)。这意味着随着增益 k kk 增大,闭环系统的表现会越来越像零点及其附近的特性。如果根轨迹趋向于虚轴,系统变不稳定;如果趋向于零点,极点被零点“吸引”。极点就是系统微分方程的齐次解,所以理解齐次解,也就理解了极点的瞬态响应。
详见:Time-Domain-Analysis-of-Linear-ODE#2.2 理解齐次解的形式
极点(Poles)是系统的“体质”,闭环极点是特征方程 D ( s ) = 0 D(s)=0D ( s ) = 0 的根,它们定义了系统本质上“想”怎么运动。
实轴极点: 对应单调的指数衰减或增长。极点离虚轴越远(越向左),衰减越快,系统响应速度越快(时间常数 τ \tauτ 越小)。
复数极点: 必须共轭成对出现 (− σ ± j ω d -\sigma \pm j\omega_d− σ ± j ω d )。它们引入振荡分量。
实部 (σ \sigmaσ ): 决定收敛包络线的快慢。
虚部 (ω d \omega_dω d ): 决定振荡的频率。
阻尼比 (ζ \zetaζ ): 极点与负实轴的夹角决定。夹角越大,阻尼越小,振荡越剧烈。
这里解释为什么阻尼比 (ζ \zetaζ ) 由夹角决定,还记得共轭极点的特征方程,求解的根满足以下关系
r 1 , 2 = − 2 ζ ω n ± ( 2 ζ ω n ) 2 − 4 ω n 2 2 = − ζ ω n ± j ω n ζ 2 − 1 r_{1,2} = \frac{-2\zeta\omega_n \pm \sqrt{(2\zeta\omega_n)^2 - 4\omega_n^2} }{2} = -\zeta\omega_n \pm j\omega_n\sqrt{\zeta^2 - 1}
r 1 , 2 = 2 − 2 ζ ω n ± ( 2 ζ ω n ) 2 − 4 ω n 2 = − ζ ω n ± j ω n ζ 2 − 1
所以实部是 σ = − ζ ω n σ=-ζω_nσ = − ζ ω n ,虚部 ω d = ω n ζ 2 − 1 ω_d=ω_n\sqrt{ζ^2-1}ω d = ω n ζ 2 − 1 ,把这个堪称三角形的画,那么斜边就是
hypotenuse(斜边) = σ 2 + ω d 2 = ω n \text{hypotenuse(斜边)}=\sqrt{σ^2+ω_d^2}=ω_n
hypotenuse( 斜边 ) = σ 2 + ω d 2 = ω n
那么在这个三角形当中,这个夹角的 cos θ \cos \thetacos θ 正好就是 ζ
cos θ = adjacent(临边) hypotenuse(斜边) = ζ ω n ω n = ζ \cos θ=\frac{\text{adjacent(临边)} }{\text{hypotenuse(斜边)} }=\frac{ζω_n}{ω_n}=ζ
cos θ = hypotenuse( 斜边 ) adjacent( 临边 ) = ω n ζ ω n = ζ
直观理解零点的核心原理是 零点 = 导数项(微分控制),零点在微分方程中,是激励信号的导数产生的,作用是信号预测和相位超前。考虑一个二阶负反馈系统的传递函数:
L ( s ) = K N ( s ) D ( s ) = K ( s + z 1 ) ( s + z 2 ) ( s + p 1 ) ( s + p 2 ) G ( s ) = L ( s ) 1 + L ( s ) = N ( s ) D ( s ) + K N ( s ) = K ( s + z 1 ) ( s + z 2 ) ( s + p 1 ) ( s + p 2 ) + K ( s + z 1 ) ( s + z 2 ) \begin{aligned}
L(s)&=K\frac{N(s)}{D(s)}=K\frac{(s+z_1)(s+z_2)}{(s+p_1)(s+p_2)} \\[0.8em]
G(s)&=\frac{L(s)}{1+L(s)}=\frac{N(s)}{D(s)+KN(s)}=\frac{K(s+z_1)(s+z_2)}{(s+p_1)(s+p_2)+K(s+z_1)(s+z_2)}
\end{aligned}L ( s ) G ( s ) = K D ( s ) N ( s ) = K ( s + p 1 ) ( s + p 2 ) ( s + z 1 ) ( s + z 2 ) = 1 + L ( s ) L ( s ) = D ( s ) + K N ( s ) N ( s ) = ( s + p 1 ) ( s + p 2 ) + K ( s + z 1 ) ( s + z 2 ) K ( s + z 1 ) ( s + z 2 )
开环DC增益为
L ( s ) → s → 0 A = k z 1 z 2 p 1 p 2 ⟹ k = A p 1 p 2 z 1 z 2 L(s)\xrightarrow{s\rightarrow 0}A=\frac{kz_1z_2}{p_1p_2}\implies k=\frac{Ap_1p_2}{z_1z_2}
L ( s ) s → 0 A = p 1 p 2 k z 1 z 2 ⟹ k = z 1 z 2 A p 1 p 2
初值 : 初始是否产生跳变,取决于阶跃响应 y ( 0 ) y(0)y ( 0 ) 是多少,根据初值定理
{ y ( 0 ) = s → ∞ s Y ( s ) 初值定理 U ( s ) = 1 s 阶跃响应的拉氏变换 Y ( s ) = G ( s ) U ( s ) = G ( s ) s \begin{cases}
y(0)=\lim_{s\rightarrow∞}sY(s) &\text{初值定理}\\[0.8em]
U(s)=\cfrac{1}{s} & \text{阶跃响应的拉氏变换}\\[0.8em]
Y(s)=G(s)U(s)=\cfrac{G(s)}{s}
\end{cases}⎩ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎧ y ( 0 ) = lim s → ∞ s Y ( s ) U ( s ) = s 1 Y ( s ) = G ( s ) U ( s ) = s G ( s ) 初值定理 阶跃响应的拉氏变换
所以产生跳变是零点极点的个数相等(实际电路中零点≤极点恒成立),跳变大小取决于根轨迹传函形式下的 K 值
{ y ( 0 ) = G ( ∞ ) = k 1 + k 零点个数 = 极点个数 y ( 0 ) = G ( ∞ ) = 0 零点个数 < 极点个数 \begin{cases}
y(0)=G(∞)=\cfrac{k}{1+k} & \text{零点个数 = 极点个数}\\[0.8em]
y(0)=G(∞)=0 & \text{零点个数 < 极点个数}\\[0.8em]
\end{cases}⎩ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎧ y ( 0 ) = G ( ∞ ) = 1 + k k y ( 0 ) = G ( ∞ ) = 0 零点个数 = 极点个数 零点个数 < 极点个数
初始变化 :t = 0 t=0t = 0 之后的趋势,取决于 y ′ ( 0 ) y'(0)y ′ ( 0 ) 的极性,应用拉普拉斯变换的微分性质和初值定理,可以得到
{ Y ( s ) = 1 s G ( s ) 阶跃响应的频域是 1/s L { y ′ ( t ) } = s Y ( s ) − y ( 0 ) f ′ ( t ) 拉普拉斯变换 y ′ ( 0 ) = t → 0 d y ( t ) d t = s → ∞ s ⋅ ( s Y ( s ) − y ( 0 ) ) ⏟ 导数的拉氏变换 \begin{cases}
Y(s)=\cfrac{1}{s}G(s) & \text{阶跃响应的频域是 1/s}\\[0.8em]
\mathcal{L}\{y'(t)\} = sY(s)-y(0) & f'(t)\text{ 拉普拉斯变换}\\[0.8em]
y'(0) = \lim_{t \to 0} \cfrac{dy(t)}{dt} = \lim_{s \to \infty} s \cdot \underbrace{\left( s Y(s) - y(0) \right)}_{\text{导数的拉氏变换} } \\[0.8em]
\end{cases}⎩ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎧ Y ( s ) = s 1 G ( s ) L { y ′ ( t ) } = s Y ( s ) − y ( 0 ) y ′ ( 0 ) = lim t → 0 d t d y ( t ) = lim s → ∞ s ⋅ 导数的拉氏变换 ( s Y ( s ) − y ( 0 ) ) 阶跃响应的频域是 1/s f ′ ( t ) 拉普拉斯变换
这样代入后,得到 y ′ ( 0 ) y'(0)y ′ ( 0 ) 的极性取决于(零点之和-极点之和)
{ y ′ ( 0 ) = k ( 1 + k ) 2 ( ( z 1 + z 2 ) − ( p 1 + p 2 ) ) 零点个数 = 极点个数 y ′ ( 0 ) = k 零点个数 < 极点个数 \begin{cases}
y'(0) =\cfrac{k}{(1+k)^2}\bigg((z_1+z_2)-(p_1+p_2)\bigg) & 零点个数=极点个数 \\[0.8em]
y'(0) =k & 零点个数<极点个数
\end{cases}⎩ ⎪ ⎪ ⎨ ⎪ ⎪ ⎧ y ′ ( 0 ) = ( 1 + k ) 2 k ( ( z 1 + z 2 ) − ( p 1 + p 2 ) ) y ′ ( 0 ) = k 零 点 个 数 = 极 点 个 数 零 点 个 数 < 极 点 个 数
对于具有 Complex LHP Zero 的系统,相比只具有实部的双零点,其 z 1 + z 2 z_1+z_2z 1 + z 2 是一样的,但是 z 1 z 2 z_1z_2z 1 z 2 更大导致 DC 增益更高更不容易稳定;
对于的具有单个 RHP 零点的系统,开始一定或多或少有反向下探,利用二阶单零点系统里,为了保证负反馈,开环 DC 增益为正,k 一定是负数
高频零点作用时间 :从初始变化率可以看出来,初始阶段的变化取决于极点和零点作用拉锯战中,粗略估算这个这个作用时间大约就就是零点带宽对应的时间常数
τ = 1 ω n = 1 σ 2 + ω d 2 r o o t = σ ± j ω d \tau=\frac{1}{ω_n}=\frac{1}{\sqrt{σ^2+ω_d^2} }\quad root=σ±jω_d
τ = ω n 1 = σ 2 + ω d 2 1 r o o t = σ ± j ω d
响应的终点 :求解 t → ∞ t\rightarrow ∞t → ∞ 需要用到终值定理,当然我们也可以通俗的理解为 DC 响应
{ y ( ∞ ) = s → 0 s Y ( s ) 终值定理 U ( s ) = 1 s 阶跃响应的拉氏变换 Y ( s ) = G ( s ) U ( s ) = G ( s ) s \begin{cases}
y(∞)=\lim_{s\rightarrow0}sY(s) &\text{终值定理}\\[0.8em]
U(s)=\cfrac{1}{s} & \text{阶跃响应的拉氏变换}\\[0.8em]
Y(s)=G(s)U(s)=\cfrac{G(s)}{s}
\end{cases}⎩ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎧ y ( ∞ ) = lim s → 0 s Y ( s ) U ( s ) = s 1 Y ( s ) = G ( s ) U ( s ) = s G ( s ) 终值定理 阶跃响应的拉氏变换
这样自然得到如下表达式,通常 DC 增益 A 是一个远大于 1 的值
y ( ∞ ) = k z 1 z 2 p 1 p 2 + k z 1 z 2 = A 1 + A where A = k z 1 z 2 p 1 p 2 y(\infty)=\frac{kz_1z_2}{p_1p_2+kz_1z_2}=\frac{A}{1+A}\quad \text{where}\quad A=\frac{kz_1z_2}{p_1p_2}
y ( ∞ ) = p 1 p 2 + k z 1 z 2 k z 1 z 2 = 1 + A A where A = p 1 p 2 k z 1 z 2
响应终点超调 :一个系统的闭环极点仍然是 LHP 实数,LHP Zero 如果非常靠近甚至小于主机点的话,这也会造成超调 Overshoot;零点在微分方程中,是激励信号的导数产生的,作用是信号预测和相位超前;如果其作用时间范围 τ z τ_zτ z 延申甚至接近到了主极点 τ p τ_pτ p ,在接近目标值仍然进行预测和相位超前,就造成了超调;
RHP Zero :首先明白零点的作用是预测,所以 RHP Zero 在相位是超前,但是其增益是反的,这就导致了它在故意使坏
LHP Real Zero : 这是“好”的零点,提供相位超前(Lead),增加系统阻尼,加快响应。 核心结构:串联的电阻-电容 (Series RC) 或 前馈通路与主通路“同相”叠加。
阻抗模型:ESR (等效串联电阻),最经典的例子是 LDO 或 DCDC 变换器的输出电容,即一个电容 C CC 串联一个寄生电阻 R E S R R_{ESR}R E S R ,低频时电流走电容(积分,滞后);高频时电容短路,电流走电阻(比例,无滞后)。相位从 -90° 被拉回 0°,这就是 LHP 零点的“微分/预测”作用
Miller 补偿中的 Rz,虽然可以理解其是为了限制 Cc 上的前馈电流 I c I_{c}I c ,但是其前馈的电流在 R 上形成的 IR Drop,反而会进一步增强 I g m I_{gm}I g m ,甚至过补偿形成左零
另外一个是 MNMC 的中的快速的通路与慢速通路的叠加
RHP Real Zero :物理意义:这是“坏”的零点,提供幅值增益(+20dB/dec)但相位滞后(-90°)。导致“反向动作”(Non-minimum phase)。 核心结构:快通路与慢通路“反相”叠加。
米勒效应 (Miller Effect without Nulling Resistor),共源级 (Common Source) 放大器,栅极 (Gate) 和漏极 (Drain) 之间存在寄生电容 C g d C_{gd}C g d 或补偿电容 C c C_cC c ,构成了模拟 IC 设计中最著名的 RHP 零点来源;
慢通路 (主路径):V i n → g m → V o u t V_{in} \to g_m \to V_{out}V i n → g m → V o u t ,这是一个反相放大器 (Gain = − g m R o u t -g_m R_{out}− g m R o u t )
快通路 (前馈路径):V i n → C g d → V o u t V_{in} \to C_{gd} \to V_{out}V i n → C g d → V o u t ,高频下 C g d C_{gd}C g d 阻抗变小,信号直接通过电容传过去。电容是双向导通的,它不反相。
主路径想把输出往下拉,前馈路径想把输出往上拉
z = g m / C g d z = {g_m}/{C_{gd} }z = g m / C g d ,这就造成了你之前看到的 t = 0 t=0t = 0 时刻的反向动作(前馈先到,主路径后到)
Boost / Buck-Boost 变换器 (CCM 模式),这是电源设计中著名的“右半平面零点”,电感在输入和地之间切换
你需要输出电压升高 → \rightarrow→ 控制环路增加占空比 D DD
D DD 增加 → \rightarrow→ 开关管导通时间变长 → \rightarrow→ 电感充电时间变长
副作用:在这一周期内,二极管关断的时间(向负载提供能量的时间 1 − D 1-D1 − D )变短了!
这就是典型的 RHP 行为:我要去正向,但我必须先反向蓄力。
Complex Zeros :无论是 LHP 还是 RHP,复数零点都意味着 s 2 s^2s 2 项,即电路中存在两个储能元件 (L+C 或 C+C) 的能量交换,或者是三条路径的叠加。
LHP Complex Zeros
陷波滤波器 (Notch Filter) / Twin-T 网络
在特定频率 ω 0 \omega_0ω 0 ,两条并联路径的信号刚好幅度相等、相位相反,互相抵消,增益极小
这就是一对虚轴上的零点(或者靠得很近的 LHP 复零点)
这种滤波器,通常无法做到完全限制,让 G a i n ( ω 0 ) = 0 Gain(\omega_0)=0G a i n ( ω 0 ) = 0 ,由于寄生电阻或者 Charge Injection 构成的 1/FC 的电阻的存在,因此一定会造成一定的实部存在
前馈路径的二阶特性
如果你有一个主路径(增益1),和一个二阶高通路径(s 2 s^2s 2 ),它们同相叠加
H ( s ) = 1 + ( s / ω n ) 2 H(s) = 1 + (s/\omega_n)^2H ( s ) = 1 + ( s / ω n ) 2 。这就在 s = ± j ω n s = \pm j\omega_ns = ± j ω n 处产生纯虚数零点。如果稍加阻尼,就是 LHP 复零点
RHP Complex Zeros :相位极度滞后,幅值却有谐振峰。极其不稳定,极难补偿。 结构成因: 这种情况在常规单环路电路中很少见,通常出现在复杂的有源滤波器或多环路系统中。全通滤波器 (All-Pass Filter),全通滤波器不去左直连而是去构建滤波器,就是为了为了做延时或相位均衡,我们特意设计 H ( s ) = s 2 − s / Q + 1 s 2 + s / Q + 1 H(s) = \cfrac{s^2 - s/Q + 1}{s^2 + s/Q + 1}H ( s ) = s 2 + s / Q + 1 s 2 − s / Q + 1 ,这里分子就是一对 RHP 复数零点。
在分析系统的频率响应时,我们总是替换 s 传递函数中的 s = j ω s=jωs = j ω 忽略了 σ σσ ,解释这个之前,需要先明确两个概念:“系统的内特性决定的瞬态”和“外界激励维持的稳态”
极点中的 σ + j ω d σ+jω_dσ + j ω d 是特征方程的根,是内因,它描述的是如果你踢了系统一脚(冲击响应),然后不管它,它会怎么震荡和衰减。σ σσ 决定了它自然衰减得有多快(阻尼);ω d ω_dω d 决定了它自然震荡的频率;随着时间推移,因为有 e − σ t e^{-\sigma t}e − σ t ,这部分能量最终会耗尽。这就是瞬态响应 (Transient),随着时间推移会衰减消失的部分(由系统本身的特征极点决定)
频率响应的 s = 0 + j ω s = 0 + j\omegas = 0 + j ω 是外因,当我们分析“频率响应”时,我们是在做一个特定的实验:用信号发生器给系统灌入一个纯正弦波,u ( t ) = A sin ( ω t ) u(t) = A \sin(\omega t)u ( t ) = A sin ( ω t ) ,这个信号没有衰减,因此 σ = 0 σ=0σ = 0 ;因为“频率响应”关注的不是系统受到冲击后的“自嗨”(瞬态),而是关注系统被迫跟随外部正弦波跳舞时的表现。这就是稳态响应 (Steady State),随着时间推移保留下来的部分(通常跟随输入的形态)。
当我们画波特图(Bode Plot)或分析频响时,我们默认已经等了足够久,瞬态早死光了。剩下还在动的,完全是由输入信号 e j ω t e^{j\omega t}e j ω t 维持的。所以,我们将传递函数 G ( s ) G(s)G ( s ) 中的 s ss 替换为输入信号的特征 j ω j\omegaj ω ,算出来的 ∣ G ( j ω ) ∣ |G(j\omega)|∣ G ( j ω ) ∣ 就是在稳态下,输入正弦波被放大了多少倍。
那极点的 σ \sigmaσ 去哪了?既然 s ss 换成了 j ω j\omegaj ω ,那极点的 σ \sigmaσ 依然在幕后起着决定性作用。我们从几何直观的角度,想象一下 s 平面 (S-Plane):
极点 (X):钉在 s = − σ + j ω d s = -\sigma + j\omega_ds = − σ + j ω d 的位置不动。
扫描动作:频率响应分析,相当于你沿着 虚轴 (j ω j\omegaj ω axis) 从下往上走。你的坐标是 ( 0 , ω ) (0, \omega)( 0 , ω ) 。
σ \sigmaσ 的作用是“距离”:当你的测试频率 ω \omegaω 慢慢增加,走到了 ω ≈ ω d \omega \approx \omega_dω ≈ ω d 附近时(接近极点的虚部高度):
如果你离极点很近(即 σ \sigmaσ 很小):传递函数的分母 ∣ s − p ∣ |s - p|∣ s − p ∣ 会变得很小,导致增益 ∣ G ( j ω ) ∣ |G(j\omega)|∣ G ( j ω ) ∣ 暴涨。这就是谐振峰 (Resonance Peak)。
如果你离极点很远(即 σ \sigmaσ 很大):哪怕你走到了 ω d \omega_dω d 旁边,由于水平距离 σ \sigmaσ 太大,分母依然很大,增益就不会有明显的尖峰。
同理零点导致的 Notch 也可以用以上 Pole-Peaking 的方式理解