ESP8266 - Regensensor
Der Regensensor erkennt und misst Regen-/Schneemengen und bietet sowohl digitale (LOW/HIGH) als auch analoge Ausgänge. Dieses Tutorial demonstriert, wie ein ESP8266 verwendet wird, um den Regensensor anzuschließen und zu nutzen, und deckt folgende Punkte ab:
- Anschluss des Regensensors an den ESP8266.
- Den ESP8266 so programmieren, dass Regen durch das digitale Signal erkannt wird.
- Den ESP8266 so programmieren, dass Regenwerte mithilfe des analogen Signals gemessen werden.
Anschließend können Sie den Code so anpassen, dass er einen Motor aktiviert oder eine Warnung ausgibt, wenn Regen oder Schnee erkannt wird.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über Regen-Sensor
Der Regensensor kann Regen erkennen oder den Wasserstand messen. Er bietet zwei Optionen: einen digitalen Ausgangspin und einen analogen Ausgangspin.
Der Sensor besteht aus zwei Bauteilen: dem Sensorpad und dem elektronischen Modul.

Das Sensorpad
Das Sensorpad, das im Freien platziert ist (z. B. auf dem Dach), verfügt über freiliegende Kupferspuren, die in zwei Gruppen unterteilt sind: Leistungsspuren und Sense-Spuren. Diese Spuren bleiben unverbunden, es sei denn, Wasser oder Schnee überbrückt sie. Sowohl Leistungs- als auch Sense-Spuren sind identisch, was Flexibilität bei der Zuordnung einer als Leistungsspur und der anderen als Sense-Spur ermöglicht.
Das elektronische Modul
Das elektronische Modul des Regensensors wandelt Signale von der Sensorplatte in analoge oder digitale Werte um, die vom ESP8266 NodeMCU gelesen werden können. Es umfasst vier Pins:
- VCC-Pin: Schließt an VCC an (3,3 V bis 5 V).
- GND-Pin: Schließt an GND an (0 V).
- DO-Pin: Digitaler Ausgangspin, der HIGH anzeigt, wenn kein Regen erkannt wird, und LOW, wenn Regen erkannt wird. Der Schwellenwert für die Regen-Erkennung ist mit einem eingebauten Potentiometer einstellbar.
- AO-Pin: Analoger Ausgangspin, dessen Wert mit zunehmendem Wasser auf dem Sensorpad abnimmt und mit abnehmendem Wasser zunimmt.
Darüber hinaus verfügt es über zwei LED-Anzeigen:
- PWR-LED-Anzeige für die Stromversorgung.
- DO-LED-Anzeige für den Regenzustand am DO-Pin, leuchtet, wenn Regen vorhanden ist.
Wie es funktioniert
Bezüglich des DO-Pins:
- Das Modul ist mit einem integrierten Potentiometer ausgestattet, um die Empfindlichkeitsschwelle einzustellen.
- Wenn die Intensität den Schwellenwert überschreitet, wird Regen erkannt, und der Ausgangspin des Sensors geht auf LOW, wodurch die DO-LED eingeschaltet wird.
- Umgekehrt, wenn die Intensität unter den Schwellenwert fällt, wird kein Regen erkannt, der Ausgangspin geht auf HIGH, und die DO-LED schaltet sich aus.
Bezüglich des AO-Pins:
- Der AO-Pin-Wert nimmt bei mehr Wasser im Sensorpad ab.
- Umgekehrt nimmt der AO-Pin-Wert zu, wenn im Sensorpad weniger Wasser vorhanden ist.
Es ist wichtig zu beachten, dass das Potentiometer den Wert am AO-Pin nicht beeinflusst.
Verdrahtungsdiagramm
Wie bereits erwähnt, kann das direkte Anschließen des VCC-Pins des Sensors an die 3,3-V- oder 5-V-Pins des ESP8266 die Lebensdauer des Sensors durch elektrochemische Korrosion verkürzen. Der empfohlene Ansatz besteht darin, den VCC-Pin des Regensensors an einen Ausgangspin des ESP8266 anzuschließen. Indem Sie diesen Pin programmieren, kann der Regensensor nur während der Messungen mit Strom versorgt werden, wodurch die Auswirkungen der elektrochemischen Korrosion minimiert werden.
Da das Regensensor-Modul zwei Ausgänge hat, können Sie je nach Bedarf einen oder beide verwenden.
- Der Schaltplan zwischen dem ESP8266 und dem Regensensor bei Verwendung von DO allein.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Weitere Informationen finden Sie unter ESP8266-Pinbelegung und wie man ESP8266 und andere Komponenten mit Strom versorgt.
- Das Verdrahtungsdiagramm zwischen ESP8266 und dem Regensensor, wenn nur AO verwendet wird.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
- Das Verdrahtungsdiagramm zwischen dem ESP8266 und dem Regen-Sensor, wenn sowohl AO als auch DO verwendet werden.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
ESP8266-Code - Wert vom DO-Pin auslesen
Schnelle Schritte
Um mit dem ESP8266 in der Arduino-IDE zu beginnen, folgen Sie diesen Schritten:
- Schauen Sie sich das Tutorial zur Einrichtung der Umgebung für ESP8266 in der Arduino IDE an, falls Sie ESP8266 zum ersten Mal verwenden.
- Verdrahten Sie die Bauteile wie im Diagramm gezeigt.
- Schließen Sie das ESP8266-Board mit einem USB-Kabel an Ihren Computer an.
- Öffnen Sie die Arduino IDE auf Ihrem Computer.
- Wählen Sie das richtige ESP8266-Board aus, z. B. NodeMCU 1.0 (ESP-12E Module), und den entsprechenden COM-Port.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino-IDE.
- Klicken Sie auf die Schaltfläche Upload in der Arduino-IDE, um den Code auf den ESP8266 hochzuladen.
- Tropfen Sie etwas Wasser auf den Regensensor.
- Überprüfen Sie das Ergebnis im Serial Monitor.
Bitte beachten Sie, dass Sie feststellen, dass der LED-Status dauerhaft eingeschaltet bleibt oder auch ausgeschaltet ist, selbst wenn der Sensor dem Regen ausgesetzt ist. Sie können das Potentiometer einstellen, um die Empfindlichkeit des Sensors fein abzustimmen.
ESP8266-Code - Wert vom A0-Pin lesen
Schnelle Schritte
- Verdrahten Sie die Komponenten wie im Diagramm gezeigt.
- Schließen Sie das ESP8266-Board mit einem USB-Kabel an Ihren Computer an.
- Öffnen Sie die Arduino IDE auf Ihrem Computer.
- Wählen Sie das richtige ESP8266-Board aus, z. B. NodeMCU 1.0 (ESP-12E Module), und den entsprechenden COM-Port.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino IDE.
- Klicken Sie in der Arduino IDE auf die Schaltfläche Hochladen, um den Code auf den ESP8266 hochzuladen.
- Gießen Sie etwas Wasser auf den Regensensor.
- Überprüfen Sie das Ergebnis im Seriellen Monitor.
※ Notiz:
Diese Anleitung verwendet die Funktion analogRead(), um Daten von einem ADC (Analog-Digital-Wandler) zu erhalten, der an einen Sensor oder eine andere Komponente angeschlossen ist. Der ADC des ESP8266 funktioniert gut für Projekte, bei denen man keine sehr genauen Messwerte benötigt. Aber denken Sie daran, dass der ADC des ESP8266 für detaillierte Messungen nicht besonders genau ist. Wenn Ihr Projekt sehr präzise sein muss, sollten Sie vielleicht einen separaten ADC wie den ADS1115 mit dem ESP8266 verwenden, oder einen Arduino wie den Arduino Uno R4 WiFi verwenden, der einen zuverlässigeren ADC besitzt.
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.