サンプリング定理・エイリアシング 戻る
振動・波動

サンプリング定理・エイリアシング可視化

ナイキスト・シャノンのサンプリング定理をインタラクティブに可視化。f_s < 2f_signal のとき折り返し(エイリアシング)がどう現れるかをリアルタイムで確認。

パラメータ設定
信号周波数 fsignal
Hz
サンプリング周波数 fs
Hz
振幅 A
信号タイプ
エイリアシング:なし
計算結果
20
f_signal [Hz]
80
f_s [Hz]
40
f_N = f_s/2 [Hz]
f_alias [Hz]
OK
エイリアシング
時間領域 — 連続信号・サンプル点・再構成信号
周波数領域 — スペクトル
理論・主要公式

理論式

ナイキスト基準:

$$f_s \geq 2 f_{signal}$$

エイリアス周波数:

$$f_{alias}= |f_{signal} - n \cdot f_s|$$

ナイキスト周波数:$f_N = f_s / 2$

サンプリング定理・エイリアシングとは

🙋
「サンプリング定理」って何ですか? 信号をデジタルで取る時のルールって聞いたけど…。
🎓
大まかに言うと「元の信号を正しく記録するための、最低限のサンプル速度のルール」だね。例えば、1秒間に1回振動する信号を記録するなら、1秒間に2回以上測らないと、その振動を見逃したり、別の振動に見えたりしてしまうんだ。このシミュレーターで、上の「信号周波数」と「サンプリング周波数」のスライダーを動かして、サンプリング点(黒い点)がどうなるか確認してみよう。
🙋
え、サンプリングが足りないと「別の振動に見える」って、どういうことですか? さっき「信号周波数」を80Hzにして、「サンプリング周波数」を100Hzに下げたら、復元された波形がゆっくり動いてました!
🎓
それが「エイリアシング(折り返し誤差)」だ! サンプリングが荒すぎると、高い周波数の信号が低い周波数に化けて現れる現象なんだ。実務で多いのは、モーダルテストで計測した振動データに、実際には存在しない低周波のモードが現れて、解析を混乱させるパターンだね。シミュレーターの「エイリアス周波数」の表示が、今の設定だと20Hzになってるはず。これが「化けた」周波数だ。
🙋
なるほど!じゃあ、絶対にエイリアシングを起こさないようにするには、「サンプリング周波数」を非常に高く設定すればいいんですか?
🎓
理論上はそれでいいけど、現実はそうもいかないんだ。データ量が膨大になるし、計測機器にも限界がある。だから現場では「ナイキスト周波数($f_s/2$)」より高い周波数成分を、計測の前に「アンチエイリアシングフィルタ」で確実にカットしておくのが鉄則だ。シミュレーターで「信号タイプ」を矩形波に変えてみて。高周波成分が多いから、サンプリング定理を守っていてもギザギザが再現できてないでしょ? これが実世界の複雑な信号で考える必要があることだね。

物理モデルと主要な数式

信号を正しく標本化(サンプリング)して元に戻すために満たすべき最低条件を定めたのがナイキスト・シャノンのサンプリング定理です。サンプリング周波数 $f_s$ は、元信号に含まれる最高周波数 $f_{max}$ の2倍以上である必要があります。

$$ f_s \geq 2 f_{max}$$

$f_s$: サンプリング周波数 [Hz], $f_{max}$: 信号に含まれる最高周波数 [Hz]

サンプリング周波数 $f_s$ が不十分な場合、元の信号周波数 $f_{signal}$ は、エイリアス周波数(折り返し周波数) $f_{alias}$ として観測されてしまいます。これはサンプリング周波数を周期として折り返された値です。

$$ f_{alias}= |\,f_{signal}- n \cdot f_s\,| $$

$f_{alias}$: 観測されるエイリアス周波数 [Hz], $n$: $f_{signal}$ を $f_s/2$ の範囲に収まるように選んだ整数。最も低い正の周波数として現れることが多い。

よくある質問

サンプリング周波数が信号周波数の2倍未満になると、元の信号とは異なる低い周波数の波形(エイリアス)が表示されます。この現象をエイリアシングと呼び、実際の信号とは異なる誤った情報として観測されるため、正しい解析ができなくなります。
信号周波数(f_signal)とサンプリング周波数(f_s)のスライダーを操作してください。f_sをf_signalの2倍未満に設定すると、折り返し現象がリアルタイムで可視化され、エイリアシングの発生を直感的に確認できます。
例えば、音声や画像のデジタル化では、サンプリング定理に従って適切なサンプリング周波数を選ぶことで、元の信号を正確に再現できます。逆に、条件を満たさないとノイズや歪みが生じるため、AD変換やデータ圧縮の設計時に必須の知識です。
実務では、サンプリング前にアンチエイリアシングフィルタ(ローパスフィルタ)を適用し、信号の最高周波数をサンプリング周波数の半分以下に制限します。また、サンプリング周波数自体を十分高く設定することで、エイリアシングの発生を防ぎます。

実世界での応用

振動計測・モーダル解析:構造物の固有振動数(モード)を実験で同定する際、加速度センサーのサンプリングレート設定が不適切だと、高いモードが低い周波数にエイリアシングし、誤ったモードを同定する原因となります。測定前に最高分析周波数を決め、その2.5倍以上のサンプリングレートを設定するのが実務の目安です。

音声・音楽のデジタル録音:CDのサンプリング周波数44.1kHzは、人間の可聴域上限(約20kHz)をカバーするためにナイキスト定理に基づいて設定されています。録音時には、20kHz以上の超音波成分がエイリアシングして可聴域のノイズとならないよう、アンチエイリアシングフィルタが必須です。

自動車のCAN通信データ収集:エンジン回転数や車速などの車載信号を収集・分析する際、信号の最大変化速度に対応したサンプリングレートを設定しないと、急加速時のデータなどでエイリアシングが発生し、開発解析を誤らせる可能性があります。

FFTアナライザを用いた回転機械の故障診断:ベアリングやギアの異常から発生する高周波の衝撃振動を検知する際、サンプリング周波数が低すぎるとこれらの特徴周波数がエイリアシングし、実際とは異なる低周波のピークとして現れ、故障の見逃しや誤診断につながります。

よくある誤解と注意点

まず、「サンプリング周波数は信号周波数の2倍ぴったりでOK」というのは危険な誤解だ。理論上の最低条件は $f_s = 2 f_{max}$ だが、これは信号が完璧な正弦波で、かつ位相が完璧に合っているという理想的な場合のみ。実務では、信号の立ち上がりやノイズを捉えるために、少なくとも2.5倍、厳密な分析では5〜10倍のサンプリング周波数を設定するのが常識だ。例えば、1kHzまでの振動を分析したいなら、サンプリング周波数は2.5kHz以上に設定しよう。

次に、「アンチエイリアシングフィルタは万能」と思っていないか? このフィルタは、ナイキスト周波数($f_s/2$)以上の成分を急峻に減衰させるが、完全にゼロにはできない。その「減衰しきれない部分」が折り返してノイズになる。だから、フィルタのカットオフ周波数を $f_s/2$ より少し低く設定したり、オーバーサンプリングという手法を使うんだ。このシミュレーターで高周波ノイズを加えた信号を作ると、フィルタの重要性が体感できるぞ。

最後に、矩形波や三角波のような「非正弦波」への対応だ。これらの波形には高い周波数成分が無限に含まれている。シミュレーターで試したように、基本周波数だけ守ってもギザギザは再現できない。実務では「分析したい高調波の次数までを $f_{max}$ と見なす」という割り切りが必須になる。例えば、モーターの振動で5次高調波まで見たいなら、その5次周波数の2倍以上でサンプリングする、という考え方だ。