Bewässerung mit Arduino
Es gibt eine Sache die vermutlich jeder mit seinem Arduino macht und das ist Pflanzen bewässern. Damit sich das Bewässern lohnt habe ich mir zum einen ein Zypergras (Cyperus alternifolius) ausgesucht, welches besonders viel Wasser benötigt. Zum anderen gieße ich mit dem Arduino einen Basilikum (Ocimum basilicum). Jeder der einmal einen Basilikum hatte weiß, dass diese Pflanzen im Haus oft nur wenige Wochen alt werden.
Die Hardware
Das folgende Bild zeigt das Hardware-Setup:
Bei den Pumpen handelt es sich um 12V Brushless Tauchpumpen. Die Pumpen laufen bei mir nun seit über einem Jahr ohne jegliche Wartung.
Die Bodenfeuchte des Basilikums wird mit einem SEN0193 gemessen. Dieser Sensor läuft ebenfalls seit über einem Jahr wartungsfrei.
Der Wasserstand im Zypergras wird mit einem einfachen Wasserstandssensor gemessen. An diesen setzen regelmäßig mineralische Ablagerungen an. Daher reinige ich diesen Sensor alle paar Monate mit sauberem Wasser und etwas Schleifpapier.
Designentscheidungen
Bei der Konstruktion der Bewässerung habe ich folgende Ideen einfließen lassen.
In der Software steuert eine zentrale Funktion die Aktivierung einzelner Pumpen. Diese Funktion stellt sicher, dass keine Pumpe länger als 8 Sekunden läuft. Dies verhindert, dass bei Fehlfunktionen der Sensoren alles überschwemmt wird. Falls eine Pumpe länger als 8 Sekunden aktiv ist stoppe ich die Bewässerung und fahre den Arduino in einen Panik-Modus. Im Panik-Modus findet kein Gießen mehr statt und ich lasse die Arduino LED als Hinweis blinken. Oft tritt dieser Zustand im Zusammenhang mit dem Wasserstandssensor auf. Meine Theorie ist, dass der Sensor bei hoher Luftfeuchtigkeit erst spät anschlägt. Somit sinkt der Wasserpegel manchmal deutlich unter den des Sensors. Wenn nun der Sensor wieder trocken genug ist und anschlägt reichen die 8 Sekunden Gießzeit nicht aus um den Wasserpegel wieder bis zum Sensor zu heben.
Die Sensoren werden nur mit mehreren Minuten Abstand ausgelesen. Nur beim Auslesen erhalten die Sensoren Strom. Dadurch verbraucht die Bewässerung insgesamt weniger Strom und der Wasserstandssensor mineralisiert nicht so schnell.