周波数分析の方法



デジタル信号処理

公開日:2018/11/9         

In English
前提知識
フーリエ変換


■周波数分析とは

周波数分析とは、時系列データに対してどの周波数の成分の波形が入っているかを解析する事で、スペクトル分析ともいいます。手法としてはフーリエ変換を用います。 ここでは高速フーリエ変換を使った周波数分析の方法を説明します。高速フーリエ変換を行った時のイメージは以下のとおり。



■エクセルを使った周波数分析のやり方

ここでは高速フーリエ変換(FFT)を使った周波数分析として、エクセルを使ったやり方を説明します。 題材として以下の様に2Hzと5Hzが合成された信号を扱います。



Step① 分析したいデータを作成
以下の様に2Hzと5Hzの信号データを作成します。データは2のn乗個にする必要があり、今回は256個にします。



Step② フーリエ変換を実施
エクセルの機能を使って高速フーリエ変換を実施します。以下の様に「データ」→「データ分析」→「フーリエ解析」をして、①で作成したデータを選択します。 エクセルの機能を使わずに、フーリエ変換の式をきちんと使う方法はこちらで説明します。エクセルに「データ分析」のタブが無い方はこちらを参照。



Step③ 諸々の処理
Step②の結果に対して、絶対値や周波数を求めるなど、以下のような諸々の処理を加えます。最終的に必要なのは周波数に対する振幅の特性です。

Step④ グラフ化
周波数に対する振幅の特性をグラフ化します。結果は以下のとおり。



データの後半部分は、前半部分の反転データとなり不要なデータとなります。この部分をゴーストといいます。 データの前半部分のみを拡大したデータは以下のとおり。2Hzと5Hzに強い振幅がでており、確かにきちんと周波数分析できているのが解りました。



■分析結果データ
この分析結果のエクセルデータはこちらです。

■周波数分析する際のテクニック:窓関数

周波数分析する際、データをどこで区切るかで結果が異なってくる場合があります。フーリエ変換はデータを区切ったところで1周期とみなすので、 例えば以下の様にデータを区切ると、本来は連続的な周期関数であるにも関わらず、値が急変するような周期関数として扱ってしまいます。



こうなると周波数解析の結果も異なってきますので、それを防ぐための手立てとして窓関数を使います。









サブチャンネルあります。⇒ 何かのお役に立てればと

関連記事一覧



デジタル信号処理