FFT (高速フーリエ変換)
概略
高速フーリエ変換(FFT)アルゴリズムを使って離散フーリエ変換(DFT)を計算します
離散フーリエ変換は入力信号が周期的であると仮定して計算するので、周期的でない信号では意味のない計算になってしまいます
フーリエ変換とは
大雑把に説明すると「入力信号を周波数ごとに分ける」計算をします
例えば下図のような入力信号は5Hz+20Hz+100Hzの周波数に分解することができます

利用例
モーターなどの異常を早期に発見することを期待します
正常運転時の振動データをFFT変換して、常に現在のFFT変換データと照らし合わせて違いが出てきたら警告を出すなど

シンボル
FFT
FFTの計算をします

- Data
- サンプリングデータ
- WindowType
- 窓関数
- Out
- パワースペクトル
窓関数(WindowType)
| 値 | 窓関数 |
|---|---|
| 0 | ハニング窓 |
| 1 | ハン窓 |
| 2 | ブラックマン窓 |
| それ以外 | 矩形窓 |
サンプリングデータの取り方
サンプル数
サンプリングデータ(Data)は512,1024,2048,4096,8192,16384個のいずれかの要素数を持つ配列に入れてください
サンプリングデータ数が多いほど分解能が上がりますが、計算時間は長くなります
8192,16384個を追加しました(Ver0.0.3)
サンプリング周期
サンプリング周波数の半分の周波数まで観測ができます
例えば、サンプリング周波数が1kHzなら500Hzまで、10kHzなら5kHzまで観測できます
FFTを連続で計算するときの実行タイミング
サンプリングデータ数のデータがそろえばFFTの計算を実行するようにします
FFTの計算は時間がかかるため連続してサンプリングデータを取りたい場合は、下図のように一杯になったサンプリングデータ1のFFTの計算をしながら、サンプリングデータ2を別のメモリに格納していきます
連続する必要がなければFFT計算後にサンプリングを始めたり、頻繁にFFT計算を行いたい場合はサンプリング1とサンプリング2を被せてサンプリング3、サンプリング4・・・と作ることも可能です

使い方ナビ
ダウンロード
ダウンロードされたときは利用規約に同意したものとみなします

