タグ: Arduino

  • Arduino心拍センサー回路を素人が1つずつ理解していく|APDS-9008とOPAMP

    目的

    心拍センサーを用いて心拍数をモニタリングする。それにあたり、心拍センサーの回路図を確認、挙動について理解する。

    使用機器

    心拍センサー

    ハートのいかにも心臓の鼓動を検知しそうな感じ。中央にはLED?がある。3本の端子が出ている。

    裏はこんな感じ。さっぱりわからない。

    回路図

    回路図はこちら。

    当方、回路図に関する知識がほとんどないため、このレベルですら全然わからない。。。

    わかる人にとっては退屈な内容となるのでご容赦ください。

    当研究所の秀才助手(ChatGPT)に助けてもらいながら、素人ながら整理してみる。

    図面左のC5

    2.2μFのコンデンサ。

    電源の揺れを抑えるためのコンデンサで、センサーが拾う微弱な電流を安定させる役割がある。

    D1 LED

    LED、光るやつ。

    ここのLEDは、

    LEDが皮膚(指とか)を照らす

    血管の中の血液量が ドクン(多い) スカスカ(少ない) で変わる

    血液は光を吸収する性質がある

    反射して戻ってくる光が周期的に変わる

    それを受光素子が拾う

    っていう流れのセンサーとしての役割。

    D1:ダイオードの1個目(通し番号)

    KB:Knob(ノブ)調整つまみ。設計者の調整ポイントってメモ書き。

    SM:センサーモジュール。センサー部分ですって意味。

    RevMnt:Reverse Mount(逆向き実装)LEDを逆向きにつけるから気をつけろよって意味。

    R1

    電流を制限して、LED(D1)への過電流を防止している。

    ノイズを減らす役割もある。

    U1 APDS-9008

    これは光センサー。この回路における、メインの役割部分。

    Vcc:電源のプラス側

    GND:電源のマイナス側、電圧の基準点。

    OUT:センサの出力。血液の反射光の揺らぎを、電圧として出力する。

    Nc:No Connect(接続しない)

    D2

    ダイオード。センサーへの電流の逆流を防いでいる。

    ダイオード(英: diode)は整流作用(電流を一定方向にしか流さない作用)を持つ電子素子である。

    https://ja.wikipedia.org/wiki/%E3%83%80%E3%82%A4%E3%82%AA%E3%83%BC%E3%83%89

    U1以降のR(抵抗)、C(コンデンサ)

    これらは、ローパスフィルタとして機能していたり、ノイズ除去や安定化を行っている部分らしいけど、細かくは理解できず。

    ひとまず、U1のOUT(出力)から、オペアンプに入る前に調整しているイメージを持った。

    Op amp オペアンプ

    センサーで受け取った微弱な信号を、増幅する装置。

    Vin+:センサー信号の入力。基準にする電圧。(非反転入力)

    Vin-:センサー信号の比較対象(反転入力)

    Vout:比較結果の出力。心拍データが出てくる。

    Vdd:電源+。OPAMPの電源。

    Vss:GND。電源のマイナス側。基準のゼロV

    ↓参考

    https://www.ablic.com/jp/semicon/products/analog/opamp/intro/

    +V OUT GND(図面右側)

    回路全体の入り口と出口。

    +V:電源+

    OUT:信号の出口。Arduinoなどに接続する。

    GND:電源-

    まとめ

    ひとつひとつひも解いていくと、理解できた気がする。

    センサー部で検出した血液の揺らぎを、回路内で増幅し、出力している。

    回路図は、何も知らない状態ではしり込みしてしまうが、知ってしまえばなんてことないことが書いてある。