رباتیک و هوافضا

اندازه گیری رطوبت و دما با آردوینو و سنسور DHT11

به نام خدا

اندازه گیری رطوبت و دما با استفاده از آردوینو و سنسور DHT11

دما و رطوبت ، دو پارامتر مهم در اندازه گیری شرایط محیطی هستند . در این پروژه می خواهیم دما ورطوبت را توسط سنسور DHT11 و با استفاده از برد آردوینو اندازه گیری کرده و بر روی LCD نمایش دهیم .

Arduino-Humidity-Measurement

پروتکل ارتباطی این سنسور با پردازنده و یا برد آردوینو ما ، پروتکل تک سیمه می باشد . برد آدوینو استفاده شده در این پروژه ، آردوینو UNO است .

block Digram

سنسور DHT11 یک سنسور دیجیتال کالیبره شده با دقت بالا است که سنسور رطوبت آن از نوع مقاومتی و سنسور دمای آن مانند یک NTC عمل می کند . این سنسور دارای ۴ پایه می باشد که یک پایه آن Vcc پایه دیگر آن GND ، پایه سوم پایه دیتا و پایه سوم NC (به جایی وصل نمی شود ) است .

DHT11-Sensor

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

بیشتر بخوانید...  LED چشمک زن با آردوینو Uno

طول دیتا شامل ۴۰ بیت یعنی ۵ بایت می باشد . که دو بایت اول مربوط به اطلاعات رطوبت ، دو بایت بعدی مربوط به اطلاعات دما و بایت آخر برای check sum به منظور آگاهی از صحت اطلاعات ارسال شده است .

نحوه کار با سنسور :

اول از همه آردوینو یک سیگنال پایین رونده ( یک منطقی به صفر منطقی ) با تاخیر ۱۸ میکرو ثانیه به سنسور DHT11 ارسال می کند . سپش آردوینو خط داده را برای مدت ۲۰ تا ۴۰ میکرو ثانیه pull-up می کند و منتظر پاسخ سنسور می ماند . وقتی سنسور سیگنال شروع را تشخیص دهد ، شروع به ارسال ولتاژ low ( صفر منطقی ) برای مدت ۸۰ میکرو ثانیه به آردوینو می کند . و سپس سنسور خط داده را به مدت ۸۰ میکرو ثانیه pull-up می کند .

موقعی که خط داده در سطح ولتاژ low قرار دارد به این معنی است که DHT11 سیگنال پاسخ می فرستد . یک بار دیگر سنسور خط داده را به منظور اماده سازی برای ارسال داده ها ، pull-up می کند .

بیشتر بخوانید...  فاصله سنج آلتراسونیک با آردوینو

فرمت داده هایی که توسط DHT11 به آردوینو ارسال می شود برای هر بیت با سطح ولتاژ low برای مدت ۵۰ میکرو ثانیه شروع می شود و طول سطح ولتاژ high اندازه گیری می شود خواه آن بیت صفر باشد خواه یک .

برای استفاده از سنسور DHT11 خط داده باید با یک مقاومت حدود ۵ کیلو اهم pull-up شود . همان طور که در تصویر اول می بینید ، ما به جای استفاده از این سنسور از مازول آماده آن استفاده کرده ایم که مقاومت pull-up بر روی برد این ماژول قرار دارد .

commin

شماتیک مدار :

Arduino-Humidity-Circuit

کتابخانه مورد استفاده در برنامه :

 

دانلود فایل

 

برای دانلود کد های برنامه بر روی لینک زیر کلیک کنید .

 

دانلود فایل

 

برای دیدن فیلم این پروژه در لینک زیر کلیک کنید .

 

دانلود فیلم

 

 

دیدگاه‌ها (4)

*
*

    غلامی مهمان مرداد 30, 1395 پاسخ

    با سلام و خسته نباشید
    ممنون از قرار دادن این آموزش
    بطفا در صورت امکان کتابخانه های استفاده شده در این آموزش رو هم برای پروتئوس 8 جهت دانلود قرار دهید
    با تشکر غلامی

      Admin مدیر کل دی 5, 1396 پاسخ

      سلام ، ممنون
      در اسرع وقت میذاریم
      موفق باشید

    abolfazl مهمان آبان 8, 1395 پاسخ

    سلام.اگر 4 تا از این سنسورا رو بخوام باهم بخونم باید چکار کنم؟

      Admin مدیر کل دی 5, 1396 پاسخ

      سلام .
      به همون طریق که توی برنامه پین تعریف کرده تو هم تعریف کن و برای هر کدوم از همون تابع DHT.read به صورت مجزا استفاده کن