Daten Berechnen der Wasseruhr

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

ymca72
Beiträge: 15
Registriert: 3. Jan 2021 17:16
Wohnort: Südhessen

Daten Berechnen der Wasseruhr

Beitrag von ymca72 »

Hallo zusammen,

ich hab da mal eine Frage zu wie mache es richtig und dazu brache ich mal wieder euer Schwarmwissen.

Ich habe mir jetzt einen AI on the edge (ESP32cam) auf meine Wasseruhr gesetzt. Geht erstaunlich gut und die Daten kommen auch brav alle 5min über MQTT zum meinem Openhab3-Server und kann den aktuellen Stand auch visualisieren.
Jetzt wecken die Daten natürlich sofort die Neugier, wieviel Wasser da pro Tag/Woche/Monat durch die Uhr läuft. Mir ist nur nicht klar wie das visualisieren kann. Da brauch ich mal von euch Fachleuten Hilfe.

Ich hba da auch noch ein paar andere Sensoren, die ich damit dann am Ende auch erschlagen kann.
Aber das ist erstmal Nebensache. Wasseruhr ist da erstmal das Interessante Lernobjekt. RRD4J Persistence ist schon mal bei mir installiert und es läuft derzeit 3.4.1

Über euere Starthilfe wäre ich euch mal wieder sehr dankbar

Danke und Gruß

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

Re: Daten Berechnen der Wasseruhr

Beitrag von udo1toni »

rrd4j ist als Standard schon eingerichtet und sollte die Werte auch direkt persistieren (das ist die Grundlage für die Visualisierung).
Wenn Du in der Itemliste das Item mit dem Zählerstand anklickst, solltesst Du im oberen Bereich des Fensters eine Linie sehen, die (grob) von unten links nach oben rechts verläuft. Klickst Du drauf, sollte es eine Detailanzeige geben, mit dem Verlauf der letzten 24 Stunden. Der Zeitraum ist rechts oben einstellbar. Die Einstellungen können auch als Ansicht gespeichert werden (die lässt sich dann wie eine Page aufrufen)

Wenn Du mehr Komfort möchtest (wobei die Funktionen in OH3 schon gut gewachsen sind, gegenüber früher) wirst Du auf Drittanbieter ausweichen müssen. openHABian bietet in seinen Optionen die Möglichkeit, Grafana und InfluxDB zu installieren, InfluxDB ist eine Datenbank, die als sepüarate Persistence angesteuert werden kann. InfluxDB ist auf Zeitserien spezialisiert (also auf Messwerterfassung). Grafana bietet eine browserbasierte UI, mit der man die wildesten Charts erzeugen kann. Innerhalb von Grafana können diese Charts auch dynamisch sein, sollen sie direkt in openHAB dargestellt werden, bekommst Du gewöhnlich statische Bilder der Charts ausgeliefert.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

ymca72
Beiträge: 15
Registriert: 3. Jan 2021 17:16
Wohnort: Südhessen

Re: Daten Berechnen der Wasseruhr

Beitrag von ymca72 »

Hallo,

ja das habe ich schon am laufen. Aber ich dachte oder möchte gerne, das ich das dann Tageweise aufgeschlüsselt bekomme. Also Wunsch wäre ein Balkendiagramm, das mir den Tageweisen Verbrauch aufzeigt. Ich dachtew das kann man mit Rules und Variablen das Berechnen lassen. Also vereinfacht gesagt, die Werte des Tages x werden zusammen gezählt und dann vom Absolutwert abgezogen. Aber aus deiner Antwort zuschliessen muss ich da wohl noch eine Datenbank bemühen um die Wilde Zahlenlust du befriedigen, richtig? Wenn ja welche würde ich das bei openhabian anbieten?

Danke und Gruß

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

Re: Daten Berechnen der Wasseruhr

Beitrag von udo1toni »

Die Daten kannst Du schon aus der Persistence auslesen, aber wenn es um Balkendiagramme geht, auch die kannst Du mit der internen Grafik hinbasteln.
Allerdings muss ich sagen, da bin ich genauso blutiger Anfänger :) weil ich die Pages bisher nur angetestet habe.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

ymca72
Beiträge: 15
Registriert: 3. Jan 2021 17:16
Wohnort: Südhessen

Re: Daten Berechnen der Wasseruhr

Beitrag von ymca72 »

Naja, Profi bin ich da auch nicht. Es hat bisher nur für die profane X/Y-Diagramme gereicht, die das zeigten, was erstmal wollte.
Da haben dann die Sensoren schon die Tagesleistung geliefert und ich muss sie nur noch visualisieren.
Da gibt jetzt die KI leider nicht her (an sich schon, legt das aber auf der internen Mini-SD ab und ich will mir nicht jeden Tag das runterladen und dann in Excel reinschieben). Deswegen die openhab-lösung das ich gleich auf dem Smartphone, falls mal wieder ein Hahn nicht richtig zu ist oder wer hat mal wieder von Kids exzesiv geduscht hat. Vorher hatte die Daten nicht, aber wen man die Daten mal hat und sie sich anschaut, kann man da ne Menge draus lernen und auch vielleicht was einsparen aus dem gelernten.

Dann werd ich mal mit dem Auswertetools von openhab mal suchen, ob ich da was draus gebastelt bekomme. Wenn einer ein Tip hat, wäre ich dankbar.

Danke und Gruß
ymca

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

Re: Daten Berechnen der Wasseruhr

Beitrag von udo1toni »

Ich meinte schon die Charts in openHAB... ansonsten halt auch Grafana, wie oben beschrieben.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

nw378
Beiträge: 199
Registriert: 22. Sep 2018 10:38
Answers: 4

Re: Daten Berechnen der Wasseruhr

Beitrag von nw378 »

Ich denke, du suchst so etwas hier:
Bildschirmfoto 2023-03-30 um 14.07.42 (002).jpg
Die Daten der Wasseruhr - "ping" bei jedem Liter Durchfluss - speichere ich in einer influx -Datenbank ab.
Initial musste der Startwert (Ist-Stand) manuell gespeichert werden.

Grafisch aufbereiten lasse ich dieses Diagramm per Grafana, aufsummiert je Stunde / je Tag (siehe Screenshot) und je Monat.

Bei Bedarf kann ich gerne mal ein paar Code-Schnipsel hier posten.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openHAB 4.1.0 @ RPi 4 / SSD - InfluxDB2 und Grafana @ Synology Docker - KNX

ymca72
Beiträge: 15
Registriert: 3. Jan 2021 17:16
Wohnort: Südhessen

Re: Daten Berechnen der Wasseruhr

Beitrag von ymca72 »

@nw378 genau das meinte ich. Dafür wäre ich dir dankbar.

Ich muss aber gerade in dem Zusammenhang erstmal an meinen Openhab-Server was ändern. Ich fahre das System nur auf SD-Karte und hab vor Wochen schon den ersten Crash nach knapp 24 Monaten Laufzeit gehabt und natürlich kein aktuelles Backup gehabt :roll:
Ich setzt mir gerade von meinem aktuellen System ein Testsystem auf einem anderen PI um zu experimenten, damit ich mit einer externen Festplatte von Sd-Karte weg zu kommen ohne das ich mir mein heisses System zerschiesse.
Hab seit Jahren eine Pi-Drive bei mir unterm Tisch stehen für ein anderes Projekt (ich weiß nicht mal mehr, für welches :oops: ) und noch nie ausgepackt. Jetzt ausgepackt und festgestellt das es 1Tb ist. Na immerhin. Erst das mal ans laufen bekommen und dann an Grafana oder so gehen. Weil ich hab gelesen, das sehr intensiv für die SD ist und ich hab keine Lust wieder einen Datenverlust in kürzerster zu bekommen.

Was ein zusätzlicher Sensor und dessen Auswertung auf einmal einen Rattenschwanz hinter sich herzieht. :lol:

nw378
Beiträge: 199
Registriert: 22. Sep 2018 10:38
Answers: 4

Re: Daten Berechnen der Wasseruhr

Beitrag von nw378 »

kein Problem, here we go:

influx.persist:

Code: Alles auswählen

Gaszaehlerstand :     strategy = everyMinute, everyChange, restoreOnStartup
wasser_initialisieren.rules:

Code: Alles auswählen

var wasserzaehlerstand_initial = 588.932 // Stand am 27.08.2022 
rule "Gas / Wasser: Zähler initialisieren"
 when Item Zaehler_init_dummy changed to ON 
   then postUpdate(Gaszaehlerstand, gaszaehlerstand_initial)
   postUpdate(Wasserzaehlerstand, (wasserzaehlerstand_initial))
end 
wasser.rules:

Code: Alles auswählen

rule "Wasserzähler"
 when Item Wasser_impuls changed to OPEN  // *** Impulsgeber am Wasserzähler sendet einen Impuls über den KNX-Bus
   then {
     postUpdate(Wasserzaehlerstand, (Wasserzaehlerstand.state as DecimalType + 0.001))
     postUpdate(Wasserverbrauch, (Wasserzaehlerstand.state as DecimalType * 1000))}
 end 
sitemap:

Code: Alles auswählen

Switch item=gChartIntervall2 label="" icon="selfchart" mappings=[1="aktuell",2="tägl.",3="/Monat"]
Webview icon=energy url="http://192.168.178.60:3000/d-solo/-4Py1lWgk/energie-aktuell?refresh=10s&orgId=1&from=now-24h&panelId=1" height=6 visibility=[gChartIntervall2 == 1, gChartIntervall2 == NULL]
Webview icon=energy url="http://192.168.178.60:3000/d-solo/Xq1_bfigz/energie?refresh=10s&orgId=1&from=now-7d&panelId=12" height=6 visibility=[gChartIntervall2 == 2]
Webview icon=energy url="http://192.168.178.60:3000/d-solo/Xq1_bfigz/energie?refresh=10s&orgId=1&from=now-365d&panelId=15" height=6 visibility=[gChartIntervall2 == 3]
Text item=Wasserzaehlerstand
192.168.178.60:3000 ist die Adresse von meinem Pi, 3000 der Port für Grafana. /d-solo.... der Link zu der Graphik, musst du dann anpassen.

Und so siehts in Grafana aus:
Screenshot 2023-03-30 161306.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openHAB 4.1.0 @ RPi 4 / SSD - InfluxDB2 und Grafana @ Synology Docker - KNX

ymca72
Beiträge: 15
Registriert: 3. Jan 2021 17:16
Wohnort: Südhessen

Re: Daten Berechnen der Wasseruhr

Beitrag von ymca72 »

Hallo zusammen,
so den alten Thread nochmal hochziehen. Nachdem mir en RPI4 zugelaufen ist, ist mein Testsystem erfolgreich heute von einen 2+ RPI umgezogen auf ein Vierer mit Pi-rdrive dran und das hat auch schon mal erfolgreich gebootet. Komischerweise kommen auch die Daten von meinen Stammsystem rüber, aber das soll mich erstmal nicht stören, im Gegenteil.

Ich wollte jetzt Grafana und InfluxDB nachinstallieren aber irgendwie bricht das immer ab.

Sollte oder muss das auf einem frischen System installiert werden oder kann das auch einem alten laufenden System nachinstalliert werden? Updates habe natürlich vorher gefahren und es läuft derzeit 3.4.4

Danke und Gruß
YMCA72

Antworten