BlockWerk 文档
📊

FFT Scope

Sinks

FFT Scope 方块利用快速傅里叶变换(FFT)实时显示一个或多个信号的频域频谱。它属于接收端方块(Sink)——没有输出端口,也不会对系统的仿真计算产生任何反作用。

最多可将多条信号连线接入单个 Signal 输入端口。所有接入的信号都会被同步分析,并以不同颜色的叠加光谱曲线呈现。

典型用途:

  • 识别振荡器或控制器输出的主导谐振频率
  • 验证滤波器是否在目标频段内提供了足够的衰减
  • 检测由非线性环节引入的谐波分量与频谱泄露
  • 分析两个信号之间的相位差与频域相位特性

---

在 BlockWerk 中仿真

浏览器即开即用的交互式仿真环境 — 无需安装,由 WebAssembly 强力驱动。

在 BlockWerk 中仿真 →

输入与输出

Direction ID Label 类型 Status
→ In signal Signal number Required

参数

参数 Label 类型 默认值 描述
title Title text Frequency Spectrum
displayMode Display Mode select db
analysisMode Analysis Mode select window
fftSize FFT Window Size select 1024 Number of samples used per FFT computation.
windowFunction Window Function select hann Reduces spectral leakage.
maxFrequency Max Frequency (Hz, 0 = auto) number 0 Set to 0 to auto-scale based on the Nyquist frequency.
peakHold Peak Hold boolean false Maintains the maximum value reached across all spectra.
showLegend Show Legend boolean true
showGrid Show Grid boolean true

使用示例

饱和非线性环节的谐波失真分析

SignalGenerator (50 Hz) → Saturation → FFTScope

实时观察因正弦波削顶而产生的奇次谐波群(150 Hz, 250 Hz, ...)。

说明与最佳实践

  • 增加 FFT 尺寸会提高频率分辨率,但需要累积更多的历史点数后频谱才会稳定成形。
  • 若已采样本数不足 fftSize,信号前端会自动进行零填充(Zero-Padding)。
  • 每次重新启动仿真时,Peak Hold 包络会自动清空重置。
  • 奈奎斯特频率(sampleRate / 2)构成了横轴所能呈现的最高物理频率。
  • 在 Phase (°) 模式下:从 _t = 0_ 开始的单一频率 _f_ 纯正弦波在该频带处显示的相位为 −90°(DFT 经典约定)。余弦波显示为 0°。

相关模块

  • uPlotDisplay:用于观察信号随时间演化波形的时域示波器。
  • BodePlot:线性系统在频域下的传递特性分析。
  • SignalGenerator:提供可调频率的基准正弦波及复合测试信号源。