Poolsteuerung - Werte nur bei Betrieb abfragen

Für welche Projekte verwendet Ihr OpenHAB? Was habt Ihr automatisiert? Stellt eure Projekte hier vor.

Moderatoren: Cyrelian, seppy

Antworten
daniel_n100
Beiträge: 16
Registriert: 1. Sep 2021 14:06
Answers: 0

Poolsteuerung - Werte nur bei Betrieb abfragen

Beitrag von daniel_n100 »

Hallo,
ich erhalte von meiner Pool Steuerung (NeoPool) mittels MQTT diverse Parameter übermittelt.
Problem ist nur, dass die Werte wie z.b. Temperatur natürlich nur werden des Betriebes der Filteranlage korrekte Werte darstellen. Wenn die Pumpe nicht läuft, steht das Wasser in der Messzelle und die Werte sind daher nicht brauchbar.
Hat vielleicht jemand eine Idee wie ich das einstellen könnte, dass die Werte nur bei Betrieb der Pumpe aktualisiert werden.

LG Daniel

Benutzeravatar
udo1toni
Beiträge: 14033
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Poolsteuerung - Werte nur bei Betrieb abfragen

Beitrag von udo1toni »

Die Aktualisierung der Werte selbst wirst Du nicht verhindern können. Aber Du kannst natürlich jederzeit ein Proxy Item dazwischen hängen. Gemeinsam mit dem Status der Pumpe kann dann eine Regel die Werte bei Wertänderung übernehmen, es sei denn, die Pumpe ist aus. So:

Code: Alles auswählen

Group gPool // alle ankommenden Messwerte
Group gPoolAnzeige
Number Pool_Temperatur (gPool)
Number Pool_PH (gPool)
...
Switch Pool_Pumpe
Number PoolAnzeige_Temperatur (gPoolAnzeige)
Number PoolAnzeige_PH (gPoolAnzeige)
...
Items hier nur der Einfachheit halber als Text Definition ohne Label und so weiter, geht genauso auch über UI :)

Code: Alles auswählen

rule "Pool Update"
when
    Member of gPool changed
then
    if(Pool_Pumpe.state != ON) return; // Falls Pumpe aus, Abbruch
    val strName = triggeringItem.name.split("_").get(1)  // ermittle den Namen des geänderten Messwerts
    val itZiel = gPoolAnzeige.members.filter[i|i.name.endsWith(strName)].head // ermittle das zugehörige Anzeige-Item
    itZiel.postUpdate(newState.toString) // ändere den Status des Items auf den neuen Status
end
Die Rule kann genauso auch über die UI erstellt werden, mit Blockly gibt es aber wohl noch keine Filter-Funktion für Gruppen, da muss dann die Gruppe durchlaufen und der Name jeweils verglichen werden.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.2, LXC), mit openHABian eingerichtet

daniel_n100
Beiträge: 16
Registriert: 1. Sep 2021 14:06
Answers: 0

Re: Poolsteuerung - Werte nur bei Betrieb abfragen

Beitrag von daniel_n100 »

Danke für deinen Tipp. Hab es jetzt mit einer Rule je Wert über die UI mit Blockly hinbekommen.
Mit Gruppen kenne ich mich noch nicht wirklich aus.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Antworten