BACK NEXT U  P HOME

はじめに
WaveSpectraは言わずとしれた、 国内でもっとも普及していると思われるefuさん作のスペクトラムアナライザの機能を持ったフリーウェアです。
使い勝手がよいので私も
エフェクターの周波数特性エフェクターの周波数特性(その2)エフェクターの周波数特性(その3)で使用しています。

そのWaveSpectraがV1.40以降
驚異的と思えるほどの機能を搭載されたので、皆さんに紹介がてらエフェクターの周波数特性のはかり方について考えてみようと言うのが今回の目的です。

準備
まず、efu's pageに行って、

WaveSpectra (ダウンロードページはこちら)

WaveGene (ダウンロードページはこちら)
およびWaveGeneのユーザー波形データ (ダウンロードページはこちら)
の最新版をダウンロードしてください。

これらのS/Wはレジストリを書き換えたりしない良心的な設計でなので、適当なフォルダに一緒に 放り込んで解凍すればインストール完了です。
(アンインストールもファイルを消すだけで終わります。)

使い方の基本
まず、 WaveSpectraを用いた周波数特性の測定について
(2)直接WGのスイープ信号を用いる方法。(WSのピークホールド機能を用いる方法)
周期スイープを用いた周波数特性の測定について
(1)WGのユーザー波形で周期スイープを用いる方法。
を頭にたたき込んでおいてください。
(と言うか、ここに書いてある事を実行するという話がすべてです。
この2つを理解してたら、 これから先に続く私の駄文を読む必要はありません。)

レベル調整
鋭意作成中(こう御期待)

周波数特性測定
鋭意作成中(こう御期待)

特徴
私は離散系の話と連続系の話がうまく分離できていないので、説明として適切でない部分があるかもしれません。注意お願いします。

掃引正弦波による方法の問題
この部分については、特に数学的裏付けが怪しく、私が感じた事をそのまま書いていますので、 参考にされる方は注意して下さい。(得意な方はコンテンツ作成時に、素人の陥りやすい間違いとして注意して頂けたら幸いです。)

こんな経緯で掃引正弦波による周波数解析が主流になったのだと思うけど、高周波ではいざ知らず、 音響用途の低周波で使用すると結構難しかったりする。(音響用途の低周波=キャリア周波数がDCでサイドバンドが片一方しかない信号)

前書きが長くなりましたが…、
何を言いたかったというと、時間の分解能についても音を測定するのに重要なファクターであり、それはディジタル、アナログに関係なくあるという事が言いたかっただけです。本題に戻って、今、考えるべき問題である掃引正弦波による方法の問題について考えようと思います。
  1. 周波数が掃引すること自体の問題
    FFTはリアルタイムの周波数解析S/Wですから、サンプリング周波数でサンプル数個(サンプル時間)分切り出して、サンプル時間に切りとった波形が繰り返されている物と仮定して計算します。
    ですから、本来はサンプル時間の中で正弦波の周波数は一定でないと困るのに、 実際は周波数が変わっているため、正弦波にランプ波のFM変調がかかった波形をサンプルすることになります。そのため、スペクトルで見るとメインローブの高さは低くなり、幅はふくらみます。またFM変調がかかっている事になるため、サイドローブの高さは高くなっているはずです。(詳細はFM変調を調べてみて下さい。)

    これを回避するにはサンプル時間内で正弦波の発振器側の掃引周波数が無視できる位、遅くするか、FFTがサンプルを切り出すタイミングと同期して発振器側の周波数をずらして、メインローブの低下を見込む位しか方法がありません。

    更に悲しい事にFFTの周波数分解能を向上させるためには、可能な限り長いサンプル時間で切り出した方が有利なので(1/サンプル時間が周波数分解能になる)、正確にとろうと思えば思うほど周波数掃引に時間がかかる事になります。

  2. 指数掃引することに起因する問題
    スペクトラムアナライザの周波数軸はlog表記されているので、ある周波数を掃引するのにT時間かかるとすると、1oct上の周波数ではT/2、更に1oct上ではT/4と、高い周波数になればなるほど、一定時間で掃引する周波数の幅は指数的に増えていきます。
    そうすると、上の周波数が掃引すること自体の問題で発生する問題は1oct上では2倍、さらに1octでは4倍と顕著になっていきます。

    正弦波掃引した周波数をWaveSpectraで測定して、高域でどんどん周波数応答が下がってくるように 観察されるのは、この問題が主では無いかと私は考えています。
    本当を言うとこの部分、式を使って説明したかったのですが、現在の私では気合いを含めて、ちょっと力不足です。

  3. ピークホールドすることに起因する問題
    上の周波数が掃引すること自体の問題でメインローブの幅が太くなると言いましたが、ピークホールドという演算をする事で、メインローブの太さが災いして、巨大なメインローブの裾が 近隣にある細かいディップを塗りつぶしてしまう可能性があります。

    これを回避するにはメインローブの幅が可能な限り線スペクトルに近くなるようにするしかありません。つまり掃引周波数を無視できる位、遅くする事を意味します。

こういう不適切なデータと知らずに理論派のオヤさんにケンカを売った猛者がいたみたいで、オヤさんはそう言う人達に対してTips and tricks of tasting loudspeakersで反省を促しているのです。

じゃあ、掃引正弦波によって測定したかったらどうするかというと…
efuさんがWaveSpectraを用いた周波数特性の測定についてで示しているとおり長時間かけてリニアスイープで掃引するしか方法が無いと思います。

使い分けの方法
じゃあ、どうやって使い分けたらよいのか?考えてみました。
鋭意作成中(こう御期待)

理論的背景
オヤさんがhasidaさんに紹介し、hasidaさんのコンテンツを見て知った、なかなか良くできてるコンテンツ(グラフが動いたり凄いです。)
ディジタル信号処理線形システムあたりを理解するのが今回の話を理解する鍵となるように思います。

WaveSpectraWaveGeneの今回のバージョンアップは今回の話はさらに先の話でTSP(Time Stretched Pulse)という技術が背景にあります。

私も理解しているわけでは無いので、整理されていませんが、情報提供という意味で列挙します。
(才能のあるor頭の柔らかい人がこれらの文献を参考に優れたコンテンツを作成して下さる事を期待して情報をまとめています。)


最後に
正直言って私はFFTなんてとうの昔に忘れてしまって、数学的背景を全く失ってしまったので、 今回の話には不適な人材です。
でも、WS+WGの組み合わせの驚異的な使い勝手の良さは、今後の教育、学習環境として、 アピールした方が社会の為になると考え、良く分からないながらがんばって コンテンツ作成しました。
あと、Made in Japanの心意気として海外の人にWS+WGをアピールしたかったのも、ちょっとあります。(^^;)

内容的に問題があると指摘がありましたら、わかる範囲で修正しますが…
指摘できる能力のある方、自身に「コンテンツを作成してもらいたい」と言うのが本音です。

どなたかトライしませんか?

謝辞
まずはefu's pageのefuさんに感謝します。efuさんは最高のS/WWaveSpectra及びWaveGeneを世界に向けて無償で提供してくださる上に、図々しい私のお願いを聞いて下さりHPのコンテンツ追加をして下さったり、色々原理についてわかりやすい説明をしていただきました。

hasidaの部屋のhasidaさんのExcel表 の説得力で私は感覚的にTSPを理解しました。

私にとってのTSPはDaredevil 2.0のオヤさん のBBSで2年位前話題になった事がきっかけになりました。

そして、ノータリンの私につきあってくれる、一庵堂ヨタと〜くの常連の皆さんに感謝します。


BACK NEXT U  P HOME


Last Up Date '09/06/01
Last Up Date '09/05/25