Arduino ile DHT11 Sıcaklık ve Nem Sensörü Kullanımı

Sıfırdan arduino derslerinin bu dersinde arduino ile DHT11 kullanımı için gerekli DHT11 arduino bağlantı devresini ve DHT11 arduino kodlarını inceleyeceğiz inceleyeceğiz.
Bu dersin sonunda;
- DHT11 nedir?
- DHT11 Arduino Projelerinde Hangi Amaçla Kullanılır?
- DHT11 arduino kütüphanesi nasıl eklenir?
- DHT11 sıcaklık ve nem sensörü arduino bağlantısı nasıl yapılır?
- Arduino ile DHT11 sıcaklık ve nem ölçümü nasıl yapılır?
sorularının detaylı cevaplarını vermiş olacağız.
DHT11 Nedir? DHT11 Arduino Projelerinde Hangi Amaçla Kullanılır?
DHT11, ortamdaki sıcaklığı ve nemi ölçmek amacıyla kullanılan bir sensördür. Ortam sıcaklığını çeşitli ısı birimlerinde (celcius, farhenayt, kelvin) elde etmemizi ve ortamdaki nemi (humidity) % cinsinden ölçmek için kullanılmaktadır.

dht11-sıcaklık-ve-nem-sensörü-çeşitleri
Arduino ile yapılan bir çok projede DHT11 sıcaklık ve nem sensörü tercih edilmektedir. Özellikle akıllı ev vb projelerde çoğunlukla kullanılır.
DHT11 sıcaklık ve nem sensörü tek sensör olarak veya bir devre kartı üzerine entegre edilmiş olarak satılmaktadır. İki sensöründe arduino bağlantısı ve kullanımı aynı olmasına rağmen aralarında sadece fiyat açısından farklılık vardır.
Bu modül sayesinde hazırlayacağınız arduino projesi ile evinizdeki sıcaklık durumununa göre kombinizi kontrol edebileceğiniz veya ortamdaki nem oranı düştüğünde evinizdeki bir nemlendiriciyi otomatik çalıştırabileceğiniz ileri düzey projeler geliştirebilirsiniz.
DHT11 Arduino Kütüphanesi Nasıl Eklenir?
Bir çok modülde olduğu gibi arduino ile DHT11 kullanmak için bir kütüphane dosyası gereklidir. DHT11 kütüphanesi arduino program kurulumunda otomatik olarak eklenen bir kütüphane değildir. Bu nedenle sonradan eklenmesi gerekir.
Bu işlem için öncelikle aşağıdaki linke tıklayarak DHT11 arduino kütüphanesini bilgisayarınıza indirin.
DHT11 Arduino Kütüphanesini İNDİR…
Kütüphaneyi indirdikten sonra, dosya üzerinde sağ tuşa tıklayarak Klasöre çıkart seçeneğine tıklayın. Oluşan klasör içindeki dht11 dosyasını, arduino programının kurulu olduğu klasördeki libraries klasörünün için kopyalayın. Bu işlemden sonra dht11 sıcaklık ve nem sensörünü arduino ile kodlayabilirsiniz.
DHT11 sıcaklık ve nem sensörü arduino bağlantısı nasıl yapılır?
DHT11 sıcaklık ve nem sensörü bacak bağlantıları aşağıdaki görseldeki gibi yapılmalıdır.

dht11-arduino-bağlantısı-nasıl-yapılır
Arduino ile DHT11 sıcaklık ve nem ölçümü için aşağıdaki arduino devresini hazırlayalım.

dht11-sıcaklık-ve-nem-sensörü-arduino-bağlantı-devresi
DHT11 arduino devresini hazırladıktan sonra arduino kodlarını hazırlayalım.
DHT11 Arduino Kodları
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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | #include <dht11.h> // dht11 kütüphanesini kodlarımıza dahil ediyoruz. int DhtPin=2; // DhtPin olarak Dijital 2'yi belirliyoruz. dht11 dht_sensor; // dht_sensor adında bir DHT11 nesnesi oluşturduk. void setup() { Serial.begin(9600); // Seri iletişimi başlatıyoruz. Serial.println("www.arduinomedia.com"); Serial.println("*********************"); } void loop() { // Sensör konrol ediliyor. int chk = dht_sensor.read(DhtPin); // Sensörden okunan değerleri serial ekranda yazdırıyoruz. Serial.print("Nem Orani (%): "); Serial.println((float)dht_sensor.humidity, 2); Serial.print("Sicaklik (Celcius): "); Serial.println((float)dht_sensor.temperature, 2); Serial.print("Sicaklik (Kelvin): "); Serial.println(dht_sensor.kelvin(), 2); Serial.print("Sicaklik (Fahrenheit): "); Serial.println(dht_sensor.fahrenheit(), 2); // Çiğ Oluşma Noktası Serial.print("Cig Olusma Noktasi: "); Serial.println(dht_sensor.dewPoint(), 2); Serial.println("------------------"); // Veriler her 1 saniyede bir veriler ekrana yazdırılacak. delay(1000); } |
Kodları arduinoya yükleyelim.

arduino-dht11-kodları
Programın sağ üst köşesindeki büyüteç butonuna basarak seri port ekranını açarak arduino dht11 ile ölçülen sıcaklık değerlerini görebilisiniz.
Bir sonraki dersimizde DHT11 ile okunan sıcaklık değerini LCD ekranda gösterme uygulaması yapacağız.
İLGİLİ YAZI: Arduino ile DHT11 Sıcaklık Verilerini LCD Ekranda Yazdırma
Konu ile ilgili görüş, öneri ve düşüncelerinizi yorumlar bölümünden bize ulaştırabilirsiniz.
Yeni yazılardan anında haberdar olmak için arduinomedia facebook hesabını takip etmeyi unutmayın.
https://www.facebook.com/arduinomedia/
Diğer tüm arduino modül kullanımları ve örnek arduino projeleri için kardeş sitemizi incelemeyi unutmayın…
Bir sonraki dersimizde görüşmek dileğiyle…
Merhaba, elimdeki sensörü tamamen sizin kodlarınızla test etmeye çalıştım fakat nem ve sıcaklık değerlerini 0 olarak okuyor. Birkaç farklı Arduino kartıyla denedim fakat hepsinde aynı sonuç çıktı. Sensör de daha önce hiç kullanılmadı, tamamen yeni. Problem ne olabilir acaba?
Pin bağlantıları yanlış yapıldığında genelde 0 sonuç üretir. 3 veya 4 bacaklı türleri var. pin bağlantılarını doğru yapmalısınız. Ayrıca dht11 kütüphanesini yüklemeyi unutmayın.
sıcaklık ve nem 255 yazıyor birimlerde bir sıkıntı mı var
bende sıcaklık 277 gösteriyor ve hep sabit kalıyor ne yapacağım
Aynı sorunu yaşadım, bende data ortadaki değil soldaki, SOL = DATA, ORTA = 5V ve SAĞ = GND, kolay gelsin.
Teşekkür ederim söylediğin yerlere bağlayınca oldu 🙂
merhaba ben ekrana sıcaklığın değerini yazmak yerine sıcaklık 1 dan küçükse soğuk 10 il 20 arsasında ise ılık 20 den büyükse sıcak yazmasını istiyorum nasıl yapabilirim ?
if(…) {…} else if (…) {…} kodlarındaki …’ları uygun şekilde doldurarak yapabilirsiniz.
Çok Faydalı Oldu Teşekkürler.
lcd ekranda çalışıyor fakat yazı gelmiyor nasıl yapabilirim
Bağlantılarda hata olabilir kontrol edin lütfen