Garten automatisch Gießen über Raspberry Pi

Im Corona-Sommer 2020 habe ich meinem Raspberry Pi beigebracht, den Garten automatisch zu gießen, weil ich während einer Fahrradtour nach Wien zwei Wochen im August nicht zuhause war.

Momentan ist eine 64 GB micro SD Speicherkarte eingelegt, es reicht aber locker auch 16 GB Karte mit dem Raspbian Betriebssystem und dem kleinen Programmcode, die dann auch schneller formatiert werden kann.

Eine USB-Pumpe mit 5V betrieben wird über einen Cronjob zum Gießen aktiviert.

Hier zu sehen ist das verwendete Relais:

Das Relais wird zwischen Pumpe und RPi-Board geschalten, um die Spannung über die Outputs durchzuschalten. Hier die Belegung der Pins: Pin 11 GPIO 17 wird mit Signal IN belegt, GND vom Relais ist auf dem RPi GND mit Pin 9 verbunden.

Das USB-Kabel zur Pumpe wird an eine USB-Buchse angeschlossen, wobei die Pins 1 und 4 genutzt werden, an Pin 1 wird das USB-Kabel vom RPi eingesteckt (+) und an Pin 4 wird der im geschlossenen Zustand aktive Relais-Ausgang angeschlossen (-).

Der Raspberry Pi 3b+ wählt sich bei mir über 192.168.178.24 ins WLAN ein.

Zur Bedienung des RPi via ssh über Putty einfach die IP-Adresse als Hostname dort aufrufen, und dann mit dem Login „pi“ und Standard-Passwort „raspberry“ die Kommandozeile öffnen. Dann zur Eingabe, das wäre der Befehl zum Öffnen und Bearbeiten des Programms:

sudo nano pumpe.py

Der Crontab-Befehl lässt sich mit folgendem Befehl im Editor verändern und einstellen:

pi@raspberrypi:~ $ crontab -e

Darin schreibe ich dann den Befehl, das Skript im angegebenen Zeitintervall regelmäßig auszuführen mit:

0 */2 * * * python pumpe.py

Z.B. cronSpeichern kann man hier mit Strg+X angegeben als ^X.

Ich habe dabei den folgenden crontab code eingestellt, um alle zwei Stunden die Pumpe für 80 Sekunden einzusschalten und Wasser durch den Schlauch auf die Pflanzen zu fördern:

0 */2 * * *

Ausgelöst wird dieser crontab durch folgendes Skript namens pumpe.py:

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.setup(17,GPIO.OUT)
GPIO.output(17,
True)
time.sleep(80)
GPIO.output(17,
False)
GPIO.cleanup()
exit()

Befindet man sich wieder in der Kommandozeile außerhalb des Editors, lässt sich das Programm direkt mit diesem Befehl ausführen:

python pumpe.py

Die grüne LED am Relais springt dann durch ein Klickgeräusch auf grün hell und der USB-Anschluss leitet die Spannung weiter. Passiert erst mal nichts, geht der Ausgang nach etwa 30 s wieder aus.

Jetzt mach ich mich noch an die etwas fummeligen Lötarbeiten, habe nun auch Schrumpfschläuche mit einer Heißluftpistole und Flußmittel, dass das Ganze besser zusammenhält.

Eine schöne Übersicht an verschiedensten Zeitintervallen gibt die folgende Website:

https://crontab.guru/every-2-hours

Hier noch ein paar Bilder, wie der Raspberry Pi über die USB-Pumpe aus der Wasser-Wanne über den Schlauch die Pflanzen im Hochbeet versorgt. Die Pumpe springt alle zwei Stunden für 80 Sekunden an, an jeder großen Tomatenpflanze habe ich mit einem 3mm Holzbohrer ein kleines Loch im Schlauch gebohrt, durch das ein paar Tropfen an die Pflanzen gelangen. Das Ende des Schlauchs habe ich mit Tesafilm verschlossen.

Schreibe einen Kommentar

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