Appearance
拉普拉斯变换
概念
上一章的傅里叶变换有一个前提:积分必须收敛,也就是信号要"绝对可积"。于是它处理不了这类信号:
| 信号 | 傅里叶变换积分 | 问题 |
|---|---|---|
e^(−t)u(t) | ∫₀^∞ e^(−t)e^(−jωt)dt 收敛 | 可以 |
e^(2t)u(t) | ∫₀^∞ e^(2t)e^(−jωt)dt 发散 | 不行 |
u(t) | 严格说也不收敛(要靠广义函数补救) | 勉强 |
拉普拉斯变换的办法极简单:再乘一个衰减因子 e^(−σt),把信号"压"到能积分:
X(s) = ∫₀^∞ x(t) · e^(−st) dt, s = σ + jω| 记号 | 含义 |
|---|---|
| σ | 实部,控制"压多少" |
| ω | 虚部,就是傅里叶里的频率 |
| s = σ + jω | 复频率 |
所以两者不是两种变换,是一种:傅里叶变换是拉普拉斯变换在 σ = 0 这条竖线上的切片。多出来的 σ 这一维,让拉普拉斯能处理"发散得不过分"的信号——包括所有"在有限激励下会指数增长"的系统响应。
原理
一、定义、单边与收敛域
| 类型 | 积分区间 | 用途 |
|---|---|---|
| 双边 | (−∞, +∞) | 理论分析 |
| 单边 | [0⁻, +∞) | 工程与考研的默认(因为系统因果,t < 0 时输入为 0) |
收敛域 ROC 是"使积分收敛的那些 s 的集合":
| 信号 | X(s) | ROC |
|---|---|---|
e^(−at)u(t) | 1/(s + a) | Re(s) > −a |
−e^(−at)u(−t) | 1/(s + a) | Re(s) < −a |
注意这两行:同一个 X(s),ROC 不同就是两个完全不同的信号。所以写拉普拉斯变换必须带 ROC,否则答案不唯一。
二、常用变换对(要背)
时域 x(t) | s 域 X(s) | ROC |
|---|---|---|
δ(t) | 1 | 全平面 |
u(t) | 1/s | Re(s) > 0 |
e^(−at)u(t) | 1/(s + a) | Re(s) > −a |
t·u(t) | 1/s² | Re(s) > 0 |
t^n u(t) | n!/s^(n+1) | Re(s) > 0 |
sin(ω₀t)u(t) | ω₀/(s² + ω₀²) | Re(s) > 0 |
cos(ω₀t)u(t) | s/(s² + ω₀²) | Re(s) > 0 |
e^(−at)sin(ω₀t)u(t) | ω₀/((s+a)² + ω₀²) | Re(s) > −a |
规律很好记:分母里有 (s + a) 就说明时域里带 e^(−at);分母是 s² + ω₀² 就说明时域里是振荡。
三、五个性质(用它们把微积分换掉)
| 性质 | 时域 | s 域 |
|---|---|---|
| 线性 | a·x₁ + b·x₂ | a·X₁ + b·X₂ |
| 时域微分 | dx/dt | sX(s) − x(0⁻) |
d²x/dt² | s²X(s) − s·x(0⁻) − x′(0⁻) | |
| 时域积分 | ∫₀^t x(τ)dτ | X(s)/s |
| s 域平移 | x(t)·e^(−at) | X(s + a) |
| 卷积 | x * h | X(s)·H(s) |
| 初值定理 | x(0⁺) | lim_{s→∞} sX(s) |
| 终值定理 | x(∞) | lim_{s→0} sX(s) |
微分性质那两行是整门课的杠杆:它把"求导"变成了"乘 s 再减去初值"——微分方程直接变成了代数方程。
终值定理有一个前提(最常被忽略):X(s) 的极点必须全在左半平面(原点处最多允许一阶)。否则 x(∞) 根本不存在,硬套定理会得到错误答案(如 X(s) = 1/(s² + 1) 对应 sin t,极点 ±j 在虚轴上,终值不存在)。
四、解微分方程:三步走
以 y″ + 3y′ + 2y = 0,y(0) = 1、y′(0) = 0 为例:
| 步 | 做什么 | 本例题 |
|---|---|---|
| 1 | 变换:两边取拉氏,代入初值 | (s² + 3s + 2)Y(s) = s + 3 |
| 2 | 代数:解出 Y(s) 并做部分分式 | Y(s) = (s+3)/((s+1)(s+2)) = 2/(s+1) − 1/(s+2) |
| 3 | 反变换:逐项查表 | y(t) = 2e^(−t) − e^(−2t) |
初值全部在第一步就用掉了——这就是拉普拉斯比"待定系数法 + 求导"省事的地方:它把"初值"变成了解方程过程中的一行,而不是最后要回头解的一组方程。
部分分式的系数有快速求法(留数法):对 Y(s) = A/(s+1) + B/(s+2),
A = (s+1)·Y(s) 在 s = −1 处的值 = (−1+3)/(−1+2) = 2
B = (s+2)·Y(s) 在 s = −2 处的值 = (−2+3)/(−2+1) = −1五、系统函数 H(s) 与极点:一句话定稳定
系统函数就是"冲激响应的拉普拉斯变换":
H(s) = Y(s)/X(s) y = x * h ⇔ Y = X·H它通常是两个多项式之比 N(s)/D(s):
| 名词 | 定义 | 决定什么 |
|---|---|---|
| 极点 | D(s) = 0 的根 | 稳定性、响应的形态与衰减率 |
| 零点 | N(s) = 0 的根 | 幅频响应的"凹陷"位置 |
极点在复平面上的位置,就是时域响应的说明书:
| 极点位置 | 时域分量 | 稳定性 |
|---|---|---|
负实轴 s = −a(a > 0) | e^(−at) 单调衰减 | 稳定 |
左半平面复极点 −σ ± jω | e^(−σt)·cos(ωt + φ) 振荡衰减 | 稳定 |
虚轴 ±jω | 等幅振荡 | 临界(不稳定) |
| 右半平面 | 指数增长 | 不稳定 |
判据一句话:极点全在左半平面 ⇔ 系统稳定(因果系统)。极点离虚轴越远,衰减越快;虚部越大,振荡越快。
六、二阶系统:两个参数就能算完指标
标准形式(ωₙ 是自然频率、ζ 是阻尼比):
H(s) = ωₙ² / (s² + 2ζωₙs + ωₙ²)| 指标 | 公式 | 物理含义 |
|---|---|---|
| 最大超调 | Mp = e^(−πζ/√(1−ζ²)) | 冲过头多少 |
| 峰值时间 | tp = π/(ωₙ√(1−ζ²)) | 什么时候冲到顶 |
| 调节时间(2%) | ts ≈ 4/(ζωₙ)(欠阻尼下的工程近似) | 多久之后算"稳定下来" |
| ζ | Mp | tp(ωₙ = 1) | 形态 |
|---|---|---|---|
| 0.2 | 52.66% | 3.2064 s | 剧烈振荡 |
| 0.5 | 16.30% | 3.6276 s | 常见折中 |
| 0.707 | 4.33% | 4.4422 s | 巴特沃斯(最平坦) |
| 1.0 | 0 | 无峰值 | 临界阻尼,刚好不振荡 |
| 2.0 | 0 | 无峰值 | 过阻尼,爬得慢 |
注意"快"和"稳"的矛盾:ζ 越小冲得越高但上升快;ζ 越大不超调但响应慢。工程上取 ζ ≈ 0.707——超调只有 4.3%,兼顾了两头,这就是巴特沃斯响应的由来。这一张表是 自动控制原理 的开篇内容。
示例
例 1:RC 一阶电路的充电曲线,解析与数值各算一遍(C)
一阶 RC 电路的传递函数是 H(s) = 1/(RC·s + 1),阶跃响应是 y(t) = 1 − e^(−t/τ)(τ = RC)。这里取 τ = 1 s,用 RK4 独立数值积分做对照。
#include <stdio.h>
#include <math.h>
int main(void) {
double tau = 1.0; /* RC = 1 s */
double dt = 1e-4;
double y = 0.0, t = 0.0;
int marks = 1;
int n = (int)(5.0 / dt);
printf("%-8s %-14s %-14s %-10s\n", "t/tau", "analytic", "RK4", "err");
for (int i = 1; i <= n; i++) {
/* dy/dt = (1 - y) / tau */
double k1 = (1 - y) / tau;
double k2 = (1 - (y + dt / 2 * k1)) / tau;
double k3 = (1 - (y + dt / 2 * k2)) / tau;
double k4 = (1 - (y + dt * k3)) / tau;
y += dt / 6 * (k1 + 2 * k2 + 2 * k3 + k4);
t += dt;
if (i == (int)(marks * tau / dt)) {
double a = 1 - exp(-t / tau);
printf("%-8.0f %-14.6f %-14.6f %-10.2e\n", t / tau, a, y, fabs(a - y));
marks++;
}
}
printf("t50 = tau*ln2 = %.6f s (y rises to half of 1)\n", tau * log(2));
return 0;
}
c 本站为静态站,不提供在线运行;可复制到本地用 gcc / python 执行
预期输出:
t/tau analytic RK4 err
1 0.632121 0.632121 3.69e-14
2 0.864665 0.864665 3.05e-14
3 0.950213 0.950213 9.38e-14
4 0.981684 0.981684 7.29e-14
5 0.993262 0.993262 1.24e-14
t50 = tau*ln2 = 0.693147 s (y rises to half of 1)读数:1τ → 63.21%、2τ → 86.47%、3τ → 95.02%、5τ → 99.33%——这组数是所有一阶系统的通用刻度。误差在 1e-14 量级,说明两条路径完全一致。
关键数字是 t50 = τ·ln2 = 0.693147 s:响应走到一半的时刻,只由时间常数决定。反过来,工程上就靠"测一半时间"来反推 τ。
例 2:解方程、极点、二阶指标、初值终值一次验完(Python)
C 段只做了一阶电路。这里把这一章的六件事补齐:用拉氏解二阶微分方程并与 RK4 对照、极点与冲激响应、二阶系统指标表、初值与终值定理、s 取 jω 回到傅里叶。
import math
import cmath
def pad(s, w):
dw = sum(2 if ord(c) > 0x2000 else 1 for c in str(s))
return str(s) + " " * max(0, w - dw)
def table(head, rows, gap=2):
data = [[str(c) for c in r] for r in rows]
w = [max([sum(2 if ord(c) > 0x2000 else 1 for c in str(head[i]))]
+ [sum(2 if ord(c) > 0x2000 else 1 for c in r[i]) for r in data]) + gap
for i in range(len(head))]
print(" " + "".join(pad(head[i], w[i]) for i in range(len(head))))
for r in data:
print(" " + "".join(pad(r[i], w[i]) for i in range(len(head))))
print("=== 1. 用拉普拉斯变换解微分方程:先把微积分换成代数 ===")
print(" y'' + 3y' + 2y = 0,初值 y(0) = 1、y'(0) = 0")
print(" 取拉氏(用微分性质 L{y'} = sY - y(0)、L{y''} = s²Y - s·y(0) - y'(0)):")
print(" (s² + 3s + 2)Y(s) = s + 3")
print(" Y(s) = (s + 3) / ((s + 1)(s + 2)) = 2/(s + 1) - 1/(s + 2)")
print(" 反变换:y(t) = 2e^(-t) - e^(-2t)")
def rk4(t_end, dt=1e-4):
"""把二阶方程拆成两个一阶方程,用 RK4 独立求一遍作为对照"""
y, v, t = 1.0, 0.0, 0.0
n = int(t_end / dt)
for _ in range(n):
def f(t, y, v):
return v, -3 * v - 2 * y
k1 = f(t, y, v)
k2 = f(t + dt / 2, y + dt / 2 * k1[0], v + dt / 2 * k1[1])
k3 = f(t + dt / 2, y + dt / 2 * k2[0], v + dt / 2 * k2[1])
k4 = f(t + dt, y + dt * k3[0], v + dt * k3[1])
y += dt / 6 * (k1[0] + 2 * k2[0] + 2 * k3[0] + k4[0])
v += dt / 6 * (k1[1] + 2 * k2[1] + 2 * k3[1] + k4[1])
t += dt
return y
rows = []
for t in (0.0, 0.5, 1.0, 2.0, 3.0):
ana = 2 * math.exp(-t) - math.exp(-2 * t)
rows.append(["%.1f" % t, "%.6f" % ana,
"%.6f" % (rk4(t) if t > 0 else 1.0)])
table(["t", "拉氏解 y(t)", "RK4 数值解(另一条路径)"], rows)
d0 = -2 * math.exp(0) + 2 * math.exp(0)
table(["初值自检", "值"], [["y(0) = 2·1 - 1", "%d" % 1], ["y'(0) = -2 + 2", "%d" % d0]])
print(" 初值条件 y(0)=1、y'(0)=0 都自动满足 —— 说明部分分式的系数没算错。")
print()
print("=== 2. 系统函数 H(s):极点在哪,响应就长什么样 ===")
print(" H(s) = 1/((s + 1)(s + 2)),极点 s = -1、-2(都在左半平面)")
print(" 冲激响应 h(t) = e^(-t) - e^(-2t),求导令 e^(-t) - 2e^(-2t) = 0 得峰值时刻 t = ln2")
rows = []
for t in (0.0, 0.5, 0.693147, 1.0, 2.0, 4.0):
rows.append(["%.6f" % t, "%.6f" % (math.exp(-t) - math.exp(-2 * t))])
table(["t", "h(t)"], rows)
print(" 峰值 t = ln2 = %.6f,h = %.6f;t → ∞ 时衰减到 0(稳定)。"
% (math.log(2), math.exp(-math.log(2)) - math.exp(-2 * math.log(2))))
print(" 极点离虚轴越远,衰减越快:极点在 s = -1 的分量按 e^(-t),在 -2 的按 e^(-2t)。")
print()
print("=== 3. 二阶系统:阻尼比 ζ 一个数就定了超调量 ===")
print(" H(s) = ωn² / (s² + 2ζωn·s + ωn²),取 ωn = 1")
rows = []
for z in (0.2, 0.5, 0.707, 1.0, 2.0):
if z < 1:
Mp = math.exp(-math.pi * z / math.sqrt(1 - z * z))
tp = "%.4f" % (math.pi / math.sqrt(1 - z * z))
ts = "%.2f" % (4.0 / z)
kind = "欠阻尼(振荡衰减)"
elif z == 1:
Mp, tp, ts, kind = 0.0, "无峰值", "约 4.00(近似)", "临界阻尼(不振荡)"
else:
Mp, tp, ts, kind = 0.0, "无峰值", "无固定公式", "过阻尼(慢慢爬)"
rows.append(["%.3f" % z, "%.4f%%" % (100 * Mp), tp, ts, kind])
table(["阻尼比 ζ", "最大超调 Mp", "峰值时间 tp (s)", "调节时间 ts (2%)", "形态"], rows)
print(" Mp = e^(-πζ/√(1-ζ²)):ζ=0.5 → %.2f%%,与表里一致;ζ 越小超调越大、振荡越久。"
% (100 * math.exp(-math.pi * 0.5 / math.sqrt(0.75))))
print(" ts ≈ 4/(ζωn) 是欠阻尼下的工程近似,过阻尼没有这个简洁公式,所以表里留空。")
print(" 工程上常取 ζ ≈ 0.707(Mp ≈ 4.3%)在'快'与'稳'之间折中,这就是巴特沃斯响应的由来。")
print()
print("=== 4. 初值与终值定理:不必反变换就能知道两个端点 ===")
print(" 例 A:X(s) = 1/(s(s+1)) 对应 x(t) = 1 - e^(-t)(初值 0、终值 1)")
print(" 例 B:X(s) = 1/(s+1) 对应 x(t) = e^(-t)(初值 1、终值 0)")
def fv_direct(t, kind):
return (1 - math.exp(-t)) if kind == "A" else math.exp(-t)
rows = [["例 A 初值 x(0+)", "%.6f" % fv_direct(0, "A"), "lim s→∞ sX(s) = lim 1/(s+1) = 0"],
["例 A 终值 x(∞)", "%.6f" % fv_direct(50, "A"), "lim s→0 sX(s) = lim 1/(s+1) = 1"],
["例 B 初值 x(0+)", "%.6f" % fv_direct(0, "B"), "lim s→∞ sX(s) = lim s/(s+1) = 1"],
["例 B 终值 x(∞)", "%.6f" % fv_direct(50, "B"), "lim s→0 sX(s) = lim s/(s+1) = 0"]]
table(["口径", "看解析式", "用定理"], rows)
print(" 两条例子的初值都能用'分子分母同阶比系数'的心算拿到,完全不用做反变换。")
print(" 注意终值定理的前提:X(s) 的极点必须全在左半平面(原点最多一阶),否则 x(∞) 根本不存在。")
print(" 反例:X(s) = 1/(s²+1) 对应 sin t,极点 ±j 在虚轴上,终值不存在 —— 硬套定理会得到 0,错的。")
print()
print("=== 5. 与傅里叶的关系:把 s 取成 jω 就回去了 ===")
rows = []
for w in (0.0, 1.0, 2.0, 5.0):
Hs = 1.0 / ((1j * w) ** 2 + 3 * 1j * w + 2)
Hj = 1.0 / ((1j * w + 1) * (1j * w + 2))
rows.append(["%.1f" % w, "%.6f" % abs(Hs), "%.6f" % abs(Hj),
"%.6f" % cmath.phase(Hj)])
table(["ω", "H(s)|s=jω", "乘积式(因式分解后)", "相位(弧度)"], rows)
print(" ω=0 时 |H| = 1/2;ω=1 时 |H| = 1/√10 = 0.3162 —— 高频被压下去,这就是低通的频域表现。")
print(" 关键:拉氏变换是傅里叶变换的'扩域'(多了 σ 这一维)。σ=0 的一刀切面就是傅里叶。")
python 本站为静态站,不提供在线运行;可复制到本地用 gcc / python 执行
预期输出:
=== 1. 用拉普拉斯变换解微分方程:先把微积分换成代数 ===
y'' + 3y' + 2y = 0,初值 y(0) = 1、y'(0) = 0
取拉氏(用微分性质 L{y'} = sY - y(0)、L{y''} = s²Y - s·y(0) - y'(0)):
(s² + 3s + 2)Y(s) = s + 3
Y(s) = (s + 3) / ((s + 1)(s + 2)) = 2/(s + 1) - 1/(s + 2)
反变换:y(t) = 2e^(-t) - e^(-2t)
t 拉氏解 y(t) RK4 数值解(另一条路径)
0.0 1.000000 1.000000
0.5 0.845182 0.845182
1.0 0.600424 0.600424
2.0 0.252355 0.252355
3.0 0.097095 0.097095
初值自检 值
y(0) = 2·1 - 1 1
y'(0) = -2 + 2 0
初值条件 y(0)=1、y'(0)=0 都自动满足 —— 说明部分分式的系数没算错。
=== 2. 系统函数 H(s):极点在哪,响应就长什么样 ===
H(s) = 1/((s + 1)(s + 2)),极点 s = -1、-2(都在左半平面)
冲激响应 h(t) = e^(-t) - e^(-2t),求导令 e^(-t) - 2e^(-2t) = 0 得峰值时刻 t = ln2
t h(t)
0.000000 0.000000
0.500000 0.238651
0.693147 0.250000
1.000000 0.232544
2.000000 0.117020
4.000000 0.017980
峰值 t = ln2 = 0.693147,h = 0.250000;t → ∞ 时衰减到 0(稳定)。
极点离虚轴越远,衰减越快:极点在 s = -1 的分量按 e^(-t),在 -2 的按 e^(-2t)。
=== 3. 二阶系统:阻尼比 ζ 一个数就定了超调量 ===
H(s) = ωn² / (s² + 2ζωn·s + ωn²),取 ωn = 1
阻尼比 ζ 最大超调 Mp 峰值时间 tp (s) 调节时间 ts (2%) 形态
0.200 52.6621% 3.2064 20.00 欠阻尼(振荡衰减)
0.500 16.3034% 3.6276 8.00 欠阻尼(振荡衰减)
0.707 4.3255% 4.4422 5.66 欠阻尼(振荡衰减)
1.000 0.0000% 无峰值 约 4.00(近似) 临界阻尼(不振荡)
2.000 0.0000% 无峰值 无固定公式 过阻尼(慢慢爬)
Mp = e^(-πζ/√(1-ζ²)):ζ=0.5 → 16.30%,与表里一致;ζ 越小超调越大、振荡越久。
ts ≈ 4/(ζωn) 是欠阻尼下的工程近似,过阻尼没有这个简洁公式,所以表里留空。
工程上常取 ζ ≈ 0.707(Mp ≈ 4.3%)在'快'与'稳'之间折中,这就是巴特沃斯响应的由来。
=== 4. 初值与终值定理:不必反变换就能知道两个端点 ===
例 A:X(s) = 1/(s(s+1)) 对应 x(t) = 1 - e^(-t)(初值 0、终值 1)
例 B:X(s) = 1/(s+1) 对应 x(t) = e^(-t)(初值 1、终值 0)
口径 看解析式 用定理
例 A 初值 x(0+) 0.000000 lim s→∞ sX(s) = lim 1/(s+1) = 0
例 A 终值 x(∞) 1.000000 lim s→0 sX(s) = lim 1/(s+1) = 1
例 B 初值 x(0+) 1.000000 lim s→∞ sX(s) = lim s/(s+1) = 1
例 B 终值 x(∞) 0.000000 lim s→0 sX(s) = lim s/(s+1) = 0
两条例子的初值都能用'分子分母同阶比系数'的心算拿到,完全不用做反变换。
注意终值定理的前提:X(s) 的极点必须全在左半平面(原点最多一阶),否则 x(∞) 根本不存在。
反例:X(s) = 1/(s²+1) 对应 sin t,极点 ±j 在虚轴上,终值不存在 —— 硬套定理会得到 0,错的。
=== 5. 与傅里叶的关系:把 s 取成 jω 就回去了 ===
ω H(s)|s=jω 乘积式(因式分解后) 相位(弧度)
0.0 0.500000 0.500000 0.000000
1.0 0.316228 0.316228 -1.249046
2.0 0.158114 0.158114 -1.892547
5.0 0.036418 0.036418 -2.563691
ω=0 时 |H| = 1/2;ω=1 时 |H| = 1/√10 = 0.3162 —— 高频被压下去,这就是低通的频域表现。
关键:拉氏变换是傅里叶变换的'扩域'(多了 σ 这一维)。σ=0 的一刀切面就是傅里叶。四条结论:
- 拉氏解与 RK4 数值解完全一致(0.845182 / 0.600424 / 0.252355 / 0.097095 四个点逐位相同),且初值
y(0) = 1、y′(0) = 0自动满足——这说明部分分式的两个系数 2 和 −1 是对的。 h(t) = e^{−t} − e^{−2t}的峰值在 t = ln2 ≈ 0.6931 处、值 0.25。求极值只需一次求导,完全不用画图。- ζ 一个数就定住了整套指标:ζ = 0.2 → 超调 52.66%、ζ = 0.5 → 16.30%、ζ = 0.707 → 4.33%。"快"和"稳"的取舍全在这一个参数上。
- 初值与终值定理都成立:四个格子里的解析值与定理值一一对应;而反例(虚轴极点)说明定理的前提不能丢。
考点
考点
1. 定义与 ROC
- 单边拉氏:
X(s) = ∫₀⁻^∞ x(t)e^(−st)dt,s = σ + jω。 - 傅里叶是拉普拉斯在 σ = 0 上的特例(且要求 ROC 包含虚轴)。
- 同一个 X(s) 配不同 ROC 就是不同信号——这是最常被忽略的一步。
2. 常用变换对(背)
| x(t) | X(s) |
|---|---|
| δ(t) | 1 |
| u(t) | 1/s |
| e^(−at)u(t) | 1/(s + a) |
| tⁿu(t) | n!/s^(n+1) |
| sin(ω₀t)u(t) | ω₀/(s² + ω₀²) |
| cos(ω₀t)u(t) | s/(s² + ω₀²) |
3. 微分/积分性质(解方程的关键)
L{y′} = sY(s) − y(0⁻);L{y″} = s²Y(s) − s·y(0⁻) − y′(0⁻)。L{∫₀^t x dτ} = X(s)/s。- 零初始条件下,微积分 = 乘除 s——这就是"解微分方程变成解代数方程"的全部原因。
4. 初值定理与终值定理
- 初值:
x(0⁺) = lim_{s→∞} sX(s)。 - 终值:
x(∞) = lim_{s→0} sX(s)。 - 终值定理前提:X(s) 的极点全在左半平面(原点处至多一阶)。虚轴上有一对共轭极点(如
1/(s²+1))时,x(∞)不存在。
5. 系统函数与稳定性(高频)
H(s) = Y(s)/X(s);卷积 ⇔ 相乘。- 稳定判据:极点全在左半平面(因果系统)。
- 极点位置与时域分量的对应:负实极点 → e^(−at);左半复极点 → 振荡衰减;虚轴 → 等幅振荡;右半 → 增长。
- 零点影响幅度形状,极点决定形态与稳定性。
6. 二阶系统的三个指标
| 指标 | 公式 |
|---|---|
| 超调 | Mp = e^(−πζ/√(1−ζ²)) |
| 峰值时间 | tp = π/(ωₙ√(1−ζ²)) |
| 调节时间(2%) | ts ≈ 4/(ζωₙ)(欠阻尼近似) |
记三个数:ζ = 0.5 → 16.30%;ζ = 0.707 → 4.33%;ζ = 1 → 0(无超调)。
7. 易错点清单
- 写拉氏变换不带 ROC:答案不唯一。
- 把终值定理用到虚轴极点的系统上:结论直接错。
- 忘记初值项:
L{y′}是sY − y(0),漏掉−y(0)会让答案在 t = 0 处对不上。 - 认为"极点越靠左越好":离虚轴太远意味着响应太快,可能要很大的瞬时功率/带宽,工程上要折中。
- 混淆"稳定"与"能收敛到某个值":临界阻尼稳定但有稳态误差,两者不是一回事。
- 把 s 域平移与时间平移搞混:
x(t−t₀)乘e^(−st₀)(时移);x(t)e^(−at)是X(s+a)(频移)。 - 用部分分式时漏掉重极点项:分母有
(s+a)²时要写成A/(s+a) + B/(s+a)²。
小结
- 拉普拉斯变换就是"乘一个衰减因子之后的傅里叶变换":
s = σ + jω里多出来的 σ 让它能处理发散信号;傅里叶是 σ = 0 的切片。 - 微分性质是最有价值的性质:
L{y′} = sY − y(0)把微积分问题变成代数问题,初值在第一步就用掉。 - 解微分方程三步走:变换(代初值)→ 部分分式 → 查表反变换。
- 极点位置就是响应的说明书:左半平面稳定、负实极点单调衰减、复极点振荡衰减、虚轴等幅、右半平面发散。
- 二阶系统两个参数(ωₙ、ζ)定全部指标;ζ ≈ 0.707(超调 4.3%)是"快"与"稳"的最佳折中点。
- 初值/终值定理能免去反变换,但终值定理有前提:极点必须全在左半平面。
回到主线:从这一章起,"信号"与"系统"合到了同一个符号里——H(s) 同时说明了两件事:极点位置说稳定性,零点位置说幅度形状。模拟电路 里的放大电路频响、自动控制原理 里的传递函数与 根轨迹,用的都是这一套语言。
下一章再往前走一步:把连续世界的 s 换成离散世界的 z,让同一套"极点决定稳定"的逻辑在采样系统里重新成立。
下一篇:Z 变换与离散系统
评论(0)
当前浏览器不允许本地存储,评论无法保存。
还没有评论,来说两句。