FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Tubie1977 am 22 Dezember 2024, 18:58:10

Titel: Plot wird nur wenn Datenpunke vorhanden aktualisiert
Beitrag von: Tubie1977 am 22 Dezember 2024, 18:58:10
Hallo,
es ist mal wieder Weihnachten und ich habe ein klein wenig Zeit gefunden, wieder etwas mit FHEM zu arbeiten. ;)

Ich habe mich nun mal den Logs und den Plots zugewandt. Ich möchte die alten FHT80 und die Fritz301 Heizungsregler in ein Log und dann ein Plot daraus schreiben.

Funktioniert auch alles soweit ganz gut. Der der Log der "readings" wird in MariaDB geschrieben. Im Plot Editor kann ich dann die einzelnen Werte der DB zurück lesen. Nun werden die Linien nicht nach Zeit gezeichnet, sondern nach Datenpunkten. Wird die "Desired-Temperature" morgens geändert, habe ich erst wieder eine vollständige Linie, wenn diese abends geändert wird. Die Linien werden also erst gezeichnet, wenn ein neuer Datenpunkt vorhanden ist.

Frage: Gibt es eine Möglichkeit das umzustellen? Wenn es schon 21:00 Uhr ist, und seit 6:00 keine Änderung vorgenommen wurde, müsste doch irgendwie eine durchgehende Linie im Plot Möglich sein.

Schonmal vielen Dank für eure Antwort!

Viele Grüße,
Horst       
Titel: Aw: Plot wird nur wenn Datenpunke vorhanden aktualisiert
Beitrag von: betateilchen am 22 Dezember 2024, 19:18:11
Viele Möglichkeiten.
Grundsätzlich musst Du dafür sorgen, dass es genügend Datenpunkte gibt.
Die beiden erfolgversprechendsten Änderungen dürften diese sein:


Und nächstes Mal bitte im richtigen Unterforum fragen.
Titel: Aw: Plot wird nur wenn Datenpunke vorhanden aktualisiert
Beitrag von: Tubie1977 am 22 Dezember 2024, 20:06:29
Hallo,
schonmal vielen Dank für die Antwort mit dem "addlog". Ich habe jetzt im wiki (https://wiki.fhem.de/wiki/Plot-Abriss_vermeiden) den folgenden Ansatz gefunden:

define addLog notify addLog {addLog("ez_Aussensensor","state");;\
    addLog("ez_FHT","actuator");;\
    addLog("ez_FHT","measured-temp");;\
    addLog("MunichWeather","humidity");;\
    addLog("MunichWeather","pressure");;\
    addLog("MunichWeather","temperature");;\
    addLog("MunichWeather","wind_chill");;}
attr addLog room 99_System


und:
define a_midnight1 at *23:59 trigger addLog
attr a_midnight1 room 99_System

Vermute mal das hinter trigger das addLog auf das define addLog des ersten Programms bezogen ist. Wenn ich nun den Log alle 2 Stunden wollte, müsste das dann so aussehen???

define a_twohour at +*02:00 trigger addLog
attr a_twohour room 99_System


Warum ich das im Anfänger Forum geschrieben habe - Ich habe keinen, aber auch nicht den geringsten Plan, wo ich das eingeben bzw. in welche Datei das kommen soll???


Horst



Titel: Aw: Plot wird nur wenn Datenpunke vorhanden aktualisiert
Beitrag von: DS_Starter am 23 Dezember 2024, 00:23:09
Hallo Horst,

ZitatIch habe jetzt im wiki den folgenden Ansatz gefunden:
...

Warum nicht einfach das in DbLog eingebaute "set <name> addLog ..." verwenden?
(siehe die DbLog Hilfe zu diesem Kommando)

Mit einem at-Device kann man mit diesem Befehl zu definierten Zeitpunkten Daten in die DB schreiben lassen.
Andere Trigger gehen natürlich ebenso.

LG

Titel: Aw: Plot wird nur wenn Datenpunke vorhanden aktualisiert
Beitrag von: Tubie1977 am 23 Dezember 2024, 09:49:49
Hallo Guten Morgen und vielen Dank für eure Antworten!

define test at +*00:01 set myLogDB addLog Wohnzimmer_FHT80:desired-temp

ist die Lösung des Problems. :)  Jetzt wird jede Minute ein Log geschrieben. Muss dann noch auf 2h und 23:59 und 00:01 ergänzt werden. Dafür werde ich einzelne at's anlegen. Die FHT80 Thermostate werden sicherlich irgendwann ersetzt und dann fällt das auch weg...

Ich habe mal gesagt, wenn die kaputt gehen werden die durch was modernes ersetzt. Mittlerweile ist schon ein Fritz DECT301 ausgefallen, die FHT80 leben komischerweise immer noch und sind schon um die 20 Jahre alt.

Viele Grüße und euch allen eine frohe Weihnachten! 

Horst


P.S. Bitte seht es mir nach. Ich bin mit der Syntax von FHEM/PERL noch immer auf Kriegsfuß.  :-\