1

LEDとレシーバーを使って指プレチスモグラフ(FP)を作っています。センサーは、3.3〜0Vの範囲のマイクロコントローラー入力にフィルター処理、増幅、および供給されるアナログパルス波形を生成します。この信号はデジタル形式に変換されます。

スマッピングレートは8MHz、プロセッサ周波数は26MHz、精度は10または8ビットです。

ピーク検出の堅牢な方法を考え出すのに問題があります。指プレチスモグラフから心臓の脈拍を検出できるようにしたい。しきい値法を使用して、心拍数の正確な測定値を生成することができました。ただし、FPは動きに非常に敏感であり、信号のオフセットは動きに基づいて変化する可能性があります。ただし、信号のピークは引き続き表示されますが、電圧オフセットは変化します。

そこで、スロープを利用してピークを検出するピーク検出法を提案しています。たとえば、ピークが生成された場合、最大点の前後の勾配はそれぞれ正と負になります。

この方法はどの程度実行可能だと思いますか?マイクロコントローラーを使用してピーク検出を実行する簡単な方法はありますか?

4

3 に答える 3

0

いくつかのコメントのように、今のところ脈拍 (つまり心拍数) しか気にしないので、サンプル レートを下げることをお勧めします。したがって、安静時の心拍数を見ると仮定すると、被験者の健康状態や年齢などに応じて、サブ 1Hz から 2Hz の範囲 (60 BPM = 1Hz) になります。

対象の周波数範囲を分離するために、単純な低次デジタル フィルターもお勧めします。Matlab にアクセスできる場合は、フィルター設計および解析ツール ( FDATool の紹介) を使用してデジタル フィルター設計を試すことができます。おわかりのように、デジタル フィルタリング ( wiki ) は乗算と加算の問題であるため、計算コストは​​高くありません。

あなたの質問の検出部分に答えるには、はい、マイクロコントローラ内のプレチスモグラフ波形にピーク検出を実装することは確かに実現可能です。あなたの例を挙げると、スロープベースのピーク検出アルゴリズムは、波形データに対して動作し、スロープの変化を検索します。基本的に、スロープ波形がゼロを横切る場所です。

アプリケーションについて考慮すべきその他の事項を次に示します。

  • 勾配の計算には「広がり」がある場合があります (つまり、隣接するサンプル間の勾配を見つけますか、それとも数サンプル離れたサンプルを見つけますか?)
  • ピーク検出アルゴリズムが、生理学的な意味で互いに近すぎる、または離れすぎているピークを特定した場合はどうなるでしょうか?
  • パルス酸素濃度計 ( wiki ) は、多くの場合、赤色光と赤外線光を発する LED を利用します。LED の周波数はプレチスモグラフにどのように影響しますか? (ヒント: 重要ではないかもしれませんが、関心のある周波数範囲でより大きな振幅を生成する 1 つの波長が見つかると思います。)

もちろん、文献検索を行えば、さまざまな潜在的なアルゴリズムを見つけることができますが、勾配ベースの検出はその単純さから優れていると思います。それが役に立てば幸い。

于 2012-06-20T00:59:10.690 に答える
0

ゼロ クロスを使用して周期を検出できる場合は、10 Hz の 10 倍のオーバーサンプリングでも、quick-n-dirty-edge のライン フィットを使用して正確な周期を見つけ、その周期の新しい波のサンプルを次のように減算できます。 DC オフセットを取得します。周期測定には、サンプルレートの精度があります。時間と振幅で正規化されたデータに対する操作は、はるかに簡単になります。

このアイデアは、追加のデータ処理が必要な FFT と比較して計算量が少ないです。

于 2012-07-03T18:24:20.467 に答える
0

デバイスが移動したときに、偽のピークの検出を導入することができます。これは、平均ピーク持続時間を測定する場合でも、FFT (高速フーリエ変換) を適用する場合でも表示されます。

FFT を使用すると、考慮している周波数の範囲外のピーク (つまり、< 30 bpm および > 300 bpm など) を無視できるはずです。

Kenny が示唆するように、8MHz は 26MHz チップを圧倒するかもしれません。このような高いサンプリング レートの特定の理由はありますか?

于 2012-06-13T19:12:54.190 に答える