迷走の果て・Tiny Objects

迷走する日々の覚え書きです。自分で分かってることは省略してますので、念のため。

脈拍を測るための実験(2)

実験回路の基板、および回路図です。
回路図でジャンパーピンから左が秋月パルスを参考にして作った回路です。ただしフォトトランジスタからの出力の取り出し方を変えてあります、オリジナルではコレクタからですが、この回路ではエミッタからとりだしています。
このほうが感度が高かったのですが、ちゃんとしたデータを残していないので、あるいは測定間違いかもしれません。
ジャンパーピンから右の回路に付いては後述します。
秋月パルスRPR220_2
心拍センサーwithPSoC
前回の実験で脈拍を測る目処が立ちましたが、いちいちグラフ化して読み取るわけにはいきません。
1分間の心拍数を測ればいいので、これはゲートタイム1分のの周波数カウンタを用意すればいいので簡単ですが、そんなに待っていられません。
ネットであれこれ調べると、看護士さんは基本どおり1分測ったり、30秒測って2倍、あるいは15秒で4倍することもあるようです。
きれいなおねいさんが脈を取ってくれるなら1分でも短いんですが、無機質のセンサーに指を乗せるのなら話は別です。(^^;;)
周期を測って逆数をとることにしました、前回グラフから脈拍を読み取ったのと同じ方法です。
ここではArduinoのpulseIn()関数を使うことにしました。
この関数は入力のHIGHまたはLOWの時間をマイクロ秒単位で測れます。
ただし今回必要なのは周期であって、パルス幅ではありません。これはフィリップフロップで2分周すれば済みます。74HC73や74HC74などが使えます。
その前にLM358の出力を整形する必要があります。上記のHCシリーズは入力の立ち上がりや立下り時間が遅いと誤動作を起こす恐れがあるからです。500nS以下が推奨動作条件となっています。
こういう場合は74HC14などのシュミットトリガを使うのが普通ですが、馴染みのPSoCを使ってみました。
PSoCの入力はシュミットトリガですし、デジタルブロックを使えば分周回路などは簡単です。
ここで使ったCY8C24123はデジタルブロックを4個内蔵していますので、先の回路図にあるように1周期、2周期、4周期、8周期分それぞれHレベルになる信号を出すことが出来ます。
1周期分の時間は毎回安定しているかどうかわかりません、人間の心臓は水晶発振回路じゃないんですから。
数周期の時間を測定することによりばらつきが抑えられるかもしれないと考えたわけです。 あれこれやって4周期分測って脈拍を求めることにしました。

Arduinoのスケッチです。

#define PULSEIN 7
void setup()
{
  pinMode(PULSEIN,INPUT);
  Serial.begin(1200);
}



void loop()
{
  long period;
  float heartbeat;
  period=pulseIn(PULSEIN, HIGH, 10000000);
  heartbeat=6e7/(period/4);
  Serial.println(heartbeat,0);
}

実行中のスクリーンダンプ、コメントアウトしている部分は上記のスケッチでは削除しています。

心拍測定中
脈拍80弱というところでしょうか、深呼吸すると数字が小さくなるのがわかりました、このスクリーンダンプには表示されてませんが。

関連記事
スポンサーサイト

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

この記事へのトラックバックURL
http://edycube.blog.fc2.com/tb.php/736-86ad5cfd

 | HOME | 

文字サイズの変更

プロフィール

edy

最新記事一覧(サムネイル画像付き)

AC電力計(2) Nov 19, 2017
クリスマス電飾(2) Nov 12, 2017
クリスマス電飾(1) Nov 12, 2017
AC電力計(1) Nov 04, 2017
micro:bit(2)Arduino IDEで使う。 Oct 29, 2017
micro:bit(1) Oct 29, 2017
ブリッジドT発振回路(3)光るランプ Oct 16, 2017
ダイソーのかぼちゃで電飾 Oct 08, 2017
ブリッジドT発振回路(2)オペアンプとっかえひっかえ Oct 07, 2017
ブリッジドT発振回路(1) Oct 02, 2017

全記事表示リンク

全ての記事を表示する

リンク

このブログをリンクに追加する

月別アーカイブ

11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  12  11  10  09  07  05  04  03  04  03  01  12  11  10  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  02  01  12  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  10  09  08  07  06  05  04  03  02  01 

カテゴリ

プログラミング (0)
freescale (1)
AVR (3)
テルミン (16)
緊急警報放送 (3)
78K (1)
PSoC (295)
地上デジタル放送 (2)
電子工作 (426)
HX711 (2)
ACS712 (6)
数学 (6)
パソコン (12)
PLC (14)
未分類 (39)
ブログ関係 (20)
スカイプ (37)
ロボット (1)
LTSpice (8)
OCXO (0)
arduino (32)
maxima (1)
フランクリン発振回路 (3)
GPS (3)
DTMF (1)
Linux (1)
KOMAINO (7)

タグリスト

最近のコメント

最近のトラックバック

メールフォーム

名前:
メール:
件名:
本文:

検索フォーム

アクセス

RSSリンクの表示

ブログリンク

FC2Ad

まとめ

Template by たけやん