Z变换终值定理证明过程及深度解析
探索离散时间信号处理的基石:从数学推导到工程应用的全方位指南
什么是Z变换终值定理?
在信号与系统分析,尤其是离散控制系统中,Z变换终值定理(Final Value Theorem, FVT)是一个极为强大的工具。它允许我们直接通过Z域的表达式 F(z) 来求得时域序列 f(n) 在时间趋于无穷大时的稳态值,而无需进行繁琐的逆Z变换。
f(∞) = lim(n→∞) f(n) = lim(z→1) [(z - 1)F(z)]
这一定理不仅在理论推导中占据核心地位,在实际工程中也广泛用于计算系统的稳态误差。然而,许多初学者往往忽略了其严格的适用条件,导致计算结果出现严重偏差。本文将深入剖析其证明过程,并梳理网友们普遍关注的周边知识点。
Z变换终值定理的详细证明过程
为了严谨地证明该定理,我们需要从Z变换的定义出发,并结合单边Z变换的位移性质。以下是逐步推导过程:
1. 回顾Z变换定义与位移性质
设序列 f(n) 的单边Z变换为 F(z),定义为:
根据单边Z变换的后向位移性质(或称为超前性质),序列 f(n+1) 的Z变换为:
2. 构造极限表达式
我们考察表达式 (z - 1)F(z) 在 z → 1 时的极限。首先展开 zF(z):
现在考虑 (z - 1)F(z) = zF(z) - F(z)。我们将这两个级数展开并相减:
整理各项系数,我们会发现这是一个 telescoping series(裂项相消级数)的变体。更直观的方法是利用差分性质。定义一阶差分 Δf(n) = f(n+1) - f(n)。
根据线性性质:
因此,我们可以写出:
3. 取极限 z → 1
现在对等式两边同时取 z → 1 的极限:
分析右边第一项 lim(z→1) Z[Δf(n)]:
当 z → 1 时,该级数变为:
这是一个无穷级数的求和。让我们看看部分和:
- S_N = Σ(n=0 to N) [f(n+1) - f(n)]
- S_N = [f(1)-f(0)] + [f(2)-f(1)] + ... + [f(N+1)-f(N)]
- 通过相消,S_N = f(N+1) - f(0)
当 N → ∞ 时,如果 f(n) 收敛于终值 f(∞),则:
回到之前的等式,右边第二项 lim(z→1) [zf(0)] = 1 f(0) = f(0)。
综合起来:
证毕。 这个证明清晰地展示了终值定理的本质:它实际上是序列差分在无穷远处的累积效应。
核心难点:适用条件与极点分析
这是网友们在搜索“Z变换终值定理证明过程”时最关心的部分。证明过程中隐含了一个关键假设:极限 lim(n→∞) f(n) 必须存在。如果序列发散或振荡,终值定理将给出错误的结果,甚至无意义。
⚠️ 稳定条件
函数 F(z) 的所有极点必须位于 单位圆内(|z| < 1)。
唯一例外是:在 z = 1 处可以有一个一阶极点。这是因为阶跃输入或恒定偏置会导致终值非零,但系统仍需稳定。
⛔ 不适用情况
1. 极点在单位圆外:系统不稳定,f(n) 发散至无穷大。
2. 共轭复极点在单位圆上:系统产生等幅振荡,无稳态值。
3. z=1 处有多重极点:例如 1/(z-1)^2,对应斜坡输入,终值发散。
极点分布与终值关系表
| 极点位置 | 时域响应 f(n) | 终值 f(∞) | 终值定理是否适用 |
|---|---|---|---|
| |z| < 1 (所有极点) | 衰减至0 | 0 | 是 |
| z = 1 (单极点), 其余|z|<1 | 收敛至常数 | 非零常数 | 是 |
| z = 1 (多重极点) | 发散 (如斜坡) | ∞ | 否 |
| |z| > 1 | 发散 (指数增长) | ∞ | 否 |
| 单位圆上 (z≠1) | 等幅振荡 | 不存在 | 否 |
典型实例演算与对比
理论需要实践来检验。以下两个示例展示了如何正确应用定理,以及如何避免常见错误。
示例1:稳定系统
已知 F(z) = z / (z - 0.5)。求 f(∞)。
步骤1:检查极点
极点为 z = 0.5。因为 |0.5| < 1,位于单位圆内,系统稳定,定理适用。
步骤2:应用定理
= lim(z→1) [(1 - 1) 1 / (1 - 0.5)]
= 0 1 / 0.5
= 0
验证:逆Z变换得 f(n) = (0.5)^n u(n)。当 n→∞ 时,(0.5)^n → 0。结果一致。
示例2:振荡系统(不适用)
已知 F(z) = z(z + 1) / (z^2 + 1)。求 f(∞)。
步骤1:检查极点
分母 z^2 + 1 = 0 ⇒ z = ±j。极点为 j 和 -j。模长 |j| = 1,位于单位圆上,但不是 z=1。
结论:系统产生振荡,终值不存在。定理不适用。
错误应用演示:
lim(z→1) [(z - 1) z(z + 1) / (z^2 + 1)]
= (1 - 1) 1(2) / 2 = 0
计算结果为0,但实际序列 f(n) 是 0, 1, 0, -1, 0, 1... 并不收敛于0。这证明了检查极点的重要性。
示例3:斜坡输入(不适用)
已知 F(z) = z / (z - 1)^2(对应斜坡序列 nu(n))。
步骤1:检查极点
在 z=1 处有二重极点。
错误应用:
虽然极限趋向无穷,但在工程计算中,我们通常要求终值为有限常数。对于发散系统,使用终值定理没有实际意义,且容易混淆。
常见问题解答 (FAQ)
可以,但仅限于单极点。 如果z=1是F(z)的单极点,且其他极点都在单位圆内,则系统具有非零的稳态值(如阶跃响应),此时终值定理完全适用。如果z=1是多重极点,系统发散,定理不适用。
在Z域中,(z-1)对应于离散时间的一阶差分算子 Δ。乘以(z-1)并取极限,相当于在时域中考察序列的累积变化。在S域中,s 是微分算子,乘以 s 取 s→0 极限同理。这是频域分析稳态值的通用数学结构。
不能直接求平均值。 终值定理求的是序列在 n→∞ 时的瞬时值。如果序列振荡(如 sin(n)),终值不存在。求平均值需要用到其他信号处理技术,如滑动平均滤波器的频域响应。
在MATLAB或Python中,直接计算极限可能遇到除以零或数值不稳定问题。建议先解析化简表达式,或使用 `limit` 符号计算工具。对于数值仿真,应检查系统极点,确保稳定后再计算稳态响应。
Z变换终值定理是连接离散频域与时域稳态行为的桥梁。掌握其证明过程不仅有助于理解数学原理,更能帮助工程师在实际应用中规避陷阱。请务必牢记:先判极点,后求终值。