Plots der MAX-Termostate werden nicht aktualisiert

Begonnen von Harald, 09 September 2013, 11:36:52

Vorheriges Thema - Nächstes Thema

Harald

Hallo zusammen,

ich habe mehrere Diagramme eingerichtet - 4x MAX-Thermostate (Qube), 1x Wetter, 2x FS20KSE (CUL) und 1x HMS100T (CUL).
In FHEM.cfg habe ich attr WEB longpoll 1 und attr WEB longpollSVG 1 eingetragen.
Das Wetterdiagramm und die Diagramme der Geräte, die am CUL hängen, werden zyklisch aktualisiert, wenn ich sie in der WEB-Oberfläche anzeige, die Diagramme der MAX-Thermostate aber nicht. Erst wenn ich den entsprechenden Raum (Diagramme) erneut anklicke, werden die Kurven bis zum aktuellen Zeitpunkt vervollständigt.

Wie kann ich erreichen, dass auch die Kurven der MAX-Geräte zyklisch aktualisiert werden?

Vielen Dank schonmal im Voraus und viele Grüße

Harald
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

rudolfkoenig

Das sind zu wenig konkrete Angaben (keine Definitionen/Attribute, .gplot-Datei, Logdaten), ich muss also raten.

Das automatische Plot-Aktualisieren ist als Proof-Of-Concept (bzw. als Beweis, dass es so nicht gut funktioniert) gedacht. Das JavaScript erkennt nur bestimmte Filter-Muster aus der .gplot Datei (nur die, die mit dem .gplot-Editor fuer FileLogs gemacht sind), d.h. nur in der Form deviceName oder deviceName\..* .

Vermutlich ist der Filter in der entsprechenden .gplot Datei anders aufgebaut.

Harald

Hallo Rudolf,

danke, dass Du Dich gemeldet hast. Jetzt weiß ich ungefähr, was benötigt wird. Damit ich das Forum nicht zumülle, hier zwei der benutzten gplot-Dateien.
Ich hoffe, Du kannst erkennen, was da schief läuft.

Besten Dank schonmal für Deine Hilfe

Harald
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

rudolfkoenig

Schaut so aus, als ob ich mit meiner Vermutung recht haette.
Bau mal mymaxtempvalve.gplot mit dem .gplot Editor neu, dann muesste es funktionieren.

Harald

Hallo Rudolf,

es klappt leider nicht so, wie ich dachte. Ich habe mittels eines Thermostaten und dem Editor die gplot-Datei neu erzeugt und dann so angepasst, dass sie für alle 7 Geräte brauchbar ist. So werden die Messwerte aber nicht aktualisiert.

Muss ich denn für jeden Thermostat eine eigene Datei anlegen, damit die Diagramme fortgeschrieben werden?

Viele Grüße

Harald
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

rudolfkoenig

>  Muss ich denn für jeden Thermostat eine eigene Datei anlegen, damit die Diagramme fortgeschrieben werden?

Nein.

Koenntest Du noch ein paar Zeilen aus dem Log posten und die neue .gplot Datei?

Harald

Ja, natürlich gerne. Hier erstmal die neue gplot-Datei. Aus welcher Log-Datei möchtest Du einen Auszug?
Ich habe mal Ausschnitte aus verschiedenen MAX-Dateien erstellt.
2013-09-10_12:01:26 Bad mode: auto
2013-09-10_12:01:26 Bad desiredTemperature: 19.0
2013-09-10_12:01:26 Bad valveposition: 98
2013-09-10_12:01:26 Bad temperature: 18.7
2013-09-10_12:06:37 Bad mode: auto
2013-09-10_12:06:37 Bad desiredTemperature: 19.0
2013-09-10_12:06:37 Bad valveposition: 98
2013-09-10_12:06:37 Bad temperature: 18.7
2013-09-10_12:11:46 Bad mode: auto
2013-09-10_12:11:46 Bad desiredTemperature: 19.0
2013-09-10_12:11:46 Bad valveposition: 98
2013-09-10_12:11:46 Bad temperature: 18.7

2013-09-10_12:01:25 Computer mode: auto
2013-09-10_12:01:25 Computer desiredTemperature: 20.0
2013-09-10_12:01:25 Computer valveposition: 16
2013-09-10_12:01:25 Computer temperature: 21.0
2013-09-10_12:06:35 Computer mode: auto
2013-09-10_12:06:35 Computer desiredTemperature: 20.0
2013-09-10_12:06:35 Computer valveposition: 16
2013-09-10_12:06:35 Computer temperature: 21.0
2013-09-10_12:11:45 Computer mode: auto
2013-09-10_12:11:45 Computer desiredTemperature: 20.0
2013-09-10_12:11:45 Computer valveposition: 16
2013-09-10_12:11:45 Computer temperature: 21.0

2013-09-10_12:01:26 Wohnzimmer1 mode: auto
2013-09-10_12:01:26 Wohnzimmer1 desiredTemperature: 21.0
2013-09-10_12:01:26 Wohnzimmer1 valveposition: 76
2013-09-10_12:01:26 Wohnzimmer1 temperature: 20.0
2013-09-10_12:06:36 Wohnzimmer1 mode: auto
2013-09-10_12:06:36 Wohnzimmer1 desiredTemperature: 21.0
2013-09-10_12:06:36 Wohnzimmer1 valveposition: 76
2013-09-10_12:06:36 Wohnzimmer1 temperature: 20.0
2013-09-10_12:11:46 Wohnzimmer1 mode: auto
2013-09-10_12:11:46 Wohnzimmer1 desiredTemperature: 21.0
2013-09-10_12:11:46 Wohnzimmer1 valveposition: 76
2013-09-10_12:11:46 Wohnzimmer1 temperature: 20.0

Ist das so ausreichend, oder benötigst Du noch etwas anderes?
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

rudolfkoenig

#FileLog 4:desiredTemperature:4.5:
#FileLog 4:temperature:4.5:
#FileLog 4:valveposition:0:
#FileLog 4:mode\x3a:0:$fld[3]=~"auto"?0:1

Das wurde nicht mit dem .gplot-Editor erstellt.

Man braucht sowas wie

#FileLog 4:Bad.temperature\x3a:4.5:
#FileLog 4:Wohnzimmer1.valveposition\x3a:0:
#FileLog 4:Computer.mode\x3a:0:$fld[3]=~"auto"?0:1

wobei der .gplot-Editor die Filter per dropdown zur Verfuegung stellt, und da ist \x3a auch als : zu sehen.

Fuer den Fall, dass Du nicht weisst, was der .gplot Editor ist, siehe Link

Harald

Hallo Rudolf,

< Das wurde nicht mit dem .gplot-Editor erstellt.

Jein, ich habe die Datei mit dem Editor erstellt, aber dann angepasst, da ich mymaxtempvalve.gplot für 7 MAX-Thermostate verwende. Es sollen 7 Diagramme - in jedem Soll- und Isttemperatur und Ventilöffnung des einzelnen Ventils - dargestellt werden. Da kann ich z.B. fürs Wohnzimmer keinen Eintrag in der Datei wie #FileLog 4:Bad.temperature\x3a:4.5: gebrauchen.
Falls solche Einträge erforderlich sind, muss ich ja für jedes Gerät ein eigenes gplot-File erstellen, z.B. Bad.gplot, Wohnzimmer1.gplot usw. So wie Du das dargestellt hast, würde in dem Diagramm die Linien von Bad-Isttemperatur, Wohnzimmer-Ventilstellung usw. angezeigt, oder?

So wie ich die Parameter in mymaxtempvalve.gplot eingetragen habe, kann das File für jedes Gerät ein Diagramm mit den Linien für Soll- und Isttemperatur sowie Ventilöffnung zeichnen. Das funktioniert auch. Lediglich die Aktualisierung klappt nicht, wenn die Diagramme in der Weboberfläche angezeigt werden.

Vielleicht habe ich ja das ganze auch falsch verstanden. Ist es denn richtig, dass die Aktualisierung nicht so klappt, wie ich mir das vorstelle?

Ich würde mich sehr freuen, wenn Du mich auf den richtigen Pfad bringen könntest.

Herzlichen Dank für Deine Hilfe und viele Grüße

Harald
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

rudolfkoenig

> aber dann angepasst

Sowas habe ich aber mit keinem Wort vorgeschlagen.

Du musst fuer jeden der Geraete ein personalisiertes .gplot Datei erstellen, sonst funktioniert longpollSVG nicht.

Harald

Danke Rudolf für die Aufklärung. Natürlich hast Du mir dieses Vorgehen nicht vorgeschlagen. Aus Unkenntnis der Zusammenhänge habe ich das so gemacht. Jetzt weiß ich aber Bescheid und kann mich entsprechend verhalten.

Besten Dank nochmals für Deine Geduld und Hilfe. Da habe ich schon wieder etwas gelernt.

Viele Grüße

Harald
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

Harald

Hallo Rudolf,

nochmal besten Dank für Deine Hilfe. Ich habe nun für jedes Diagramm ein eigenes gplot-File angelegt und die Aktualisierung klappt. Allerdings ist der Bildaufbau beim aktualisieren ziemlich langsam. Das liegt aber daran, dass ich FHEM auf einem Stick an meiner 7170 laufen habe. Ich glaube, da muss ich mir mal Gedanken machen, worauf ich FHEM in Zukunft ohne großen Aufwand und Energiekonsum laufen lassen kann. Auf der 6360 geht das ja nicht. Da hat man ja keinen Zugriff drauf :-(

Viele Grüße

Harald
Router:AVM7590 1&1 FW:FRITZ!OS 07.56 Anbindung:1&1 50/10 Mb/s, WLAN-Repeater 300E
ELV MAX!Cube, 7xThermostat, ECO, RasPi 4B mit bullseye auf Festplatte,
CUL V 1.67, JeeLink v3_10.1c, nanoCUL, 1xS300TH, 4xHMS100T, 4xELRO, 1xTFA, 2xMAX_FK
ELV MAX!1.4.5, FHEM 5.7 auf RasPi, Kostal PIKO plus

rudolfkoenig

Plots erstellen auf einem FB ist ein Geduldsspiel, siehe Link
Ich plane eine Neuimplementierung von SVG in JavaScript, das wird aber dauern.

svenkoethe

ZitatIch plane eine Neuimplementierung von SVG in JavaScript, das wird aber dauern

Vielleicht sollte man dabei auf eine bestehende Javascript-Charting-API zugreifen...
- Am besten mit AJAX Unterstützung für Detailwerte (MouseOver)

Sowas gibt es ja zu hauf...

-- Highcharts
-- Google Charting
-- RGraph
-- jqplot
-- Rickshaw https://github.com/shutterstock/rickshaw
-- usw...

Dann würden die Plots auch vom Client-PC erzeugt und der Server(FHEM) würde entlastet.

Da würde sich sicher was finden lassen das man "frei" benutzen darf...(Habe ich bei den obigen nicht geprüft)