Dienstag, 30. Juni 2020

Cat Watch update

Die nächsten Aktionen

Nach der Umrüstung des Clients auf einen Raspberry Pi Zero läuft das System recht zuverlässig. In den letzten Nächten gab es immer mal wieder Katzen Alarm der bei den Tieren auch immer wieder für Überraschungen gesorgt hat.
Haufen wurden keine mehr gefunden, sie haben keine Zeit mehr. Denn nach ein paar Sekunden setzt die Brause ein und dann suchen die Katzen ganz schnell das Weite.
Dennoch habe ich noch einige Verbesserungen vorgenommen und noch vorzunehmen.
  1. Ich habe ein einfaches Webfrontend geschrieben mit dem ich sehen kann ob die Katzen Dusche eine Websocket Verbindung hat, dann sind die Buttons grün, und ich kann sie über die Buttons auslösen.
    Für die beiden noch fehlenden Ventile befinden sich ebenfalls dann Buttons für die Minimale Steuerung. An der Schaltuhr arbeite ich immer mal wieder sporadisch

  2. Ich habe einen Watchdog für das Python Script geschrieben. Bisher ist es aus irgendwelchen Gründen abgebrochen. Einige Programmänderungen habe ich vorgenommen, aber die Erfahrung sagt, dass es immer etwas gibt, an was man nicht bei der Coding gedacht hat. Also habe ich ein Bash Script geschrieben, dass alle 5 Minuten vom Cron angesprochen wird. Sollte das Python Script nicht laufen, wird es gestartet.

    #!/bin/bash
    SERVICE="ventil.py"
    if pgrep -af "$SERVICE" >/dev/null
    then
        echo "$SERVICE is running"
       
    else
       
        d=`date +%Y-%m-%d-%H-%M`
        echo "$d Starte ventil.py neu" >> /home/pi/dev/ws/error.txt
        python /home/pi/dev/ws/ventil.py &
        # uncomment to start nginx if stopped
        # systemctl start nginx
        # mail 
    fi


  3. Als nächstes muss noch eine Notfallroutine für das Ventil her.
    Denn was passiert, wenn das Programm mal in einen undefinierten Zustand kommt wenn gerade ein Ventil offen ist und das Wasser anhaltend durch die Brause läuft?
    Vor allem wenn man z.B. in Urlaub ist. Besonders wichtig, wenn noch die beiden anderen Ventile zur Gartenbewässerung eingebaut werden.
    Da stelle ich mir auch einen Cron Job vor, der prüft ob ein Ventil geöffnet ist, wenn ja wird geprüft, wie lange es schon offen ist, ist es zulange offen
    - und dass kann mittels GPIO Datei abgefragt werden - wird ein Script aufgerufen, welches dann das Ventil schließt.

  4. Und dann als letztes müssen natürlich noch die beiden fehlenden Ventile mechanisch nachgerüstet werden. Herr Amazon lässt sich mit der Lieferung Zeit.


Auf den Bildern habe ich den Aufbau noch dokumentiert. Letztendlich findet die Elektronik Platz in einer 3Fach Unterputzdose. Diese wird dann vor Einbau in den Schaltkasten Spritzwasser tauglich abgedichtet. Somit kann ich dann ruhigem Gewissen in Urlaub fahren.
 

Keine Kommentare:

Kommentar veröffentlichen