DIY ELECTRONICSEN

← Tüm projeler

DHT22 Sıcaklık ve Nem Ölçer

Başlangıç20 dk

DHT22 sensörüyle nemi ve sıcaklığı hem Celsius hem Fahrenheit olarak ölçüp iki saniyede bir Seri Monitöre yazdıran proje. DHT11’e göre daha hassas ve daha geniş ölçüm aralığına sahip. Kodu yüklemeden önce Arduino IDE’de Adafruit’in “DHT sensor library” kütüphanesini (ve istediği “Adafruit Unified Sensor” kütüphanesini) kurman gerekiyor.

Uygulamada adım adım yap

Gerekli malzemeler

Bağlantı adımları

  1. 1

    Sensöre güç ver

    Sensöre güç ver

    Kırmızı jumper kabloyu Arduino’nun POWER başlığındaki 5V pinine tak. Diğer ucunu DHT22’nin ön yüzü sana bakarken en üstteki 1. pinine (VCC) bağla.

  2. 2

    Veri hattını bağla

    Veri hattını bağla

    Mavi jumper kabloyu Arduino’nun dijital 2 numaralı pinine tak. Diğer ucunu DHT22’nin hemen altındaki 2. pinine (DATA) bağla. Kod sensörü bu pinden okuyor (DHTPIN 2).

  3. 3

    Toprak (GND) bağlantısı

    Toprak (GND) bağlantısı

    Siyah jumper kabloyu Arduino’nun dijital başlığındaki, 13 numaralı pinin yanında bulunan GND pinine tak. Diğer ucunu DHT22’nin en alttaki 4. pinine (GND) bağla. 3. pin boşta kalıyor, ona bir şey bağlama.

Arduino kodu

#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  dht.begin(); // initialize the sensor
}

void loop() {
  // wait a few seconds between measurements.
  delay(2000);

  // read humidity
  float humi  = dht.readHumidity();
  // read temperature as Celsius
  float tempC = dht.readTemperature();
  // read temperature as Fahrenheit
  float tempF = dht.readTemperature(true);

  // check if any reads failed
  if (isnan(humi) || isnan(tempC) || isnan(tempF)) {
    Serial.println("Failed to read from DHT sensor!");
  } else {
    Serial.print("Humidity: ");
    Serial.print(humi);
    Serial.print("%");

    Serial.print("  |  ");

    Serial.print("Temperature: ");
    Serial.print(tempC);
    Serial.print("°C ~ ");
    Serial.print(tempF);
    Serial.println("°F");
  }
}

Seri Monitörde göreceğin

SERIAL MONITOR · 9600 BAUD
Humidity: 45.50%  |  Temperature: 23.40°C ~ 74.12°F
Humidity: 45.60%  |  Temperature: 23.40°C ~ 74.12°F

Uygulamada her bağlantıyı tek tek işaretle, envanterindeki parçalarla eşleştir ve kaldığın yerden devam et.

Uygulamada adım adım yap