ماژول پالس اکسیمتر MAX30102 سنجش ضربان قلب
ماژول MAX30102 یک سنسور ترکیبی از اکسیمتر ضربان قلب و سنسور ضربان قلب است که توسط شرکت Maxim Integrated توسعه داده شده است. این سنسور در دستگاههای قابل پوشیدن و برنامههای پزشکی برای اندازهگیری ضربان قلب و سطح اشباع اکسیژن خون (SpO2) استفاده میشود. سنسور MAX30102 دو عملکرد اساسی را در یک ماژول ترکیب میکند. از یک LED قرمز و یک LED فروسرخ همراه با یک فتودتکتور استفاده میکند تا هم ضربان قلب و هم سطح اکسیژن خون را اندازهگیری کند. این سنسور از روشهای نوری برای تشخیص ناخالصی ناشی از جریان خون در شرایین استفاده میکند. با تاباندن نور LED بر روی پوست و اندازهگیری جذب و بازتاب نور، میتواند ضربان قلب را محاسبه کند.MAX30102 همچنین سطح اشباع اکسیژن خون را اندازهگیری میکند که نشاندهنده میزان اکسیژن حمل شده توسط سلولهای خون قرمز است. این کار را با تجزیه و تحلیل نسبت جذب نور قرمز و فروسرخ انجام میدهد. سنسور بهگونهای طراحی شده است که با مصرف کم انرژی عمل کند، که آن را برای دستگاههای با باتری مانند ردیابهای تناسب اندام قابل استفاده میکند. ماژول شامل یک فرانت آنالوگ یکپارچه است که نیازهای رابط را سادهتر میکند و خروجیهای دیجیتال را فراهم میکند.MAX30102 امکان تنظیمات مختلف برنامهریزی را فراهم میکند، مانند کنترل روشنایی LED، تنظیم نرخ نمونهبرداری و لغو نور محیطی، به منظور بهینهسازی عملکرد برای برنامههای مختلف. برای ارتباط با میکروکنترلرها یا سایر دستگاهها، از رابط I2C استفاده میشود که این امکان را میدهد به راحتی در سیستمهای مختلف یکپارچه شود.
مشخصات فنی ماژول پالس اکسیمتر MAX30102 سنجش ضربان قلب
- ولتاژ کاری : 1.8 ولت تا 2.0 ولت (آنالوگ)، 1.7 ولت تا 3.3 ولت (دیجیتال)
- دمای عملیاتی: -40 درجه سانتیگراد تا +85 درجه سانتیگراد
- رابط ارتباطی: I2C (تا 400 کیلوهرتز)
- طول موج LED:
- قرمز: 600 نانومتر تا 700 نانومتر
- فروسرخ: 800 نانومتر تا 1000 نانومتر
- جریان LED: قابل برنامهریزی از 0 میلیآمپر تا 50 میلیآمپر
- رزولوشن ADC: 16 بیت
- نرخ نمونهبرداری: قابل برنامهریزی از 50 نمونه بر ثانیه تا 3.3 کیلونمونه بر ثانیه
- محدوده اندازهگیری SpO2: 0% تا 100%
- محدوده اندازهگیری ضربان قلب: 30 ضربه در دقیقه تا 200 ضربه در دقیقه
- مصرف برق:
- عملکرد فعال: 0.7 میلیآمپر (معمولی)
- حالت خاموشی: کمتر از 1 میکروآمپر (معمولی)
بررسی پایه های ماژول پالس اکسیمتر MAX30102
- VIN پین تامین برق است. میتوانید آن را به خروجی 3.3 ولت یا 5 ولت از آردوینو خود وصل کنید.
- SCL پین ساعت I2C است، به خط ساعت I2C آردوینوتان وصل کنید.
- SDA پین داده I2C است، به خط داده I2C آردوینوتان وصل کنید.
- INT میتواند برای هر ضربان به صورت برنامهریزی شده یک اعلان ایجاد کند. این خط از نوع open-drain است، بنابراین توسط مقاومت بر روی برد به حالت HIGH کشیده میشود. هنگامی که یک اعلان رخ داده، پین INT LOW میشود و تا پاک شدن اعلان LOW باقی میماند.
- IRD دارای یک درایور LED است که برای ارسال پالسهای LED برای اندازهگیری SpO2 و HR استفاده میشود. اگر میخواهید LED IR را خودتان ارسال کنید، از این پین استفاده کنید، در غیر این صورت آن را اتصال نکنید.
- پین RD مشابه پین IRD است، اما برای ارسال LED قرمز استفاده میشود. اگر نمیخواهید LED قرمز را خودتان ارسال کنید، آن را اتصال نکنید.
- GND زمین است.
به همراه ماژول پالس اکسیمتر MAX30102 چه اقلامی باید خریداری شود؟
- میکروکنترلر مانند arduino , esp8266, esp32
- کابل فلت
- برد بورد
راه اندازی ماژول پالس اکسیمتر MAX30102 با آردوینو
این کد ابتدا کتابخانههای مورد نیاز را وارد میکند و سپس در تابع setup()، ماژول را مقداردهی اولیه میکند و شدت روشنایی LED های قرمز و مادون قرمز را تنظیم میکند.در تابع loop()، ابتدا مقادیر سنسور مادون قرمز و قرمز را خوانده و سپس ضربان قلب و SpO2 را محاسبه میکند. سپس مقادیر را در مانیتور سریال چاپ میکند. این عملیات را هر ثانیه تکرار میکند.
#include <Wire.h>
#include <MAX30105.h>
MAX30105 particleSensor;
void setup()
{
Serial.begin(9600);
// ماژول MAX30102 را مقداردهی اولیه کنید
particleSensor.begin(Wire, I2C_SPEED_FAST);
// تنظیم شدت روشنایی LED (از 0 تا 255)
particleSensor.setPulseAmplitudeRed(0x0A); // LED قرمز
particleSensor.setPulseAmplitudeIR(0x0A); // LED مادون قرمز
}
void loop()
{
// مقادیر سنسور را بخوانید
uint32_t irValue = particleSensor.getIR();
uint32_t redValue = particleSensor.getRed();
// ضربان قلب و SpO2 را محاسبه کنید
int heartRate = particleSensor.getHeartRate();
int SpO2 = particleSensor.getSpO2();
// مقادیر را در مانیتور سریال چاپ کنید
Serial.print("مقدار مادون قرمز: ");
Serial.print(irValue);
Serial.print(", مقدار قرمز: ");
Serial.print(redValue);
Serial.print(", ضربان قلب: ");
Serial.print(heartRate);
Serial.print(" ضربه در دقیقه, SpO2: ");
Serial.print(SpO2);
Serial.println("%");
delay(1000); // تأخیر 1 ثانیه
}
راه اندازی ماژول پالس اکسیمتر MAX30102 با میکروپایتون
این کد را میتوانید برای برد ESP و RP2040 تست کنید. این کد ارتباط I2C و سنسور MAX30102 را مقداردهی اولیه میکند. سپس وارد حلقهای میشود که مقادیر سنسور را خوانده، ضربان قلب و SpO2 را محاسبه کرده و مقادیر را در کنسول چاپ میکند. حلقه هر ثانیه یک بار تکرار میشود. شماره پینها (scl=Pin(5)، sda=Pin(4)) باید براساس پینهای واقعی GPIO که در دستگاه میکروپایتون خود استفاده میکنید، تنظیم شوند.
from machine import Pin, I2C
import max30102
# ارتباط I2C را مقداردهی اولیه کنید
i2c = I2C(scl=Pin(5), sda=Pin(4), freq=400000)
sensor = max30102.MAX30102(i2c)
# حلقه اصلی
while True:
# مقادیر سنسور را بخوانید
ir_value, red_value = sensor.read_sensor()
# ضربان قلب و SpO2 را محاسبه کنید
heart_rate = sensor.calculate_heart_rate()
spo2 = sensor.calculate_spo2()
# مقادیر را چاپ کنید
print("مقدار مادون قرمز:", ir_value)
print("مقدار قرمز:", red_value)
print("ضربان قلب:", heart_rate, "ضربه در دقیقه")
print("SpO2:", spo2, "%")
utime.sleep_ms(1000) # تأخیر 1 ثانیه
مشخصات
- کاربری
- مناسب برای استفاده شخصی
- نوع ماژول
- بیومتریک - Biometric
- سطح تجربه مورد نیاز
- نیمه حرفه ای
- ابعاد
- 12.7 * 12.7 میلی متر
- سنسور
- Max30102
- پروتکل ارتباطی
- I2C
- پردازنده
- MAX30102
- سایر توضیحات
- مناسب آردوینو
- سایر قابلیتها
- تشخیص heart-rate/SpO2
- نوع سنسور
- ضربان قلب
امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایههای GPIO قابل اتصال به میکروکنترلرها هستند.
برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:
یک برد میکروکنترلر ESP32
یک سنسور دما مثل DHT DS18B20
یک المان سرد کننده
با استفاده از کتابخانه DHT.h، میتوانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، میتوانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.
در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال دادهها به پلتفرم IoT باید استفاده کنید.