معرفی محصول
ماژول MAX30102 یک سیستم حسگر یکپارچه و پیشرفته است که برای اندازهگیری ضربان قلب (BPM) و سطح اکسیژن خون (SpO2) طراحی شده است. این سنسور با استفاده از روش فوتوپلتیسموگرافی (Photoplethysmogram) و تابش نور قرمز و مادون قرمز (IR) به بافت پوست، میزان جذب نور توسط خون در حال گردش را اندازهگیری کرده و دادههای دقیقی از وضعیت سلامت ارائه میدهد.
نسخه جدید این ماژول با بهینهسازیهای سختافزاری، مشکل رگولاتورهای ولتاژ و مقاومتهای پولآپ در مدلهای قدیمی را برطرف کرده و به صورت Plug-and-Play آماده استفاده است. همچنین چیدمان قطعات در یک سمت برد باعث میشود سنسور با فشار یکنواخت روی نوک انگشت قرار گرفته و دادههای ثابت و دقیقی تولید کند. این ماژول به دلیل مصرف انرژی بسیار پایین، گزینهای ایدهآل برای گجتهای پوشیدنی، تجهیزات تناسب اندام و سیستمهای پایش سلامت مبتنی بر باتری محسوب میشود.
ویژگیها
عملکرد دوگانه: پایش همزمان ضربان قلب و میزان اشباع اکسیژن خون (SpO2).
دقت بالا: دارای سیستم داخلی حذف نور محیط (ALC)، مبدل آنالوگ به دیجیتال ۱۶ بیتی (Sigma-Delta ADC) و فیلترهای نویزگیر پیشرفته.
طراحی بهینه: چیدمان قطعات در یک سمت برد جهت تماس دقیقتر با پوست و اندازهگیری پایدارتر.
مصرف انرژی کم: جریان مصرفی بسیار پایین در حین کار و قابلیت قرارگیری در حالت Standby از طریق نرمافزار برای صرفهجویی در مصرف باتری.
رابط ارتباطی: پشتیبانی از پروتکل دیجیتال I2C برای ارتباط آسان با انواع میکروکنترلرها.
مجهز به FIFO: دارای حافظه داخلی ۱۶ مرحلهای جهت ذخیره دادههای دیجیتال خروجی.
محدوده دمای کاری: قابل استفاده در بازه دمایی گسترده -۴۰ تا +۸۵ درجه سانتیگراد.
کاربردها
گجتهای پوشیدنی (Wearable Devices) و ساعتهای هوشمند.
تجهیزات پایش سلامت و تناسب اندام.
سیستمهای اندازهگیری سطح اکسیژن خون (Oximeter).
پروژههای بیومتریک و پزشکی آموزشی.
نحوه راهاندازی و استفاده
نکات مهم پیش از اتصال
تغذیه: این ماژول با ولتاژ ۳.۳ ولت سازگاری مستقیم دارد (مانند ESP32 و ESP8266). برای استفاده با بردهای ۵ ولتی (مانند Arduino UNO, Nano, Mega)، به دلیل حساسیت پروتکل I2C، حتماً از یک مبدل سطح منطقی (Level Shifter) استفاده کنید تا از آسیب به سنسور جلوگیری شود.
کتابخانه: پیشنهاد میشود برای راهاندازی از کتابخانه SparkFun MAX3010x استفاده کنید که از طریق Library Manager در محیط Arduino IDE قابل نصب است.
مراحل برنامهنویسی و راهاندازی
۱. فراخوانی کتابخانهها: ابتدا کتابخانههای Wire.h و MAX30105.h را در ابتدای کد خود فراخوانی کنید.
۲. مقداردهی اولیه: سنسور را از طریق دستور particleSensor.begin با سرعت باس I2C (معمولاً I2C_SPEED_FAST) مقداردهی اولیه کنید.
۳. دریافت داده: مقدار IR (شدت نور بازتابی) را از سنسور دریافت کرده و با استفاده از تابع checkForBeat ضربان قلب را تشخیص دهید.
۴. محاسبه BPM: پس از تشخیص هر تپش، اختلاف زمانی بین تپشهای متوالی را محاسبه کرده و نرخ ضربان قلب در دقیقه (BPM) را به دست آورید.
۵. تشخیص حضور انگشت: با بررسی مقدار IR (بهعنوان مثال اگر مقدار کمتر از ۵۰۰۰۰ باشد)، میتوان حضور انگشت روی سنسور را تشخیص داد.
هشدار پزشکی: این ماژول یک ابزار اپتیکال برای پروژههای آموزشی و پایش شخصی است. دادههای ارائهشده توسط این ماژول ممکن است دارای خطا باشند؛ لذا به هیچ عنوان از آن برای تشخیصهای پزشکی قطعی استفاده نکنید.

