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

کیت تب سنج کرونا با استفاده از آردوینو Arduino و دماسنج Thermometer

corona-virus-detector-wit-fever-meter-kit-and-arduino-digispark
نوشته شده توسط پریسا پوربلورچیان

با شیوع کرونا Corona بیماری ناشناخته‌ای که به تازگی در جهان فراگیر شده است، نیاز به کیت‌های تشخیص وضعیت سلامتی و اندازه گیری پارامترهای بدن یک امر حیاتی شده است. ما به واسطه ی دانش برنامه نویسی و سنسورهای بیومتریک تا حدودی میتوانیم این نیاز را برطرف سازیم. با شیوع بیماری کرونا در جهان، یکی از علائم بارز وجو بیماری افزایش دمای بدن انسان و به اصطلاح تب بالا است که نشان دهنده ی این ویروس دردسر ساز می‌باشد. در ادامه با استفاده از سنسور ضد آب و کابلی DS18B20 دمای بدن را اندازه گیری کرده و بر روی نمایشگر نمایش خواهیم داد. به عبارتی یک کیت تشخیص کرونا یا همان تب سنج آردوینو می‌سازیم. در ادامه با مرجع تخصصی آردوینو Arduino به زبان فارسی، دیجی اسپارک همراه باشید.

 


سنسور اندازه گیری دما و تب سنج


سنسورهای دما این روزها نقش بسیار مهمی در اپلیکیشن ها دارند. از جمله کیت تب سنج کرونا، اندازه گیری دمای خانه ها، دپارتمان های آموزشی، کارخانه ها و حتی گلخانه ها پارامتر دما عنصر اصلی کنترل کیفیت و امنیت به حساب می‌آید. سنسورهای دما به چند بخش تقسیم می‌شود که ۴ مدل NTC، RTD، ترموکوپل و سمیکنداکتورها شناخته شده هستند. در یک محیط با توجه به نوع محیط، شرایط نویز پذیری، سرد و گرم بودن آن، با استفاده از سنسورهای دما کنترل کیفیت کار . عملکرد دستگاه ها بررسی خواهد شد. هر سنسور دارای پروتکل ارتباطی متفاوتی است و در انتخاب سنسور بایستی به این موارد دقت کرد. سنسورهای سری DHT در طرح و مدل های مختلفی وارد بازار شده است و عمده تفاوت آن ها در رنج اندازه گیری دمای محیط و یا اندازه گیری رطوبت می‌باشد. سنسور DS18B20 ضد آب بوده و با کابل PVC پوشانیده شده است و دما و رطوبت محیط را اندازه گیری می‌کند. از اینرو انتخاب مناسبی برای کیت تب سنج کرونا می‌باشد. هم ضد آب است و هم لمسی است. از اینرو برای تشخیص بیماری کرونا از طریق سنج تب مناسب خواهد بود.

به طور کلی سنسورهای دما به دو دسته تقسیم بندی می‌شود:

 

  • سنسورهای دماسنج تماسی

این سنسورها لازم است تا با جسم مورد نظر تماس فیزیکی داشته و با خاصیت رسانایی تغییرات دما را در هر لحظه پردازش می‌کند.

 

  • سنسورهای دماسنج غیر تماسی

این نوع سنسورها با استفاده از اشعه مادون قرمز و انتقال گرما تغییرات دما را اندازه گیری می‌کند.

کیت تب سنج تشخیص کرونا Cronavirus با آردوینو Arduino - دیجی اسپارک

در این آموزش می‌توانید از سنسور تماسی DS18B20 با خاصیت ضد آبی و کابل PVC و سنسور غیرتماسی MCU استفاده کنید. در ادامه از سنسور DS18B20 استفاده شده است.

 


وسایل مورد نیاز


برای اجرای پروژه به یک میکروکنتر نیاز خواهیم داشت که آردوینو Arduino با توجه به امکاناتی که هر یک از پین ها در اختیار ما می‌گذارد، بهترین انتخاب خواهد بود. پک کامل قطعات به کار رفته در این آموزش در لینک کیت تب سنج تماسی کرونا Corona Kit تب سنج Covid-19 به صورت یکجا قابل خرید است. اقلام تک به تک کیت تب سنج کرونا:

 


اتصالات کیت تشخیص کرونا


همانند تصویر زیر اتصالات سنسور DS18B20 و OLED به آردوینو UNO را انجام دهید. سنسور دماسنج مناسب کیت تب سنج کرونا می‌باشد.

 


کدنویسی تب سنج کرونا Arduino


کد آردوینو را کپی کرده و به نرم افزار آردوینو Arduino انتقال دهید. دقت کنید که این کدها در عملکرد کیت برنامه تب سنج کرونا بسیار اهمیت دارند. چناچه روش استفاده از این کدها را نمی‌دانید، کافیست به آموزش کار با برد آردوینو و نصب نرم افزار Arduino IDE مراجعه کنید.

جهت دسترسی به این بخش از پروژه، اسپارکر پلاس شوید.

 


کتابخانه‌های مورد نیاز تب سنج


جهت اجرای پروژه به شش کتابخانه نیاز داریم:

  • کتابخانه OneWire.h برای ارتباط 
  • کتابخانه DallasTemperature.h برای سنسور DS18B20
  • کتابخانه SPI.h
  • کتابخانه Wire.h
  • کتابخانه Adafruit_GFX.h برای نمایشگر OLED
  • کتابخانه Adafruit_SSD1306.h برای نمایشگر OLED با درایور SSD1306

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

 

کیت تب سنج کرونا Cronavirus با آردوینو Arduino - دیجی اسپارک

فراخوانی سنسور DS18B20

سنسور DS18B20 با کتابخانه Dallas Temperature فعال می‌شود. توسط دستور زیر یک کامند جهت دریافت دیتا از پایه سنسور ارسال می‌شود:

 

فراخوانی دستورات OLED

جهت نمایش متن و کاراکترهای مورد نیاز دستورات زیر فراخوانی می‌شود. از یک هگز جهت نمایش آیکون دماسنج برای OLED استفاده شده است. که با دستور زیر فراخوانی می‌شود:

سپس اندازه ی متن، رنگ نوشته و مکان نمای متن را در نمایشگر مشخص خواهیم کرد:

جهت دسترسی به این بخش از پروژه، اسپارکر پلاس شوید.

 

به همین ترتیب با اتصال تغذیه به آردوینو، سنسور فعال شده و سپس دمای اندازه گیری شده بر روی نمایشگر OLED نمایش داده می‌شود. برای تغدیه مدار میتوانید از آداپتور ۹ ولت ۱ آمپر و یا باتری ۹ ولت استفاده کنید.

کیت تشخیص کرونا با تب سنج آردوینو Arduino Fever Meter - دیجی اسپارک

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

 


پروژه و دریافت بن ارسال رایگان


برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکه‌های اجتماعی از جمله آپارات و اینستگرام، با هشتگ‌های دیجی_اسپارک و دانشجوکیت  و digispark  و  daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید. در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.

 

 

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

پریسا پوربلورچیان

تولید کننده محتوا / کارشناس IOT

زندگی یعنی پژوهش و فهمیدن چیزی جدید

تلاشم بر این است تجربیاتم در زمینه IOT‌ را به بهترین شکل با شما در میان بگذارم.

تبادل نظر و رفع عیب با ثبت دیدگاه

۷۰ دیدگاه

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

  • سلام یه سوال داشتم ایا بعد از پروگرام کردن اردینو میتونیم ایسی را از روی ان در بیاوریم و روی بردی که خودم طراحی کردم مثل تایمر یا طب سنج کرونا وصل کنم چطوری

    • با سلام
      خیر این مورد امکان پذیر نمی‌باشد و تا به حال توسط بنده تست نشده است.

  • سلام خسته نباشید میخواستم بدونم خرید بالا ۵۰ تومان ارسال رایگان است؟چون در دانشجو کیت نوشته شده بالای ۵۰ تومان خرید ارسال رایگان در سرتاسر کشور.. یا کلا خرید بالای ۱۰۰ یا بیشتر این امکان وجود داره؟

    • با سلام
      با آرزوی سلامتی و موفقیت در سال جدید، جهت دریافت بن خرید ارسال رایگان لینک زیر را مطالعه کنید و پس از آن جهت دریافت کد اقدام نمایید.
      دریافت بن خرید

      • سلام ان شاالله همچنین با ارزوی سلامتی و موفقیت برای شما در سال جدید و ان شاءالله در سالهای اینده..من لینک رو در قسمت مربوطه خیلی وقته فرستادم چند روز گذشته اما هنوز بن دریافت نکردم به همین دلیل هنوز مراحل خرید و پرداخت رو انجام ندادم..

      • سلام همینطور شما من دیروز پیام گذاشتم اما الان دیدم ثبت نشده..من چند روز هست که لینک رو به قسمت مربوطه فرستادم اما جواب نگرفتم و منتظر جواب هستم تا خریدم رو انجام بدم

          • سلام با تشکر هز مطاب بسیار جالبتان
            خانم مهندس عزیز سوالی داشتم مبنی بر اینکه ایا نرم افزارbody temprature
            که در فضای مجازی به عنوان تب سنج لمسی منتشر شده است مورد تایید حضرتعالی هست یا خیر؟ سپاس از توجهتان

            • با سلام
              در خصوص اندازه گیری دما نیازمند سنسور مربوطه هستیم و اپلیکشن ها بایستی بررسی و دقت آن ها سنجیده شود که توسط بنده تست نشده است.

  • با سلام و عرض خسته نباشید من یه سوال مهمی دارم این برنامه که بالا ذکر شده است برنامه کامل این پروژه یا نه.یعنی ما با این برنامه میتونیم این پروژه رو جلو ببریم.

  • سلام خانم مهندس
    از مطالبی که گذاشتید بسیار سپاسگزارم . اداره ما یک دستگاه دماسنج غیرتماسی مادن قرمز دارد که شبیه همون دماسنجهایی است که تلویزیون در فرودگاهها نشون میده ولی سایزش کمی بزرگتر هست . من یکبار امتحان کردم اعدادش زیر ۳۴ و ۳۵ درجه است . بنظر شما قابل استفاده برای تب سنجی هست یا خیر؟

    • با سلام
      هر دماسنجی یک کاربردی دارد و بسته به نوع سنسور مورد استفاده کارآیی آن متفاوت است. بایستی مدل آن را بررسی نمایید.

  • سلام
    تشکر بابت این آموزش عالی، بجز این سنسور دما از چه سنسورهایی میشه برای تشخیص کرونا استفاده کرد؟

  • با سلام و عرض ادب
    آیا این تب سنج ها خروجی هم میدهند
    منظورم اینه که مثلا اگر تب فرد بالای ۳۷ درجه بود یک آلارم به ما بدهد(یک سوییچ بدهد)
    آیا این امکان وجود دارد؟؟

    • با سلام
      بله میتوانید از رله برای خروجی استفاده کرده و آلارم مورد نظر را اتصال دهید.

  • با سلام و عرض ادب
    میخواستم بدونم کیت های تب سنج امکان دادن خروجی در یک دمای مشخص را دارند؟
    یعنی اگر تب سنجی صورت گرفت و تب بالای ۳۷ درجه بود ایا این امکان وجود دارد که یک آلارم(سوییچ) داشته باشیم ؟
    ممنون

  • خانم عزیز این چه عنوانی یست “کیت تشخیص کرونا؟؟؟!!” یه برد معمولی میکروکنترلر با سنسور دما شده کیت کرونا ؟؟؟ یه راه دیگه برای پولدارشدن پیدا کنید

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

  • سلام
    بنده سنسور DS18B20 را تهیه کردم منتهی این سه تا سیم رنگی زرد و قرمز و سیاه داره
    این کدوم VCC و GND و DETA هستش؟

    همچنین در oled پایه های VCC و SCL وجود نداشت،ایا این ها همون پایه های VDD و SCK هستش؟

    • با سلام
      در سنسور دما سیم زرد رنگ پایه دیتا است که در مسیر مقاومت و پایه دیجیتال آردوینو قرار می‌گیرد. سیم قرمز پایه VCC تغذیه ۵ ولت است که به پایه ۵ ولت آردوینو متصل شده و سیم مشکی پایه GND است که به پایه GND آردوینو متصل می‌شود. در OLED هم بله همان پایه ها هستند.

  • این کد چند بخش کد هارو گشت سر هم تو اردینو کپی پست کنیم حله؟؟؟؟
    اخه من این کارو میکنم جواب نمیده
    ارور میده
    با اینکه همه کتابخونه هارو نصب کردم

      • من کدهارو به ترتیب زدم
        اول بخش کدهای “کدنویسی تب سنج کرونا Arduino” رو دم
        بعدش کدهای بخش “فراخوانی سنسور DS”
        و بعدش کدهای بخش فراخوانی”OLED” رو زدم

        اوش خطای زیر رو میگیره:
        http://s4.picofile.com/file/8396864126/1.jpg

        و وقتی” . ” رو حذف میکنم این پیام رو میده
        http://s4.picofile.com/file/8396864142/2.jpg

        • با سلام
          کدهای تحلیل فقط بخشی از کدهای برنامه هستند که به صورت جداگانه تحلیل شده است. بایستی کد اصلی را که تحت عنوان کدنویسی تب سنج کرونا Arduino در متن قرار گرفته شده است را استفاده کنید.

          • پس فقط کد های قسمت اول رو قرار بدیم؟
            یعنی کدهای “کدنویسی تب سنج کرونا Arduino”؟؟؟؟؟

            • با سلام
              بله همانطور که در متن نوشته شده است، دو قسمت کد به صورت جداگانه تحلیل شده است. بایستی آموزش را کامل مطالعه کنید.

  • سلام من سنور غیرتماسی mlx خریدم از فاصله خیلی کمی دما اندازه می گیره فاصله زیاد می شه کاربرد ندارده چکار کنم که بتونم از فاصله زیاد دما اندازه بگیرم مثلا دومتری

    • با سلام
      کاربر گرامی سوال شما مرتبط با این آموزش نیست. ولی میتوانید درخواستتان را در پست مرتبط با سنسور MLX ارسال کنید. چنانچه دیگر کاربران در این خصوص اطلاعی داشته باشند به شما راهنمایی خواهند کرد.

    • با سلام
      در این خصوص کالیبره کردن سنسور نیاز به اندازه گیری دمای خام حد بالا، دمای خام حد پایین و دمای مرجع بالا و پایین خواهید داشت که با استفاده از فرمول زیر میتوانید دمای مناسب اندازه گیری شده را تعیین کنید. دقت داشته باشید اینکار نیاز به دانش برنامه نویسی و تحلیل و بررسی خواهد داشت.
      در ادامه یک نمونه ضمیمه شده است.
      float RawHigh = 99.6;
      float RawLow = 0.5;
      float ReferenceHigh = 99.9;
      float ReferenceLow = 0;
      float RawRange = RawHigh – RawLow;
      float ReferenceRange = ReferenceHigh – ReferenceLow;

      float CorrectedValue = (((RawValue – RawLow) * ReferenceRange) / RawRange) + ReferenceLow;

  • سلام
    include SPI.h
    include Adafruit_GFX.h
    خط ۱۱ تا ۴۴
    این سه تا چه کاری توی برنامه ایجاد میکنن ؟
    و اینکه سنسور دمایی که از دیجی گرفتم خروجی سه تا کابلش سیم رشته ای هست و نری نداره
    چجوری ازش استفاده کنم روی برد بورد ؟

    • با سلام
      این دو کتابخانه جهت فراخوانی پروتکل SPI و فعال شدن نمایشگر oled فراخوانی شده است.
      در خط ۱۱ تا ۴۴ از یک هگز جهت نمایش آیکون دماسنج برای OLED استفاده شده است.
      سنسور DS18B20 دارای سه پایه است که به دلخواه میتوانید به آن پین هدر لحیم کرده و اتصال دهید.

  • توی عکس مدار بسته شده مقاومت هست ؟
    به چه علت هست و چند اهم هست و کجای مدار باید استفاده کنبم ؟

    • با سلام
      جهت دریافت دیتا از سنسور از مقاومت ۴٫۷ کیلو اهم استفاده شده است که بین پایه دیتا و پایه VCC قرار میگیرد.

  • سلام و خسته نباشید
    من تمام اتصالات رو کامل انجام دادم و کد رو هم کپی کردم و مشکلی نبود.
    سنسور را هم به پین هدر لحیم کردم و به برد زدم ولی همچنان عدد منفی ۱۲۷ نمایش داده می شود.
    چه کار کنم؟

  • سلام و خسته نباشید
    من تمام اتصالات رو کامل انجام دادم و کد رو هم کپی کردم و مشکلی نبود.
    سنسور را هم به پین هدر لحیم کردم و به برد زدم ولی همچنان عدد منفی ۱۲۷ نمایش داده می شود.
    چه کار کنم؟
    ————
    سنسور به این صورت وصل شده ، سیم مشکی به زمین
    سیم زرد به پایه ۲ دیجیتال
    سیم قرمز به ۵ ولت برد
    ولی باز هم کار نمیکنه ، آیا باید مقاومت هم وصل بشه ؟
    مقاومت به کدوم پایه باید وصل بشه؟

    • با سلام
      بله از مقاومت ۴٫۷ کیلو که در کیت قرار گرفته شده است، استفاده کنید.
      مقاومت از یک طرف به پایه VCC و از طرف دیگر به پایه دیجیتال زرد رنگ متصل باشد. سپس طبق آموزش به پایه های آردوینو متصل کنید.