آموزش آردوینوپروژه های آردوینو

ساخت الکتروکادیوگراف ECG نوار قلب با آردوینو

در این پروژه ، ما در حال کار کردن با سنسور EC82 AD8232 هستیم و آن را به برد آردوینو متصل می کنیم تا تجزیه و تحلیل شکل موج حاصل را برای تشخیص مشکلات پزشکی انجام دهیم. در این پروژه ما نحوه کار ECG را به طور کامل درک میکنیم و نمودار را بررسی میکنیم. اگر آماده هستید که از آردوینو برای کاربرد های پزشکی استفاده کنید، این مطلب را از دست ندهید! توجه داشته باشید که ECG و EKG یکسان هستند بنابراین می توان از این اصطلاحات به جای یکدیگر استفاده کرد.

بنابراین بیایید با یک مرور مختصر از نحوه کار سنسور های ECG شروع کنیم.

سنسور ECG چگونه کار می کند؟

ECG یا Electro CardioGraphy روشی برای اندازه گیری برخی از پارامترهای مهم قلب انسان است. این سنسور مقادیر آنالوگ را تولید می کند که سیگنال خاصی تولید می کند و به شکل زیر نشان داده می شود.

سنسور ECG چگونه کار می کند

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.

همانطور که قابل مشاهده است ، سیگنال دارای چند قله و ویژگی های مهم است که از اهمیت بیولوژیکی برخوردار هستند. اینها در زیر مشخص شده اند.

تحلیل نمودار ECG قلب

هر بازه باید در یک محدوده خاص باشد و انحراف از آن ممکن است به یک بیماری خاص مرتبط باشد. قسمت های مهم نمودار ECG در زیر بررسی شده:

  • موج P – این موج عقبی در سمت چپ QRS است.
  • موج QRS – ضربه ای است که در اثر انقباض بطنی ایجاد می شود.
  • موج T – یک موج منتهی به سمت مجموعه QRS است.
  • موج U – به دلیل مقدار کم همیشه مشاهده نمی شود.

بسیاری از ویژگی های دیگر نیز وجود دارد ، اما این ها ویژگی های اصلی هستند. با توجه به اشکال ویژگی های فوق ، فاصله آنها و همچنین فاصله بین آنها ، می توان بسیاری از بیماری های قلبی و بی نظمی را تشخیص داد. مثلا:

  • ضربان قلب نامنظم یا عدم وجود موج P: فیبریلاسیون دهلیزی
  • ضربان قلب در حالت استراحت بیش از 100: تاکی آریتمی
  • تاکی آریتمی و موج دلتا: سندرم Wolf-Parkinson-White یا WPW
  • دندان اره ای بودن موج P: لرزش دهلیزی
  • کم بودن ST: ممکن است ایسکمی را نشان دهد.
  • افزایش ST: ممکن است سکته قلبی را نشان دهد.

از این رو ، نوار قلب برای یک متخصص قلب یا هر پزشک بسیار مهم است.

امروز ، ما سعی خواهیم کرد یک سیستم ساده ایجاد کنیم که بتواند مقادیر سیگنال ECG را اندازه گیری کند و حتی ضربان قلب فردی که از آن استفاده می کند اندازه گیری کند. در ابتدا ، ما به بخش سخت افزاری خواهیم پرداخت که دقیقاً چگونه سیگنال ECG از بدن انسان دریافت می شود؟

قرار دادن الکترودهای EC8232 (3 سنسور سربی)

سنسور EC82 AD8232 متداول ترین و در دسترس ترین حسگر ECG است که مقرون به صرفه است و می تواند برای اهداف سرگرمی مورد استفاده قرار گیرد. این ماژول 3 نوار قلب (تک کانال ECG) است. انواع دیگر حسگرهای ECG موجود هستند که مثلا 5 سرب و 10 سرب هستند.

برای یک سیستم 3 سرب ، دو مکان وجود دارد که استفاده می شود:

نام الکترود رنگ الکترود مکان
RA قرمز بازوی راست
LA زرد بازوی چپ
RL سبز پای راست

 

 

 

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

قرار گیری الکترود ECG در بدن

در تصویر بالا حالت سمت چپ به طور کلی برای زنان استفاده می شود و دلیل نامیده شدن سه الکترود RA ، LA و RL است. با این حال ، این روش قرار دادن الکترود ، نویز بیشتری تولید می کند و از این رو ، ترجیح داده می شود که الکترودها همانطور که در موقعیت سمت راست نشان داده شده است روی بدن بیماران قرار بگیرد.

اتصال سنسور نوار قلب AD8232 به آردوینو

به طور کلی از نمودار زیر میتوانید برای اتصالات استفاده کنید.

اتصال سنسور نوار قلب AD8232 به آردوینوپین Shutdown برای خاموش کردن سنسور AD8232 استفاده می شود که در در این حالت سنسور فقط 200nA جریان مصرف می کند. به طور کلی ، از این حالت استفاده نمی شود زیرا داده های حسگر ECG به طور مداوم گرفته می شوند ، اما ما می توانیم به گونه ای کد بزنیم که هنگام حذف الکترودها یا فشار دادن دکمه ، ماژول وارد حالت آماده به کار شود. از دو مدار زیر برای اتصال بدون دکمه خاموش و با دکمه خاموش میتوانید استفاده کنید.

مدار ساخت نوار قلب با آردوینو

اکثر کد هایی که برای راه اندازی سنسور AD8232 با آردوینو وجود دارد به شکل زیر است:

void setup() {
Serial.begin(9600);
pinMode(8, INPUT); // Setup for leads off detection LO +
pinMode(9, INPUT); // Setup for leads off detection LO -
}
void loop() {
if((digitalRead(8) == 1) || (digitalRead(9) == 1)){ //بررسی وجود الکترود ها
Serial.println("leads off!");
}
else{
Serial.println(analogRead(A0));
}
delay(1);
}

با این حال ، این کد فقط می تواند یک خروجی ECG مشابه این را به شما نشان دهد:

این کد نوار قلب را تجزیه و تحلیل نمی کند، وجود امواج P یا T را بررسی نمی کند و ضربان قلب شما را اندازه گیری نمی کند. از این رو ، ما سعی خواهیم کرد ضربان قلب و تنوع ضربان قلب (HRV) را با استفاده از سنسور EC82 AD8232 اندازه گیری کنیم. همانطور که قبلاً بحث شد ، HR یعنی تعداد قله های R در 1 دقیقه. با این حال ، این بدان معنی است که 1 دقیقه کامل طول می کشد تا یک مقدار HR اندازه گیری شود. از این رو ، بسیاری از افراد تمایل به اندازه گیری فاصله زمانی بین دو قله R متوالی و تخمین HR با استفاده از فرمول زیر دارند:

این کار ممکن است بسیار سریع اندازه گیری را انجام دهد، اما از نظر پزشکی این مسئله ناخوشایند است. زیرا این معادله فرض می کند که فاصله R-R در کل 1 دقیقه یکسان است. اما برای یک انسان سالم به طور متوسط ​​، زمان لازم برای 1 ضربان قلب کل حدود 800-850 میلی ثانیه است (65-75 ضربان در دقیقه). این ممکن است بسته به اینکه شخص در حال استراحت یا کار است تغییر کند. فواصل ضربان قلب برای فرد سالم بسیار متفاوت نیست. اما برای شخصی که از فیبریلاسیون دهلیزی یا آریتمی رنج می برد ، این فاصله در طول نوار قلب به طور قابل توجهی متفاوت است.

محاسبه تنوع ضربان قلب (HRV) با استفاده از سنسور ECG AD8232:

تنوع ضربان قلب یا HRV به شرح زیر محاسبه می شود:

HRV = HR/60 - RR فاصله

بنابراین ، برای محاسبه HRV ، ابتدا به HR نیاز داریم. اما 1 دقیقه خیلی طولانی است. از این رو ، برای محاسبه هر دو پارامتر از محدوده 10 ثانیه ای استفاده می کنیم.

HR = (حداکثر RR در 10 ثانیه است) * 6
HRV = HR / 60  (فاصله RR)

طراحی نمودار الکتروکاردیوگرافی با آردوینو

ما با آستانه گذاری می توانیم به راحتی قله R را تشخیص دهیم. سپس می توانیم از وقفه ها یا micros() برای اندازه گیری فاصله بین دو ضربان استفاده کنیم.

کار سنسور نوار قلب AD8232 با آردوینو

الکترودها را همانطور که در بالا گفته شد روی بدن قرار دهید. ماژول سنسور ECG را به برد Arduino وصل کنید و کدی را که در پایین این صفحه آورده شده بارگذاری کنید. حالا میتوانید خروجی را در پلاتر سریال مشاهده کنید.

کار سنسور نوار قلب AD8232 با آردوینو

سیگنال سبز نشانگر نوار قلب کمی اصلاح شده است. Hrv در پلاتر زیاد دیده نمی شود زیرا برای یک انسان عادی در حدود 1 تا 1 میلی ثانیه خواهد بود ، در حالی که مقدار ECG و hr حدود 70 خواهد بود. از این رو ، hrv به عنوان یک خط قرمز در پلاتر سریال دیده می شود. مقادیر در سریال مانیتور به شکل زیر نمایش داده میشود.

hr, hrv, ECG_value

اطلاعات نوار قلب در سریال مانیتور

آستانه پیش فرض 100 است ، اما لطفاً آن را مطابق سنسور خود تنظیم کنید. این کد بسیار ساده است و فقط تایمرهای ساده ای را برای اندازه گیری مقادیر ECG و بازه های RR برای محاسبه متغیرهای hr و HRV با توجه به فرمولی که قبلاً توضیح داده شد ، پیاده سازی می کند.

موارد موجود در فایل : سورس کامل

دانلود فایل های پروژه

برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید.

برای دریافت مطالب جدید کانال تلگرام یا پیج اینستاگرام آیرنکس را دنبال کنید.

تصویر از محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

2 نظر

  1. سلام
    با تشکر ازتون
    سوالی که داشتم اینکه ایا این مدار اریتمی رو هم تشخیص میده؟

    1. سلام عزیز، فیلم عملکرد مدار رو مشاهده کنید. این مدار الکتروکاردیوگراف رو نمایش میده.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *