Site icon Circuit Ideas for You

Arduino Based Pulse Monitoring Circuit

This project show how to make a simple Arduino Based Pulse Monitoring Circuit.

It uses Arduino Nano, pulse sensor, OLED display, buzzer, an LED.

The system reads heartbeat from finger sensor.

Then Arduino calculate pulse per minute.

OLED show result.

LED and buzzer give alert when pulse go high or low.

Circuit is simple and with low power.

Good for beginners and students.

Arduino Coding:

#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

Adafruit_SSD1306 display(128, 64, &Wire);

int pulsePin = A0;
int ledPin = 7;
int buzzerPin = 8;

int signal;
int threshold = 550;
boolean pulse = false;
unsigned long lastBeat = 0;
int bpm = 0;

void setup() {
pinMode(ledPin, OUTPUT);
pinMode(buzzerPin, OUTPUT);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.display();
}

void loop() {
signal = analogRead(pulsePin);

if (signal > threshold && pulse == false) {
pulse = true;
unsigned long nowTime = millis();
unsigned long gap = nowTime - lastBeat;
lastBeat = nowTime;
if (gap > 0 && gap < 2000) {
bpm = 60000 / gap;
}
}

if (signal < threshold) {
pulse = false;
}

display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(0,0);
display.print("BPM:");
display.print(bpm);
display.display();

if (bpm > 100 || bpm < 50) {
digitalWrite(ledPin, HIGH);
digitalWrite(buzzerPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
digitalWrite(buzzerPin, LOW);
}

delay(20);
}

Coding Explanation:

Circuit Working:

Parts List:

ItemQuantity
Resistor 220Ω 1/4 watt1
Arduino Nano1
Pulse Sensor Module1
OLED Screen 13061
LED any1
SPST switch On Off 1
Buzzer1
9V Battery1

In this circuit pulse sensor give small voltage change when heart beat.

Arduino read this change at analog pin.

Arduino measure time gap between peaks.

From this time gap Arduino calculate beats per minute.

OLED show live BPM(Beats Per Minute).

When BPM cross set value, LED turn ON and buzzer beeps.

The resistor R1 limits the current and keeps the LED safe.

When BPM is normal again both turn OFF.

A switch in the circuit makes it easier to turn the whole project ON and OFF.

9V battery give portable power to the Arduino and the whole pulse monitoring circuit.

Formula with Calculation:

Below is the general formula commonly used in Arduino pulse sensor projects.

BPM formula:

BPM = 60000 / time_between_beats_in_milliseconds

Example:

If time between beats = 750 ms

BPM = 60000 / 750

BPM = 80

80 BPM is normal heart rate, not too high and not too low.

How to Build:

To build a Arduino Based Pulse Monitoring Circuit follow the connection steps below:

Conclusion:

This Arduino Based Pulse Monitoring Circuit is low cost and easy to build.

Good for school project.

Not a medical device but useful for hobby use.

Using Arduino make code easy to change.

We can add Bluetooth or SD card later.

It is simple and work fine for learning heartbeat sensing.

References:

Heart Rate Monitor Project

Exit mobile version