Arduino-Code und Video für den DHT11-Temperatur- und Feuchtigkeitssensor

Arduino-Code und Video für den DHT11-Temperatur- und Feuchtigkeitssensor

In diesem Tutorial werden wir erkunden, wie man den DHT11-Temperatur- und Feuchtigkeitssensor mit einem Arduino verwendet. Dieser Sensor ist eine kostengünstige Möglichkeit, sowohl Temperatur als auch Feuchtigkeit zu messen, und damit eine ideale Wahl für verschiedene Projekte. Wir behandeln die Verkabelung, den benötigten Code und wie die Komponenten zusammenwirken, um genaue Messwerte zu liefern.

DHT11 Module

Am Ende dieses Tutorials werden Sie in der Lage sein, die Temperatur in Celsius, Fahrenheit und Kelvin sowie die Luftfeuchtigkeit vom DHT11-Sensor abzulesen. Zur zusätzlichen Verdeutlichung sollten Sie sich das Video an den angegebenen Zeitstempeln ansehen (im Video bei 00:00).

Hardware erklärt

Der DHT11-Sensor besteht aus drei Pins: Masse-Pin, Versorgungs-Pin und Daten-Pin. Der Masse-Pin wird mit der Masse des Arduino verbunden, während der Versorgungs-Pin an eine 5V-Versorgung des Arduino angeschlossen wird. Der Daten-Pin ist für die Kommunikation zwischen dem Arduino und dem Sensor verantwortlich und ermöglicht es dem Arduino, Temperatur- und Feuchtigkeitswerte auszulesen.

Dieser Sensor verfügt über einen digitalen Ausgang, was bedeutet, dass er Daten im seriellen Format an den Arduino sendet. Er enthält einen Thermistor zur Temperaturmessung und einen kapazitiven Feuchtigkeitssensor. Der DHT11 wandelt die analogen Signale, die er empfängt, in digitale Signale um, wodurch Mikrocontrollern wie dem Arduino die Datenverarbeitung erleichtert wird.

Datenblattdetails

HerstellerASAIR
TeilenummerDHT11
Logik-/I/O-Spannung3.3-5.5 V
Versorgungsspannung3.3-5.5 V
Ausgangsstrom (pro Kanal)0,5 mA
Spitzenstrom (pro Kanal)2,5 mA
Leitfaden zur PWM-Frequenznicht zutreffend
Eingangslogik-Schwellenwerte0,3*VDDauf 0.7*VDD
Spannungsabfall / RDS(on)/ SättigungNicht zutreffend
Thermische Grenzwerte0 bis 60 °C
Paket4-poliger DIP
Notizen / VariantenKostengünstig, einfach zu bedienen

  • Betriebsspannung zwischen 3,3 V und 5,5 V.
  • Maximaler Ausgangsstrom von 2.5 mA.
  • Temperaturbereich von 0 bis 60 Grad Celsius.
  • Luftfeuchtigkeitsbereich von 20 % bis 90 %.
  • Verwenden Sie einen Pull-up-Widerstand am Daten-Pin für stabile Messwerte.
  • Stellen Sie eine ordnungsgemäße Verbindung sicher, um schwebende Eingänge zu vermeiden.
  • Achten Sie beim Anschließen der Stromversorgung auf vertauschte Polung.
  • Warten Sie mindestens 1 Sekunde zwischen den Messungen, um genaue Ergebnisse zu erhalten.

Verdrahtungsanleitung

Arduino wiring for DHT11 Temperature and humidity sensor
Arduino wiring for DHT11 Temperature and humidity sensor

Um den DHT11-Sensor an Ihren Arduino anzuschließen, befolgen Sie diese Schritte:

Schließen Sie zuerst den Masse-Pin (meist schwarz oder braun) des DHT11 an die Masse (GND) am Arduino an. Verbinden Sie danach den Versorgungs-Pin (meist rot) des DHT11 mit dem 5V-Ausgang am Arduino. Schließlich verbinden Sie den Daten-Pin (meist gelb oder weiß) mit dem digitalen Pin 2 am Arduino. Achten Sie darauf, einen Pull-up-Widerstand (etwa 10 kΩ) zwischen dem Daten-Pin und dem Versorgungs-Pin zu verwenden, um eine stabile Kommunikation zu gewährleisten.

Codebeispiele & Schritt-für-Schritt-Anleitung

Im Arduino-Code beginnen wir damit, die notwendige Header-Datei für den DHT11-Sensor einzubinden:

#include 

Diese Zeile importiert die Bibliothek, die die Funktionen enthält, die zum Arbeiten mit dem DHT11-Sensor erforderlich sind. Als Nächstes erstellen wir eine Instanz der DHT11-Klasse:

dht11 DHT11; // create object of DHT11

Diese Zeile initialisiert das DHT11-Objekt, das wir zum Auslesen der Sensordaten verwenden werden. Der mit dem DHT11 verbundene Pin wird definiert als:

#define dhtpin 2 // set the pin to connect to DHT11

Dies setzt den Datenpin des Sensors auf Pin 2 am Arduino. In demloop()Funktion: Wir lesen die Sensordaten:

DHT11.read(dhtpin);// initialize the reading

Diese Zeile startet den Lesevorgang, und die Luftfeuchtigkeit kann mit folgendem abgerufen werden:

int humidity = DHT11.humidity;// get humidity

Der Feuchtigkeitswert wird in der Variable gespeichert.humidity, welches dann zusammen mit in Celsius, Fahrenheit und Kelvin umgerechneten Temperaturwerten auf dem seriellen Monitor ausgegeben wird.

Vorführung / Was Sie erwartet

Wenn Sie den Code ausführen, sollten Sie Temperatur- und Luftfeuchtigkeitswerte im seriellen Monitor angezeigt sehen. Die Temperaturwerte werden alle eine halbe Sekunde aktualisiert (im Video bei 00:00). Wenn der Sensor erwärmt oder gekühlt wird, werden Sie feststellen, dass sich die Werte entsprechend ändern. Seien Sie vorsichtig, da der DHT11 eine maximale Temperaturgrenze von 60 Grad Celsius hat; ein Überschreiten kann zu ungenauen Messwerten führen.

Video-Zeitstempel

  • 00:00- Einführung in den DHT11-Sensor
  • 01:30- Verdrahtungsanleitung
  • 02:15- Übersicht über den Code
  • 03:00- Ausführen des Codes und erwartete Ausgabe

Bilder

Arduino wiring for DHT11 Temperature and humidity sensor
Arduino wiring for DHT11 Temperature and humidity sensor
DHT11 Module
DHT11 Module
DHT11 Module
DHT11 Module
53-This is the Arduino code and video for a DHT11 temperature and humidity sensor.
Sprache: C++
Kopiert!

Ressourcen & Referenzen

Dateien📁

Arduino-Bibliotheken (zip)

Fritzing-Datei

|||Benutzerhandbuch