[H8-ML(3531)] Re:A/D信号のピーク検出手法
From: Shigeru Makino <mac@xxxxxxxxxxxxxx>
Date: 2003年07月05日(土)20時07分46秒
macです。

> もう少しA/Dの精度を上げれば、正確なピーク値を検出できるとは思うのですが、
> 限られたA/Dの値から、真のピーク値を探そうという大それたことを
> かんがえています。

精度というよりはこの場合、分解能ですね。

> 平らな部分の最初の場所と最後の場所ではピーク確定時間が図の例では
> 数msずれてしまいます。

リアルタイムの観点から、たぶん没ですが、
B スプラインによる、近似関数を時系列のまま、
リアルタイムに行う方法があり、
One pass B splineなどと呼ばれています。

スプライン関数とその応用
(シリーズ新しい応用の数学 20)
http://www.bk1.co.jp/cgi-bin/srch/srch_detail.cgi/3f06a253987aa0103472?aid=&bibid=00145397&volno=0000
発行年月:1979.6
とかなり古い本で、サンプルもFortranで書かれていますが、
良書だと思います。

こうして一旦「関数」になってしまえば、
一次微分して、0になるところが、peakです。

そこまでしなくても、信号の周波数帯域が既知ならば、
Digital filterで、平滑化できるので、
その出力を数値微分する方法もあります。

さらに、ちょっといいかげんぽいのですが、
分解能は足りないが、速度は十分速いADCの場合、
入力に、正規分布乱数信号を故意に注入し、
その移動平均、もしくはローパスフィルタを掛けると、
見かけ上の分解能があがります。

-- mac


スレッド概略
[3523(R)](起点)
 └[3529(U)]
   └[表示中]
     └[3560(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]