تحلیل کتابخانه

تحلیل و بررسی کتابخانه DHT.h

نوشته شده توسط پریسا پوربلورچیان

کتابخانه DHT.h محبوب و از تمامی سنسورهای دمای DHT پشتیبانی می‌کند. در اجرای پروژه های سطح مبتدی تا متوسط بر اساس رنج تشخیص سنسور  کاربرد ویژه ای دارد. در این آموزش به معرفی کتابخانه DHT و زیر شاخه های مورد نیاز میپردازیم. کتابخانه ی DHT Sensor Library توسط Adafruit توسعه یافته است. به واسطه ی این کتابخانه میتوانید دما و محیط را توسط سنسورهای مرتبط در دو پارامتر جداگانه دریافت و بخوانید. در ادامه با مرجع تخصصی آردوینو به زبان فارسی ، دیجی اسپارک همراه باشید. برای درک صحیحی از کتابخانه بایستی روش فراخوانی و تحلیل کدها را بیاموزید که پیشنیاز آن زبان برنامه نویسی C, C++ است. کتابخانه ی DHT sensor Library برای سنسورهای زیر طراحی و توسعه داده شده است.

  • DHT11
  • DHT22
  • AM2301
  • AM2302

 


نصب کتابخانه DHT


برای نصب نرم افزار از منو آردوینو بر روی Sketch / Include libraries  کلیک کرده و سپس Manage libraries را انتخاب کنید. در صفحه ی باز شده برای یافتن کتابخانه عبارت dht را فیلتر کنید.

مراحل نصب کتابخانه DHT.h در آردوینو - دیجی اسپارک

 

مطابق عکس بالا شماره ی یک، کتابخانه ی DHT sensor library از Adafruit جدیدترین ورژن را نصب کنید. جهت وارد کردن کتابخانه به برنامه دو روش وجود دارد.

  1. تایپ کتابخانه و رعایت حروف بزرگ و کوچک
  2. وارد کردن از طریق منو نرم افزار Arduino IDE از مسیر Sketch / Include Library

 

 


تعریف مقادیر اولیه


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

  • پین انتخاب شده برای اتصال سنسور به میکرو
  • نوع سنسور
 

انتخاب پایه دیجیتال سنسور

 

انتخاب نوع سنسور

 

و در نهایت پس از مشخص شدن پایه ی دیتا و نوع سنسور مورد استفاه در کد برنامه به صورت زیر تعریف می‌شود.

 


معرفی ساختمان کتابخانه DHT


در بخش Setup برنامه توابع اصلی کتابخانه تعریف می‌شود. برای سری سنسورهای DHT جهت فعال سازی تعاریف قبلی از دستور زیر استفاده می‌شود.

 

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

 


معرفی عملکرد توابع


به واسطه ی کتابخانه DHT.h دما و رطوبت را به صورت جداگانه تحلیل شده و دیتا مجزا نمایش داده می‌شود. برای نمایش دما از تابع readTemperature استفاده می‌شود. زمان خواندن دما از سنسور در حدود ۲۵۰ میلی ثانیه است و حتی ممکن است تا ۲ ثانیه هم زمان ببرد. به صورت پیشفرض دما بر حسب سلسیوس خوانده می‌شود.

readTemperature;

 جهت فراخوانی تابع readTemperature بایستی به صورت زیر و دخیره در متغیر مرتبط در برنامه تعریف شود.

 

همچنین دما را به صورت مجزا بر حسب فارنهایتFahrenheit هم می‌توانید محاسبه کنید.

 

برای نمایش دما از تابع readHumidity استفاده می‌شود. زمان خواندن رطوبت از سنسور در حدود ۲۵۰ میلی ثانیه است و حتی ممکن است تا ۲ ثانیه هم زمان ببرد.

readHumidity;

 جهت فراخوانی تابع readHumidity بایستی به صورت زیر و دخیره در متغیر مرتبط در برنامه تعریف شود.

 

بررسی خطا و قطع شدن ارتباط

 

در کد برنامه در صورتیکه ارتباط سنسور با میکرو قطع شود، تمامی شرط های برنامه تست شده و سپس در صورتیکه هیچ کدام اجرا نشده باشد، پیام قطع ارتباط را برای ما نمایش میدهد.

 


محاسبه‌ی Heat index


منظور از Heat index اندازه گیری دما و رطوبت بر اساس مقدار گرما و رطوبت دریافتی و حس شده از محیط است. این موارد در کتابخانه DHT.h به صورت زیر است.

computeHeatIndex برای رطوبت;

برای محاسبه‌ی رطوبت از دستور computeHeatIndex استفاده می‌شود که به صورت زیر در برنامه میتوانید تعریف کنید.

 

computeHeatIndex برای دما;

برای محاسبه‌ی دما از دستور computeHeatIndex استفاده می‌شود که به صورت زیر در برنامه میتوانید تعریف کنید.

 


نمایش هر تابع در سریال مانیتور


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

 


سنسورهای قابل استفاده با کتابخانه DHT


سنسور دما و رطوبت AM2301 – DHT21

ماژول دما و رطوبت DHT11

ماژول دما رطوبت AM2302B – DHT22

سنسور دما و رطوبت DHT22 برند Asair

سنسور دما و رطوبت DHT11 Humidity Sensor

ماژول دما رطوبت Digital Temperature AM2302 

 


جمع بندی لیدی پای


از مزایای سری سنسورهای خانواده DHT تنوع بالا و قیمت ارزان تا گران بسته به مصرف و دقت اندازه گیری در پروژه است. سنسور DHT11 ارزان ترین سنسور و فقط مناسب اندازه گیری دمای مثبت محیط است که به دو صورت سنسور و ماژول مصرف عمومی دارد. در مقابل سنسور دمای DHT22 با همان ظاهر اما دمای منفی و مثبت را اندازه گیری می‌کند. دو سنسور AM2301 و AM2302 با دقت بالاتر و برای استفاده در محیط هایی که دقت بالاتر و اما نیاز به هزینه کمتر در مقابل سنسورهای صنعتی است، کاربرد دارد و استفاده می‌شود. با استفاده از این آموزش میتوانید تمامی سنسورهای لینک شده را راه اندازی و تست اولیه را انجام دهید. در نظر داشته باشید در کد برنامه نوع سنسور استفاده شده مثل DHT11, DHT22, AM2301, AM2302 را انتخاب کنید.

 

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

 

در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی از وبسایت دیجی اسپارک حمایت کنید.

 

 

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

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

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

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

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

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

۲ دیدگاه