ESP32 – Pumpe für Bodenfeuchtigkeitssensor
In diesem Tutorial lernen wir, wie man den ESP32 verwendet, um die Pumpe entsprechend dem vom kapazitiven Bodenfeuchtesensor gelesenen Wert zu steuern.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Kaufhinweis: Viele kapazitive Bodenfeuchtigkeitssensoren auf dem Markt sind von geringer Qualität, unabhängig von der Version. Wir empfehlen dringend den Kauf des Sensors mit TLC555I-Chip von der Marke DIYables über den obigen Link. Wir haben ihn getestet und er funktionierte gut.
Über den Bodenfeuchtesensor und die Pumpe
Wenn Sie nichts über Pumpe und Bodenfeuchtesensor (Pinbelegung, wie sie funktionieren, wie man sie programmiert ...) wissen, lernen Sie in den folgenden Tutorials mehr über sie:
- ESP32 - Soil Moisture Sensor tutorial
- ESP32 - Controls Pump tutorial
Wie es funktioniert
Der ESP32 liest periodisch den Wert des kapazitiven Bodenfeuchtigkeitssensors aus. Je nach Bodenfeuchtigkeitswert werden die folgenden Maßnahmen ergriffen:
- Wenn der Bodenfeuchtigkeitswert unter einem Schwellenwert liegt, aktiviert der ESP32 automatisch ein Relais, um eine Pumpe einzuschalten.
- Andernfalls deaktiviert der ESP32 automatisch ein Relais, um eine Pumpe auszuschalten.
Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wenn Sie nicht wissen, wie Sie ESP32 und andere Komponenten mit Strom versorgen, finden Sie Anleitungen im folgenden Tutorial: Wie man ESP32 mit Strom versorgt.
ESP32-Code
Schnelle Schritte
- Falls dies das erste Mal ist, dass Sie ESP32 verwenden, sehen Sie sich wie man die Umgebung für ESP32 in der Arduino IDE einrichtet an.
- Führen Sie eine Kalibrierung durch, um die Nass-/Trocken-Schwelle festzulegen, siehe ESP32 - Kalibriert Bodenfeuchtigkeitssensor.
- Aktualisieren Sie den kalibrierten Wert auf THRESHOLD im Code.
- Öffnen Sie den Serial Monitor in der Arduino-IDE.
- Laden Sie den Code auf den ESP32 hoch.
- Prüfen Sie das Ergebnis im Serial Monitor.
Code-Erklärung
Lies die Zeile-für-Zeile-Erklärung in den Kommentarzeilen des Quellcodes!
※ Notiz:
Dieses Tutorial verwendet die Funktion analogRead(), um Werte von einem ADC (Analog-Digital-Wandler) zu lesen, der mit einem Bodenfeuchtesensor verbunden ist. Der ESP32-ADC eignet sich gut für Projekte, die keine hohe Genauigkeit benötigen. Für Projekte, die jedoch präzise Messungen benötigen, beachten Sie bitte:
- Der ESP32-ADC ist nicht perfekt genau und könnte eine Kalibrierung für korrekte Ergebnisse benötigen. Jedes ESP32-Board kann etwas unterschiedlich sein, daher müssen Sie den ADC für jedes einzelne Board kalibrieren.
- Die Kalibrierung kann schwierig sein, insbesondere für Anfänger, und liefert möglicherweise nicht immer genau die gewünschten Ergebnisse.
Für Projekte, die eine hohe Präzision benötigen, erwägen Sie die Verwendung eines externen ADCs (z. B. ADS1115) mit dem ESP32 oder die Verwendung eines Arduino, das einen zuverlässigeren ADC besitzt. Wenn Sie den ESP32-ADC dennoch kalibrieren möchten, lesen Sie ESP32 ADC Calibration Driver
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.