ESP32 S3 - Bodenfeuchtesensor mit Pumpe
In diesem Tutorial lernen Sie, wie Sie mit dem ESP32 S3 eine Wasserpumpe anhand der Messwerte eines kapazitiven Bodenfeuchtesensors automatisch steuern. Dies ist eine praktische Fähigkeit für den Bau intelligenter Bewässerungssysteme, die Pflanzen ohne manuelles Gießen gesund halten.
Was Sie bauen werden:
- Ein System, das mit einem am ESP32 S3 angeschlossenen kapazitiven Sensor regelmäßig die Bodenfeuchte misst
- Eine automatische Schaltung zum Einschalten der Pumpe, wenn der Boden zu trocken ist
- Eine automatische Schaltung zum Ausschalten der Pumpe, wenn der Boden ausreichend feucht ist
- Eine wiederverwendbare ESP32 S3 Grundlage zur Bodenüberwachung, die Sie zu einem vollständigen automatischen Bewässerungssystem erweitern können
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables ESP32 S3 Starter-Kit (ESP32 S3 enthalten) | |
| 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.
Überblick über Soil Moisture Sensor and Pump
Ein kapazitiver Bodenfeuchtesensor misst den volumetrischen Wassergehalt des Bodens, indem er Kapazitätsänderungen statt der Leitfähigkeit erfasst, was ihn langlebiger und korrosionsbeständiger macht als resistive Alternativen. Die analoge Ausgangsspannung des Sensors sinkt mit zunehmender Feuchtigkeit, sodass niedrigere ADC-Werte feuchterem Boden entsprechen. Ein Relaismodul dient als Schalter zwischen dem ESP32 S3 und dem 12-V-Pumpenkreis, sodass der stromsparende Mikrocontroller eine Last mit hohem Strom sicher und ohne Beschädigungsrisiko steuern kann.
Wichtige Spezifikationen
Wenn Sie mit dem Bodenfeuchtesensor oder der Pumpe noch nicht vertraut sind — einschließlich ihrer Pinbelegung, Funktionsweise und Programmierung —, sehen Sie sich die folgenden Tutorials an, bevor Sie fortfahren:
- Tutorial ESP32 S3 - Bodenfeuchtesensor
- Tutorial ESP32 S3 - Pumpe steuern
Funktionsweise
Der ESP32 S3 liest regelmäßig die analoge Spannung des kapazitiven Bodenfeuchtesensors aus und vergleicht sie mit einem kalibrierten Schwellenwert. Je nach Ergebnis führt der ESP32 S3 eine von zwei Aktionen aus:
- Liegt der Bodenfeuchtewert unter dem Schwellenwert (Boden ist trocken), aktiviert der ESP32 S3 das Relais, um die Pumpe einzuschalten.
- Andernfalls deaktiviert der ESP32 S3 das Relais, um die Pumpe auszuschalten.
Verdrahtungsdiagramm
Verbinden Sie den Analogausgang des Bodenfeuchtesensors mit einem ADC-fähigen GPIO-Pin des ESP32 S3 und den Steuerpin des Relais mit einem digitalen Ausgangs-GPIO. Versorgen Sie das Relaismodul je nach Anforderung Ihres Relaismoduls über die 3,3-V- oder 5-V-Leitung des ESP32 S3 und führen Sie die 12-V-Versorgung der Pumpe über den Schließerkontakt (NO) und die gemeinsame Klemme (COM) des Relais.
Sicherheitshinweise
Versorgen Sie die Pumpe immer über ein separates externes 12-V-Netzteil und nicht über das ESP32 S3 Board, da die Stromaufnahme der Pumpe weit über dem liegt, was der USB-Anschluss sicher liefern kann. Stellen Sie sicher, dass die Relaisklemmen COM und NO korrekt mit der 12-V-Versorgung und den Pumpenleitungen verbunden sind — eine vertauschte Polarität kann den Pumpenmotor beschädigen.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Eine Schraubklemme hält jedes Kabel fest, auch wenn die Platine wackelt. Sie können den ESP32 S3 auf ein Schraubklemmen-Board für ESP32 S3 stecken und die Kabel an seine Schraubklemmen anschließen. Unten sehen Sie das Verdrahtungsdiagramm mit dem Schraubklemmen-Board.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Hier ist dieselbe Schaltung mit einem GPIO-Breakout-Board für ESP32 S3, das jeden GPIO auf Stiftleisten herausführt:

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
ESP32 S3 Code
Der folgende Code konfiguriert den ESP32 S3 so, dass er die Bodenfeuchte fortlaufend überwacht und das Relais — und damit die Pumpe — anhand eines benutzerdefinierten Schwellenwerts automatisch ein- oder ausschaltet. Kalibrieren Sie vor dem Hochladen die Konstante THRESHOLD im Sketch passend zu den trockenen und nassen ADC-Werten Ihres Sensors und Ihrer Bodenart.
Schnelle Schritte
- Neu beim ESP32 S3? Arbeiten Sie zuerst unsere Anleitung Erste Schritte mit dem ESP32 S3 durch.
- Kalibrieren Sie Ihren Sensor, um den Schwellenwert THRESHOLD für nass/trocken zu bestimmen, indem Sie dem Tutorial ESP32 S3 - Bodenfeuchtesensor folgen.
- Tragen Sie den kalibrierten Wert im Code bei THRESHOLD ein.
- Verdrahten Sie die Hardware wie im obigen Schaltplan gezeigt.
- Verbinden Sie das ESP32 S3 Board über ein USB-Typ-C-Kabel mit Ihrem PC.
- Öffnen Sie die Arduino IDE auf Ihrem PC.
- Wählen Sie in der Symbolleiste der Arduino IDE das richtige ESP32 S3 Board und den COM-Port aus.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino IDE.
- Klicken Sie auf Upload, um den Code auf den ESP32 S3 hochzuladen.
- Öffnen Sie den seriellen Monitor mit 9600 Baud.
- Stecken Sie die Sonde des Bodenfeuchtesensors in trockene Erde und beobachten Sie, wie die Pumpe eingeschaltet wird.
- Gießen Sie die Erde, bis der Sensor einen Wert über dem Schwellenwert misst, und beobachten Sie, wie die Pumpe ausgeschaltet wird.
- Profi-Tipp: Wenn die Pumpe in der Nähe des Schwellenwerts schnell ein- und ausschaltet (Flattern), fügen Sie im Code eine kleine Hysterese hinzu — zum Beispiel Einschalten bei Werten unter 30 % und Ausschalten erst, wenn die Werte über 35 % steigen —, um unnötigen Verschleiß des Relais zu vermeiden.
Ausgabe im seriellen Monitor
Öffnen Sie den seriellen Monitor mit 9600 Baud. Die folgenden Messwerte sind typisch für den Betrieb im Jahr 2026:
Code-Erklärung
Lesen Sie die zeilenweise Erklärung in den Kommentarzeilen des obigen Codes.
※ Notiz:
Dieses Tutorial verwendet die Funktion analogRead(), um Werte von einem ADC (Analog-Digital-Wandler) zu lesen, der mit einem Bodenfeuchtesensor verbunden ist. Der ADC des ESP32 S3 eignet sich gut für Projekte, die KEINE hohe Genauigkeit erfordern. Für Projekte, die präzise Messungen benötigen, beachten Sie jedoch:
- Der ADC des ESP32 S3 ist nicht perfekt genau und muss für korrekte Ergebnisse möglicherweise kalibriert werden. Jedes ESP32 S3 Board kann etwas anders sein, daher müssen Sie den ADC für jedes einzelne Board kalibrieren.
- Die Kalibrierung kann schwierig sein, besonders für Einsteiger, und liefert nicht immer genau die gewünschten Ergebnisse.
Für Projekte, die hohe Präzision erfordern, sollten Sie einen externen ADC (z. B. ADS1115) mit dem ESP32 S3 verwenden oder einen Arduino einsetzen, der einen zuverlässigeren ADC besitzt. Wenn Sie den ADC des ESP32 S3 dennoch kalibrieren möchten, lesen Sie ESP32 ADC Calibration Driver
Anwendungen
Die Kombination aus kapazitivem Bodenfeuchtesensor und Pumpe am ESP32 S3 ermöglicht eine Vielzahl intelligenter Bewässerungs- und Umweltüberwachungsanwendungen in Haus, Garten und Landwirtschaft.
- Automatische Pflanzenbewässerung: Der ESP32 S3 überwacht die Erde von Topfpflanzen und schaltet eine kleine Pumpe ein, sobald die Feuchtigkeit unter den eingestellten Schwellenwert fällt, sodass Pflanzen weder zu wenig noch zu viel Wasser bekommen.
- Gewächshaus-Bewässerungssteuerung: Mehrere über die Beete verteilte Sensoren liefern Daten an einen ESP32 S3, der einzelne Zonenpumpen steuert, um in jedem Bereich eine optimale Feuchtigkeit zu halten.
- Intelligentes Tropfbewässerungssystem für den Garten: Planen Sie Bewässerungszeiten mit dem ESP32 S3 und übersteuern Sie sie mit Live-Feuchtigkeitswerten, sodass nur dann Wasser abgegeben wird, wenn der Boden es wirklich braucht.
- Überwachung landwirtschaftlicher Felder: Verteilen Sie ESP32 S3 Knoten über ein Feld; jeder Knoten misst die Bodenfeuchte unabhängig und löst eine lokale Pumpe oder ein Ventil zur Bewässerung seiner Zone aus.
- Nährstoffzufuhr für Hydroponik: Verwenden Sie den Feuchtigkeitssensor in kleinen Hydroponiksystemen als Ersatz für die Füllstandsmessung des Vorratsbehälters und lösen Sie eine Pumpe aus, um Nährlösung nachzufüllen, wenn der Füllstand sinkt.
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.
Sehen Sie sich unten die Schritt-für-Schritt-Videoanleitung für dieses ESP32 S3 Projekt an.
Herausforderungen
Nachdem Sie nun ein funktionierendes System aus Bodenfeuchtesensor und Pumpe am ESP32 S3 haben, probieren Sie diese Herausforderungen aus, um Ihr Verständnis zu vertiefen und das Projekt weiter auszubauen.
- Einsteiger: Fügen Sie eine LED-Anzeige hinzu, die leuchtet, solange die Pumpe aktiv ist — verbinden Sie die LED mit einem freien GPIO-Pin und schalten Sie sie im selben Codeblock um, der das Relais steuert.
- Fortgeschritten: Schließen Sie ein OLED-Display an, das den aktuellen Bodenfeuchte-Prozentwert und den Pumpenzustand anzeigt und jede Sekunde aktualisiert wird, damit Sie die Bodenbedingungen auf einen Blick überwachen können.
- Experte: Fügen Sie eine WLAN-Anbindung hinzu, damit der ESP32 S3 Feuchtigkeitswerte und Pumpenereignisse an einen Webserver oder ein Cloud-Dashboard protokolliert, was eine Fernüberwachung und Anpassung des Schwellenwerts ohne erneutes Flashen der Firmware ermöglicht.