• ベストアンサー

FFT分析、成分の最大値

FFTで周波数成分分析を作っているところなのですが疑問があります 例えば、以下の信号をFFTした場合 振幅0-3V 矩形波 *かなり理想形 周波数 10Khz 10KHz 2.0V  30KHz 0.7V  50KHz 0.4V  ... とかの周波数成分が分析できました 10Kが基本周波数になるので最大振幅になっています その振幅値なのですが、 今、信号振幅が3.0Vだと2.0Vと算出は正しいのでしょうか 最大成分だから。3.0V以上になるような気がします 理想波形なら、何Vが正解でしょうか? もしかして、2.0vではなく倍の4.0Vが正解でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • tborn
  • ベストアンサー率50% (6/12)
回答No.6

こんにちは。 >sin(x) + 1/3sin(3x) + 1/5sin(5x) + 1/7sin(7x) + ...  > >これは、以下から取っています >http://www.maroon.dti.ne.jp/koten-kairo/works/fft/series4.html > >以下は別で >http://www.page.sannet.ne.jp/komamura/Furier.htm > >片側振幅1Vの基本周波数で矩形波を合成していくと、片側振幅約0.8Vの矩形波ができます >No4の補足で書いた私の計算結果の0.8vと一致しています > >このWEBはグラフで解説してあって疑問は感じられませんが >どこかおかしいでしょうか 上記の資料は-1~+1のピークtoピークで2の場合のフーリエ級数ですよね。 その場合、理想的な矩形波(ピークtoピークで2)の場合 数学的に DC成分=0 基本波成分=4/π 第3高調波成分=(4/3π) 第5高調波成分=(4/5π) となります。 0~1の矩形波で定義に沿ってフーリエ級数を求めてみて下さい。

delta77_7
質問者

お礼

回答有難う御座いました どうも話が合わないと思ったら、私の勘違いがありました 振幅は、片振幅を言っているわけですね 私は全振幅で話をしていました だから、2倍で話が合わなかったとわかりました 解決です いろいろ御対応有難う御座いました

delta77_7
質問者

補足

回答有難う御座いました どうも話が合わないと思ったら、私の勘違いがありました 振幅は、片振幅を言っているわけですね 私は全振幅で話をしていました だから、2倍で話が合わなかったとわかりました 解決です いろいろ御対応有難う御座いました

その他の回答 (5)

  • tborn
  • ベストアンサー率50% (6/12)
回答No.5

こんにちは。 >実は検算する方法があるようです > >sin(x) + 1/3sin(3x) + 1/5sin(5x) + 1/7sin(7x) + ... > >フーリエ級数展開というらしい >基本波の奇数倍の成分を無限に足していくと矩形波になるというもの > え~と、上記はフーリエ係数が不十分であり符号も間違っていますね。 あと、DC成分も考慮しなければいけません。 また、基本波の奇数倍の成分だけを考慮すれば良いのは 表現したい繰り返し関数が偶関数の場合にフーリエ級数を求めた 計算結果としてそうなるというだけです。 (今回のご質問の矩形波は確かに偶関数なので基本波の奇数倍の成分  を考慮するだけで良いことになります。) >検算すると(1Vの基本波として) > >基本波90度 >sin(90) + 1/3sin(3*90) + 1/5sin(5*90) = 0.87 > >基本波45度 >sin(45) + 1/3sin(3*45) + 1/5sin(5*45) = 0.78 > >何を検算しているかというと、矩形波なので、180、360度以外は、どの角度でも同じ振幅になります。そのため代表の90,45度で計算したということです > >約0.8付近になりますが、これは、7,9,11,13、...と成分を細かく足していくとバラつきが一定になりそれが正しくなっていきそれが矩形波の振幅です > >つまり、3Vの矩形波なら、基本波は約2割ほど上の値となってしまいます。 > >この検算から、私の結果の2Vは、約2倍が正しいとなり >(2/π)でいえば それを *2 した付近が正しいらしいとなります > >と >現在のところそんな感じです まず、フーリエ級数の定義を再確認されてみてはいかがでしょうか? 簡単に言うとフーリエ級数の定義は 繰り返し関数は DC成分+(cosとsinの三角関数の無限級数) で表現出来るということです。 なので、理想的な矩形波(1V振幅)の場合 数学的に DC成分=1/2 基本波成分=2/π 第3高調波成分=(2/π)*(-1/3) 第5高調波成分=(2/π)*(1/5) となります。 この辺の1V理想矩形波のフーリエ級数計算は フーリエ級数を理解する為に一番最初に出てくるような 問題なのでweb等でもすぐ情報が見つかるかもしれません。 (ちなみに、私が勉強した時に使ったテキストでは一番最初  ぐらいに出てきました。) 後のフーリエ変換の理解にも重要なのでしっかり理解される ことをお薦めします。

delta77_7
質問者

補足

回答有難うございます >sin(x) + 1/3sin(3x) + 1/5sin(5x) + 1/7sin(7x) + ...  これは、以下から取っています http://www.maroon.dti.ne.jp/koten-kairo/works/fft/series4.html 以下は別で http://www.page.sannet.ne.jp/komamura/Furier.htm 片側振幅1Vの基本周波数で矩形波を合成していくと、片側振幅約0.8Vの矩形波ができます No4の補足で書いた私の計算結果の0.8vと一致しています このWEBはグラフで解説してあって疑問は感じられませんが どこかおかしいでしょうか

  • tborn
  • ベストアンサー率50% (6/12)
回答No.4

こんばんは。 理想的な矩形波と仮定した場合には、 基本波成分は 3*(2/π) となります。 なので、理想波形ならば 3*(2/π) [V] になるはずです。 1Vの理想矩形波のフーリエ級数を計算すると基本波成分は (2/π) になるはずです。

delta77_7
質問者

補足

回答有難うございます >3*(2/π) [V] それなら、自分の結果、>10KHz 2.0V と一致します  3*(2/π) = 1.91 実は検算する方法があるようです sin(x) + 1/3sin(3x) + 1/5sin(5x) + 1/7sin(7x) + ... フーリエ級数展開というらしい 基本波の奇数倍の成分を無限に足していくと矩形波になるというもの 検算すると(1Vの基本波として) 基本波90度 sin(90) + 1/3sin(3*90) + 1/5sin(5*90) = 0.87 基本波45度 sin(45) + 1/3sin(3*45) + 1/5sin(5*45) = 0.78 何を検算しているかというと、矩形波なので、180、360度以外は、どの角度でも同じ振幅になります。そのため代表の90,45度で計算したということです 約0.8付近になりますが、これは、7,9,11,13、...と成分を細かく足していくとバラつきが一定になりそれが正しくなっていきそれが矩形波の振幅です つまり、3Vの矩形波なら、基本波は約2割ほど上の値となってしまいます。 この検算から、私の結果の2Vは、約2倍が正しいとなり (2/π)でいえば それを *2 した付近が正しいらしいとなります と 現在のところそんな感じです

  • bogen555
  • ベストアンサー率64% (111/173)
回答No.3

こちらのBBSでも同じ質問をしている人がいます。 そこでは結論が出たようです。 参考になるでしょうか? (まさかマルチポストじゃぁないですよね?) http://bbs.ednjapan.com/ADI/index.php?bid=4&v=1349929472cIGtjq

delta77_7
質問者

補足

質問者は同じです 困っているので、回答ソースが異なるところで多くの回答得ようとしています ADさんからの回答でかなり有力な方向は見えましたが、自分の分析がその結果が出ていないので結論は出ていません 質問の回答は頂けないのですか?

  • chie65535
  • ベストアンサー率43% (8508/19344)
回答No.2

>10KHz 2.0V  >30KHz 0.7V  >50KHz 0.4V  >今、信号振幅が3.0Vだと2.0Vと算出は正しいのでしょうか だいたい正しい。 10KHz 2.0V  に 30KHz 0.7V  とか 50KHz 0.4V  とかを重ねていくと、矩形波に近付いていく。 重ね合わせ合成なので、振幅は、重ねていくごとに大きくなり、徐々に3.0Vに近付いていく。

delta77_7
質問者

補足

>だいたい正しい。 正確な電圧わかるでしょうか

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

波形と電圧の単位(Vrms、Vp-p、Vo-p)にご注意。 理想波形(正弦波振幅が3V)なら、3Vが正解です。

delta77_7
質問者

補足

これを見つけました http://www.page.sannet.ne.jp/komamura/Furier.htm によると、基本周波数の振幅は、原信号より、若干大きいようです この説明の正確性は今勉強中ですが、まだわかりませんが計算に間違いはなさそうなんですが

関連するQ&A

  • FFTによるフィルタの可能性について

    はじめまして、信号処理については初心者です。教えていただけると幸いです。 ソフト処理でディジタルフィルタを作成したいと思っています。 リアルタイム処理が最終目標です。 IIRとかFIRとかの手法がありますが、FFTによるフィルタリングの可能性はあるのか知りたいです。 エクセルを用いて、模擬的に作った方形波をFFT演算して、 その結果の高い周波数部分を0にして逆FFTすると、綺麗に高調波が除去されていました。 この方法でのフィルタリングは実現可能なものと考えてよいのでしょうか? FFT処理では、エクセルの結果を見る限り、(当たり前ですが)遮断周波数でスパッと切れた波形が得られています(遮断周波数以上の振幅は0になる)。 一方、フィルタの本などでは、振幅減衰は1次で-20dB/dec、2次で-40dB/decと書かれており、 物理法則上そうなるものと思っていました。 FFTを利用したフィルタリング(遮断周波数以上の振幅は0)というのは、 何か原理的に(物の理として)おかしいところはないのか、不安に思っています。 また、電気系の雑誌にはIIRフィルタ等の使用について書かれている記事を見受けますが、 FFTフィルタリングが可能だとすれば、こちらの方が理想的なフィルタが得られることになります。 何か問題があってFFTフィルタリングが採用されていないと思いますが、どのような問題を秘めているのでしょうか。 (FFTフィルタが理想なのに、IIRフィルタが使用される理由は?) 上にも記載しましたが、将来的には高速マイコン(DSP,FPU付き)を使用してリアルタイム的な処理を行いたいと考えています(サンプリング周波数は16kHz程度です)。 FFTフィルタリングの設計の肝、IIR(FIR)フィルタとの使い分けについても、ご教示いただけると幸いです。 どうぞよろしくお願いいたします。

  • オシロスコープのFFTで計測できる波形を組み込み機器で実現したい。

    オシロスコープのFFTで計測できる波形を組み込み機器で実現したい。 テクトロのTPS2012で100KHz前後のLC発振の矩形波をCh1,Ch2に入力して見ている 波形があります。(発振交流波形でもほぼ同じ結果) MATH設定FFTで得られる400~500kHzの周波数で必要な信号が見られるのですが これをオシロではなくマイコン等を利用してその部分を抽出して利用したいのですが 要になる技術や手法,機材等に何が必要でしょうか。

  • 衝撃信号のFFTに関して質問です。

    建設現場の杭打ちによる衝撃信号(加速度)をサンプリング周波数25.6kHzにて10秒間収録しました。このデータをOriginやDADiSP等信号解析ソフトウェアを使用してFFTを行いました。 その結果として、25.6kHz×10秒=256,000個のデータを十把一からげでFFT(DFT?)を行った場合の振幅と、リサンプリングして256Hz×10秒=2,560個のデータを十把一からげでFFTした場合の振幅が明らかに異なるのですが、その理由をご教示頂きたくお願いいたします。 同じ、解析ソフトウェアの仕様によって若干周波数分解能は異なりますが、計算上はどちらの場合も周波数分解能は0.1Hzですので、近似の値が欲しいのですがうまくいきません。 サイン波のような定常信号で同じ処理を行った場合は、ほぼ同等の結果が得られたのに対して、単発の衝撃信号の場合は、衝撃時以外の波形がほぼフラットなため広い周波数帯に分散されてしまうのでしょうか? 調査対象として100Hz以上の周波数は必要無かったので、リサンプリングしてみた結果が上記のような内容となってしまいました。 私の処理方法が誤っていればそれはそれで助かるのですが・・・。 何卒宜しくお願いいたします。

  • FFTデータ数が少ないと直流成分が大きく変動する?

    FFTの振幅スペクトルから実効値算出のために単一正弦波をFFTしてみると、(1)のように計算データ点数が少ない場合、窓関数の位置によって「0Hz直流成分」のFFT結果値が大きく変動してしまいます。((2)(3)は窓関数がどの位置でも問題ありません。) この(1)(1サイクル64点=FFTデータ数64個)のような計算の場合、どのように実効値算出すればよいでしょうか?  また、正常な場合でもこれらのサンプル間隔(0、30Hz、60Hz等)の"すき間の部分”は考慮しなくても、全て計算結果に出力されているということでよいでしょうか? 単一正弦波(60Hz)   ((最大値5388.9v=実効値3810.5v)、サンプリング3.84KHz=1サイクル64点)   (実効値換算式=前半の√(実数^2+虚数^2)の合計/(FFTデータ数/2)/√2) (1)FFTデータ数 64個⇒0Hz(0.00~1905.2)???、60Hz(1905.2),120Hz(952.6)、180Hz(0.0)、          ⇒合計( ??? ) (2)FFTデータ数128個⇒0Hz(0.0), 30Hz(952.6),60Hz(1905.2),90Hz(952.6), 120Hz(0.0)、          ⇒合計(3810.4) ≒実効値 (3)FFTデータ数256個⇒0Hz(0.0),15Hz(0.0),30Hz(0.0)、                45Hz(952.6),60Hz(1905.2),75Hz(952.6), 90Hz(0.0),           ⇒合計(3810.4) ≒実効値

  • FFT(高速フーリエ変換)について

    直流成分0の正弦波と矩形波形をFFTするとFFTグラフには 正弦波・・・・一本の線のピーク 矩形波形・・・・複数の線のピーク となっているのですが、 FFTグラフの横軸と縦軸はなんでしょうか? FFT結果を複素数の絶対値を計算しグラフ化するのですが 何故、FFT結果が複素数なのですか? 定義式(g(t)=直流成分+Cos成分+Sin成分)をみる限り 複素数にならないと思います。 それか見ている式が違うのでしょうか? あと定義式(ある時間信号g(t)が、ある周期Tを持つ連続関数である時) であるのですが、”ある時間信号g(t)”っていうのはよくわかりません。 このgを求めることが 正弦波・・・・一本線のピーク 矩形波形・・・・複数の線のピーク になる理由がわかるのですか? ご指導の程、よろしくお願い致します。

  • FFTを使って信号から特定の周波数を抜き去る方法

    FFTを用いてある時系列データから特定の周波数の成分を抜き去ろうと思っていますが、 うまくいかないのでお伺いします。 調べてみると、スペクトルを出すとき、例えば同じ振幅で周波数の異なるの正弦波を 10個入れても全て同じ振幅にならず、振幅の大きさにばらつきが出ていて周波数成 分の成分の推定がうまくいっていないようです。FFTの2乗のデータを小さな周波数区 間で積分してスペクトル密度にしても、先ほどの10個の正弦波の振幅がそろわない のと、周波数推定が悪くなりうまく、引き去れなくなっています。 よくある状況だと思いますが、どういう工夫が必要なのでしょうか。 ちなみに、FFTのルーチンはnumerical recipeとFFTWの二つで試しました。

  • フーリエ変換の最大周波数

    5kHzでAD変換した信号があり、解析したい成分は0~1kHzに含まれています。 上記の前提で、256点で128点オーバーラップしながらFFT処理を行った場合、FFTを行うデータ数をN、サンプリング間隔Δt(1/5kHz=0.0002sec)とした時、 分解能 Δf=1/N*Δt=19.53 最大周波数 Fmax=(N/2NΔt)-(1-Δf)=2480.47 という計算式をインターネット上で見つけました。つまり0~2480Hzまで20Hzごとのパワースペクトル時間変化が128点データが並ぶということになると思うのですが・・・・ 一方、最大周波数はFFTデータ数の半分だという記載も見つけました。すると、最大周波数は半分も128Hzだと思うのですが、どちらが正しいのでしょうか?

  • FFTの見方

    非常に初歩的な質問になります。 高速フーリエ変換について、少し勉強しています。 基本的な本を読んで理解をしているつもりだったのですが、フーリエ変換とは時間軸に対して観測したデータを周波数軸に変換して表現した物と認識しています。 では、時間軸で振幅の差は周波数軸に変換した場合、どこに現れるのでしょうか? 例えば、ある信号で同じ周波数のデータがあるとします片方は高振幅、もう一方は低振幅この違いはFFTにかけるとどうなるのでしょうか? 大変漠然とした質問になってしまっていますが、よろしくお願いします。

  • FFTの特性について

    非常に初歩的な質問になります。 高速フーリエ変換について、少し勉強しています。 基本的な本を読んで理解をしているつもりだったのですが、フーリエ変換とは時間軸に対して観測したデータを周波数軸に変換して表現した物と認識しています。 では、時間軸で振幅の差は周波数軸に変換した場合、どこに現れるのでしょうか? 例えば、ある信号で同じ周波数のデータがあるとします片方は高振幅、もう一方は低振幅この違いはFFTにかけるとどうなるのでしょうか? 大変漠然とした質問になってしまっていますが、よろしくお願いします。

  • 筋電の周波数成分について教えて下さい。

    表面電極から差動アンプを通して検出した生の筋電波形をFFT演算してみたところ 全周波数成分は数Hz~数kHzでした。しかし、純粋な筋電成分は何Hz付近なのでしょうか? 負荷と筋電レベルの関係を調べたく、どの周波数成分の電圧レベルを見たら良いか分からないのです。 ちなみに電極固定箇所は前腕部の撓側手根屈筋付近です。 よろしくお願い致します。