İçeriğe atla

DHT22 Sıcaklık ve Nem Sensörü Arduino'ya Nasıl Bağlanır?

Güncelleme: 4msoft
DHT22 Sıcaklık ve Nem Sensörü Arduino'ya Nasıl Bağlanır?

DHT22, sıcaklık ve nemi tek bir dijital hatla okuyabildiğiniz için hobi projelerinde en çok tercih edilen sensörlerden biri. Bu rehberde sensörü Arduino UNO'ya bağlayıp ilk ölçümü almanızı sağlayacak adımları anlatıyoruz.

DHT22 nedir, DHT11'den farkı ne?

İkisi de aynı tek telli protokolü kullanır, ancak DHT22 daha geniş bir aralıkta ve daha yüksek çözünürlükle ölçer. DHT11 sıcaklıkta 0–50 °C aralığında ±2 °C hassasiyet verirken, DHT22 −40 ile +80 °C arasında ±0,5 °C'ye kadar iner. Nem tarafında da fark benzer: DHT11 %20–80, DHT22 %0–100 aralığını kapsar.

Hangi durumda hangisini seçmeli?

  • Oda içi basit gösterge: DHT11 yeter, daha ucuz.
  • Sera, buzdolabı, dış ortam: DHT22 şart — DHT11 negatif sıcaklık ölçemez.
  • Veri kaydı yapan proje: DHT22, çünkü ondalık basamak veriyor.

Bağlantı şeması

Sensörün önden bakıldığında soldan sağa pinleri şöyle: VCC, DATA, boşta, GND. Üçüncü pin hiçbir şeye bağlanmaz.

DATA hattı ile VCC arasına 10 kΩ pull-up direnci koymayı unutmayın. Direnç olmadan sensör okunuyormuş gibi görünür ama ölçümler rastgele NaN döner — en sık yapılan hata bu.

Örnek kod

#include <DHT.h>
#define DHTPIN 2
#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);

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

void loop() {
  float nem = dht.readHumidity();
  float sic = dht.readTemperature();

  if (isnan(nem) || isnan(sic)) {
    Serial.println("Okuma basarisiz");
    return;
  }

  Serial.print("Nem: "); Serial.print(nem);
  Serial.print(" %  Sicaklik: "); Serial.print(sic);
  Serial.println(" C");
  delay(2000);
}

Ölçüm aralığı neden 2 saniye?

DHT22 içindeki sensör elemanı yaklaşık 2 saniyede bir yeni ölçüm üretir. Daha sık sorgularsanız aynı değeri tekrar okursunuz ya da hata alırsınız. delay(2000) bu yüzden keyfi bir sayı değil, veri sayfasındaki minimum örnekleme aralığı.

Sık karşılaşılan sorunlar

BelirtiOlası neden
Sürekli NaNPull-up direnci yok ya da DATA pini yanlış
Nem hep %99Sensör yoğuşmaya maruz kalmış, kurumasını bekleyin
Sıcaklık 2–3 °C yüksekSensör kartın üstünde, regülatör ısısını okuyor