配線 | 意味 |
赤 | 電源(Arduinoの5Vへ) |
黒 | Ground(ArduinoのGNDへ) |
紫 | Analog In(Arduinoのアナログ入力A0へ) |
アナログ入力からは血流量に比例した数値が得られる。これを一定時間ごとに記録して、波形の山と山の間の時間を計ることで心拍数が得られる。
#define USE_TIMER1または#define USE_TIMER2で使用するタイマーを選択する。
タイマー1を使用するには、タイマー1ライブラリが必要である。タイマー1を使用すると、9, 10ピンのPWM、Servo.hの使用ができなくなる。
タイマー2を使用するには、タイマー2ライブラリが必要である。タイマー2を使用すると、3, 11ピンのPWM、tone()の使用ができなくなる。なお、USE_TIMER1もUSE_TIMER2も記述されていない場合、ライブラリを使わずにタイマー2を使用する。
次に、#include <PulseSensor.h>を記述する。
さらに、void setup()でpulseSensorInit();を実行することで、タイマーが起動し、心拍数を計算する。これらのデータは、次の変数を通じて得ることができる。
変数名 | 意味 |
QS | 心拍が検出されたかどうか |
Signal | 入力信号 |
BPM | 心拍数 |
IBI | 心拍間隔[ms] |
#define USE_TIMER2 #include <PulseSensor.h> void setup() { Seial.begin(115200); pulseSensorInit(); } void loop() { Serial.println(BPM); delay(10); }