心跳侦测传感器

心跳检测模块,由一个红外线发射LED和红外接收器构成。手指心跳监测模块能够测量脉搏,是这样工作的:当手指放在发射器与接收器之间,红外发射LED发射的光将穿过手指,到被接收器接收。

而血压会随着脉搏变化,导致红外接收器接收到的光通量也会随之变化,因此可以通过红外光接收的情况来统计监测心跳。

引脚说明

接线方式如下:

模块引脚 Stduino 开发板管脚
- GND
S A0
+ 5V

必需的组件

你将需要以下组件:

  • 1×手指心跳监测模块
  • 1×Stduino UNO/Nano

连接

按照电路图连接面包主板的组件,如下图所示。

Stduino代码

#include <Arduino.h>
int ledPin = 13;
int sensorPin = A0;

double alpha = 0.75;
int period = 20;
double change = 0.0;

void setup()
{
pinMode(ledPin, OUTPUT);
pinMode(sensorPin, INPUT_ANALOG);
Serial.begin(115200);
}

void loop()
{
static double oldValue = 0;
static double oldChange = 0;
int rawValue = analogRead(sensorPin);
double value = alpha * oldValue + (1 - alpha) * rawValue;//这个平滑就是取本次和上一次测量数据的加权平均值
Serial.println(value);

oldValue = value;
delay(period);
}

结果

将串口输出的值复制到EXCEL中,可以得到以下的折线图。可以看到,在大约16秒的时间里,出现了32个波峰。这一方面说明心跳有点快,一分钟达到了120下。另外,这种监测器只适合学习,不适用于任何医疗用途。

文档更新时间: 2021-02-14 14:29   作者:admin