ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

典型周期信号傅里叶级数分解:波形、谐波与工程应用速查

典型周期信号傅里叶级数分解:波形、谐波与工程应用速查

翻到第三章 3.4 这一节,很多人会有个错觉:公式全都推得出来,一落到真实波形上就懵。典型周期信号的傅里叶级数分解,说白了就是把方波、三角波、锯齿波、整流正弦、窄脉冲串这几张"样板脸"记熟,知道它们各自展开成什么样、系数掉得多快、频谱长什么样、相位有什么花招。这一步做扎实了,后面算带宽、设计滤波器、看频谱仪上的谐波、判断开关电源纹波从哪来,基本都是同一套动作。这篇写给两类人:一类是正在啃信号与系统、被积分和狄利克雷条件卡住的同学,另一类是已经在做硬件、嵌入式、音频、电源、振动分析,需要拿谐波说话但细节记不清的工程师。我会把每个典型信号的系数怎么来的、为什么这样收敛、工程上怎么用、哪里有坑,一次讲透,公式和代码都给到能直接跑的程度。

1. 先搞清楚"典型"两个字的含金量

1.1 为什么只用几个样板就够用了

理论上任何满足狄利克雷条件的周期信号都能展开成傅里叶级数,但真实工程里你遇到的波形,九成以上都能归到少数几类里去:开关管上的方波、时钟线上的矩形脉冲、电感电流的三角波、扫描电路的锯齿波、整流桥后面的半波和全波正弦、以及各种占空比的窄脉冲串。原因不复杂——这些波形是"用最少的器件和最简单的电路"造出来的,方波只需要一个开关,三角波只需要一个积分器,锯齿波只需要一个受控放电。自然界和电路里最常见的周期运动,本来就这么几种形态。

所以 3.4 这一节的定位不是"再教你一遍级数公式",而是给你建立一张速查地图:看到某个波形,脑子里能立刻反应出它含有哪些谐波、幅度按什么规律衰减、直流分量多少、有没有相位跳变、大概需要多宽的带宽才能还原个八九不离十。这张地图一旦建好,你算滤波器阶数、估 EMI 频段、判断 THD 量级、看示波器 FFT 的谱线是否合理,速度会快一个量级。

反过来说,如果这一节只背了公式没建立"波形的时域形状直接决定频谱包络"这个直觉,后面做傅里叶变换、拉普拉斯变换、采样定理时会一路难受,因为所有东西都变成了纯符号运算,失去了物理锚点。

1.2 动手之前必须钉死的三个前提

第一个前提是狄利克雷条件。教科书写的是:一个周期内绝对可积、极值点有限、间断点有限。翻译成人话就是——波形不能在一个周期里无限次抖动,不能有无穷大的尖峰,不能有无限多个跳变。现实中的信号天然满足,因为任何物理系统的能量都是有限的。但你在做数学理想化建模时会踩线,比如理想冲激串、理想方波(跳变处导数无穷),这些严格来说要用广义函数处理。做工程估算时不必纠结,只要记住:理想跳变会带来 1/n 的慢衰减,这就是后面吉布斯现象的根源。

第二个前提是三角函数系的正交性。这是整套分解能成立的数学地基:不同频率的正弦、余弦在一个整周期上积分为零,同频率的正余弦也正交。正因为正交,"求第 n 个系数"时可以把其他所有项全部积掉,只剩目标项,公式才长得那么干净。你可以把它类比成三维空间里求坐标:正因为基向量互相垂直,才能用点乘把每个分量单独拎出来。傅里叶级数就是在函数空间里做同一件事,只不过维数变成了无穷。

第三个前提是级数形式的选型。三角形式和指数形式是同一件事的两种穿法。三角形式直观,物理意义清楚,适合讲解和手算;指数形式紧凑,乘除、时移、卷积都更省事,适合推导和写代码。两者的换算关系必须背熟:三角形式的 $a_n$、$b_n$ 对应指数形式的正负频率两根谱线,单边幅度谱的 $A_n=\sqrt{a_n^2+b_n^2}$ 与双边谱的 $|X_n|$ 差一个因子 2(n≠0 时),这个 2 倍关系是新手最容易翻车的地方,后面第 5 节会专门说。

提示:判断自己是否真懂了正交性,有个简单测试——不看书画出方波前三项叠加的波形,并说清楚为什么叠加后过冲会出现在跳变沿两侧而不是跳变点上。

2. 方波:最典型、也最容易踩坑的那一个

2.1 系数推导与占空比的隐藏影响

先取最常见的对称方波:周期 $T$,幅度在 $+A$ 和 $-A$ 之间跳变,正半周占一半。它在 $(-T/2, T/2)$ 上是一个奇函数,所以 $a_n=0$,只剩正弦项,直流分量 $a_0=0$。这一点光看波形就能判断——上下面积相等,平均值为零,根本不用算积分。

正弦项系数的积分过程值得手推一遍:

$$b_n=\frac{2}{T}\int_{-T/2}^{T/2}x(t)\sin(n\omega_0 t),dt=\frac{4A}{T}\int_{0}^{T/2}\sin(n\omega_0 t),dt$$

后一步用了偶倍奇的性质,把负半周那段翻成正的。继续算:

$$\int_{0}^{T/2}\sin\frac{2\pi n t}{T}dt=\frac{T}{2\pi n}\left[1-\cos(n\pi)\right]$$

所以

$$b_n=\frac{2A}{\pi n}\left[1-(-1)^n\right]$$

$n$ 为偶数时括号里是零,$n$ 为奇数时是 2,于是 $b_n=4A/(\pi n)$,只含奇次谐波:

$$x(t)=\frac{4A}{\pi}\left[\sin\omega_0t+\frac{1}{3}\sin3\omega_0t+\frac{1}{5}\sin5\omega_0t+\cdots\right]$$

这个式子里藏着三条工程信息。第一,幅度按 1/n 衰减,是所有常见波形里最慢的,意味着方波带宽极宽,理论上无穷。第二,只含奇次谐波,因为波形满足奇半波对称 $x(t+T/2)=-x(t)$,这个对称性让所有偶次项自动抵消。第三,没有相位项,各次谐波在跳变点同相叠加,才形成了那个陡峭的边沿。

一旦占空比从 50% 偏离,情况立刻变化:偶次谐波出现,直流分量不再为零,$n$ 次谐波的幅度变成 $\frac{2A}{n\pi}\left|\sin(n\pi D)\right|$ 这种带 sinc 包络的形式。这就是为什么 PWM 调速时你会听到音调变化——占空比改变了谐波包络的零点位置,某些频率被压掉、某些被抬起来。我在做电机驱动时就吃过这个亏:空载调试时电流纹波很干净,一加负载占空比变化,某个频点的振动突然冒出来,查了半天才发现是谐波包络的零点挪位了。

2.2 吉布斯那道永远消不掉的 9%

方波最经典的现象是吉布斯:用有限项去拟合,跳变沿两侧必然出现过冲和振铃,而且随着项数增加,过冲的幅度不变,只是振荡的宽度越来越窄、频率越来越高。极限值大约是跳变幅度的 8.95%,接近 9%,工程上常说"约 9%"。

这个数字不是算法误差,也不是你取项数不够,它是傅里叶级数在间断点处的固有行为。用最小均方误差的准则去看,级数其实已经做到最优了——它把误差能量压到最小,代价就是在不连续点附近必须留一坨振荡。换句话说,你不可能同时做到"均方误差最小"和"处处逐点收敛",这是一对矛盾。

这一点对做硬件的特别重要。你在示波器上看到一个实际方波,边沿有振铃,先别急着怪探头和走线,得先分清是信号本身的高次谐波被带宽截断造成的,还是传输线反射造成的。区分方法很土但有效:截断造成的振铃频率与信号最高次有效谐波相关,随着测量带宽提高,振铃频率跟着上移、幅度基本不变;反射造成的振铃频率由线长和介电常数决定,换个线长就跑掉了。我一般会用这个判据先分流,再决定是去调匹配还是去检讨信号源的边沿。

2.3 工程里怎么用这条 1/n 的尾巴

1/n 衰减意味着方波的能量大量分布在高频。要给一个方波做"看起来像方波"的低通滤波,只保留基波,你会得到一个正弦波;保留到三次谐波,波形开始有点方;保留到五次,勉强能看出平台的形状;保留到九次以上,肉眼才觉得"这是个方波"。这个经验数字在画原理图时非常有用:判断某条信号线上要不要串阻、要不要加共模电感,先看它的谐波能量落在哪个频段。

举个具体场景。某次做一个 25 MHz 的时钟链路,走线很长,辐射测试在 75 MHz、125 MHz 附近超标。这两个频率正好是三次和五次谐波,说明问题不在基频,而在这两根"意外地强"的谐波上。处理办法不是去动基频,而是加一个针对百兆附近的磁珠或 RC 缓冲,同时把驱动器的边沿调缓一点——边沿一缓,高次谐波的能量就下来了。这个思路的底层依据就是方波的 1/n 包络:你没法消灭谐波,只能重新分配它。

下面这段代码可以把理论系数和数值 FFT 对起来,验证一下自己有没有算错:

import numpy as np A, T, N = 1.0, 1.0, 1024 t = np.linspace(0, T, N, endpoint=False) # 50% 占空比对称方波 x = np.where(t < T/2, A, -A) # 理论:奇次谐波,幅度 4A/(pi*n),正弦相位 def theory(t, K): y = np.zeros_like(t) for k in range(1, K+1, 2): y += (4*A/(np.pi*k)) * np.sin(2*np.pi*k*t/T) return y # 数值 FFT X = np.fft.fft(x) / N * 2 # 单边幅度 freq_idx = np.arange(N//2) for n in [1, 3, 5, 7]: amp_num = np.abs(X[n]) amp_th = 4*A/(np.pi*n) print(f"n={n}: 数值={amp_num:.4f}, 理论={amp_th:.4f}") # 观察吉布斯:项数增加,过冲幅度不降 for K in [5, 21, 101]: y = theory(t, K) print(f"K={K}, 峰值={y.max():.4f}, 超调={100*(y.max()-A)/A:.2f}%")

跑出来你会看到,峰值稳定在 1.089 左右,超调接近 9%,项数从 5 加到 101 这个数字几乎不动。亲手跑一遍比看十遍书管用。

3. 三角波与锯齿波:收敛速度的活教材

3.1 三角波为什么只要几项就很像

三角波是检验"光滑度决定收敛速度"的最佳样本。取峰值为 $A$ 的偶对称三角波,在 $|t|<T/2$ 上写成 $x(t)=A\left(1-\frac{4|t|}{T}\right)$,它在 $t=0$ 处是尖点,导数不连续,所以收敛速度介于方波和正弦之间。

偶函数,$b_n=0$,只剩余弦项。算出来的结果是:

$$a_n=\frac{8A}{\pi^2n^2}\quad(n\ \text{为奇数}),\qquad a_n=0\quad(n\ \text{为偶数})$$

$$x(t)=\frac{8A}{\pi^2}\left[\cos\omega_0t+\frac{1}{9}\cos3\omega_0t+\frac{1}{25}\cos5\omega_0t+\cdots\right]$$

注意分母是 $n^2$,不是 $n$。这一级的差别在工程上是数量级的:三次谐波只占基波的 1/9,五次只占 1/25。这意味着三角波的频谱非常"干净",用两级 RC 低通就能把它滤得很平滑,而方波你滤十级也还留着毛刺。

我在做音频功放的时候就利用了这一点:三角波作为 PWM 载波,它的高次谐波虽然存在但掉得极快,经过输出滤波器后残留很小,实测底噪明显低于用方波做载波的方案。当然方波做载波有其好处(比较器实现简单、边沿陡、线性度好),这就是典型的工程取舍,没有绝对优劣,只看你更在乎 THD 还是在乎电路复杂度。

3.2 锯齿波的相位与"不对称"的价值

锯齿波在 $|t|<T/2$ 上定义为 $x(t)=\frac{2A}{T}t$,是一个奇函数,只有正弦项。算出来:

$$b_n=\frac{2A}{\pi n}(-1)^{n+1}$$

$$x(t)=\frac{2A}{\pi}\left[\sin\omega_0t-\frac{1}{2}\sin2\omega_0t+\frac{1}{3}\sin3\omega_0t-\cdots\right]$$

和方波不同,锯齿波含全部谐波,因为它的波形不满足奇半波对称,$x(t+T/2)\neq -x(t)$。同时它有一个交替的负号,对应各次谐波有 $\pi$ 的相位翻转。

这个相位信息不是摆设。做扫描电路、做时间基准、做锁相环的鉴相器,你需要的是"斜坡"的线性度,而线性度直接由低次谐波的相位关系决定;如果你在做频谱分析时只把幅度谱画出来、把相位谱丢掉,那重建出来的波形和原始波形会差很远——同一个幅度谱配上不同相位,可以拼出完全不同的时域形状。这一点我后面第 5 节还会强调。

锯齿波还有一个非常实际的应用背景:它天然是"时间"的线性表示,所以雷达、示波器、扫描电镜的时基电路里到处都是。而它的谐波含量决定了扫描回程的干扰落在哪些频点上,做屏蔽和滤波要按这些频点去布。

3.3 对称性速查:不算积分也能报出结论

很多题不用积分,光看对称性就能把答案写出一半。这张表我建议直接抄在笔记本第一页:

波形对称性数学条件对系数的直接结论
偶对称$x(-t)=x(t)$$b_n=0$,只含余弦项
奇对称$x(-t)=-x(t)$$a_n=0$,只含正弦项
奇半波对称$x(t+T/2)=-x(t)$只含奇次谐波
偶半波对称$x(t+T/2)=x(t)$只含偶次谐波,实际基频翻倍
直流分量为零一个周期积分为零$a_0=0$
时移 $t_0$$x(t-t_0)$幅度谱不变,相位加 $-n\omega_0t_0$

这张表的价值在于校验。你积分算出一个结果,先拿对称性对一遍:明明奇函数却算出了余弦项,肯定错了;明明偶半波对称却出现了三次谐波,也肯定错了。这个自检动作能省掉大量返工。我刚学的时候有一次把积分区间取成 $0$ 到 $T$,结果奇函数的余弦项算出来不是零,折腾了半小时才发现是区间选错了导致对称性没利用上。

4. 整流正弦与窄脉冲串:两个高频使用的样板

4.1 半波整流:直流分量和偶次谐波一起来

半波整流的波形是 $x(t)=A\sin\omega_0t$,正半周导通、负半周为零。它既不是奇函数也不是偶函数(因为负半周被削掉了),所以直流、余弦、正弦项全都可能出现。

直流分量先算,这个最直观:

$$a_0=\frac{1}{T}\int_0^{T/2}A\sin\omega_0t,dt=\frac{A}{\pi}\approx0.318A$$

这也解释了为什么半波整流的滤波电容要比全波的大一倍左右——它的脉动频率就是基频,而且每个周期只充一次电。

展开结果是:

$$x(t)=\frac{A}{\pi}+\frac{A}{2}\sin\omega_0t-\frac{2A}{\pi}\left[\frac{\cos2\omega_0t}{3}+\frac{\cos4\omega_0t}{15}+\frac{\cos6\omega_0t}{35}+\cdots\right]$$

注意三点:基波幅度是 $A/2$,不是 $A$;偶次谐波以余弦形式出现,系数是 $-\frac{2A}{\pi(n^2-1)}$,按 $1/n^2$ 衰减;奇次谐波除了基波之外全为零。这个"奇次只剩基波"的特性很少见,考试爱考,实际做电源的人也该记住,因为它决定了半波整流后纹波的主要频点是二次谐波(相对于输入频率)。

顺带说一个实测经验:半波整流的直流分量对变压器有直流偏磁,容易导致铁芯饱和、发热、嗡嗡响。这不是傅里叶级数能直接告诉你的,但它的根源就在那个 $A/\pi$ 上——一个单向的直流分量长期加在绕组上。所以功率稍大的场合基本都用全波或桥式,图的就是把直流分量和偶次谐波一起消掉。

4.2 全波整流:基频翻倍带来的红利

全波整流是 $x(t)=A|\sin\omega_0t|$。取绝对值之后,波形的实际周期变成原来的一半,所以基频变成 $2\omega_0$,所有谐波都是原正弦的偶次谐波。

$$a_0=\frac{2A}{\pi}\approx0.637A$$

$$x(t)=\frac{2A}{\pi}-\frac{4A}{\pi}\left[\frac{\cos2\omega_0t}{3}+\frac{\cos4\omega_0t}{15}+\frac{\cos6\omega_0t}{35}+\cdots\right]$$

和第 4.1 节对比一下就能看出全波的优势:直流分量翻倍(同样输入下输出更高),最低次纹波频率翻倍(滤波更容易),而且没有基波分量(不会有 50/60 Hz 的低频纹波)。这三条加在一起,就是"为什么全波整流是标配"的完整答案。

从收敛速度看,系数按 $\frac{1}{4n^2-1}$ 衰减,比半波还快一点。原因还是那个规律:波形越光滑,系数掉得越快。全波整流在过零点处虽然有个尖点(导数不连续),但整体比方波平滑得多。

4.3 窄脉冲串:sinc 包络与采样定理的伏笔

宽度为 $\tau$、周期为 $T$、幅度为 $A$ 的矩形脉冲串,是采样、雷达、通信里出现频率最高的模型。取脉冲中心在原点(偶函数),指数形式的系数是:

$$X_n=\frac{A\tau}{T}\cdot\frac{\sin(n\pi\tau/T)}{n\pi\tau/T}=\frac{A\tau}{T},\mathrm{Sa}!\left(\frac{n\pi\tau}{T}\right)$$

这里 $\tau/T$ 就是占空比 $D$。这个式子是整章里信息量最大的一个:

  • 包络是 sinc 形状,零点出现在 $n=T/\tau$ 的整数倍处,也就是 $nD=1,2,3\cdots$;
  • 占空比越小,第一个零点越远,谱线越"平",能量在频域上铺得越开;
  • 占空比越大(接近 1),能量越集中在低频,但时域上脉冲越宽。

这条规律在很多地方冒出来。做开关电源,占空比小意味着电流纹波的谐波铺得宽,EMI 滤波器要覆盖更宽的频段;做脉冲测距,窄脉冲带来的是高距离分辨率,代价是接收带宽必须做得很宽;做采样,脉冲越窄越接近理想冲激,采样的频谱复制越干净,这就是采样定理里"理想取样"假设的现实版本。

注意:sinc 包络的零点位置只由占空比决定,跟幅度无关。看到频谱上某根谱线突然变很弱,先怀疑是不是正好落在零点附近,而不是怀疑电路坏了。

5. 把系数读成工程判断:频谱三件事

5.1 单边谱与双边谱的 2 倍换算

这是新手翻车率最高的一处。三角形式里的 $A_n=\sqrt{a_n^2+b_n^2}$ 是单边幅度谱,表示"这个频率上实际存在一个幅度为 $A_n$ 的实正弦波"。指数形式的 $|X_n|$ 是双边谱,正负频率各有一根,每根幅度是 $A_n/2$($n\neq0$ 时)。

为什么差 2 倍?因为一个实余弦可以写成两个共轭复指数的和:

$$A_n\cos(n\omega_0t+\varphi)=\frac{A_n}{2}e^{j(n\omega_0t+\varphi)}+\frac{A_n}{2}e^{-j(n\omega_0t+\varphi)}$$

所以你看到双边谱上某个频率的幅度是 0.5,实际时域里那根正弦的幅度是 1.0。做功率计算、做滤波器衰减指标时如果搞混这个 2 倍,整个预算会偏 6 dB,调试起来极其痛苦。我的习惯是:画图时永远在坐标轴标题上写清楚是单边还是双边,这个动作看着啰嗦,实际能省掉很多会议上的争论。

另外直流分量 $a_0$ 在双边谱里只有一根,不乘 2 也不除 2,它是唯一的例外。这个不对称经常被忽略,写代码时如果统一乘 2,直流项就错了。

5.2 帕塞瓦尔定理:用能量占比反推带宽

帕塞瓦尔定理说的是时域平均功率等于各次谐波功率之和:

$$P=\frac{1}{T}\int_T x^2(t)dt=a_0^2+\frac{1}{2}\sum_{n=1}^{\infty}\left(a_n^2+b_n^2\right)$$

这条定理最实用的地方不是算功率,而是估带宽。以幅度 $\pm A$ 的对称方波为例,总功率是 $A^2$。保留前 $K$ 个奇次谐波,功率占比是:

$$\eta_K=\frac{8}{\pi^2}\sum_{k=1}^{K}\frac{1}{(2k-1)^2}$$

手算一下几个值:

保留的奇次谐波数最高次谐波能量占比波形观感
1(基波)1 次81.1%纯正弦,完全看不出方
23 次90.2%顶部开始变平
35 次93.3%像方波了
59 次96.0%边沿仍有过冲
1019 次98.0%示波器上看不出差别

这张表的用法:如果你要还原一个"看起来能接受"的方波,带宽取到 5 到 9 次谐波;如果你只关心能量传输(比如做功率放大器、做加热),1 到 3 次就够。这就是为什么音频领域说"20 kHz 带宽"其实只是基频上限,真正要还原方波形状得看几十次谐波——这也是"数字音频为什么要 44.1 kHz 采样率"这类讨论里经常被混淆的点。

对比一下三角波:$\eta_1$ 就已经达到 98.5%,因为它的系数按 $1/n^2$ 掉。同一个带宽下,三角波几乎无损通过,方波却已经被削得七零八落。这就是"波形光滑度"在频域的直接体现,也是为什么在需要低失真的场合,宁可设计成三角波或正弦波,也不要设计成方波。

5.3 相位谱:被丢掉的那一半信息

绝大多数人画频谱只画幅度,因为示波器和频谱仪的默认视图就是幅度。但傅里叶级数完整的信息是幅度加相位,缺一半。

同一个幅度谱,配不同的相位,可以拼出截然不同的时域波形。方波和某种"脉冲状"波形的幅度谱可以完全相同,区别全在相位上——前者各次谐波在跳变处同相叠加形成陡沿,后者错开后就成了窄脉冲。这不是数学游戏,是实际存在的:峰均比、冲击响应、过冲大小,全由相位关系决定。

实际工作中三个地方必须看相位:

  1. 滤波器设计:只看幅频特性不看相频,做出来的滤波器可能群延迟不平坦,方波过它之后振铃严重;
  2. 多谐波合成:做任意波形发生器,相位没对齐,合成出来的波形就是错的;
  3. 故障诊断:旋转机械的振动谱里,某些故障特征频率的相位关系是诊断依据,只看幅值分不清是偏心还是松动。

我自己踩过最深的一次坑,是做谐波叠加合成一个特定脉冲形状,幅度全对,波形就是不对,查了一晚上才发现是我把交替符号当成了"负幅度",实际上它是 $\pi$ 的相位偏移,在复数域里是 $e^{j\pi}$,混到幅度里就全乱了。

6. 常见问题与排查实录

6.1 系数算错,八成是这五个原因

带过几届学生、也带过新人,傅里叶级数算错的原因高度集中,几乎都能归到这五条:

现象根因正确做法
奇函数的余弦项算出来不是零积分区间取成 $0\sim T$,没利用对称性优先用 $(-T/2,,T/2)$ 并判断奇偶性
直流分量差 2 倍混淆 $a_0$ 与 $a_0/2$ 两种教材约定明确自己用的是哪一种,全篇统一
偶次谐波不该出现却出现了波形其实不满足奇半波对称先验证 $x(t+T/2)=-x(t)$ 再下结论
相位整体偏了一个常数时间原点选得不一致推导前固定原点,别中途换
用 FFT 验证时对不上采样点不是整周期、或未归一化采样长度取整数个周期,除以 $N$ 再乘 2

第五条特别值得展开。用 FFT 验证理论系数时,最容易出的错是频谱泄漏:采样窗口不是信号周期的整数倍,能量从一根谱线漏到邻近好多根上去,看起来像是"谐波变多了"。判断方法很简单,把采样点数改成整数个周期再跑一遍,谱线立刻变干净。这个技巧在实测中也用得上——分析一个周期信号之前,先想办法让采集窗口对齐整周期,或者加窗(汉宁窗最常用),否则你算出来的 THD 会莫名其妙偏高。

6.2 实测和理论对不上时的排查顺序

真实系统里,频谱仪或示波器 FFT 看到的谱和教科书公式对不上是常态,别慌,按这个顺序查:

第一步,查幅度基准。频谱仪读的是 dBm,示波器 FFT 读的可能是 dBV 或线性幅度,单边双边还可能差 6 dB。先确认单位,再谈数值。

第二步,查探头与带宽。探头带宽不够会把高次谐波吃掉,看起来"谐波比理论少"。用一根 100 MHz 带宽的无源探头去测 25 MHz 方波的五次谐波(125 MHz),测出来的幅度必然偏低,这不是信号的问题,是探头的问题。

第三步,查接地回路。探头地线太长会形成一个环路天线,在几十兆以上频段引入额外的谐振峰,看起来像是"多出了几根不该有的谱线"。换弹簧地针、缩短地线,这些峰通常会消失或移位。

第四步,查信号源本身。函数发生器输出的方波不是理想方波,它有有限的上升时间、有输出端的匹配网络、可能有输出滤波器。上升时间 $t_r$ 和最高有效谐波频率的关系近似是 $f_{\max}\approx0.35/t_r$,这个经验公式可以用来反推信号源实际能给出多宽的谱。

第五步,才是回头检查理论推导。前面四步都排除了,才怀疑公式。因为公式错的可能性远低于测量链路的问题。

6.3 一份可以直接抄的实操清单

最后给一份我自己在用的检查清单,做任何周期信号的分解分析之前过一遍:

  • 先把波形画出来,标出周期、峰值、直流偏移、跳变位置,这四项决定了后面一半的工作量;
  • 判断奇偶性和半波对称性,能省掉的项事先划掉;
  • 明确用三角形式还是指数形式,以及 $a_0$ 的定义约定;
  • 手算前三个非零系数,看衰减规律是否符合预期(跳变波形 1/n,尖点波形 1/n²,光滑波形更快);
  • 用帕塞瓦尔定理验证:前几项功率之和不应该超过总功率;
  • 码代码验证时,采样长度取整周期,注意单边双边换算;
  • 出图时把幅度谱和相位谱一起画,坐标轴标注单位;
  • 做工程估算时,用"保留几次谐波"换算成带宽,别直接拿基频当带宽。

关于最后一条再多说一句。经常看到有人算滤波器截止频率时直接取基频的 1.5 倍,理由是"滤掉谐波"。这样做的结果是波形严重失真,因为二次、三次谐波还带着大量能量(方波的三次谐波占基波的 33%)。正确做法是先想清楚"我要保留到什么程度",再按第 5.2 节的能量表倒推截止频率。这一步想清楚了,后面选电感电容、算阶数、估体积都会顺。

我个人在实际操作中的体会是,这一节真正值钱的不是那些积分技巧,而是"看到波形形状就能预判频谱包络"的直觉。方波的 1/n、三角波的 1/n²、锯齿波的全谐波带交替相位、整流正弦的偶次谐波、脉冲串的 sinc 包络——这五个模式一旦形成条件反射,后面遇到任何没见过的周期波形,你都能先猜个八九不离十,再用积分去验证。反过来做,每次从头推积分,既慢又容易错,而且推完了也不知道这个结果在工程上意味着什么。另外提醒一句,手算和代码验证一定要交替做,光看不练,公式记不住;光跑代码不看推导,遇到变占空比、变相位的情况就抓瞎。两个方向都走一遍,这一节才算真的过了。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进