信号设置
FFT设置
预设
理论和主要公式
$$X(f) = \int_{-\infty}^{\infty} x(t) e^{-j2\pi ft} dt$$
傅里叶变换:将时间信号 $x(t)$ 变换为频率谱 $X(f)$。
$$x(t) = \int_{-\infty}^{\infty} X(f) e^{j2\pi ft} df$$
逆傅里叶变换:从频谱 $X(f)$ 恢复时间波形 $x(t)$。
$$|X(f)|^2 \leftrightarrow R_{xx}(\tau)$$
Parseval定理:时间域能量(积分)等于频率域能量。功率谱密度与自相关函数的对偶关系。
傅里叶变换可视化工具简介
🙋
这个工具中可以选择"窗函数",但首先什么是窗函数?给信号加窗是什么意思?
🎓
简单来说,窗函数是在截取有限长度信号时,为了平滑处理截断边界的一种"修边"方法。比如上面的"信号类型"选择正弦波,窗函数选"矩形(无)",你就能看到图形在两端有急剧的切割。这种切割边界会在FFT结果中产生多余的频率成分,称为"频谱泄漏"。
🙋
原来如此!那么选择"Hann窗"就能减少这种泄漏吗?但这一定有什么缺点吧?
🎓
完全正确!使用Hann窗能平滑地将信号端部降至接近零,大大减少泄漏。看右边的频谱显示比较一下。但是,窗函数的形状变宽会导致频率峰值有点模糊(分辨率下降)。这是一个权衡。实际工作中,工程师根据要测量的信号类型来选择Hann、Hamming或Blackman窗。
🎓
THD(总谐波失真率)是信号偏离"纯正弦波"的程度指标。试试把"信号类型"改成矩形波或锯齿波。你会看到频谱上出现许多高调波(整数倍频率的成分)对吧?THD就是把这些高调波的强度全部加起来,相对于基波的比例(%)来表示。这个数值在音频设备性能评估中经常使用。
物理模型与主要公式
本工具的核心是离散傅里叶变换(DFT),它将离散时间信号 $x[n]$ 变换为离散频率成分 $X[k]$。在计算机上实现时,使用了高速计算DFT的FFT(快速傅里叶变换)算法。
$$X[k] = \sum_{n=0}^{N-1}x[n] \cdot e^{-i 2\pi k n / N}$$
$x[n]$: 时间域离散信号(n=0,1,...,N-1)
$X[k]$: 频率域复数频谱(k=0,1,...,N-1)
$N$: 采样点数(本工具中为512)
$e^{-i 2\pi k n / N}$: 复指数信号(由欧拉公式 $\cos - i\sin$ 组成)
窗函数 $w[n]$ 与有限长截取信号 $x[n]$ 相乘,以缓和信号两端的不连续性,从而抑制频谱泄漏。
$$x_{windowed}[n] = x[n] \cdot w[n]$$
$w[n]$: 窗函数(例如Hann窗 $0.5 - 0.5\cos(2\pi n / (N-1))$)
$x_{windowed}[n]$: 应用窗函数后的信号
窗函数的应用相当于在频域中对原信号频谱与窗的频谱进行"卷积",这导致频率分辨率的下降,这是一个不可避免的权衡。
常见问题
当信号类型为"矩形波"或"锯齿波"等包含多个频率成分的信号时,基频滑块改变的是整个波形的周期。如果想观察单一正弦波,请将信号类型切换为"正弦波"。
窗函数会平滑地将信号两端降至接近零,因此整个信号的总能量减少。这导致幅度谱的峰值也随之降低。这是为了抑制"频谱泄漏"而必须付出的代价。
位相谱显示每个频率成分的时间偏移。单一正弦波会呈现线性变化,复合波则会出现不连续跳跃(±π)。建议先从正弦波理解位相的含义,再逐步学习复杂信号。
本工具为保证实时显示的性能,将采样点数固定为512。一般来说,采样点数越多,频率分辨率越高,但计算负担也越重。如需更高精度的分析,请使用专门的信号处理软件。
实际应用
音响与音频工程:分析乐器或人声的频率特性(倍音结构),测量扬声器和放大器的失真(THD),识别噪声成分(SNR)。FFT在音频领域的日常应用中不可或缺。
振动与故障诊断:对旋转机械(电动机、轴承、汽轮机)的振动信号进行FFT分析,检测特定转速对应的异常峰值,实现故障的早期预警。广泛应用于工厂预防性维护。
通信工程:OFDM等数字通信系统中,FFT/IFFT(逆FFT)是调制和解调的核心技术。同时也用于接收信号中特定频段噪声和干扰的分析。
医学图像处理:MRI(磁共振成像)中,获得的信号(k空间数据)需要通过二维FFT转换成图像。心电图(ECG)和脑电图(EEG)的频谱分析(如α波提取)也依赖FFT。
常见误区与注意事项
在开始使用FFT时,有几个容易陷入的陷阱。第一个是"采样频率与显示频率范围的关系"。例如采样频率为44.1kHz时,FFT理论上能看到的最高频率是其一半,即22.05kHz(奈奎斯特频率)。超过这个频率的成分会发生"折叠"(混叠)现象,被误读为低频,完全破坏分析结果。实际工作中必须在测量前用反混叠滤波器去除高频成分。
第二个是"频谱纵轴(幅度)的值不是绝对的"。本工具显示的"幅度谱"是复频谱 $X[k]$ 的绝对值 $|X[k]|$。这个值包含了窗函数的影响和FFT点数N作为归一化系数。例如即便是幅度为1的正弦波,显示的频谱峰值也不会简单地等于1。要获得真实的幅度值,需要考虑所用窗函数的补偿系数(如Hann窗需乘以约2倍)。
第三个是"分辨率与测量时间的权衡"。频率分辨率 $\Delta f$ 由采样频率 $f_s$ 除以FFT点数 $N$ 决定($\Delta f = f_s / N$)。要观察更细微的频率差异(降低$\Delta f$),需要增加$N$,这意味着需要更长的数据时间。比如测量转速变化的机械振动时,过长的数据会导致频率"模糊化"。理解这个矛盾关系是现场有效数据采集的关键。