Nachdem ich auch hier im Forum schon einiges über DIY-Projekte zur Thematik Poolsteuerung und Überwachung gelesen habe möchte ich nun mal etwas beitragen.
Basierend auf einem Raspberry Pi mit Windows 10 IoT Core habe ich ein kleines Gateway programmiert, was die Atlas Scientific EZO Messumformer über Netzwerk zugreifbar macht, sie sozusagen ins Internet der Dinge bringt.
Funktionsumfang (aktueller Stand)
- Messen und ausgeben der folgenden Werte
- Temperatur
- pH-Wert (Temperatur kompensiert)
- Redox Potential
- Ausgabe der Werte über folgende Schnittstellen
- REST API
- Siemens LOGO! Schnittstelle (Ethernet)
- Integrierte Weboberfläche
- Die Konfiguration und Kalibrierung der Messumformer ist per integrierter Weboberfläche möglich.
Hardware
Kern bildet, wie erwähnt, ein Raspberry Pi, in der Version 3B. Die Versionen 3B+ und 4 laufen aktuell nicht ohne weiteres mit Windows 10 IoT. Zur Messwerterfassung kommen EZO Messumformer von Atlas Scientific zum Einsatz, diese sind digital per I2C Schnittstelle an den Raspebbry Pi angeschlossen. Um die Module elektrisch sauber mit dem Raspberry Pi zu Verbinden nutze ich das EZO HAT Tentacle T3 von Whitbox Labs, dies isoliert auch gleich die Module für pH- und Redox Messung. Des Weiteren wird ein Netzteil, eine Speicherkarte und ggf. ein passendes Gehäuse benötigt.
Aufbau
Der Aufbau beschränkt sich auf das zusammenstecken der Komponenten. Gelötet werden muss nicht.
Sonden und Fühler
Für die Messung von pH-Wert und Redoxpotential können gängige Sonden verwendet werden, wichtig ist nur, dass sie mit einem BNC Stecker versehen sind. Ich verwende die Einstabmessketten aus der BlackLine vom Hersteller JUMO.
Zur Temperaturmessung wird ein PT1000 Fühler benötigt, welcher ebenfalls mit einem BNC Stecker ausgeführt sein muss.
Weboberfläche
web-interface-live-data_small.jpg
Über die Weboberfläche lassen sich die aktuellen Messwerte anzeigen, Kalibrierungen für die einzelnen Module vornehmen und generelle Einsetllungen konfigurieren.
REST API
Über die REST API kann das EzoGateway an beliebige übergeordnete Systeme angebunden werden. So bieten zum Beispiel die meisten Heimautomatisierungs-Systeme (FEHM, ioBroker, openHAB, etc.) die Möglichkeit eine REST API zu bedienen. Aber auch eigene Webprojekte können durch die API einfach adaptiert werden.
LOGO! Schnittstelle
Wer eine Siemens LOGO! Kleinststeuerung verwendet kann mit dieser Schnittstelle die erfassten Messwerte per Ethernetverbindung direkt an die LOGO! übertragen und dort entsprechend weiter verarbeiten. Eine detaillierte Beschreibung der Schnittstelle ist im Projekt-Wiki (LOGO! Interface) auf GitHub zu finden.
Meine Anwendung
Ich hatte/habe das Gesamtsystem jetzt so gut 4 Monate im Einsatz. Zusätzlich zu dem veröffentlichten Quellen nutze ich noch einen SQL-Adapter um die Messwerte zyklisch zu loggen. (Würde den Adapter beim nächsten Merge zum öffentlichen Branch hinzufügen.
Download
Das gesamte Projekt liegt auf GitHub zum freien Download. Da ich noch nicht dazu gekommen bin Tests zu schreiben würde ich das Entwicklungsstadium als Alpha-Version einordnen (zudem sind manche Implementierungen eher gewachsen als sauber umgesetzt...). Eine fertig kompilierte Version steht somit nicht zur Verfügung. Wer will kann sich eine Version gerne selber kompilieren, testen oder gar mitarbeiten. Mehr als die kostenlose Entwicklungsumgebung Visual Studio Community von Microsoft ist nicht erforderlich.
Projekt auf GitHub: EzoGateway
Wiki auf GitHub: EzoGateway - Wiki
Step by Step Anleitung mit Stückliste: Setup Instructions (noch nicht vollständig)
Grüße Elias