مقدمه
دستگاههای قابل حمل نقش اساسی در صنعت ساخت تجهیزات پزشکی ایفا میکنند. با کوچکتر شدن سنسورها، ساخت یک دستگاه قابل حمل نیز آسانتر و مقرون به صرفه میشود. در حال حاضر سیستمهای اندازهگیری تقریباً در همه جا در دسترس هستند. به عنوان مثال شرکتهای سازنده ساعتهای هوشمند و دستگاههای پرتابل از این ویژگی استفاده میکنند. در اینجا ساخت نمایشگر ضربان قلب قابل حمل ساده با Arduino را آموزش میدهیم. این دستگاه میتواند ضربان قلب افراد را روی صفحه نمایش OLED نشان دهد.
طرح کلی پروژه
در شکل زیر طرح کلی این پروژه و نحوه اتصالات آن نمایش داده شده است. در این مدار از آردوینو Arduino Nano (Board1)، سنسور ضربان قلب، نمایشگر OLED و باتری Li-ion 3.7v (قابل شارژ) استفاده کردهایم.
سنسور ضربان قلب
این سنسور، پالسهای ضربان قلب را به صورت آنالوگ به میکروکنترلر آردوینو ارسال می کند. این پالسهای به ورودی آنالوگ به دیجیتال 10 بیتی میکروکنترلر ارسال میشود. اطلاعات دریافتی به صورت یک عدد بین 0 تا 1023 ذخیره میشود. این مقادیر همزمان به صورت گرافیکی روی صفحه نمایشگر ارسال میشود و نمایشگر آن را نشان میدهد.
سنسور ضربان قلب
آردوینو نانو
از آنجا که هدف پروژه مقرون به صرفه و کارآمد است، آردوینو نانو یک کنترل کننده کامل برای چنین برنامهای است. این میکروکنترلر ورودی آنالوگ به دیجیتال دارد که برای این پروژه ضروری است. همچنین آردوینو نانو دارای I2C داخلی است که استفاده از نمایشگرهای با ورودی I2C را ممکن و قابل دسترس میکند.
صفحه نمایشگر
این صفحه نمایش کوچک 2.44 سانتی متر (0.96 اینچ) OLED با وضوح 128 در 64 پیکسل با ارتباط I2C است. صفحه نمایش OLED کنترل کامل بر پیکسلها و نمایش اطلاعات را دارد. برنامه آردوینو با این نمایشگر همخوانی دارد. بنابراین بهتر است ازین نوع نمایشگر برای نمایش ضربان قلب استفاده شود.
ارتباط I2C
برای درک اولیه پروتکل ارتباطی که بر روی پروتکل I2C کار میکند ، میتوان صفحه نمایش را پیکربندی کرد. این پروتکل میتواند در برنامه های متعدد مورد استفاده قرار گیرد. ابتدا کد اسکنر (i2c_scanner.ino) را بنویسید و آزمایش کنید تا صفحه نمایش متصل به برد آردوینو را بیابید. برنامه در دو بخش ساده زیر تقسیم میشود:
1-بخش راه اندازی
بخش راه اندازی ارتباط سریال با آردوینو را ایجاد میکند و اجازه میدهد تا اطلاعات را با نرخ baud 9600 دریافت کنید. نرخ baud میزان انتقال اطلاعات از Arduino به کامپیوتر را تعیین میکند.
2- بخش حلقه
بخش حلقه قسمتی است که در آن اسکن اصلی انجام میشود. برای اسکن دستگاهها از حلقه for استفاده می شود. حلقه اطلاعات را به چندین آدرس ارسال میکند و منتظر میماند تا اطلاعات در میکروکنترلر دریافت شوند. سپس کد آدرس دقیق را در پنجره مانیتور سریال نمایش میدهد. این کد اسکنر دستگاه میتواند چندین دستگاه را اسکن کرده و همه آنها را نمایش دهد. نتیجه اسکن این دستگاه را در آدرس 0x3C نشان میدهد. در این صورت صحت ارتباط بین نمایشگر OLED و برد Arduino تایید میشود.
برنامه
این کد برای آموزش ساخت این پروژه الزامی است. کد با وارد کردن کتابخانه Adafruit برای نمایش SSD1306 به Arduino IDE شروع میشود. صفحه نمایش OLED را پیکربندی می کنیم و آدرس را در کد اصلی (heart_rate_monitor.ino) 0x3C قرار میدهیم. سپس وضوح OLED روی 128×64 تنظیم میکنیم. صفحه نمایش در قسمت بعدی با تمام متغیرهای استاندارد پیکربندی میشود.
بخش تنظیم کد اجازه میدهد تا صفحه نمایش با آدرس صفحه نمایش پیکربندی شود. پس از پیکربندی، باید صفحه نمایش کاملاً پاک شود. سپس به حلقه اصلی میرویم که وظیفه تنظیم فرآیند و ثبت مقادیر از طریق پین آنالوگ آردوینو را بر عهده دارد. پین آنالوگ A0 آردوینو برای اتصال به سنسور استفاده میشود. در ادامه اطلاعات سنسور در متغیری به نام “value” ذخیره می شود. این متغیر در قسمت بعدی کد نوشته میشود تا مقادیر سنسور نمایش دهد. از فرمول ساده ریاضی برای نمایش ضربان قلب استفاده می شود:
BPM = int (60/(float (BPM)/1000))
این پالس ها را به ضربان در دقیقه (BPM) تبدیل می کند ، که اجازه می دهد تا BPM نهایی مشخص شود. در معادله “int” باعث میشود که حاصل عبارت به عدد صحیح تبدیل شود. این کار برای حذف اعشار انجام میشود. در مرحله بعد، برنامه همه چیز را روی نمودار خطی با کمک دستور Write اجرا میشود که این نقاط یک نمودار خطی ایجاد میکند. در نهایت، برنامه مقدار BPM عددی را در انتهای صفحه نمایش نیز نمایش میدهد. هدف از این پروژه آموزش ساخت یک دستگاه مقرون به صرفه و کارآمد است.
-
مراحل اجرای برنامه آموزش ساخت نمایشگر ضربان قلب قابل حمل
دانلود برنامه
منبع