3D-Drucker

Arduino Feuchtigkeitssensor

Arduino Feuchtigkeitssensor: Dieser Beitrag behandelt das Thema Bodenfeuchtigkeit. Ein Artikel zur Luftfeuchtigkeit ist hier zu finden: Arduino und DHT22 – Temperatur und Luftfeuchtigkeit messen.

Bodenfeuchtigkeit messen

Wer nicht gerade mit dem grünen Daumen geboren ist, oder wer seine Erträge optimieren oder die Pflanzenaufzucht automatisieren will, braucht eine verlässliche Lösung, den Feuchtigkeitsgehalts des Bodens zu messen. Dazu gibt es eine ganze Reihe von Bodensensoren. Hier kann man einiges falsch machen!

Hände weg von elektrischer Messung!

Gerade im Arduino und Raspberry-Pi Umfeld werden oft Sensoren empfohlen, die den elektrischen Widerstand des Bodens messen. Bei ihnen stecken die Elektroden blank in der Erde. Leider führt das bei jeder Messung zu Korrosion der Elektroden. Des Weiteren werden Kupferionen freigegeben, die die Pflanze schädigen. Das Resultat tritt oft genug schon nach wenigen Wochen auf: Eine freigeätzte Elektrode und eine abgestorbene Pflanze!

Hier noch ein abschreckender Erfahrungsbericht zu dieser Art von Sensoren.

Bessere Ergebnisse mit kapazitiver Messung

Zum Glück gibt es aber auch eine andere Variante der Bodenfeuchtigkeitsmessung. Hierbei wird die Kapazität der Erde gemessen (Capacitive Soil Moisture Sensor). Im Gegensatz zur elektrischen Messung haben die Elektroden hier keinen elektrischen Kontakt zur Erde. Stattdessen sind sie unter Schutzlack gekapselt. Dieser verhindert Korrosion und die Übertragung giftiger Stoffe in den Boden.

Der Bodenfeuchtesensor hat einen integrierten Verstärker und kann somit direkt an einen analogen Eingang des Arduino-Boards angeschlossen werden. Er wird ins Erdreich gesteckt und misst die Kapazität der Erde. Diese verändert sich mit der Feuchtigkeit.

Bauteile

Schaltplan

Arduino Feuchtigkeitssensor

Das Modul hat einen Vin-, GND-, und analogen Output-Pin (AOUT). Versorgt wird es einfach über die 5V des Arduino-Boards. Der AOUT kann einfach mit einem analogen Input-Pin des Arduinos verbunden werden.

(Das Bauteil für die Fritzing-Software habe ich übrigens hier her: OgreTransporter.)

Code: Arduino Feuchtigkeitssensor

void setup() {
  Serial.begin(9600);               // Start der seriellen Kommunikation
}

void loop() {
  int sensorWert = analogRead(A0);  // Auslesen des aktuellen Sensorwertes
  Serial.println(sensorWert);       // Ausgabe des Wertes
  delay(10);                        // kurze Pause
}

Das Programm startet die serielle Kommunikation. Danach wird der Messwert ausgelesen und ausgegeben. Um ihn anzuzeigen kann man den Seriellen Monitor aus der Arduino Software nutzen: Menü>Werkzeuge>Serieller Monitor.

Willst du noch mehr über Arduino erfahren, damit du so richtig durchstarten kannst?
Oder suchst du spannende Projekte zum Nachbauen?
Dann sieh' dir unbedingt die E-Books von StartHardware an.


Bevor du gehst, würdest du mir helfen, diese Website besser zu machen, indem du ganz kurz an einer Umfrage teilnimmst? Sind nur zehn Fragen und das würde mir sehr viel bedeuten.

Ich hoffe, der Beitrag hilft dir weiter. Und falls du weitere Fragen hast, stelle sie gern hier im Arduino-Forum.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

 

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.