Arduino ile MAX30102 Kalp Nabız Sensörü Kullanımı
MAX30102 kalp nabız sensörü, daha önce yayınladığımız KY-039 kalp nabız sensörüne ve MAX30100 sensörüne göre oldukça yüksek hassasiyete ve doğru ölçüm yeteneklerine sahiptir.
MAX30100 yazımızı okudunuz ve hala bu çipin çalışmasını sağlamakta sorun mu yaşıyorsunuz? Belki de başka bir Arduino kalp atış hızı sensörü kullanmanın zamanı gelmiştir. MAX30102 modülü daha iyi bir donanım tasarımına ve yazılım desteğine sahiptir.
MAX30102 Kalp Atış Hızını Nasıl Algılar?
Kalp kan pompaladığında, daha fazla kan olması sonucu oksijenli kanda bir artış olur. Kalp rahatladıkça oksijenli kan hacmi de azalır. Sonuçta cihaz, oksijenden zengin kanın artması ve azalması arasındaki süreyi bilerek nabız hızını hesaplar.
Oksijenli kan daha fazla kızılötesi ışığı emer ve daha fazla kırmızı ışık geçirirken, oksijensiz kan kırmızı ışığı emer ve daha fazla kızılötesi ışık geçirir. MAX30100’ün ana işlevi budur: her iki ışık kaynağı için de ışığı emme seviyelerini okur ve bunları I2C aracılığıyla okunabilen bir arabellekte saklar.
MAX30100 ve MAX30102
Açık olmak gerekirse, MAX30100 entegre devresi çalışıyor, sorun RCWL-0530 modülünün monte edildiği yerin tasarımı. Hata, 1.8 V’a bağlı olan I2C çekme(pull-up) dirençlerinde yatmaktadır. Bu, Arduino’nun algılaması için çok düşük bir voltajdır.
Aşağıda RCWL-0530’un şeması bulunmaktadır. I2C pull-up dirençleri R1 ve R2’dir ve bunları 1.8 V hattına kadar takip edebilirsiniz.

MAX30102’ye sahip olan RCWL-0531, pull-up’lar için doğru voltajı seçmek için bir ped ekleyerek bu hatayı düzeltir:

Voltaj varsayılan olarak 3,3 V’tur ve Arduino için mantık seviyeleriyle uyumludur. Bu, RCWL-0531 modülünde herhangi bir şeyi değiştirmeye gerek olmadığı anlamına gelir!
Modüldeki iyileştirmelerin yanı sıra, MAX30102’nin MAX30100’ü geride bıraktığı başka şeyler de var:
- 32 bit ve 16 bit FIFO – MAX30102, mikrodenetleyiciye aktarılacak veriler için daha yüksek depolamaya sahiptir ve bu da daha hızlı veri aktarımı sağlar.
- 18 bit ve 16 bit ADC çözünürlüğü – MAX30102, IR alıcı voltajındaki değişikliklere karşı daha hassastır.
- 69 us-114 us vs 200 us-1.6 ms LED darbe genişliği – MAX30102 daha dar bir LED darbe genişliğine sahiptir, bu da daha düşük güç tüketimi sağlar.
Bunlar, MAX30102’ye karşı MAX30100’deki hafif fiyat artışını haklı çıkarıyor.
RCWL-0531 MAX30102 modülü yeşil renkli bir pano içinde gelir (RCWL-0530 MAX30100’e çok benzer):

Bir diğer model ise, voltaj seviyesi kaydırıcıları içeren siyah renkli bir karttır:

Hem siyah hem de yeşil olanlarla test yaptık, ancak ikincisini tercih ediyoruz çünkü mantık voltajlarını dönüştürme konusunda endişelenmeden doğrudan Arduino’ya güvenle bağlayabiliyoruz.
MAX30102’yi Arduino ile Kullanma
MAX30102, I2C aracılığıyla iletişim kurar, bu nedenle siyah modeli bir Arduino ile kullanmak için diğer herhangi bir I2C cihazı gibi bağlamanız yeterlidir. Bununla birlikte, yeşil model 3.3 mantık seviyesi kullanır ve bu nedenle Arduino ile güvenli bir şekilde kullanmak için mantık seviyesi kaydırıcılarına ihtiyacınız olacaktır.

Ardından, Sparkfun’un MAX30102 kütüphanesini indirmeniz gerekiyor. Bu kitaplık yalnızca MAX30102 (ve gelişmiş MAX30105) için çalışır ve MAX30100 kitaplıklarından çok daha iyi olduğunu söyleyebiliriz. Kütüphaneyi buradan kopyalayabilir veya Arduino IDE’nin kütüphane yöneticisini kullanabilirsiniz (Taslak > Kütüphaneyi Dahil Et > Kütüphaneleri Yönet).

Projeniz için bu örneklerden herhangi biriyle başlayabilirsiniz:

Seri monitördeki verileri basitçe görüntüleyen kodun çıktısı:

Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.