Electronics

Heartbeat Sensor Module KY-039

AED 8.40

1

Description

This module has an infrared (IR) LED, and an IR receiver mounted on a breakout board with resistors used to read heartbeat using IR light and collecting it again with a receiver and then calculating the difference in the light coming out of the process through the time which gives us a simple visualization of the bloodstream and heartbeat.

 

Specifications:

  • Dimensions: 32 x 24 x 12mm
  • Weight: 3.06g
  • Material: FR4
  • Working voltage: 5V Use IR LED and an optical transistor to detect pulsation in fingers
  • Used for teaching experiment

 

Pinout of the module:

The KY-039 module has three pins.

Pin Description
(-) GND
Middle Pin +5V
S Signal

 

 KY-039 HeartBeat sensor simple test:

This project detects the finger's pulse using a phototransistor and a bright infrared (IR) LED. A red LED flashes with each pulse. Here's how the pulse oximeter operates: The phototransistor is used to get the flux emitted when the blood pressure pulse by the finger causes a minor change in the phototransistor's resistance. The phototransistor is on the other side of the finger from the LED, which is on the finger's side that emits light. The phototransistor should have a high enough sensitivity since most of the light passing through the finger is absorbed. This is seen in the project's schematic circuit. To achieve the greatest outcomes, resistance can be chosen by experimentation. The phototransistor's barrier against stray light must be maintained at all times. This is crucial for residential illumination since most of the lights there are based on fluctuating 50 or 60 Hz frequencies, adding noise from a weak heartbeat.

The measured values are printed when the program is executed. It could be difficult to discern an actual pulse from this.

Connecting to the Arduino

  • Sensor pin S connects to Arduino pin Analoog 0 / A0
  • Sensor pin + (middle pin) connect to Arduino pin 5+
  • Sensor pin - connect to Arduino pin GND

// Pulse Monitor Test Script
int sensorPin = 0;
double alpha = 0.75;
int period = 100;
double change = 0.0;
double minval = 0.0;
void setup ()
{
 Serial.begin (9600);
}
void loop ()
{
 static double oldValue = 0;
 static double oldchange = 0;
 int rawValue = analogRead (sensorPin);
 double value = alpha * oldValue + (1 - alpha) * rawValue;
 Serial.print (rawValue);
 Serial.print (",");
 Serial.println (value);
 oldValue = value;
 delay (period);
}