مشاهده همه محصولات
محصولی پیدا نشد
دوست داشتن

ماژول اکسیمتر Max30100 تشخیص اکسیژن خون با رابط I2C

مرجع:
DKP - 41712
DKP - 41712
دسته بندی: بیومتریک
موجود شد خبرم کن
توضیحات

ماژول اکسیمتر Max30100 تشخیص اکسیژن خون با رابط I2C

ماژول‌های سنجش ضربان قلب MAX30100 و MAX30102 هر دو توسط شرکت Maxim Integrated توسعه داده شده‌اند. این ماژول‌ها برای تشخیص ضربان قلب و غلظت اکسیژن خون (SpO2) بدون نیاز به تجاویز، طراحی شده‌اند. آن‌ها از تکنیکی به نام فتوپلتیسموگرافی (PPG) استفاده می‌کنند تا این پارامترها را اندازه‌گیری کنند. ماژول سنسور ضربان قلب MAX30100 دارای LEDهای قرمز و مادون قرمز یکپارچه و یک فتودتکتور است.

با استفاده از اصل PPG، این ماژول می‌تواند ضربان قلب را اندازه‌گیری و غلظت اکسیژن خون (SpO2) را تخمین بزند. این ماژول در دستگاه‌های قابل استفاده بر روی بدن مانند ترکرهای تناسب اندام برای نظارت بر ضربان قلب و تخمین میزان SpO2 کاربر استفاده می‌شود.

برای استفاده از این ماژول‌های سنسور، آن‌ها را به میکروکنترلر یا برد توسعه (مانند آردوینو، رزبری‌پای و غیره) متصل می‌کنید. سپس می‌توانید با ماژول سنسور ارتباط برقرار کرده و درخواست داده‌های ضربان قلب و SpO2 کنید. DSP ماژول، پردازش سیگنال را انجام می‌دهد و پارامترهای محاسبه شده می‌توانند از طریق رابط ارتباطی از ثبت‌های ماژول خوانده شوند.

 

مشخصات فنی ماژول اکسیمتر Max30100 تشخیص اکسیژن خون با رابط I2C

  • طول موج LED: 660 نانومتر / 880 نانومتر
  • ولتاژ  LED: 3.3 تا 5 ولت
  • نوع سیگنال تشخیص: سیگنال بازتاب نور (PPG)
  • رابط سیگنال خروجی: رابط I2C
  • ولتاژ رابط ارتباطی: 3.3 تا 5 ولت (اختیاری)

 اندازه‌گیری ضربان و اشباع اکسیژن خون با استفاده از بافت بدن انسان برای ایجاد میزان نفوذ نور متفاوت هنگامی که رگ خون می‌کوبد؛ منبع نور: یک لامپ الکترونیکی با طول موج خاص که برای هموگلوبین اکسیژنی (HbO2) و هموگلوبین (Hb) در خون شریانی انتخاب می‌شود؛ تبدیل به سیگنال الکتریکی: حجم ضربان عروقی به نور نفوذی نور تبدیل می‌شود. در این زمان، نور توسط بافت بدن انسان به کمک تبدیل فوتوالکتریکی بازتاب می‌شود، به سیگنال الکتریکی تبدیل شده و تقویت و خروجی می‌شود.

 

بررسی پایه های ماژول اکسیمتر Max30100 تشخیص اکسیژن خون با رابط I2C

  • VIN: ورودی تامین اصلی برق 1.8 ولت تا 5 ولت؛ پین 3 بیتی: انتخاب سطح پول آپ (pull-up) اتصال به اتصال باس، بسته به ولتاژ پین مستر، 1.8 ولت یا 3.3 ولت انتخاب می‌شود (این ترمینال شامل 3.3 ولت و بالاتر است)
  • SCL: اتصال ساعت (clock) باس I2C
  • SDA: اتصال داده‌ها به باس I2C
  • INT: پین اختصاصی قطعی (Interrupt) چیپ MAX30102
  • RD: قرمز (RED) چیپ MAX30102، ترمینال زمین LED
  • IRD: زمین IR (مادون قرمز)، اتصال LED چیپ MAX30102 
  • GND: سیم زمین (سر کشیدن سیم به زمین)

 

به همراه ماژول اکسیمتر Max30100 تشخیص اکسیژن خون با رابط I2C چه اقلامی باید خریداری شود؟

  • آردوینو
  • کابل فلت و برد بورد
  • نمایشگر LCD
  • تغذیه

 

راه اندازی ماژول اکسیمتر Max30100 با آردوینو

کد آردوینو جهت راه اندازی ماژول سنسور ضربان قلب و غلظت اکسیژن خون Max30100 یا Max30102 و اندازه‌گیری ضربان قلب و غلظت اکسیژن خون طراحی شده است. در این کد از کتابخانه MAX30105 استفاده می‌شود که با ماژول‌های سنسور Max30100 و Max30102 سازگار است.

تابع setup سنسور را مقداردهی اولیه می‌کند و شدت نور LED، نرخ نمونه‌برداری و تنظیمات دیگر را تنظیم می‌کند. تابع loop ضربان قلب و غلظت اکسیژن خون را می‌خواند و سپس مقادیر را به مانیتور سریال چاپ می‌کند.

#include <Wire.h>
#include "MAX30105.h"

MAX30105 particleSensor;

void setup() {
  Serial.begin(9600);
  
  // مقداردهی اولیه سنسور MAX30105
  if (!particleSensor.begin(Wire, I2C_SPEED_FAST)) {
    Serial.println("سنسور MAX30105 یافت نشد. لطفاً اتصالات/تغذیه را بررسی کنید.");
    while (1);
  }
  
  // تنظیمات سنسور
  particleSensor.setup();
  particleSensor.setPulseAmplitudeRed(0x0A); // تنظیم شدت نور LED (از 0x00 تا 0xFF)
  particleSensor.setPulseAmplitudeGreen(0);  // 0=خاموش, 255=50mA, 0x19=25mA
  particleSensor.setSampleRate(MAX30105_SR_100HZ); // نرخ نمونه‌برداری با 100 هرتز
  
  // متغیرهای اولیه
  float hr, spo2;
}

void loop() {
  // خواندن ضربان قلب و غلظت اکسیژن خون
  // توجه: خواندن این مقادیر ممکن است کمی طول بکشد، حدود 1 ثانیه.
  // بهتر است برای کاربردهای پیشرفته از نقطه وقفه و تایمرها استفاده کنید.
  hr = particleSensor.getHeartRate();
  spo2 = particleSensor.getSpO2();
  
  // چاپ نتایج
  Serial.print("ضربان قلب (BPM): ");
  Serial.println(hr);
  Serial.print("غلظت اکسیژن خون (%SpO2): ");
  Serial.println(spo2);
  
  // کمی صبر کنید و سپس خواندن مقادیر بعدی را انجام دهید
  delay(2000);
}

  

راه اندازی ماژول اکسیمتر Max30100 با میکروپایتون

در ادامه یک کد میکروپایتون برای راه اندازی ماژول max30100 نوشته شده است. ابتدا ماژول I2C را برای ارتباط با ماژول Max30100/Max30102 مقداردهی اولیه می‌کند. سپس تنظیمات اولیه‌ای نظیر ریست کردن ماژول، تنظیم شدت نور LED‌ها، تنظیم حالت و نرخ نمونه‌برداری (SPo2 و ضربان قلب) و تنظیم میانگین‌گیری نمونه‌ها (SPo2) انجام می‌دهد.

برای خواندن داده‌ها، تابع read_sensor_data() تعریف شده است. این تابع با ارسال درخواست به ماژول از طریق I2C، داده‌های دو LED قرمز و فروسرخ را دریافت کرده و به عنوان داده‌های ورودی تابع برمی‌گرداند. این داده‌ها با استفاده از کد data[0] << 16 | data[1] << 8 | data[2] و data[3] << 16 | data[4] << 8 | data[5] از 3 بایت مختلف بدست آمده و ترکیب می‌شوند.

# برنامه میکروپایتون برای ماژول سنسور ضربان قلب و غلظت اکسیژن خون Max30100/Max30102

from machine import Pin, I2C
import time

# آدرس I2C ماژول Max30100/Max30102
MAX3010X_ADDRESS = 0x57

# آدرس‌های رجیسترها
REG_INTR_STATUS_1 = 0x00
REG_INTR_STATUS_2 = 0x01
REG_INTR_ENABLE_1 = 0x02
REG_INTR_ENABLE_2 = 0x03
REG_FIFO_WR_PTR = 0x04
REG_OVF_COUNTER = 0x05
REG_FIFO_RD_PTR = 0x06
REG_FIFO_DATA = 0x07
REG_FIFO_CONFIG = 0x08
REG_MODE_CONFIG = 0x09
REG_SPO2_CONFIG = 0x0A
REG_LED1_PA = 0x0C
REG_LED2_PA = 0x0D
REG_PILOT_PA = 0x10
REG_MULTI_LED_CTRL1 = 0x11
REG_MULTI_LED_CTRL2 = 0x12
REG_TEMP_INT = 0x1F
REG_TEMP_FRAC = 0x20
REG_TEMP_CONFIG = 0x21
REG_PROX_INT_THRESH = 0x30
REG_REV_ID = 0xFE
REG_PART_ID = 0xFF

# مقادیر شدت نور LED (این‌ها را برای کاربرد خود تنظیم کنید)
LED_PA_0 = 0x1F  # 7.6 میلی‌آمپر
LED_PA_1 = 0x1F  # 7.6 میلی‌آمپر
LED_PA_2 = 0x1F  # 7.6 میلی‌آمپر
LED_PA_3 = 0x1F  # 7.6 میلی‌آمپر

# مقداردهی اولیه I2C
i2c = I2C(0, scl=Pin(22), sda=Pin(21))
i2c.scan()

# ریست کردن سنسور
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_MODE_CONFIG, 0x40]))

# تنظیم شدت نور LED
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_LED1_PA, LED_PA_0]))
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_LED2_PA, LED_PA_0]))

# تنظیم حالت و نرخ نمونه‌برداری (SPo2 و ضربان قلب)
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_MODE_CONFIG, 0x03]))

# تنظیم میانگین‌گیری نمونه‌ها (SPo2)
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_SPO2_CONFIG, 0x27]))

# تنظیم عرض پالس و برد ADC (SPo2)
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_LED1_PA, 0x24]))
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_LED2_PA, 0x24]))

# فعال‌سازی قطعات
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_INTR_ENABLE_1, 0xc0]))  # فعال‌سازی اینتراپت آماده برداشت داده
i2c.writeto(MAX3010X_ADDRESS, bytearray([REG_INTR_ENABLE_2, 0x00]))

# خواندن داده‌های سنسور
def read_sensor_data():
    data = i2c.readfrom(MAX3010X_ADDRESS, 6)
    red_led = (data[0] << 16) | (data[1] << 8) | data[2]
    ir_led = (data[3] << 16) | (data[4] << 8) | data[5]
    return red_led, ir_led

# حلقه اصلی
while True:
    # بررسی آماده بودن داده
    interrupt_status = i2c.readfrom(MAX3010X_ADDRESS, 1)[0]
    if interrupt_status & 0x04:  # بررسی اینتراپت آماده برداشت داده
        red_data, ir_data = read_sensor_data()

        # انجام پردازش روی داده‌های red_data و ir_data برای محاسبه ضربان قلب و غلظت اکسیژن خون
        # کد پردازش شما اینجا قرار می‌گیرد

        print("داده قرمز:", red_data)
        print("داده فروسرخ:", ir_data)

    time.sleep(0.1)  # با توجه به نرخ نمونه‌برداری مورد نظر خود مدت‌زمان خواب را تنظیم کنید
ادامه مطلبShow less
جزئیات محصول
DKP - 41712

مشخصات

نوع ماژول
بیومتریک - Biometric
ابعاد
15x15mm
ولتاژ مورد نياز
1.8 تا 3.3 ولت DC
چاپ مس
مشکی
تعداد پایه ها
پایه
اقلام همراه محصول
پین هدر
پردازنده
Max30100
سایر توضیحات
تشخیص اکسیيژن خون
سایر قابلیت‌ها
گجت پوشیدنی Wearable
نوع مبدل
پروتکل I2C
نظرات(3)
رتبه‌بندی کلی
5
3 نظرات
کیفیت کالا
(5)
ارزش خرید
(5)
سوالات متداول
    آیان امکان راه اندازی چند سنسور DHT با ESP8266 با میکروپایتون وجود دارد؟

    امکان راه اندازی چند سنسور DHT با ESP8266 با استفاده از MicroPython وجود دارد. سنسورهای DHT با پروتکل دیجیتال و از طریق پایه‌های GPIO قابل اتصال به میکروکنترلرها هستند.


    چه جوری از میکروکنترلر ESP32 برای ساخت یک سیستم کنترل دما استفاده کنیم؟ برنامه نویسی پیچیده است؟

    برای ساخت یک سیستم کنترل دما با برد میکروکنترلر ESP32، به موارد زیر نیاز دارید:

    یک برد میکروکنترلر ESP32

    یک سنسور دما مثل DHT DS18B20

    یک المان سرد کننده

    با استفاده از کتابخانه DHT.h، می‌توانید از سنسور دما برای خواندن دمای محیط استفاده کنید. سپس، می‌توانید از این دما برای کنترل المان گرمایشی یا سرمایشی استفاده کنید.

    در خصوص برنامه نویسی از کتابخانه DHT و در صورت نیاز کتابخانه وای فای برای ارسال داده‌ها به پلتفرم IoT باید استفاده کنید. 


خریداران این محصول، این کالاها را نیز خریده اند:
محصولات مرتبط

ویژگی‌های فیزیکی

ابعاد
15x15mm
چاپ مس
مشکی
تعداد پایه ها
پایه

پردازنده

پردازنده
Max30100

تغذیه

ولتاژ مورد نياز
1.8 تا 3.3 ولت DC

سایر ویژگی‌ها

نوع ماژول
بیومتریک - Biometric
اقلام همراه محصول
پین هدر
سایر توضیحات
تشخیص اکسیيژن خون
سایر قابلیت‌ها
گجت پوشیدنی Wearable
نوع مبدل
پروتکل I2C
2,500,000 تومان
در این کیت 5 مدار آموزشی کنترل سطح مخزن آب ،آبیاری خودکار گل و باغچه ،دزدگیر منزل ،تهویه خودکار ،لامپ هوشمند بصورت کاردستی الکترونیک برای دانش آموزان و بدون نیاز به لحیم کاری و تجهیزات خاص به همراه DVD آموزش ویدئویی...
7,800,000 تومان
ماکت یک کیت مونتاژ شده مجموعه کامل و آماده جهت آموزش و یادگیری هوشمندسازی منازل و ساختمانهاست، با استفاده از اپلیکیشن بلوتوث موبایل سنسورهای ماکت را فعال میکنید و عملکرد هر ماژول بصورت آلارم هشدار بازر یا نمایش بر روی...

فهرست

تماس با دانشجو کیت

ساعت تماس همه روزه از 9 صبح تا 5 عصر (بجز روزهای تعطیل) البته فروشگاه ما به صورت آنلاین است و می‌توانید خریدتان را انجام دهید. اما اگر سوالی داشتید که به تماس تلفنی نیاز داشت، فقط در ساعت‌های اعلام شده در خدمتیم.

021-88857245

021-88856524

031-32211313

 

شماره روبیکا و ایتا، فقط پیام، پاسخ به سوالات قبل از خرید و دریافت تصاویر کالاها

09375076606

 

ارسال سریع تهران (تحویل همان روز)

تمامی شهرهای ایران با پست

بخش قوانین ارسال و قوانین خرید را مطالعه کنید.

جستجو

مشاهده همه محصولات
محصولی پیدا نشد

یک حساب کاربری رایگان برای ذخیره آیتم‌های محبوب ایجاد کنید.

ورود به سیستم