FileLog: Werte nur zu bestimmten (Tages?)Zeiten loggen?

Begonnen von Dracolein, 21 August 2022, 14:06:16

Vorheriges Thema - Nächstes Thema

Dracolein

Hallo zusammen,

folgendes Szenario:
Ich logge zwecks grafischer Darstellung die Leistungsabgabe meiner Wallbox per FileLog mit. Im Wallbox-Device habe ich das Attribut event-on-change-reading gesetzt, um nur bei Wertänderungen >50Watt einen Logeintrag zu generieren.
Das Ganze funktioniert soweit seit Monaten wunderbar. Innerhalb eines Diagramms mit mehreren Graphen wird zusätzlich die Wallbox-Leistung dargestellt, aber nur wenn an diesem Tage überhaupt ein Ladevorgang stattfindet. (Wenn an einem Tag mal kein Ladevorgang existiert --> keine Daten --> keine Wallbox-Kurve innerhalb des Diagramms)

Nun habe ich seit längerem das rein optische Problem, dass im Lademodus PV-Überschuss am Tag mehrere Ladevorgänge stattfinden können. Ein kurzes Beispiel von heute:


2022-08-21_10:37:21 EVCharger22 Leistung_Ladestation: 51.8
2022-08-21_10:37:36 EVCharger22 Leistung_Ladestation: 2341.4
2022-08-21_10:39:22 EVCharger22 Leistung_Ladestation: 1414.6
2022-08-21_10:41:52 EVCharger22 Leistung_Ladestation: 0
2022-08-21_12:31:32 EVCharger22 Leistung_Ladestation: 3740.8
2022-08-21_12:33:17 EVCharger22 Leistung_Ladestation: 3279.3
2022-08-21_12:37:17 EVCharger22 Leistung_Ladestation: 3045.2
2022-08-21_12:39:19 EVCharger22 Leistung_Ladestation: 3543.3


Entsprechend verbindet das Diagramm in der grafischen Ausgabe wie immer alle Datenpunkte miteinander und zwischen 10:41 Uhr und 12:31 Uhr wird eine gerade Linie erzeugt. Genau das möchte ich ändern. Jetzt wäre es leicht, zusätzlich das Attribut event-min-interval zu nutzen und z.B. im 10-Minuten Takt ein Event und folgtlich einen Logeintrag zu erzeugen.
Allerdings generiert mir FHEM dann rund um die Uhr Logeinträge immer dem gleichen Wert oder z.B. auch an Tagen, an denen gar kein Ladevorgang stattfindet. Das möchte ich vermeiden, weiß jedoch keinen  Lösungsansatz.

Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

betateilchen

Zitat von: Dracolein am 21 August 2022, 14:06:16
weiß jedoch keinen  Lösungsansatz.

Da gibt es mehrere.

Der einfachste dürfte sein, das Logging über Nacht komplett abzuschalten.
Dafür gibt es das Attribut disabledForIntervals.
Alternativ kannst Du auch per at zum Sonnenauf- und Untergang das Logfile ein- und ausschalten.

Du könntest im Plot auch anstatt mit einer Linie mit Punkten arbeiten. Wenn es keinen Wert gibt, gibt es auch keinen Punkt. (ok, es gibt einen, aber der befindet sich auf der 0-Linie, wo er in der Regel nicht die Optik stört. Falls er doch stört, kannst Du den 0-Punkt sogar noch im SVG selbst über die Feldfunktionen unterdrücken.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

canis

#2
Ich mache das mit einem Dummy, der von einem FileLog geloggt wird, wenn er sich ändert.
Mit einem zeitgesteuertem at oder einem DOIF schreibst du den Wert in den Dummy, der dann geloggt wird, z. B. jede Stunde.
Diagramm: such mal nach addlog bzw. Plotabriss vermeiden