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

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

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

       مشخصات سنسورDHT11 enlightened

  • ولتاژ عملیاتی و ورودی/خروجی 3 تا 5 ولت
  • حداکثر جریان استفاده شده هنگام عملیات تبدیل 2.5 میلی آمپر
  • مناسب برای خواندن رطوبت 20 تا 80% با دقت 5%
  • مناسب برای خواندن دمای 0 تا 50 درجه با دقت 2± سانتی گراد
  • نرخ نمونه برداری 1 هرتز (یکبار در ثانیه)
  • اندازه : 15.5 در 12 در 5.5 میلی متر
  • دارای 4 پین با 0.1 اینچ فاصله

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

1-سنسور رطوبت و دما - سنسور آب و هوا DHT11

2-ال سی دی 2*16

3-ولوم 10 کیلو اهم

4-آردوینو Uno

5-برد بورد

6-سیم برد برد

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

نحوه اتصال قطعاتenlightened

بعد از اتصال درست مدار نوبت به کد آردوینو است که ما هم نرم افزار قابل دانلود و هم کد این برنامه را قرار داده ایم:

این نرم افزار را بر روی کامپیوتر خود نصب کنید:

https://www.arduino.cc/en/Main/Software

با استفاده از کابل آردوینو را به کامپیوتر متصل کنید

کد آردوینو:enlightened

//
//    FILE: dht11.cpp
// VERSION: 0.4.0
// PURPOSE: DHT11 Temperature & Humidity Sensor library for Arduino
// HISTORY:
//techno-electro.com
// + added comments
// + removed all non DHT11 specific code
// + added references
// Mod by Rob Tillaart - Version 0.4 (17/03/2012)
// + added 1.0 support
//

#include "dht11.h"

// returnvalues:
//  0 : OK
// -1 : checksum error
// -2 : timeout
int dht11::read(int pin)
{
    // BUFFER TO RECEIVE
    uint8_t bits[5];
    uint8_t cnt = 7;
    uint8_t idx = 0;

    // EMPTY BUFFER
    for (int i=0; i< 5; i++) bits[i] = 0;

    // REQUEST SAMPLE
    pinMode(pin, OUTPUT);
    digitalWrite(pin, LOW);
    delay(18);
    digitalWrite(pin, HIGH);
    delayMicroseconds(40);
    pinMode(pin, INPUT);

    // ACKNOWLEDGE or TIMEOUT
    unsigned int loopCnt = 10000;
    while(digitalRead(pin) == LOW)
        if (loopCnt-- == 0) return -2;

    loopCnt = 10000;
    while(digitalRead(pin) == HIGH)
        if (loopCnt-- == 0) return -2;

    // READ OUTPUT - 40 BITS => 5 BYTES or TIMEOUT
    for (int i=0; i<40; i++)
    {
        loopCnt = 10000;
        while(digitalRead(pin) == LOW)
            if (loopCnt-- == 0) return -2;

        unsigned long t = micros();

        loopCnt = 10000;
        while(digitalRead(pin) == HIGH)
            if (loopCnt-- == 0) return -2;

        if ((micros() - t) > 40) bits[idx] |= (1 << cnt);
        if (cnt == 0)   // next byte?
        {
            cnt = 7;    // restart at MSB
            idx++;      // next byte!
        }
        else cnt--;
    }

    // WRITE TO RIGHT VARS
        // as bits[1] and bits[3] are allways zero they are omitted in formulas.
    humidity    = bits[0];
    temperature = bits[2]; 

    uint8_t sum = bits[0] + bits[2];  

    if (bits[4] != sum) return -1;
    return 0;
}
//
// END OF FILE
//











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

#ifndef dht11_h
#define dht11_h

#if defined(ARDUINO) && (ARDUINO >= 100)
#include <Arduino.h>
#else
#include <WProgram.h>
#endif

#define DHT11LIB_VERSION "0.4.0"

class dht11
{
public:
    int read(int pin);
    int humidity;
    int temperature;
};
#endif
//
// END OF FILE
//

تنظیمات نرم افزار:enlightened

"Serial Monitor"

:

و در آخر این تصور را نشان می دهد:

عکس های پروژهwink

 

 

نویسنده مجید آقاکوچک

کارشناس الکترونیک

مدیر سایت تکنو الکترو

طراح الکترونیک و رباتیک

محصولات مرتبط با این آموزش

سنسور رطوبت و دما - سنسور آب و هوا DHT11

سنسور رطوبت و دما - سنسور آب و هوا DHT11

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

4,700تومان

آردوینو Uno

آردوینو Uno

برد آردوینو Uno یک میکروکنترلر بر پایه ATmega328 می باشد (datasheet). این برد 14 پین ورودی و خرو..

20,500تومان 21,000تومان

سیم برد بردی نری به نری

سیم برد بردی نری به نری

سیم bread board - کابل برد بردی - dupont - نری به نری ..

170تومان

سیم برد بردی مادگی به مادگی

سیم برد بردی مادگی به مادگی

سیم bread board - کابل برد بردی - dupont - مادگی به مادگی ..

170تومان

ال سی دی 2*16 بک لایت آبی ساده

ال سی دی 2*16 بک لایت آبی ساده

ال سی دی 2*16 بک لایت آبی ساده   ..

8,350تومان

بردبورد خط دار DEC اصلی

بردبورد خط دار DEC اصلی

بردبورد خط دار DEC مرغوب ترین برد بورد در بازار می باشد. این برد بورد به راحتی سیم ها را نگه می دارد..

15,000تومان

ولوم 10 کیلو اهم

ولوم 10 کیلو اهم

ولوم 10 کیلو اهم ..

600تومان

سیم برد بردی نری به مادگی

سیم برد بردی نری به مادگی

سیم bread board - کابل برد بردی - dupont - نری به مادگی ..

170تومان

مطالب مرتبط با این آموزش

آموزش آردوینو برای تازه کار ها (بخش اول)

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

1 پیام به "راه اندازی سنسور رطوبت و دما DHT11 با آردوینو"

مرتضوی در تاریخ 27.10.2016
آموزشاتون خیلی خوبه ، اگر همینطور ادامه بدید یکی از منابع کامل آردوینو میشید. با تشکر از سایت خوبتون پاسخ به این نظر
نمایش 1 تا 1 از 1 (1 صفحه)

نظر خود را در مورد این آموزش ارسال کنید

نام شما:
 
پیام شما:
نکته: کد اچ تی ام ال مجاز نیست!

خریدی مطمئن و آسان


بانک ملت

آموزش با استفاده از خلاقیت


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

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

استفاده از مطالب فروشگاه اینترنتی تکنو الکترو فقط برای مقاصد غیر تجاری و با ذکر منبع بلامانع است. کليه حقوق اين سايت متعلق به شرکت تکین الکترو اکسین (فروشگاه تکنوالکترو) می‌باشد.

Copyright © 2009 - 2017 Techno-Electro.com