Arduino ile Kalp Atışı (Nabız) Sensörü (KY-039) Kullanımı

👤 Yazar: ozcan 📅 Tarih: 23.07.2026 17:24 👁️ Görüntüleme: 24

Arduino ile Kalp Atışı (Nabız) Sensörü (KY-039) Kullanımı

Bu rehberde, Arduino Uno kontrol kartı ve KY-039 Kalp Atışı (Heartbeat / Pulse) Sensör Modülü kullanarak parmaktan kan akışına bağlı anlık nabız değişimlerini analog olarak okuma uygulamasını inceleyeceğiz.

Arduino KY-039 Nabız Sensörü Devre Şeması

Gerekli Malzemeler:
  • 1 x Arduino Uno R3
  • 1 x KY-039 Kalp Atışı Sensör Modülü
  • Yeterli miktarda Jumper Kablo

Devre Bağlantı Detayları

Görseldeki devre şemasına göre bağlantılar şu şekilde yapılmaktadır:

  • Sensör S (Sinyal): Arduino A0 Analog Giriş Pini (Yeşil Kablo)
  • Sensör + (Orta Pin / VCC): Arduino 5V Pini (Kırmızı Kablo)
  • Sensör - (GND): Arduino GND Pini (Siyah Kablo)

Çalışma Prensibi

KY-039 modülü, optik bir fotodirenç (LDR/Fototransistör) ve infrared (kızılötesi) LED çifti barındırır. Çalışma mantığı şöyledir:

  • 1. Fotopletismografi (PPG): Parmak ucu LED ile fotodirenç arasına yerleştirildiğinde, kalbin her atışında damarlardaki kan hacmi ve dolayısıyla dokudan geçen ışık miktarı değişir.
  • 2. Analog Sinyal Üretimi: Kızılötesi ışığın dokudan geçişindeki mikro dalgalanmalar alıcı sensör tarafından voltaj değişimine dönüştürülür ve Arduino'nun A0 analog girişine aktarılır.
  • 3. Sinyal Filtreleme: Sensörden gelen ham veri oldukça hassas ve gürültülüdür. Yazılım tarafında uygulanan hareketli ortalama (filtering) algoritmaları sayesinde kalp atış tepeleri (peak) net şekilde ayrıştırılabilir.

Örnek Arduino Kodu

const int nabizPin = A0;      // KY-039 Sinyal Pini
const int ornekSayisi = 10;   // Gürültüyü azaltmak için ortalama filtre sayısı

double hamDeger = 0;
double ortalamaDeger = 0;

void setup() {
  Serial.begin(9600); // Seri haberleşmeyi başlat
}

void loop() {
  // Paraziti azaltmak için ardışık okumaların ortalamasını al
  hamDeger = 0;
  for (int i = 0; i < ornekSayisi; i++) {
    hamDeger += analogRead(nabizPin);
    delay(2);
  }
  ortalamaDeger = hamDeger / ornekSayisi;

  // Ham veriyi Seri Çizici (Serial Plotter) için yazdır
  Serial.println(ortalamaDeger);

  delay(20); // 50Hz örnekleme hızı
}

Geliştirme Önerileri ve İpuçları

KY-039 sensöründen doğru ve kararlı veriler alabilmek için dikkat edilmesi gereken önemli noktalar:

  • Seri Çizici (Serial Plotter) İle Görselleştirme: Kodu yükledikten sonra Arduino IDE üzerinden Tools > Serial Plotter ekranını açarak parmağınızı yerleştirdiğinizde oluşan ritmik kalp atışı dalga formunu (pulse wave) izleyebilirsiniz.
  • Doğru Parmak Baskısı ve Dış Işık Yalıtımı: Sensör ortamdaki oda ışığından çok çabuk etkilenir. Parmağınızı LED ve alıcı arasına koyarken çok bastırmamalı (kan akışını durdurmayacak şekilde) ve gerekirse üzerini koyu bir bez veya süngerle örterek dış ışığı engellemelisiniz.
  • BPM (Dakikadaki Nabız) Hesaplama: İki tepe noktası (peak) arasındaki milisaniye farkını (millis() ile) ölçerek gerçek zamanlı kalp atış hızını (BPM - Beats Per Minute) hesaplayabilir ve verileri bir OLED/TFT ekrana yazdırabilirsiniz.

💬 Yorumlar

Henüz yorum yapılmamış. İlk yorumu siz yapın!

Bir Yorum Bırakın

Güvenlik Kontrolü:

Yenidir.com
↑ Sayfa Başı
📞 İletişim ✉ E-Posta Gönder 🟥 YouTube
© 2026 Yenidir.com
Yenidir CMS V0.1