Bei­spiel­pro­gramm DHT11/DHT22



Ver­gleich DHT11/DHT22

DHT11DHT22
Mess­be­reich Temperatur0 - +50°C-40 - +80°C
Auf­lö­sung Temperatur1°C0,1°C
Mess­ge­nau­ig­keit Temperatur± 2 °C± 0,5 °C
Mess­be­reich Luftfeuchtigkeit20 - 90%0 - 100%
Auf­lö­sung Luftfeuchtigkeit1%0,1%
Mess­ge­nau­ig­keit Luftfeuchtigkeit± 5 %± 2 %

Quel­len:

🔗Daten­blatt DHT22 (abge­ru­fen am 19.03.23)
🔗Daten­blatt DHT11 (abge­ru­fen am 19.03.23)

 ➨Ver­gleich Tem­pe­ra­tur-/ Luftfeuchtigkeitssensoren

Pin­be­le­gung:

DHT11
GND D8 5V

DHT22
5V D8 GND

Bei­spie­le für DHT11/DHT22 Sen­so­ren.
Die Pin­be­le­gung kann sich von der hier gezeig­ten unter­schei­den. Ach­te auf die Beschriftung!

Der Seri­el­le Moni­tor zeigt Tem­pe­ra­tur und Luft­feuch­tig­keit an

So sieht es aus:

Zunächst musst du eine Biblio­thek installieren:

Das Pro­gramm:

# include "DHT.h"

int SENSOR_DHT = 8;

// Sensortyp festlegen
// DHT22
// # define SensorTyp DHT22 

// DHT11
# define SensorTyp DHT11

// Sensor einen Namen zuweisen
DHT dht(SENSOR_DHT, SensorTyp); 

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

void loop() 
{
  // Variablen für Temperatur und Luftfeuchtigkeit
  float Temperatur;
  float Luftfeuchtigkeit;

  // Temperatur lesen 
  Temperatur = dht.readTemperature();

  // replace -> . durch , ersetzen
  String AnzeigeTemperatur = String(Temperatur);
  AnzeigeTemperatur.replace(".", ",");

  // Luftfeuchtigkeit lesen 
  Luftfeuchtigkeit = dht.readHumidity();

  // replace -> . durch , ersetzen
  String AnzeigeLuftfeuchtigkeit = String(Luftfeuchtigkeit);
  AnzeigeLuftfeuchtigkeit.replace(".", ",");

  // Anzeige im Seriellen Monitor
  // \u00b0 = °
  Serial.println("Temperatur: " + AnzeigeTemperatur + " \u00b0C");
  Serial.println("Luftfeuchtigkeit: " + AnzeigeLuftfeuchtigkeit + " %");

  delay(2000);
}

Letzte Aktualisierung: 7. Okt 2023 @ 11:27