ESP32 Tutorial 24/55 - Messung der Bodenfeuchtigkeit für die Bewässerung | SunFounder's ESP32 IoT Lernkit

ESP32 Tutorial 24/55 - Messung der Bodenfeuchtigkeit für die Bewässerung | SunFounder's ESP32 IoT Lernkit

In diesem Tutorial werden wir lernen, wie man den SunFounder ESP32 zusammen mit einem Bodenfeuchtesensor verwendet, um den Feuchtigkeitsgehalt im Boden zu messen, was bei der Automatisierung von Bewässerungssystemen helfen kann. Durch die Überwachung der Feuchtigkeitswerte können wir einen Summer auslösen, wenn die Feuchtigkeit unter einen bestimmten Schwellenwert fällt, was anzeigt, dass die Pflanzen gegossen werden müssen. Dieses Projekt ist wertvoll für die Erhaltung der Pflanzen Gesundheit und kann für verschiedene Anwendungen der Umweltsensorik erweitert werden. (im Video bei 00:00)

bodenfeuchtigkeitsmodul

Wir werden einen kapazitiven Bodensensor für die Feuchtigkeit verwenden, der funktioniert, indem er die Änderung der Kapazität zwischen zwei Platten misst, die je nach Feuchtigkeitsgehalt des umgebenden Mediums variiert. Dieser Sensor wird eine analoge Ausgabe liefern, die den Feuchtigkeitspegel widerspiegelt, sodass wir Entscheidungen auf der Grundlage der Messwerte treffen können. Der ESP32 wird die analoge Ausgabe lesen und einen Summer aktivieren, wenn der Boden zu trocken ist.

Hardware erklärt

Für dieses Projekt sind die Hauptkomponenten der SunFounder ESP32 Mikrocontroller, der kapazitive Bodenfeuchtesensor und ein Summer. Der ESP32 verfügt über integriertes Wi-Fi und Bluetooth, was Fernüberwachung und -steuerung ermöglicht. Der Bodenfeuchtesensor besteht aus zwei Platten, die die Kapazität messen, die je nach Feuchtigkeitsgehalt im Boden variiert. Diese Änderung der Kapazität beeinflusst die Ausgangsspannung, die der ESP32 über seinen analogen Eingang liest. Der Summer wird uns alarmieren, wenn der Feuchtigkeitsgehalt unter einen festgelegten Schwellenwert fällt.

bodenfeuchtemodul_schema

Datenblattdetails

Hersteller SunFounder
Teilenummer Bodenfeuchtesensor
Betriebsspannung 3,3 bis 5 V
Ausgabeart Analog
Signalreichweite 0 bis 3,3 V
Reaktionszeit Schnell
Abmessungen Ungefähr 60 x 20 mm
Hinweise / Varianten Kapazitiver Sensor

  • Stellen Sie sicher, dass der Sensor nicht vollständig in Wasser eingetaucht wird, um Schäden zu vermeiden.
  • Verwenden Sie gegebenenfalls geeignete Pull-up-Widerstände für stabile Messwerte.
  • Kalibriere den Sensor für deinen spezifischen Bodentyp für genaue Feuchtigkeitsmessungen.
  • Warten Sie auf die ordnungsgemäßen Verdrahtungsverbindungen, um Signalverluste zu vermeiden.
  • Seien Sie vorsichtig mit der Stromversorgung, um Situationen mit Überspannung zu vermeiden.

Verdrahtungsanleitungen

ESP32-24-soild-moisture-wiring

Um den Bodenfeuchtesensor mit dem ESP32 zu verbinden, schließen Sie den VCC-Pin des Sensors an den 3,3V-Pin des ESP32 an. Verbinden Sie anschließend den GND-Pin des Sensors mit einem GND-Pin des ESP32. Der analoge Ausgangspin des Bodenfeuchtesensors sollte mit dem analogen Pin verbunden werden.35am ESP32. Für den Summer schließen Sie den positiven Pin an den digitalen Pin an13Am ESP32 und den negativen Pin mit GND verbinden. Stellen Sie sicher, dass alle Verbindungen sicher sind, um während des Betriebs intermittierende Probleme zu vermeiden.

Code-Beispiele und Anleitung

Unten ist ein kurzer Auszug aus dem Code, der die serielle Kommunikation initialisiert und den Wert des Feuchtigkeitssensors liest:

void setup() {
  // Initialize serial communication at 115200 bits per second:
  Serial.begin(115200);
}

Dieser Snippet richtet die serielle Kommunikation ein, sodass wir die Messwerte des Feuchtigkeitssensors im seriellen Monitor anzeigen können.

Als Nächstes haben wir die Hauptschleife, in der der analoge Wert vom Sensor gelesen wird:

void loop() {
  // Read the analog value
  int analogValue = analogRead(35);
  
  // Print out the values
  Serial.printf("Analog value = %d\n",analogValue);
  
  delay(300);  // delay between reads for clear read from serial monitor
}

In dieser Schleife liest der Code kontinuierlich den Analogwert von Pin.35und gibt es alle 300 Millisekunden an den Serienmonitor aus. Dies ermöglicht es uns, den Feuchtigkeitsgrad in Echtzeit zu überwachen.

Demonstration / Was zu erwarten ist

Wenn der Feuchtigkeitssensor in trockenen Boden gesetzt wird, wird der analoge Wert höher sein, was auf niedrige Feuchtigkeit hinweist. Im Gegensatz dazu wird der Wert signifikant fallen, wenn der Sensor in feuchten Boden eingeführt wird. Wenn der Wert unter den definierten Schwellenwert (z. B. 2000) fällt, wird der an den Pin angeschlossene Summer13wird aktiviert, was signalisiert, dass die Pflanze gegossen werden muss. Seien Sie vorsichtig mit schwimmenden Eingaben und stellen Sie sicher, dass der Sensor nicht über die empfohlenen Grenzen hinaus Wasser ausgesetzt ist (im Video bei 02:30).

Videozeitstempel

  • 00:00 Start
  • 1:51 Einführung in das Projekt
  • 5:53 Verkabelung erklärt
  • 7:23 Arduino-Code erklärt
  • 9:09 Auswahl von ESP32-Board und COM-Port in der Arduino IDE
  • 10:47 Projektvorführung zum Blumentopf
  • 14:30 Alarmton aktivieren, wenn die Töpfe leer sind

Bilder

ESP32-24-soild-moisture-wiring
ESP32-24-soild-moisture-wiring
ESP32-24-soild-moisture-schematic
ESP32-24-soild-moisture-schematic
soil_mositure_module
soil_mositure_module
soil_mositure_module_schematic
soil_mositure_module_schematic
823-ESP32 Tutorial 24/55- Arduino code for soil moisture measurement
Sprache: C++
Kopiert!

Ressourcen & Referenzen

Dateien📁

Keine Dateien verfügbar.