说明:
心跳检测模块,由一个红外线发射LED和红外接收器构成。手指心跳监测模块能够测量脉搏,是这样工作的:当手指放在发射器与接收器之间,红外发射LED发射的光将穿过手指,到被接收器接收。而血压会随着脉搏变化,导致红外接收器接收到的光通量也会随之变化,因此可以通过红外光接收的情况来统计监测心跳。
实验目的:
利用手指心跳监测模块记录心率。 器材:
Stduino UNO/Nano、杜邦线、手指心跳监测模块 电路连接:
代码展示: 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下。另外,这种监测器只适合学习,不适用于任何医疗用途。
注意:
尽可能将模块挡住,甚至可以放在小黑箱中实验。
不要用手直接捏住传感器测,那样你会发现画出来的图线很乱,这并不是说你心率不齐。正确的方法是测指甲盖。
|