پروژه الکترونیکپروژه های آردوینوپروژه های دما و رطوبت

پروژه اندازه گیری دمای بدن با آردوینو و سنسور MAX30205

سلام. پروژه اندازه گیری دمای بدن با آردوینو و سنسور MAX30205 را آماده کردیم.

ساخت دماسنج و تب سنج بدن با Arduino

برای کاربرد های پزشکی یا کلینیکی، اندازه گیری دمای بدن انسان یک پارامتر مهم برای تعیین وضعیت سلامتی هر فرد است. روش های زیادی برای اندازه گیری دما وجود دارد اما همه آن ها در نهایت بدنبال بدست آوردن دمای دقیق هستند. سنسور دما MAX30205 به طور خاص برای اندازه گیری دمای بدن طراحی شده است. در این پروژه آردوینو ما یک سنسور دمای بدن MAX30205 را راه اندازی میکنیم که دارای دقت و محدوده حس مناسب است و میتواند برای اهداف پزشکی مورد استفاده قرار بگیرد.

ساخت دماسنج و تب سنج بدن با Arduino

ما از آردوینو نانو به عنوان مغز اصلی این پروژه استفاده کرده ایم و همچنین از سون سگمنت برای نمایش دما بر حسب فارنهایت استفاده میکنیم. شما به راحتی میتوانید دما را از فارنهایت به سانتی گراد یا کلوین تبدیل کنید.

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

شماتیک مدار برای اتصال آردوینو به سنسور دمای بدن MAX30205 در زیر نشان داده شده است. مدار بسیار ساده است ، اما از آنجا که از نمایشگر هایسون سگمنت استفاده کردیم ، کمی پیچیده به نظر می رسد. استفاده از 7 سگمنت برای نمایش مقادیر دما بسیار جالب بنظر میرسد اما در صورت تمایل میتوانید مقادیر را روی ال سی دی کاراکتری نمایش دهید.

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

آردوینو نانو به سه عدد 74HC595 متصل است. سه 74HC595 باعث میشوند پین های مصرفی از آردوینو نانو کمتر شود. ماژول MAX30205 با پروتکل I2C ارتباط برقرار میکند.

ارتباط آردوینو با سنسور دمای بدن MAX30205

سنسوری که از اینجا استفاده می شود ، MAX30205 از maxim integrated است. سنسور دما MAX30205، دما را با دقت 0.1 درجه سانتیگراد (37°C تا 39°C) اندازه گیری می کند. این سنسور با پروتکل I2C کار می کند. این برد میتواند با 5 ولت یا 3.3 ولت کار کند اما ولتاژ پیشنهادی 5 است.

حتما ببینید :  اندازه گیری جمعیت با پردازش تصویر رزبری پای و OpenCV

ارتباط آردوینو با سنسور دمای بدن MAX30205

در خروجی ، از سه شیفت رجیستر 74HC595 ، که 8 بیتی است استفاده شده است تا سه نمایشگر سون سگمنت با Arduino Nano راه اندازی کند.

توضیحات پین های شیفت رجیستر 74HC595 را می توانید در جدول زیر مشاهده کنید.

توضیحات پین های شیفت رجیستر 74HC595

QA to QH پین های خروجی داده است که به نمایشگر های سون سگمنت وصل می شود.

قطعات مورد نیاز

  1. برد آردوینو نانو
  2. سون سگمنت کاند مشترک – سه عدد
  3. آی سی 74HC595 – سه عدد
  4. مقاومت 680 اهم – 24 عدد
  5. برد ماژول MAX30205

برنامه نویسی MAX30205 با آردوینو

کد کامل این پروژه در انتهای صفحه در فایل دانلودی قرار داده شده است. در اینجا بعضی از قسمت های کد را بررسی میکنیم. مثل همیشه ابتدا کتابخانه های مورد نیاز را درج میکنیم. در ابتدا کتابخانه برای ارتباط I2C را وارد میکنیم.

#include <Wire.h>

برای این پروژه نیاز به کتابخانه سنسور MAX30205 نیز داریم. کتابخانه مورد نظر در فایل دانلودی انتهای صفحه قرار داده شده است.

اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید.
#include "Protocentral_MAX30205.h" 
MAX30205 tempSensor;

دو خط بعدی برای تنظیم پارامترها مهم هستند. در صورتی که خط زیر True باشد مقدار فارنهایت نمایش داده میشود و در صورتی که False باشد دما بر حسب سانتی گراد نمایش داده میشود.

const bool fahrenheittemp = true;

در صورتی که از نمایشگر سون سگمنت کاتد مشترک استفاده میکنید در خط زیر باید True استفاده کنید. در صورتی که از سون سگمنت های آند مشترک استفاده میکنید باید مقدار آن را False قرار دهید.

const bool commonCathode = true;
const byte digit_pattern[17] =
{
  // 74HC595 Outpin Connection with 7segment display.
  // Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
  // a  b  c  d  e  f  g  DP
  0b11111100,  // 0
  0b01100000,  // 1
  0b11011010,  // 2
  0b11110010,  // 3
  0b01100110,  // 4
  0b10110110,  // 5
  0b10111110,  // 6
  0b11100000,  // 7
  0b11111110,  // 8
  0b11110110,  // 9
  0b11101110,  // A
  0b00111110,  // b
  0b00011010,  // C
  0b01111010,  // d
  0b10011110,  // E
  0b10001110,  // F
  0b00000001   // .
};

آرایه فوق برای ذخیره الگوی رقم ها برای نمایشگرهای 7 Segment استفاده می شود.

حتما ببینید :  پروژه سرعت سنج GPS با آردوینو و نمایشگر OLED

در Void Setup ، پس از تنظیم حالت های پین 74HC595 و پروتکل I2C، خواندن دما از سنسور آغاز می شود.

void setup() {
  Serial.begin(9600);
  delay(1000);
  // تنظیم پین های کنترل 74HC595  به عنوان خروجی
  pinMode(latchPin, OUTPUT);    //ST_CP 74HC595
  pinMode(clkPin, OUTPUT);      //SH_CP 74HC595
  pinMode(dtPin, OUTPUT);       //DS 74HC595
  Wire.begin();
  tempSensor.begin();  
}

در Loop، دما توسط تابع tempSensor.getTemperature () خوانده می شود و در یک متغیر به نام temp ذخیره می شود. پس از آن ، اگر حالت دمای فارنهایت انتخاب شود ، داده ها از سلسیوس به فارنهایت تبدیل می شوند. سپس ، سه رقم از داده های دماسنج به سه رقم جداگانه تبدیل میشوند.

 // جداسازی رقم های دما
  int dispDigit1=(int)temp/10;      // رقم 1
  int dispDigit2=(int)temp%10;      // رقم 2
  int dispDigit3=(temp*10)-((int)temp*10);  // رقم 3

فیلم دستگاه اندازه گیری دمای بدن Arduino

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

دانلود فیلم پروژه اندازه گیری دمای بدن با آردوینو

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

برای دانلود فایل های پروژه ثبت نام کنید، تنها چند ثانیه زمان لازم است. از طریق فرم زیر اقدام کنید.

ایمیل خود را وارد کنید

نظرتان را در مورد این مطلب با ستاره دادن اعلام کنید امیدوارم این مطلب برای شما مفید بوده باشد. نظرات ، مشکلات و پیشنهادات خود را در پایین صفحه اعلام کنید

محمد رحیمی

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

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

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

دکمه بازگشت به بالا