
در این پست به آموزش خواندن دما و رطوبت با استفاده از سنسور DHT11 و آردوینو UNO خواهیم پرداخت.
تجهیزات لازم
- سنسور دما و رطوبت DHT11
- آردوینو UNO
- برد بورد
- سیم جامپر
اپلیکشین و سرویس آنلاین

درباره این پروژه
تا به حال خواسته اید از دما و رطوبت اطراف خود مطلع شوید؟ اگر بله ، این پروژه برای شما بسیار مفید خواهد بود. اگر نه ، به هر حال عالی خواهد بود. منظور من این است که شما می توانید از این مورد در اتوماسیون خانگی گرفته تا ساعت های هوشمند استفاده کنید.
رطوبت چیست؟
رطوبت همان بخار آب اطراف شما است که با هوا مخلوط شده است. بر حسب سنت اندازه گیری می شود. بنابراین، اگر رطوبت 60 درصد باشد (که متوسط رطوبت است)، 60 درصد هوای اطراف شما بخار آب است. اگر 100٪ باشد، به این معنی است که یا سنسور درست نیست، سنسور خراب یا آسیب دیده است ، آردوینو خراب شده است، آردوینو نمی تواند سیگنالی دریافت کند، خطایی در کد وجود دارد یا در زیر آب هستید. اگر 0٪ باشد، یا به دلایل فوق به جز دلیل آخری است و یا به این معنی است که شما در فضا هستید یا در وسط یک بیابان هستید.
هوای کویر حاوی مقداری آب است اما در مقایسه با یک مکان عادی مقدار بسیار کمی است. میانگین رطوبت صحرای ساهارا 25٪ است.
کمترین مقدار رطوبت نسبی ثبت شده در جهان در کوبر پدی در صحرای استرالیای جنوبی رخ داد که دما 93 درجه و نقطه شبنم منفی 21 درجه بود و رطوبت نسبی 1 درصد را تولید می کرد. (منبع: ‘www.chicagotribune.com’)
آیا سنسور شما متفاوت است؟
سنسوری که ما در این پروژه از آن استفاده می کنیم به شکل زیر است:

سنسور ما 3 پایه دارد و روی یک برد نصب شده است. اگرسنسور شما 4 پایه دارد، باید مدار زیر را برای آن بسازید:

اگرسنسور شما هم مثل سنسور ما است، فقط مقاومت را نادیده بگیرید.
سپس، مدار را بسازید!
جزئیات مربوط به کد
برای عملکرد آن باید این دستورالعمل ها را دنبال کنید:
1. شما باید کتابخانه را به Arduino IDE اضافه کنید.
2. کد را بارگذاری کنید.
3. هنگام بارگذاری کد، Serial Monitor را باز کرده و baud rate را روی 9600 تنظیم کنید.
4- رطوبت و دما را مشاهده خواهید کرد.
کد
کد دریافت داده از DHT11 و چاپ آن بر روی سریال مانیتور
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include <dht11.h> #define DHT11PIN 4 dht11 DHT11; void setup() { Serial.begin(9600); } void loop() { Serial.println(); int chk = DHT11.read(DHT11PIN); Serial.print("Humidity (%): "); Serial.println((float)DHT11.humidity, 2); Serial.print("Temperature (C): "); Serial.println((float)DHT11.temperature, 2); delay(2000); } |
کتابخانه DHT11
فراموش نکنید کتابخانه adidax-dht11-b7fbbcd را به Arduino IDE اضافه کنید.