Monitoring Wasserqualität im Weiher

Der Weiher vorm Haus scheint durch Pferdehaltung gefährdet zu sein. Ich will das wissen und habe in mehreren Stufen eine Möglichkeit gefunden die Umweltdaten zu erfassen und ein Langzeit Monitoring durchzuführen.
Funktionstest Weihermessung im Wasser

  • Die Mess-Station kann nicht mit Strom versorgt werden.
  • Die Messung soll 24/7 ohne Probleme laufen.
  • Die Kosten sollen privat getragen werden können.
  • Das Ziel ist weniger die absoluten Messwerte im Auge zu haben, als die Veränderungen zu erkennen.
  • Weiher Monitoring prinzipieller Aufbau
    Anfangs bin ich am Stromverbrauch der Kombination Arduino, Shield und Raspberry gescheitert. Eine Powerbank und ein mobiles Solarpanel haben nicht ausgereicht. Ein grösseres Solarpanel wurde angeschafft und eine 6,7 Ah Batterie aus einer USV stand zur Verfügung.
    Offgrid Bausatz mit 100W
    grössere Batterie und Spannungswandler
    Aber auch das hat nicht gereicht. Der Wechselrichter und der Spannungswandler ziehen zusätzlich an der Batterie. Eine größere PV-Batterie hätte +200,- Euro gekostet. Das war der Moment in dem ich dachte, es entwickelt sich in die falsche Richtung. Auf schwäbisch sagt man dazu: “ mit vollen Hosen ist gut stinken !“.

    Es muss auch mit weniger gehen. Also habe ich den Raspberry durch einen PyCom WiPy ersetzt. Der stellt aber mit Micropython keinen FTP-Client für den Upload zum NAS bereit. Daraufhin habe ich dann mit MQTT experimentiert und bin aber bei einer TCP-Socketverbindung hängengeblieben.

    Der Arduino mit einem speziellen Shield macht die pH- und EC-Wert Erfassung. Dazu kommt ein Attiny Node, der Lufttemperatur, Helligkeit und Luftfeuchtigkeit an den Arduino funkt. Dieser Node ist mit einer kleinen Solarzelle und einem Lion Akku autark.
    Der Arduino misst auch noch die Wassertemperatur über einen PT1000 Fühler. Arduino, Shield und WiPy brauchen gerademal 0.16 Ampere. Also etwa 0,8 Watt gegenüber den 3.5 Watt für die Raspberry-Lösung.
    15 Watt Solarpanel und Montage am Baum
    Eine Powerbank und ein 15 Watt faltbares Solarpanel mit 5V Ausgang hat die Anlage versorgt. Damals habe ich noch im 2-Minuten-Takt gemessen. Mit diesem 2-Minuten-Takt habe ich den Timeout der RX/TX Übertragung ausgetrickst. Im 2-Minuten-Takt wurde dann auch per TCP-Socket an den Raspberry A+ im Arbeitszimmer übertragen. Der hat die Messwerte an das NAS und an ThingSpeak hochgeladen.

    Leider hänge ich an einer unzuverlässigen Internetversorgung, die über eine Funkstrecke funktioniert. Fliegen Flugzeuge in Richtung Zürich muss wegen des Radars die Funkstrecke abgeschaltet werden. Ich habe zwar in 2 Schritten die Verfügbarkeit des Internets geprüft, bin aber trotzdem mehrmals am Tag in ein Loch gefallen und die Kommunikationsstrecke ist ausgefallen. Hat der Raspberry die Daten nicht losbekommen, hat er das Skript beendet. Der WiPy hat dann seine Daten nicht losgebracht und ist auch ausgestiegen. Ich konnte zwar aus dem Arbeitszimmer den WiPy am Weiher wieder resetten, es fehlten aber mehrere Stunden Messwerte am Tag.
    Für die Internetverfügbarkeit habe ich erstmal geprüft, ob der Google DNS-Server erreichbar ist. Im zweiten Schritt habe ich dann geprüft, ob der ThingSpeak-Server erreichbar ist. Beides mit gestaffelten Timeouts von 5, 20 und 30 Sekunden. War beides ok, habe ich erst versucht die Daten an ThingSpeak zu senden.

    Für die aktuelle V2.0 habe ich es jetzt so umprogrammiert, dass der Raspberry im Arbeitszimmer die Messwerte am WiPy abholt. Das Abholen steckt in einem Cronjob der alle 15 Minuten läuft. Jetzt steigt der WiPy nicht mehr aus und selbst wenn ich mal Daten nicht an den ThingSpeak-Server bekomme, holt der Cronjob eben nach 15 Minuten die nächten Messwerte ab.

    Weihermessung Strombedarf
    Strombedarf 0.16A bei 5V

    Das neue Solarpanel hat nur noch 5 Watt und bringt rechnerisch 6 mal soviel wie ich brauche. Ich kann also mit 24h/6 = 4h Sonne auskommen um die Powerbank wieder aufzuladen. Die Powerbank hält ohne Aufladung fast 3 Tage durch. Der RavPower-Akku hat zwei Abgänge und einen Ladeanschluss. Der grosse Vorteil ist, dass gleichzeitig entladen und aufgeladen werden kann.
    Aufbau
    Solarpanel, Node, Akku und Messeinheit

    In der vorigen Version war die Messeinheit an einem Baum am Ufer befestigt. Auf einer Pferdeweide. Die Pferde waren sehr neugierig und ich hatte Angst um meine Kabel. Die aktuelle Version ist an einem Pfahl im Wasser befestigt.

    Aufbau
    Aufbau im Wasser, Fühler mit Abstand

    Ok, erst jetzt hängt der Fühler für die Wassertemperatur tatsächlich im Wasser. Und ich hab eine ausreichende Distanz zwischen den Sensoren für pH und EC-Wert. Die hatten sich gegenseitig beeinflusst.
    Vor dem Einbau habe ich mir im Aquariumfachhandel noch Kalibrierflüssigkeiten besorgt um die Sensoren kalibrieren zu können. Jetzt habe ich sogar aussagekräftige Messwerte.
    ThingSpeak und Google Gauges

    Die Seite mit den ThingSpeak Graphen erreicht ihr hier.

    Die ganze Geschichte in mehr Details findet ihr hier:
    http://fuerles.de/index.php/it-welt/10-iot/12-wasserqualitaet-im-weiher
    http://fuerles.de/index.php/it-welt/10-iot/13-wasserqualitaet-im-weiher-funktionstest
    http://fuerles.de/index.php/it-welt/10-iot/14-wasserqualitaet-im-weiher-aufgabenliste
    http://fuerles.de/index.php/it-welt/10-iot/16-weihercheck-autharkie-fuer-rpi-und-arduino
    http://fuerles.de/index.php/it-welt/10-iot/17-weihercheck-versuchsaufbau-autharkie
    http://fuerles.de/index.php/it-welt/10-iot/18-weihercheck-autharkie-next-level
    http://fuerles.de/index.php/it-welt/10-iot/19-weihercheck-ampere-und-wattstunden
    http://fuerles.de/index.php/it-welt/10-iot/54-weiher-wasserqualitaet
    http://fuerles.de/index.php/it-welt/10-iot/55-hierholzer-weiher-leitwert-ec-ushttp://fuerles.de/index.php/it-welt/10-iot/56-weihermessung-autarkie-erreicht

    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.