ひとつ前へ WWWルートへ mad@mail.wind.ne.jp

ステップ・アナライザ

研究・設計 数理設計研究所 玉置晴朗 2002/10/02

stepana.lzh (321k) ソース込みだがいくつか抜けている(gidadc.hなど)


概説

 DCから音声帯域の中頃までの周波数特性を測定するには発振器と電圧測定器を組み合わせます。パソコンでサウンドインターフェースを利用して発振器を作り測定することもできます。
 しかし周波数分解能をあげようとするとスイープ測定では長い時間がかかり、1000Hzまでの周波数帯域を1Hz精度で測定しようとすると、およそ1000秒、10Hz精度でも100秒かかります。
 このステップアナライザはたった1秒間で1Hzから1000Hzまで1Hz分解能で測定することができます。このため中低周波を主とする低い周波数領域の応答を測定するのに向いています。たとえば
  • 低周波回路や装置全体の特性
  • ホールなどの音場を含んだ特性
  • モータなど機械や電気炉などの応答特性
などの分野では必須の測定技術です。

原理

 デジタルフィルタ関係の書籍では最初にインパルス応答の解説があります。インパルス応答による測定では幅の狭いパルスを入力として与え、出力をフーリエ変換すると周波数特性が計算できます。(末尾参考文献1、2)


Z1 「インパルス応答による測定」

 ただしインパルス応答による測定は数学的には美しいのですが、インパルス信号のパルス幅が狭いと入力エネルギーが小さく、測定S/Nが悪くなります。

Z2  step1.gif
「インパルス信号とステップ信号の周波数特性」
縦軸はdB、横軸はHz
 1秒間で1000点の観測をするとして計算したインパルス信号(点線)とステップ信号(実線)のスペクトル。(インパルス幅は0.5ミリ秒)

 同じ振幅を持つステップ信号とインパルス信号を比べると、ステップ信号は低周波数側でスペクトルが大きくなっています。インパルス信号ではスペクトルに比べて(信号の)ピーク値が非常に大きいので振幅に限界のある増幅器による飽和も起きやすくなります。Z2
 ステップ信号を微分すればインパルス信号になります。微分はどこでしても良いので、測定対象を通過する間はステップ信号、出力を取得してからPC内で微分(差分)すればSNの良い状態で測定することができます。

「ステップ応答とインパルス応答の関係」
ステップ→微分すると→インパルス
 装置を通して  微分して  FFTしても同じ

フーリエ変換

 フーリエ変換は高速フーリエ変換(FFT)で実行します。試作ソフトでは256から4096の範囲で動くようにしています。最近のPCではFFT処理は数ミリ秒で終わり、観察しながら低域フィルタの調整ができます。
 1秒間に1024点のFFTでは512Hzまで1Hz刻みで複素数値が得られ、絶対値が利得、角度が位相となります。

試作した測定システム

 ステップ信号を対象物に与えるデジタル出力と結果を取り込むADC部が必要です。工夫すればPC付属のオーディオインターフェースでもできそうですが、0.01Hz以下までも測定したいのでDCから測定できるGID-ADC(12bit,8ch)キットを使いました。
 GID-ADCはMAX186(12bit8ch)をADCとして採用しています。PCのRS-232Cに接続してポートを直接操作してAD変換するのでWindows2000などNT系ではポート制御ができませんのでWin98で動かします。普通のPCでは毎秒8〜10k点の変換ができるので5kHzぐらいまでの周波数特性を観察できます。
Z4 GID-ADCの回路図 GIDADC.PDF
 C−MOSレベルのデジタル出力は簡単なCRネットやオーディオアンプ経由の音響測定に利用します。
GID−ADC入力部は1mV分解能で±4095mVの範囲で動作します。
 1mV分解能は−60dBVですが、差分計算とFFT後のアナライザ表示としてノイズが少ない状態は−30dBVぐらいです。したがって+10dBVから−30dBVの40dB範囲で観察できるようにしています。
 またフリー基板に外部回路を作りデジタル出力で低ON抵抗のFETを駆動しモーターやスピーカを直接ドライブしたり、コンデンサマイク用にOP−AMPで100倍アンプを構成しています。

Z5 外部回路図
TP1は直接のデジタル出力端子
TP2は外部電池でSPやモータを直接ドライブする端子
システムの動作Z6
ステップ出力信号と測定タイミング
ステップ信号とデータ取り込みの関係

 最初にADCの変換時間を確定するためにクラスライブラリにある GetNCnvTime() を呼び出して1変換あたりの時間を取得します。
 この関数は2,4,8と変換データ数を増加させてPCの個性を測定してくれます。ソースコードは公開しています(参考文献3)。
1024点FFTでの測定フローは
  1. 出力信号=0Vで最初の測定
  2. 出力信号=5Vにして1024点の測定
  3. 出力信号=0Vに戻しておく
  4. 1025測定値をd[0]〜d[1024]に取得し、次に
    d[n]=n[n+1]-d[n] と計算して微分します。
  5. さらにフーリエ変換(FFT)すると複素数値になり1024点の半分=512点の絶対値が利得、実部と虚部が示す角度が位相になります。試作システムでの表現はボード線図として、横軸に周波数、縦軸に利得と位相を重ね書きしています。

実例1:電子回路(LPF,HPF)の観察

R=10kΩ、C=0.1uF、計算上のfc=159Hz
GID-ADCの出力を10kΩVRで分圧してCR回路を直接駆動して回路出力をそのままGID-ADCで観察します。Z7A LPF回路
Z7B lpf1.gif
 測定結果CRT
 LPF,HPFの位相も美しく観察することができますが、LPFでは高い周波数部分のSN比悪化で少しだれた感じになります。
 高い周波数部の観察はインパルス応答の測定モードに切り替えます。
P8260245.jpg 写真

Z7C lpf2.gif SPICE
hpf1.gif
同じCRで構成したHPF

実例2:電子回路(TwinT)の観察

 R=330kΩ、C=0.01uF、fc=48HzのTノッチフィルタです。

4 6Hzあたりで位相が急変しノッチがあるのが良くわかります。測定は周波数分解能をあげるために4096点FFTに設定しています。Z8A ツインT回路図

P8260246.jpg 写真
bef1.gif 測定CRT図

実例3:小スピーカによる実験

Z9 pc_sp2.gif 小スピーカ+コンデンサマイク

57mmスピーカの背面をフォームラバー(20mm)で覆ってマイクを前面5cmに配置
解釈:400Hz,2600Hzに共振点がある。400Hzの共振点は位置制御から速度制御に変わる周波数。2600Hzの共振点は分割振動になる?
 背面をフォームラバーでダンピングしているので非常にきれいな特性になっています。

PC用スピーカの音響特性

2000円で購入した、PC用の3スピーカシステム。Z10 PC用3スピーカシステムの音響特性 pc-sp1.gif

SPの前20cmにコンデンサマイクを置き外部回路のOP-AMPを使って測定したものです。

25cmフロアスピーカ+部屋の総合特性

 30年選手の愛用スピーカシステム(バスレフ型)を12畳室内の中央で測定しました。
 物置のような作業部屋なので低域が非常に強調され30Hzから出ていますが中高域は障害物で遮蔽されています。
 裸のスピーカではなく室内全体の特性が測定されたものです。
Z11 フロア型スピーカ
room-L1.gif

その他の特性
 元々モータの起動特性や電気炉の熱応答特性を知るために作ったのですが、大きなホールの音響特性などを瞬間的に調査することもできますしパイプと小SPを組み合わせて井戸の水位を間接測定したりできます。
 原理的なシステムなので広く皆さんの応用と創意工夫を期待します。

参考文献

  1. 「スペクトラム/ネットワーク・アナライザ」:RAウィッテ 発行(トッパン)
  2. 「科学計測のためのデータ処理入門」CQ出版
  3. GID関係
    • 「パソコン汎用インターフェースGID-ADC」トランジスタ技術1997/10 CQ出版
    • 「センサー技術とデータ伝送」ハムジャーナル2002/5  CQ出版
    • http://www.madlabo.com/mad/gid/

..end