Arduino - DHT11

In diesem Tutorial werden wir lernen:

Erforderliche Hardware

1×Arduino Uno R3
1×USB 2.0 Kabel Typ A/B (für USB-A PC)
1×USB 2.0 Kabel Typ C/B (für USB-C PC)
1×DHT11 Temperatur-Feuchtigkeitssensor-Modul
1×10 kΩ Resistor
1×Breadboard
1×Verbindungskabel
1×(Empfohlen) Schraubklemmenblock-Shield für Arduino Uno
1×(Empfohlen) Breadboard-Shield für Arduino Uno
1×(Empfohlen) Gehäuse für Arduino Uno
1×(Empfohlen) Prototyping-Grundplatte & Breadboard-Kit für Arduino Uno

Oder Sie können die folgenden Kits kaufen:

1×DIYables STEM V3 Starter-Kit (Arduino enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Über den DHT11-Temperatur- und Feuchtigkeitssensor

DHT11
Operating Voltage3 to 5V
Temperature Range 0°C to 50°C
Temperature Accuracy ± 2°C
Humidity Range 20% to 80%
Humidity Accuracy 5%
Reading Rate 1Hz (once every second)

Pinbelegung

DHT11 hat zwei Formen: Sensor und Modul.

DHT11-Temperatur- und Feuchtigkeitssensor Pinbelegung

Der DHT11-Sensor hat vier Anschlüsse:

  • GND-Pin: muss mit GND (0V) verbunden werden
  • VCC-Pin: muss mit VCC verbunden werden (5V oder 3,3V)
  • DATA-Pin: Der Pin wird verwendet, um zwischen dem Sensor und dem Arduino zu kommunizieren
  • NC-Pin: Nicht verbunden, diesen Pin können wir ignorieren

Das DHT11-Modul hat drei Pins:

  • GND-Pin: muss mit GND (0 V) verbunden werden
  • VCC-Pin: muss mit VCC (5 V oder 3,3 V) verbunden werden
  • DATA-Pin: Der Pin wird verwendet, um zwischen Sensor und Arduino zu kommunizieren

Einige Hersteller bieten den DHT11-Sensor in Modulform mit drei Anschlüssen an: GND, VCC und DATA-Anschlüsse (oder alternativ: -, + und OUT-Anschlüsse).

Verdrahtungsdiagramm

Im Sensorbetrieb ist ein Widerstand von 5 kΩ bis 10 kΩ erforderlich, um die Datenleitung auf High-Pegel zu halten und die Kommunikation zwischen dem DHT11-Sensor und dem Arduino zu ermöglichen.

Arduino - DHT11 Sensorverkabelung

Arduino DHT11 Temperatur- und Feuchtigkeitssensor Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Arduino - DHT11-Modulverkabelung

Die meisten DHT11-Sensormodule haben einen integrierten Widerstand, sodass Sie ihn nicht hinzufügen müssen. Das spart uns etwas Verdrahtungs- oder Lötarbeiten.

Arduino DHT11 Temperatur- und Feuchtigkeitsmodul Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Wie man den DHT11-Temperatursensor programmiert

Die Programmierung beider Sensoren ist ähnlich. Es gibt nur eine Codezeile, die unterschiedlich ist.

  • Die Bibliothek einbinden:
#include "DHT.h"
  • Definieren Sie den Arduino-Pin, der mit dem DHT-Sensor verbunden ist:
#define DHT11_PIN 2
  • DHT11-Objekt deklarieren
DHT dht11(DHT11_PIN, DHT11);
  • Initialisieren Sie den Sensor:
dht11.begin();
  • Luftfeuchtigkeit auslesen:
float humi = dht11.readHumidity();
  • Temperatur in Celsius lesen:
float tempC = dht11.readTemperature();
  • Temperatur in Fahrenheit lesen:
float tempF = dht11.readTemperature(true);

Arduino-Code - DHT11

/* * Dieser Arduino Code wurde von newbiely.de entwickelt * Dieser Arduino Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino/arduino-dht11 */ #include "DHT.h" #define DHT11_PIN 2 DHT dht11(DHT11_PIN, DHT11); void setup() { Serial.begin(9600); dht11.begin(); // initialize the sensor } void loop() { // wait a few seconds between measurements. delay(2000); // read humidity float humi = dht11.readHumidity(); // read temperature as Celsius float tempC = dht11.readTemperature(); // read temperature as Fahrenheit float tempF = dht11.readTemperature(true); // check if any reads failed if (isnan(humi) || isnan(tempC) || isnan(tempF)) { Serial.println("Failed to read from DHT11 sensor!"); } else { Serial.print("DHT11# Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(tempC); Serial.print("°C ~ "); Serial.print(tempF); Serial.println("°F"); } }

Schnelle Schritte

  • Verbinden Sie Arduino über ein USB-Kabel mit dem PC
  • Öffnen Sie die Arduino-IDE, wählen Sie das richtige Board und den richtigen Port aus
  • Navigieren Sie zum Bibliotheken-Symbol in der linken Leiste der Arduino-IDE.
  • Suchen Sie “DHT”, und finden Sie dann die DHT-Sensor-Bibliothek von Adafruit
  • Klicken Sie auf die Installieren-Schaltfläche, um die Bibliothek zu installieren.
Arduino DHT-Sensor-Bibliothek
  • Sie werden aufgefordert, einige weitere Bibliotheksabhängigkeiten zu installieren.
  • Klicken Sie auf die Schaltfläche Alle installieren, um alle Bibliotheksabhängigkeiten zu installieren.
Arduino Adafruit einheitliche Sensorbibliothek
  • Kopieren Sie den obigen Code, der dem Sensor entspricht, den Sie haben, und öffnen Sie ihn in der Arduino IDE
  • Klicken Sie auf die Schaltfläche Hochladen in der Arduino IDE, um den Code auf den Arduino hochzuladen
  • Machen Sie die Umgebung des Sensors heißer oder kälter
  • Sehen Sie das Ergebnis im Serial Monitor.
COM6
Send
DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F DHT11# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F DHT11# Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F DHT11# Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!