Arduino Nano ESP32 - Temperatur- und Luftfeuchtigkeitssensor

Dieses Tutorial gibt Anleitungen dazu, wie man den Arduino Nano ESP32 verwendet, um Temperatur- und Feuchtigkeitswerte von DHT11- oder DHT22-Sensoren zu lesen und sie im Seriellen Monitor auszugeben.

Erforderliche Hardware

1×Arduino Nano ESP32
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×DHT11 Temperatur-Feuchtigkeitssensor-Modul
1×(Optional) Temperature and Humidity Sensor DHT22
1×10 kΩ Resistor
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Breakout-Erweiterungsboard für Arduino Nano
1×(Empfohlen) Stromverteiler für Arduino Nano ESP32

Oder Sie können die folgenden Kits kaufen:

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 DHT11- und DHT22-Temperatur- und Feuchtigkeitssensoren

Kurz gesagt ist der DHT22-Sensor genauer, hat einen größeren Messbereich, ist aber teurer als der DHT11. Lassen Sie uns die Gemeinsamkeiten und Unterschiede zwischen ihnen betrachten.

Die Allmende

  • Die gleiche Pinbelegung
  • Die gleiche Verkabelung zum Arduino Nano ESP32
  • Ein ähnlicher Code für den Arduino Nano ESP32

Die Unterschiede

Die folgende Tabelle zeigt die detaillierten Unterschiede zwischen DHT11 und DHT22.

DHT22 DHT11
The price low cost ultra low cost
The humidity range 0% to 100% 20% to 80%
The humidity accuracy ± 2% to 5% 5%
The temperature range -40°C to 80°C 0°C to 50°C
The temperature accuracy ± 0.5°C ± 2°C
The reading rate 0.5Hz (one time per 2 seconds) 1Hz (one time per second)
Dimension 15.1mm x 25mm x 7.7mm 15.5mm x 12mm x 5.5mm
Operating Voltage3 to 5V 3 to 5V

DHT11 und DHT22 Pinbelegung

DHT11- und DHT22-Sensoren enthalten 4 Pins:

  • GND-Pin: Verbinden Sie diesen Pin mit GND (0 V)
  • VCC-Pin: Verbinden Sie diesen Pin mit VCC (3,3 V oder 5 V)
  • DATA-Pin: Der Pin wird verwendet, um zwischen dem Sensor und dem Arduino Nano ESP32 zu kommunizieren
  • NC-Pin: Nicht verbunden
Pinbelegung der DHT11- und DHT22-Temperatur- und Feuchtigkeitssensoren

Wir empfehlen dringend die Verwendung von DHT11- und DHT22-Sensormodulen. Die Module verfügen über einen eingebauten Widerstand und haben nur drei Pins: VCC, GND und DATA-Pins (oder alternativ: +, -, und OUT-Pins).

DHT11- und DHT22-Temperatur- und Feuchtigkeitsmodul Pinbelegung
image source: diyables.io

Die Reihenfolge der Pins auf dem Modul kann von Hersteller zu Hersteller unterschiedlich sein. Bitte überprüfen Sie die auf dem Modul aufgedruckten Pin-Beschriftungen sorgfältig.

Schaltplan zwischen DHT11/DHT22 und Arduino Nano ESP32

Die Verkabelung zum Arduino Nano ESP32 ist für beide Sensoren dieselbe. In der Originalform ist ein Widerstand von 5 kΩ bis 10 kΩ erforderlich, um die Datenleitung auf High zu halten und die Kommunikation zwischen dem Sensor und dem Arduino Nano ESP32 zu ermöglichen.

Arduino Nano ESP32 - DHT11 Sensorverkabelung

Arduino Nano ESP32 DHT11 Temperatur- und Feuchtigkeitssensor Verdrahtungsdiagramm

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

Arduino Nano ESP32 - DHT22-Sensorverkabelung

Arduino Nano ESP32 DHT22 Temperatur- und Feuchtigkeitssensor Verdrahtungsdiagramm

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

Arduino Nano ESP32 - DHT11-Modulverkabelung

Die meisten DHT22-Sensormodule verfügen über einen integrierten Widerstand, sodass Sie ihn nicht hinzufügen müssen. Das erspart Ihnen etwas Verkabelungs- oder Lötaufwand.

Arduino Nano ESP32 DHT11 Temperatur- und Feuchtigkeitsmodul Verdrahtungsdiagramm

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

Arduino Nano ESP32 – DHT22-Modulverkabelung

Die meisten DHT22-Sensormodule haben einen eingebauten Widerstand, sodass Sie ihn nicht hinzufügen müssen. Das erspart uns etwas Verkabelungs- oder Lötaufwand.

Arduino Nano ESP32 DHT22 Temperatur- und Feuchtigkeitsmodul Schaltplan

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

Arduino Nano ESP32 Code - DHT11

/* * Dieser Arduino Nano ESP32 Code wurde von newbiely.de entwickelt * Dieser Arduino Nano ESP32 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-nano-esp32/arduino-nano-esp32-temperature-humidity-sensor */ #include <DHT.h> #define DHT_SENSOR_PIN D3 // The Arduino Nano ESP32 pin D31 connected to DHT11 sensor #define DHT_SENSOR_TYPE DHT11 DHT dht_sensor(DHT_SENSOR_PIN, DHT_SENSOR_TYPE); void setup() { Serial.begin(9600); dht_sensor.begin(); // initialize the DHT sensor } void loop() { // read humidity float humi = dht_sensor.readHumidity(); // read temperature in Celsius float temperature_C = dht_sensor.readTemperature(); // read temperature in Fahrenheit float temperature_F = dht_sensor.readTemperature(true); // check whether the reading is successful or not if ( isnan(temperature_C) || isnan(temperature_F) || isnan(humi)) { Serial.println("Failed to read from DHT sensor!"); } else { Serial.print("Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(temperature_C); Serial.print("°C ~ "); Serial.print(temperature_F); Serial.println("°F"); } // wait a 2 seconds between readings delay(2000); }

Arduino Nano ESP32-Code - DHT22

/* * Dieser Arduino Nano ESP32 Code wurde von newbiely.de entwickelt * Dieser Arduino Nano ESP32 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-nano-esp32/arduino-nano-esp32-temperature-humidity-sensor */ #include <DHT.h> #define DHT_SENSOR_PIN D3 // The Arduino Nano ESP32 pin D31 connected to DHT22 sensor #define DHT_SENSOR_TYPE DHT22 DHT dht_sensor(DHT_SENSOR_PIN, DHT_SENSOR_TYPE); void setup() { Serial.begin(9600); dht_sensor.begin(); // initialize the DHT sensor } void loop() { // read humidity float humi = dht_sensor.readHumidity(); // read temperature in Celsius float temperature_C = dht_sensor.readTemperature(); // read temperature in Fahrenheit float temperature_F = dht_sensor.readTemperature(true); // check whether the reading is successful or not if ( isnan(temperature_C) || isnan(temperature_F) || isnan(humi)) { Serial.println("Failed to read from DHT sensor!"); } else { Serial.print("Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(temperature_C); Serial.print("°C ~ "); Serial.print(temperature_F); Serial.println("°F"); } // wait a 2 seconds between readings delay(2000); }

Die beiden obigen Codes unterscheiden sich nur in einer Zeile.

Schnelle Schritte

Um mit dem Arduino Nano ESP32 zu beginnen, folgen Sie diesen Schritten:

  • Wenn Sie neu bei Arduino Nano ESP32 sind, lesen Sie das Tutorial zu wie man die Umgebung für Arduino Nano ESP32 in der Arduino IDE einrichtet.
  • Verdrahten Sie die Komponenten gemäß dem bereitgestellten Diagramm.
  • Schließen Sie das Arduino Nano ESP32-Board mit einem USB-Kabel an Ihren Computer an.
  • Starten Sie die Arduino IDE auf Ihrem Computer.
  • Wählen Sie das Arduino Nano ESP32-Board und seinen entsprechenden COM-Port aus.
  • Öffnen Sie den Library Manager, indem Sie auf das Library Manager-Symbol in der linken Navigationsleiste der Arduino IDE klicken.
  • Geben Sie „Adafruit DHT“ in das Suchfeld ein und suchen Sie anschließend nach der DHT-Sensorbibliothek von Adafruit.
  • Installieren Sie die Bibliothek, indem Sie auf die Schaltfläche Install klicken.
Arduino Nano ESP32 DHT-Sensor-Bibliothek
  • Ein Fenster kann erscheinen, das Sie auffordert, Abhängigkeiten für die Bibliothek zu installieren
  • Installieren Sie alle Abhängigkeiten der Bibliothek, indem Sie auf die Install All-Schaltfläche klicken.
Arduino Nano ESP32 Adafruit Unified Sensor-Bibliothek
  • Kopieren Sie einen der oben gezeigten Codes und öffnen Sie ihn mit der Arduino IDE
  • Kompilieren und auf das Arduino Nano ESP32-Board hochladen, indem Sie in der Arduino IDE auf die Schaltfläche Hochladen klicken
  • Bringen Sie den Sensor kälter oder heißer. Zum Beispiel, indem Sie den Sensor in die Nähe einer heißen Tasse Kaffee bringen
  • Überprüfen Sie das Ergebnis im Serial Monitor. Es sieht wie folgt aus:
COM6
Send
Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F 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!