Cradle

 

投稿一覧

装置設計者のための騒音の基礎 第19回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
装置設計者のための騒音の基礎

FFT処理

 今回はエクセルを用いてFFT処理を行ってみます。

 時間の関数x(t)を周波数の関数X(f)に変換する操作をフーリエ変換と呼び、下記の式となります。



 逆に、周波数の関数X(f)を時間の関数x(t)に変換することも可能で、この操作を逆フーリエ変換と呼び、下記の式となります。

 ここで、jは虚数単位です。
デジタル信号処理では、上記の(1)式、(2)式を離散化した式を利用し、DFT(離散フーリエ変換)では、(1)式を離散化した下記の式を利用します。

  ここで、jは虚数単位で、i=0~N-1、k=0~N-1で、Nはデータ数です。
フーリエ解析を行うには、(3)式をプログラム化します。この際、Nが2のべき乗個であれば高速な処理方法があり、FFT(高速フーリエ変換)と呼ばれます。FFTプログラムには、各種の信頼性の高いコードが揃っていて、自分で作成する代わりに、それらのコードを利用するのが効率的かつ安全です。ここでは、エクセルのFFT機能を用いて、離散フーリエ変換の実験を行ってみます。


 エクセルのフーリエ解析は分析ツールの一つであり、これを使うには、アドインで組み込まれている必要があります。データリボンを選択して、分析ツールが右側に表示されれば組込み済です。もし、表示されない場合は、ファイル→オプション→アドインと選択し、アドインの管理画面で、分析ツールをアクティブ化してください。


 エクセルのフーリエ解析は、FFT解析であり、データ数が2のべき乗となっていなければなりません。図1に示すように、B1セルにデータ数として、ここでは1024と設定します。次に、A4セルに0、A5セルに=A4+1/$B$1と入力し、1/1024だけ増加する値を作成します。その後、A5セルの右下をマウスで下に向かってドラッグすると、1/1024ずつ増加する値ができあがります。多めに作成し、1以上となるセルを削除すると、1024個の時間データができあがります。次に、B4セルに図2に示す式を入力し、セル右下隅をダブルクリックすると、A列に相当する分が自動的にコピーされ、信号x(t)ができあがります。図3が信号x(t)の波形で、周波数100Hzと200Hzと300Hzの正弦波が合成された波形となっています。


図1 時間tの生成



図2 信号x(t)の生成



図3 信号x(t)の波形

 次に、信号x(t)をフーリエ変換してみます。データ→分析ツール→フーリエ解析と選択し、図4に示すフーリエ解析の設定画面に、入力範囲として、信号x(t)のセル範囲を設定し、出力先をC4セルに設定し(B4セルを選択し、CtrlとShiftを押しながらカーソル下キーを押すと自動で選択してくれます)、OKボタンをクリックすると、C列にフーリエ解析結果ができあがります。エクセルのフーリエ解析の出力は、(3)式の
の部分になり、データ数N倍の複素数で表示されます。そこで、図5に示すように、D4セルに、IMABSコマンドで複素数の絶対値を求め、データ数Nで割った値を設定します。D4セルの右下隅をダブルクリックすると、C列に相当する分だけコピーされ、D列に周波数スペクトルができあがります。E列に0から1023まで1ずつ増加する周波数データを入力し、E列を横軸に、D列を縦軸にしてグラフを作成すると、図6に示す周波数スペクトルが得られます。図6左側には、信号x(t)の成分である周波数100、200、300Hzの成分が現れていることがわかります。


図4 フーリエ解析の設定


図5 周波数スペクトルX(f)の計算


図6 周波数スペクトルX(f)


 さて、図6では、本来の周波数である100、200、300Hzのほかに、724、824、924Hzにも成分が現れています。これが、第16回「標本化誤差」 で説明したエイリアシングが周波数スペクトル上に現れた状態です。次回は、ナイキストの標本化定理とフーリエ変換との関係を説明します。


【参考文献】 機械音響工学 鈴木ほか コロナ社 





著者プロフィール
御法川 学 氏 | 法政大学 理工学部 機械工学科 教授
環境計量士(騒音・振動)

1992年 法政大学大学院 工学研究科 機械工学専攻
1992年 株式会社荏原総合研究所 入社
1999年 法政大学工学部 助手
2001年 東京工業大学にて学位取得、博士(工学)
2004年 法政大学工学部 助教授
2010年 法政大学理工学部 教授




著者プロフィール
伊藤 孝宏 氏 | オリエンタルモーター株式会社 技術支援部主席研究員

1982年 筑波大学基礎工学類卒業。新日本製鉄株式会社に入社、加熱・冷却設備の開発に従事
1988年 オリエンタルモーター株式会社に入社、送風機の羽根・フレームの開発・設計に従事
2008年 法政大学にて学位取得、博士(工学)
2014年1月現在、オリエンタルモーター株式会社 技術支援部主席研究員

 

最後までお読みいただきありがとうございます。ご意見、ご要望などございましたら、下記にご入力ください

  • LINEで送る
  • このエントリーをはてなブックマークに追加

ピックアップコンテンツ