Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS-Dev: aus Pulsen / Zählerständen in Änderungsrate berechnen (S0 Stromzähler)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    LBS-Dev: aus Pulsen / Zählerständen in Änderungsrate berechnen (S0 Stromzähler)

    Hallo,

    für meine WP habe ich einen S0 Zähler mit 1 Pulse = 1Wh.
    Aktuell werte ich den mit dem Weinzierl Multi IO 570 aus, der kann sogar eine (skalierte) Änderungsrate berechnen, kann aber nur fixe Messintervalle.
    Da die Spannweite bei der WP von ~20W Standby bis über 9kW sehr hoch ist, stellt sich das nicht so einfach dar. Eigentlich liegt es nur an der kleinen Untergrenze, da da die Pulse nur alle paar Minuten kommen.

    Jetzt kann man das größte Messintervall (10min) wählen, dann passt das schon so halbwegs bei den 20W, aber manche DInge wie z.B. Zirku-Pumpe sieht man dann nicht mehr und die Flanken werden verschliffen.

    Daher möchte ich einen LBS erstellen, der mir aus den Pulsen oder den Zählerständen eine Änderungsrate berechnet.

    Eigentlich ganz einfach:
    Zählerstand T1: 65578
    Zählerstand T2: 65580
    T1: 04.09.2019 07:45:13,258
    T2: 04.09.2019 07:46:14,879

    (Z2-Z1)/(T2-T1) = 1 / 1,621s = 1,238 1/s

    1,238 Wh / s = 2749 W

    Bei 9Kw sind es jedoch schon 2,5 Pulse pro Sekunde. Habe Zweifel dass die Zeit in edomi dafür genau genug ist.

    In meinem konkreten Fall kommt noch dazu dass mein edomi virtualisiert ist und daher die Uhr grottig schlecht ist. Ich synce jede minute mit ntp.

    Lösung für das erste könnte sein, dass man bei hohen Änderungsraten über mehrere Pulse mittelt.
    Für das zweite... Fällt mir nicht wirklich was ein. Da muss ich auch erstmal schauen wie sich das konkret auswirkt.


    Ideen und Anregungen willkommen.
    OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

    #2
    wie vermutet führen hohe Leistungen / niedrige Puls-Abstände zu ziemlichen Jitter.

    Grundlage: edomi Datenarchiv, das glücklicherweise auch mikrosekunden im bauch hat

    2019-09-04 10_48_24-Window.png

    OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

    Kommentar


      #3
      Du kannst unter Diagramme - Datenquellen - das Mittelwert-Intervall einstellen.. vielleicht hilft dir das weiter ?

      Die Hilfe sagt das dazu:

      Code:
      Mittelwert-Intervall: ggf. können mehrere Datenpunkte zeitlich zusammengefaßt werden (Mittelwert)[LIST][*]das Mittelwert-Intervall wird in Sekunden angegeben[*]0: die Datenpunkte werden grundsätzlich nicht zusammengefaßt, jedoch werden die Datenpunkte ggf. automatisch gemittelt (s.u.)[*]1..∞: alle Datenpunkte innerhalb dieses Intervalls werden zu einem Datenpunkt zusammengefaßt und gemittelt[*]Hinweis: Die Verwendung eines Mittelwert-Intervalls ist bei einer hohen Anzahl von Datenpunkten zu empfehlen. Die Graphen werden performanter generiert und wirken oftmals visuell angenehmer (Glättung).[*]Wichtig: Diese Einstellung hat keinen Einfluss auf die Skalierung der X-Achse![/LIST]
      Bereich.png

      Gruß Martin
      Die Selbsthilfegruppe "UTF-8-Probleme" trifft sich diesmal abweichend im groüen Saal.

      Kommentar


        #4
        Zitat von Brick Beitrag anzeigen
        Du kannst unter Diagramme - Datenquellen - das Mittelwert-Intervall einstellen.. vielleicht hilft dir das weiter ?
        das würde sicher funktionieren, aber ich möchte allein schon aus Performance- und Speicherplatzgründen nicht 2-3 Datenpunkte pro Sekunde.
        Wenn der LBS alle x Sekunden die Changerat aktualisiert, dann ist das für mich ok.

        Ein schneller Prototyp schaut ganz gut aus:
        2019-09-04 13_38_13-EDOMI · Visualisierung.png

        rot: Leistung vom Weinzierl
        grün: Zähler vom Weinzierl
        orange: Leistung aus meinem LBS. Die Spikes sind reboots und zeigen ein Problem des Diagramms:
        Der Wert gilt nicht für den Zeitraum der Messung bis zum nächsten Datenpunkt, sondern für den Zeitraum bis zum vorherigen Datenpunkt.
        Somit stimmt das Integral (Fläche unter dem Graphen) dann nicht mehr.
        Das ist kein Fehler von edomi, die Darstellung kann auch richtig sein, aber wenn man das einstellen könnte wäre super.
        Aber das könnte nur gaert lösen.

        Um die Reboot-Probleatik zu umgehen überlege ich noch, den alten Zählerstand/Zeitstempel über remanente KOs abzuspeichern.
        Alternativ könnte man auch übers Datenarchiv gehen, aber das wäre "an der API vorbei".
        Zuletzt geändert von Ing-Dom; 04.09.2019, 12:45.
        OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

        Kommentar


          #5
          Zitat von SirSydom Beitrag anzeigen
          Der Wert gilt nicht für den Zeitraum der Messung bis zum nächsten Datenpunkt, sondern für den Zeitraum bis zum vorherigen Datenpunkt.
          Somit stimmt das Integral (Fläche unter dem Graphen) dann nicht mehr.
          dafür ist mir auch gerade eine Lösung eingefallen:

          Man müsste den Wert mit einem Zeitstempel in der Vergangenheit ins Archiv einfügen. Dafür bräuchte man einen LBS, mit edomi gehen nur vordefinierte Zeitstempel.
          Aber der LBS wäre trivial...
          OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

          Kommentar

          Lädt...
          X