Metainformationen zur Seite

Dies ist eine alte Version des Dokuments!


Plugin-Daten
AutorMichael Schlenstedt
Logo
StatusSTABLE
Version1.0.1
Min. LB Version2.2.1
Release Downloadhttps://github.com/mschlenstedt/LoxBerry-Plugin-Poolmanager/archive/refs/tags/PoolManager-V1.0.1.zip
BeschreibungMit dem LoxBerry PoolManager kann eine automatische pH-Wert und Chlor-Regelung mit Sensoren von Atlas Scientific aufgebaut werden.
SprachenDE
Diskussionhttps://www.loxforum.com/forum/projektforen/loxberry/plugins/355455-plugin-loxberry-poolmanager

LoxBerry PoolManager

Download

Download über das entsprechende GIT-Archiv. Der aktuellste Download findet sich oben in der Tabelle. Ältere Versionen im Release-Archiv: https://github.com/mschlenstedt/LoxBerry-Plugin-Poolmanager/releases

Funktion des Plugins

Das Plugin stellt ein Gateway zu den Atlas Scientific Sensoren und Aktoren bereit. Dabei werden alle unterstützten Sensoren (z. B. pH-Sonde, Redox-Sonde) kontinuierlich ausgelesen und per MQTT und dem MQTT Gateway Plugin an den Miniserver übertragen. Aktoren (Dosierpumpen) von Atlas Scientific können zudem über das Gateway angesteuert werden und so entsprechende Dosierungen vorgenommen werden.

Alle Sensoren und Aktoren können über das Plugin kalibriert werden. Des weiteren bietet das Plugin die Ausgabe aller Messwerte sowie die Durchführung des Kalibrierungsprozesses über ein LCD Display an, welches vor Ort im Pool-Technikhaus angebracht sein kann (Raspberry muss dazu natürlich im Pool-Technikhaus installiert sein).

Folgende Hardware wird vom Plugin unterstützt: Unterstützte Hardware

Installation

Keine Besonderheiten. Das Plugin wird standardmäßig über die Pluginverwaltung installiert. Das Plugin setzt ein installiertes und konfiguriertes  MQTT Gateway Plugin voraus!

Hardware vorbereiten

Separater I2C Bus

Das Plugin blockiert den I2C BUs, an dem alle Sensoren angeschlossen werden. Es werden an alle Busteilnehmer regelmäßig Befehle gesendet (auch an fremde Sensoren/Aktoren) - das kann zu erheblichen Fehlfunktionen bei den Nicht-Atlas-Scientific-Komnponenten auf dem Bus führen! Ich empfehle Euch die Atlas Scientific Sensoren auf einem eigenen I2C Bus laufen zu lassen (I2C Bus 1). Alle anderen Sensoren könnt ihr auf einen separaten Bus legen - wie das geht steht hier:

Vor der ersten Verwendung mit dem Plugin müssen alle Sensoren und Aktoren in den I2C-Modus versetzt werden (standardmäßig werden die Sensoren im UART Modus ausgeliefert). Wenn ihr zwei gleiche Sensoren oder Aktoren einsetzen möhctet (z. B. zwei Dosierpumpen), müsst ihr zudem von einem der Geräte die Default-Busadresse ändern. Wie das geht ist hier beschrieben: Unterstützte Hardware

Weitere Beispiele für Hardware Rund um den Pool und Loxone: Beispiel: Hardware für die Steuerung

Konfigurationsoptionen

Reiter: Atlas Scientific Gateway

Hier kann das Atlas Scientific Gateway gestartet und gestoppt werden und es können neue Sensoren oder Aktoren zu eurer Konfiguration hinzugefügt werden. Zudem kann der I2C Bus nach Geräten gescannt werden.

Hinzufügen/Editieren von Sensoren und Aktoren:

Option Beschreibung
Name Eindeutiger Name für den Sensor. Vermeidet Sonderzeichen, Umlaute, Leerzeichen (auch wenn diese theoretisch funktionieren sollten). Der Name wird in den Sensor geschrieben (gefiltert, rein ASCII).
Typ Typ des Sensors, z. B. pH, ORP (Redox), PRS (Pressure) usw.
Adresse I2C Busadresse in Dezimalschreibweise, z. B. "99" für die pH Sonde.
Nutze Kalibrierung über das Plugin Ist diese Option aktiviert, kann die Sonde über das WebUI (und ggf. LCD Display) bequem kalibriert werden.
Mittlerer Kalibrierungspunkt Mittlerer Kalibrierungspunkt oder bei 1-Punkt-Kalibrierung der einzigste Kalibrierungspunkt. Hier wird der Zielwert eingegeben, also bei z. B. bei der 7.0 pH Kalibrierungslösung wird hier "7.0" eingegeben.
Unterer Kalibrierungspunkt Unterer Kalibrierungspunkt. Leer lassen wenn keine Zwei- oder Dreipunktkalibrierung verwendet wird. Ansonsten analog dem mittleren Kalibrierungspunkt Zielwert eingeben.
Oberer Kalibrierungspunkt Oberer Kalibrierungspunkt. Leer lassen wenn keine Dreipunktkalibrierung verwendet wird. Ansonsten analog dem unteren Kalibrierungspunkt Zielwert eingeben.
Zeige Wert auf LCD Ist ein LCD angeschlossen, kann hier die Anzeige auf dem LCD aktiviert werden. Alle aktivierten Sensoren/Aktoren werden auf dem LCD der Reihe nach in einer Endlosschleife angezeigt.
Einheit für LCD Diese Einheit wird dem Wert angefügt. Nur reines ASCII ist möglich!
Wert für LCD Einige Sensoren/Aktoren senden mehrere Werte (bei PMP Pumpen z. B. aktueller Dosierwert und die Zählerstände). Hier könnt ihr auswählen, welcher der Werte am LCD angezeigt werden soll.

Beispiel: Kalibrierungseinstellungen pH Sonde mit 3-Punkt-Kalibrierung:

Lest in den Datenblättern bei Atlas Scientific nach wie die Sensoren kalibriert werden (z. B. ob 3-Punkt, 1-Punkt oder wie auch immer)

Nach jedem Hinzufügen, Löschen oder Ändern muss das Gateway neu gestartet werden, damit die Änderungen aktiv werden!

Reiter: Einstellungen

Grundlegende Einstellungen zum Plugin werden im Tab "Einstellungen" getätigt:

Option Beschreibung
Aktualisierungszeit Status [s] Nach dieser Anzahl an Sekunden wird der Status der Sensoren (damit sind nicht die Messwerte gemeint!) neu eingelesen werden. Das beinhaltet z. B. Informationen über Firmware, Spannung, Konfigurationsoptionen etc. Das Auslesen nimmt einige Zeit in Abspruch, in der das Plugin nichts anderen machen kann. Werte < 3600 Sekunden machen keinen Sinn.
Aktualisierungszeit Messwerte [s] Nach dieser Anzahl Sekunden werden alle Messwerte erneut vom Plugin eingelesen. Kürzere Zeiten als 1,5s sind nicht realisierbar. Sinnvoll sind Werte ab 5 Sekunden, da sowohl pH- als auch Redoxmessungen träge sind.
MQTT Topic Unter diesem Topic werden die Daten des Plugins im Broker veröffentlicht

Reiter: Messungen

In diesem Reiter seht ihr die aktuellen Messwerte eurer Sensoren und Aktoren. Die Webseite wird kontinuierlich aktualisiert.

Wenn ihr in der Konfiguration eures Sensors/Aktors die Kalibrierung über das Plugin aktiviert habt, könnt ihr von hier aus auch die Kalibrierung starten. Die Zielwerte der Kalibrierung werden ebenfalls in der Konfiguration des Sensors/Aktors eingetragen. Lest in den [[https://atlas-scientific.com/|Datenblättern bei Atlas Scientific]] nach wie die Sensoren kalibriert werden (z. B. ob 3-Punkt, 1-Punkt oder wie auch immer).

Bei der Kalibrierung werdet ihr Schritt für Schritt durch die einzelnen Schritte durchgeführt. Dabei wird das Plugin gestoppt (damit eure Regelung nicht verrückt spielt). Wartet bei jeden Schritt bis sich die Anzeige stabilisiert hat und speichert dann die Kalibrierung ab. Bei Aktoren (Pumpe) wird eine Menge X dosiert, die ihr über eine hochgenaue Waage oder einen Messzylinder ermitteln müsst. Den tatsächlich gemessenen Wert müsst ihr im Kalibrierschritt dann eintragen.


Einrichtung in der Loxone Config Software

Messwerte auslesen/verwenden

Das Plugin sendet alle ausgelesenen Messwerte per MQTT an den MQTT Broker bzw. das  MQTT Gateway Plugin. Im Gateway Plugin muss das Topic des PoolManager Plugins abonniert werden (standardmäßig lautet das Topic "poolmanager/#"). Bitte lest in der Dokumentation des  MQTT Gateway Plugin nach, wie genau die Werte in der Loxone Config verwendet werden: MQTT - Schritt für Schritt: MQTT -> Loxone

Ich behandele das Thema "Anlegen eines Virtuellen Eingangs" hier nur in Kürze:

  • Virtuellen Eingang anlegen
  • Bezeichnung aus der Incoming Overview des Gateway Plugins kopieren und im Virtuellen Eingang exakt so einfügen. 
  • Als Digitaleingang verwenden: NEIN
  • Validierung korrekt setzen.

Beispiel anhand der pH Sonde (Adresse 99):

Aktoren und Plugin steuern

Alle Aktoren (Pumpen) und auch das Plugin können über das Topic poolmanager/set/command gesteuert werden. Dazu muss für das MQTT Gateway Plugin ein Virtueller Ausgang angelegt werden. Bitte lest in der Dokumentation des  MQTT Gateway Plugin nach, wie genau die Werte in der Loxone Config verwendet werden: MQTT - Schritt für Schritt: Loxone -> MQTT

Ich behandele das Thema "Anlegen eines Virtuellen Ausgangs" hier nur in Kürze:

  • Virtuellen Ausgang anlegen, Adresse: /dev/udp/192.168.3.212/11884 (IP und ggf. Port müsst ihr anpassen)
  • Darunter einen "Virtuellen Ausgang Befehl" anlegen
  • Befehl bei EIN: publish poolmanager/set/command <EUER BEFEHL>
  • Optional: Befehl bei AUS: publish poolmanager/set/command <EUER BEFEHL>
  • Als Digitalausgang verwenden: je nach Bedarf, meist hier NEIN (um Werte über <v> an das Plugin zu übertragen

Für die Befehle gibt es nun zwei Möglichkeiten: Entweder einen Befehl direkt an einen Sensor oder Aktor senden oder aber einen Befehl an das Plugin senden:

Befehl an Sensor/Aktor senden

Hierbei fügt ihr direkt den Befehl, den ihr aus der Dokumentation des Atlas Scientific Sensors entnehmen könnt, direkt 1:1 hier ein. Dem Befehl wird die Sensor-Adresse gefolgt von einem Doppelpunkt vorangestellt. Beispiel: Dosierbefehl an die Pumpe mit der Adresse 103 senden. Der Befehl lautet dann: 103:d,<v> Das <v> wird von Loxone dann wie üblich durch den Analogwert des Befehlseingangs ersetzt. An das Plugin und damit die Pumpe wird also z. B. gesendet: 103:d,50 um 50ml über die Pumpe zu dosieren.

Beispiel Dosierbefehl an Pumpe:

Befehl an das Plugin senden (Pluginfunktionen steuern)

Das Plugin kann über das gleiche Topic wie die Sensoren und Aktoren gesteuert werden. Anstelle der vorangestellten Sensoradresse wird hier aber das Signalwort "plugin" gefolgt von einem Doppeltpunkt gestellt. Beispiel Auslesen der Sensoren pausieren: plugin:pause

Folgende Befehle werden aktuell vom Plugin unterstützt:

  • plugin:pause - Pausiert das Plugin bzw. das Auslesen der Sensoren und versetzt alle Sensoren und Aktoren in den SLEEP Modus (z. B. wenn die Poolpumpe nicht läuft)
  • plugin:start - Startet das Plugin wieder (z. B. wenn die Poolpumpe morgens wieder läuft)
  • plugin:getstatus - liest alle Statuswerte neu ein
  • plugin:getvalues - Liest alle Messwerte neu ein
  • plugin:readconfig - Liest die Pluginkonfiguration neu ein (z. B. bei Änderungen) und aktualisiert anschließend den Status aller Sensoren

 

Beispiel Plugin bei EIN starten und bei AUS pausieren lassen:

Beispiele für die Umsetzung von Aufgaben in der LoxConfig

Manuelle Steuerung

Die Aktoren und Sensoren können auch manuell vom LoxBerry aus gesteuert und konfiguriert werden: Manuelle Steuerung/Auslesen von Sensoren/Aktoren

Roadmap

Kalibrierung über die WebUI von Sensoren und Aktoren (zugewiesen an Michael Schlenstedt)

LCD Display zur Anzeige (zugewiesen an Michael Schlenstedt)

LCD Display zur Steuerung (zugewiesen an Michael Schlenstedt)

Fragen stellen und Fehler melden