信号タイプ・窓関数・周波数をスライダーで操作しながら、時間域・振幅スペクトル・位相スペクトルをリアルタイムで確認。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)$$
パーセバルの定理:時間域のエネルギー(積分)は周波数域と等価。パワースペクトル密度と自己相関の対。
このツールの根幹は、離散信号 $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]$: 窓関数が適用された後の信号
窓をかけることは、元の信号のスペクトルと窓関数のスペクトルの「畳み込み」を計算することに相当し、トレードオフとして周波数分解能が低下します。
音響・オーディオエンジニアリング:楽器や歌声の周波数特性(倍音構造)を分析したり、スピーカーやアンプから発生する歪み(THD)を測定・評価するためにFFTが日常的に使われています。ノイズ成分(SNR)の特定にも不可欠です。
振動・モニタリング診断:回転機械(モーター、ベアリング、タービン)の振動信号をFFT分析することで、特定の回転周波数に対応する異常ピークを検出し、故障の予兆診断を行います。工場の保全業務で広く応用されています。
通信工学:デジタル通信システム(OFDMなど)では、FFT/IFFT(逆FFT)が信号の変調・復調の核心技術として用いられています。また、受信信号から特定の周波数帯域のノイズや干渉を分析するのにも使われます。
医療画像処理:MRI(磁気共鳴画像法)では、取得された信号(k-spaceデータ)を画像化する際に2次元FFTが必須です。また、心電図(ECG)や脳波(EEG)の波形から、特定の周波数成分(例えばα波)を抽出・解析する際にも応用されます。
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$ を大きくする必要があるが、それはより長い時間のデータを取ることを意味する。例えば、回転数が変動する機械の振動を分析する場合、長すぎるデータを取ると周波数が「ぼやけて」しまう。このジレンマを理解しておかないと、現場で有効なデータが取れないことがある。
振動診断の実例として、機械設備から検出された複合信号を解析します。基本周波数50Hz(商用電源)、第3高調波150Hz、第5高調波250Hzの3成分を含む場合、サンプリング周波数fs=2000Hzで0.1秒間のデータを取得するとFFTは0~1000Hzの周波数解像度2Hzで解析されます。各成分の振幅スペクトルから基本波60V、3倍波15V、5倍波8Vが同定でき、高調波歪率THDは計算値25.7%となります。ノイズレベル10を加えるとS/N比が低下し、フィルタリングの必要性が視覚的に判定できます。