Kalp Animasyonlu Nabız Ölçer Projesi ❤️
Bu projede nabız sensörü kullanılarak kalp atışları algılanır,
dakikadaki kalp atış sayısı (BPM) hesaplanır ve
I2C bağlantılı 16x2 LCD ekran üzerinde canlı kalp atışı animasyonu ile birlikte gösterilir.
Bu proje; sağlık temalı Arduino projeleri, STEM çalışmaları ve
sergi / sunum amaçlı uygulamalar için oldukça uygundur.
Proje Amacı
- Nabız sensörü ile kalp atışlarını algılamak
- Atışlar arasındaki süreyi ölçerek BPM hesaplamak
- Her kalp atışında LCD ekranda kalp animasyonu göstermek
- Sensör + LCD + zamanlama mantığını öğretmek
Gerekli Malzemeler
- Arduino Uno / Nano
- Nabız sensörü (Pulse Sensor)
- 16x2 I2C LCD ekran
- Jumper kablolar
- Breadboard
Devre Bağlantıları

Nabız Sensörü Bağlantısı
| Sensör Pin | Arduino |
|---|---|
| VCC | 5V |
| GND | GND |
| SIGNAL | A0 |
I2C LCD Bağlantıları
| LCD Pin | Arduino Uno |
|---|---|
| GND | GND |
| VCC | 5V |
| SDA | A4 |
| SCL | A5 |
📌 Arduino Mega: SDA → 20, SCL → 21
Proje Nasıl Çalışır?
- Nabız sensörü parmaktaki kan akışını algılar
- Arduino, her kalp atışını eşik değere göre tespit eder
- Atışlar arasındaki süre ölçülür
- Bu süre kullanılarak BPM (60000 / süre) hesaplanır
- Her atışta LCD’de kalp simgesi kısa süreli görünür
- Böylece canlı kalp atışı animasyonu oluşur
LCD Ekranda Gösterilen Bilgiler
Nabiz: 76 BPM
Arduino Kodu
I2C LCD Ekran kütüphane ekleme talimatı için tıklayınız
(I2C LCD + Kalp Animasyonu + BPM Ölçümü)
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
const int pulsePin = A0;
int threshold = 550;
unsigned long lastBeatTime = 0;
unsigned long beatInterval = 0;
int bpm = 0;
bool heartVisible = false;
void setup() {
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Nabiz Olcer");
delay(2000);
lcd.clear();
}
void loop() {
int signal = analogRead(pulsePin);
if (signal > threshold) {
unsigned long currentTime = millis();
beatInterval = currentTime - lastBeatTime;
lastBeatTime = currentTime;
if (beatInterval > 0) {
bpm = 60000 / beatInterval;
}
// Kalp animasyonu
lcd.setCursor(0, 1);
lcd.print("< 3 ");
delay(100);
lcd.setCursor(0, 1);
lcd.print(" ");
}
lcd.setCursor(0, 0);
lcd.print("Nabiz: ");
lcd.print(bpm);
lcd.print(" BPM ");
}
Kalp Animasyonu Nasıl Çalışır?
-
Kalp simgesi < 3 her nabız algılandığında yazdırılır
-
Kısa bir gecikmeden sonra silinir
-
Bu işlem LCD’de yanıp sönme efekti oluşturur
-
Bu sayede kullanıcı, ölçümün canlı olduğunu net şekilde görür.
Sensör Hassasiyet Ayarı
int threshold = 550;
📌 Ayarlama önerisi:
Sürekli tetikleniyorsa → değeri artır
Nabız algılanmıyorsa → değeri düşür
Her sensör ve kullanıcı için ideal değer farklıdır.
Kimler İçin Uygun?
-
Arduino öğrenenler
-
Sağlık ve biyomedikal projelere ilgi duyanlar
-
STEM ve okul projeleri
-
Sensör + LCD birlikte kullanmak isteyenler
Sonuç
Arduino I2C LCD kalp animasyonlu nabız sensörü projesi, hem görsel hem de teknik açıdan güçlü, öğretici ve geliştirilebilir bir Arduino uygulamasıdır.
Bu proje, daha ileri seviye sağlık izleme ve giyilebilir teknoloji çalışmalarının temelini oluşturur.