بازگشت

راه اندازی ماژول سنسور دما و رطوبت AM2301/DHT21 با آردوینو

معرفی ماژول AM2301

ماژول AM2301 یک سنسور دما و رطوبتِ دیجیتال است که به صورت داخلی کالیبره شده. بازه اندازه‌گیری دمای این ماژول -40 تا 80 درجه سانتی‌گراد با دقت  3± درجه سانتی‌گراد و بازه‌ اندازه‌گیری رطوبت آن 0 تا 99.9 درصد با دقت 2%± است.

نوع ارتباط این ماژول، دیجیتال تک-سیمه است؛ یعنی برای ارتباط با میکروکنترلر، بجز پایه‌های تغذیه، تنها به یک پایه دیجیتال نیاز دارد. با استفاده از این پروتکل می‌توان دیتا را با همان یک خط تا فاصله حداکثر 20 متر انتقال داد.

نام دیگر این ماژول DHT21 است که از خانواده ­های معروف‌ سنسورهای دما و رطوبت DHT محسوب می‌شود. مشخصات این سنسور بسیار مشابه سنسور DHT22 است و عمده تفاوت آن‌ها در طراحی بدنه (کیس) و شکل فیزیکی پایه‌های خروجی می باشد. AM2301 دارای  3 سیم برای خروجی است اما DHT22 پایه‌های فلزی دارد.

مشخصات فنی ماژول AM2301

  • ولتاژ کاری: 3 تا 5.5 ولت
  • پروتکل ارتباطی: دیجیتال تک-سیمه
  • حداکثر فاصله انتقال اطلاعات روی خط دیتا: 20 متر
  • دمای مجاز عملیاتی: -40 تا 80 درجه سانتی‌گراد
  • رزولوشن دما: ℃1 (16 بیت)
  • دقت اندازه‌گیری دما: 0.3± درجه سانتی گراد
  • رنج اندازه‌گیری رطوبت: 0 تا 9 درصد رطوبت نسبی
  • دقت اندازه‌گیری رطوبت: 3%±

برای دریافت اطلاعات بیشتر در مورد سنسور AM2301/DHT21 می‌توانید به دیتاشیت این سنسور رجوع کنید.

 

 

معرفی پایه‌های (Pinout) ماژول AM2301(DHT21)

  • سیم قرمز : پایه مثبت تغذیه ماژول (3 تا 5.5 ولت)
  • سیم مشکی : زمین
  • سیم زرد : خط دیتا (باید به یکی از پایه‌های دیجیتال میکروکنترلر متصل شود)

تصویر زیر نمای داخلی و ابعاد این ماژول را نشان می‌دهد.

لوازمی که به آن احتیاج دارید

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

Arduino UNO R3 × 1
ماژول سنسور دما و رطوبت AM2301 × 2
سیم جامپر × 3

نرم افزارهای مورد نیاز

Arduino IDE

راه‌اندازی ماژول سنسور دما و رطوبت AM2301/DHT21 با آردوینو

گام اول: سیم بندی

مدار را مطابق شکل زیر ببندید.

گام دوم: نصب کتابخانه

DHT کتابخانۀ مربوط به این ماژول است. ابتدا این کتابخانه را در آردوینو IDE نصب کنید.

برای دانلود فایل زیپ کتابخانه DHT، به این لینک مراجعه کنید.

اگر برای نصب کتابخانه به راهنمایی بیشتر نیاز دارید روی این لینک کلیک کنید.

گام سوم: کد

کد زیر را در آردوینو کپی و اجرا کنید.


//Libraries
#include <DHT.h>;

//Constants
#define DHTPIN 2 //what pin we're connected to
#define DHTTYPE DHT21 //DHT 21 (AM2301)
DHT dht(DHTPIN, DHTTYPE); //Initialize DHT sensor for normal 16mhz Arduino


//Variables
float hum; //Stores humidity value
float temp; //Stores temperature value

void setup()
{
 Serial.begin(9600);
 dht.begin();
}

void loop()
{
 //Read data and store it to variables hum and temp
 hum = dht.readHumidity();
 temp= dht.readTemperature();
 
 //Print temp and humidity values to serial monitor
 Serial.print("Humidity: ");
 Serial.print(hum);
 Serial.print("%, Temperature: ");
 Serial.print(temp);
 Serial.println(" Celsius");
 
 delay(2000); //Delay 2 sec.
}
Arduino

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

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

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

تفاوت DHT11 و DHT22 و DHT21(AM2301)

رنج و دقت اندازه‌گیری دما

  • DHT11: -20 تا 60 °C با خطای ±2 °C
  • DHT21: -40 تا 80°C با خطای ±0.3°C
  • DHT22: -40 تا 80°C با خطای ±0.5°C

رنج و دقت اندازه‌گیری رطوبت

  • DHT11: 5 تا 95% با خطای ±5%
  • DHT21: 0 تا 99% با خطای ±2%
  • DHT22: 0 تا 99% با خطای ±2%

برای راه‌اندازی سنسورهای DHT11 و DHT22 می‌توانید به این لینک مراجعه کنید.

معرفی ماژول AM2301

ماژول AM2301 یک سنسور دما و رطوبتِ دیجیتال است که به صورت داخلی کالیبره شده. بازه اندازه‌گیری دمای این ماژول -40 تا 80 درجه سانتی‌گراد با دقت  3± درجه سانتی‌گراد و بازه‌ اندازه‌گیری رطوبت آن 0 تا 99.9 درصد با دقت 2%± است.

نوع ارتباط این ماژول، دیجیتال تک-سیمه است؛ یعنی برای ارتباط با میکروکنترلر، بجز پایه‌های تغذیه، تنها به یک پایه دیجیتال نیاز دارد. با استفاده از این پروتکل می‌توان دیتا را با همان یک خط تا فاصله حداکثر 20 متر انتقال داد.

نام دیگر این ماژول DHT21 است که از خانواده ­های معروف‌ سنسورهای دما و رطوبت DHT محسوب می‌شود. مشخصات این سنسور بسیار مشابه سنسور DHT22 است و عمده تفاوت آن‌ها در طراحی بدنه (کیس) و شکل فیزیکی پایه‌های خروجی می باشد. AM2301 دارای  3 سیم برای خروجی است اما DHT22 پایه‌های فلزی دارد.

مشخصات فنی ماژول AM2301

  • ولتاژ کاری: 3 تا 5.5 ولت
  • پروتکل ارتباطی: دیجیتال تک-سیمه
  • حداکثر فاصله انتقال اطلاعات روی خط دیتا: 20 متر
  • دمای مجاز عملیاتی: -40 تا 80 درجه سانتی‌گراد
  • رزولوشن دما: ℃1 (16 بیت)
  • دقت اندازه‌گیری دما: 0.3± درجه سانتی گراد
  • رنج اندازه‌گیری رطوبت: 0 تا 9 درصد رطوبت نسبی
  • دقت اندازه‌گیری رطوبت: 3%±

برای دریافت اطلاعات بیشتر در مورد سنسور AM2301/DHT21 می‌توانید به دیتاشیت این سنسور رجوع کنید.

 

 

معرفی پایه‌های (Pinout) ماژول AM2301(DHT21)

  • سیم قرمز : پایه مثبت تغذیه ماژول (3 تا 5.5 ولت)
  • سیم مشکی : زمین
  • سیم زرد : خط دیتا (باید به یکی از پایه‌های دیجیتال میکروکنترلر متصل شود)

تصویر زیر نمای داخلی و ابعاد این ماژول را نشان می‌دهد.

لوازمی که به آن احتیاج دارید

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

Arduino UNO R3 × 1
ماژول سنسور دما و رطوبت AM2301 × 2
سیم جامپر × 3

نرم افزارهای مورد نیاز

Arduino IDE

راه‌اندازی ماژول سنسور دما و رطوبت AM2301/DHT21 با آردوینو

گام اول: سیم بندی

مدار را مطابق شکل زیر ببندید.

گام دوم: نصب کتابخانه

DHT کتابخانۀ مربوط به این ماژول است. ابتدا این کتابخانه را در آردوینو IDE نصب کنید.

برای دانلود فایل زیپ کتابخانه DHT، به این لینک مراجعه کنید.

اگر برای نصب کتابخانه به راهنمایی بیشتر نیاز دارید روی این لینک کلیک کنید.

گام سوم: کد

کد زیر را در آردوینو کپی و اجرا کنید.


//Libraries
#include <DHT.h>;

//Constants
#define DHTPIN 2 //what pin we're connected to
#define DHTTYPE DHT21 //DHT 21 (AM2301)
DHT dht(DHTPIN, DHTTYPE); //Initialize DHT sensor for normal 16mhz Arduino


//Variables
float hum; //Stores humidity value
float temp; //Stores temperature value

void setup()
{
 Serial.begin(9600);
 dht.begin();
}

void loop()
{
 //Read data and store it to variables hum and temp
 hum = dht.readHumidity();
 temp= dht.readTemperature();
 
 //Print temp and humidity values to serial monitor
 Serial.print("Humidity: ");
 Serial.print(hum);
 Serial.print("%, Temperature: ");
 Serial.print(temp);
 Serial.println(" Celsius");
 
 delay(2000); //Delay 2 sec.
}
Arduino

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

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

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

تفاوت DHT11 و DHT22 و DHT21(AM2301)

رنج و دقت اندازه‌گیری دما

  • DHT11: -20 تا 60 °C با خطای ±2 °C
  • DHT21: -40 تا 80°C با خطای ±0.3°C
  • DHT22: -40 تا 80°C با خطای ±0.5°C

رنج و دقت اندازه‌گیری رطوبت

  • DHT11: 5 تا 95% با خطای ±5%
  • DHT21: 0 تا 99% با خطای ±2%
  • DHT22: 0 تا 99% با خطای ±2%

برای راه‌اندازی سنسورهای DHT11 و DHT22 می‌توانید به این لینک مراجعه کنید.

دیدگاه ها 0

درباره این مطلب دیدگاهی ارسال کنید