FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: sun1907 am 14 Januar 2013, 06:34:31

Titel: Weitere Plot-Kurven hinzufügen
Beitrag von: sun1907 am 14 Januar 2013, 06:34:31
Ich würde gerne noch die eine oder andere graphische Kurve bei den Graphen/Plots hinzufügen.

In der Datei: fht.gplot finde ich z.B. diesen Code:

#FileLog 4:measured:0:
#FileLog 4:actuator.*[0-9]+%:0:int

plot \
  "< awk '/measured/{print $1, $4}' <IN>"\
     using 1:2 axes x1y2 title 'Gemessene Temp' with lines,\
  "< awk '/actuator/ {print $1, $4+0}' <IN>"\
     using 1:2 axes x1y1 title 'Ventilposition (%)' with lines\


was kann ich denn in der Grafik noch alles hinzufügen und wie lauten da die genauen Bezeichnungen ?.
Wenn ich z.B. als Test den o.a. Code erweitere mit z.B:

#FileLog 4:desired:0:
#FileLog 4:measured:0:
#FileLog 4:actuator.*[0-9]+%:0:int

plot \
  "< awk '/measured/{print $1, $4}' <IN>"\
     using 1:2 axes x1y2 title 'Gemessene Temp' with lines,\
  "< awk '/actuator/ {print $1, $4+0}' <IN>"\
     using 1:2 axes x1y1 title 'Ventilposition (%)' with lines\
  "< awk '/desired/ {print $1, $4}' <IN>"\
     using 1:2 axes x1y3 title 'Wunschtemp' with lines\


sehe ich zwar auch meine gewünschte neue Kurve, jedoch stimmt im Verhältnis dann die Kurvendarstellung nicht.
In diesem Fall würde ich gerne im Plot also nicht nur die Standardkurven: gemessene Temp und Ventilposition angezeigt bekommen, sondern ich würde gerne noch z.B. die Temp-Kurve der am FHT eingestellten Temp (desired-temp) angezeigt bekommen.
Ist mein Code oben soweit (schon) richtig, oder was muss evtl. geändert werden ?
Danke für jede Hilfe.
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: sun1907 am 20 Januar 2013, 13:51:27
Gibt es hierzu (s.o.) nicht irgendwo eine Anleitung oder eine Liste mit weiteren Codes, die man in das Plot-Bild mit einbauen kann ?.
Ich meine hierbei speziell für Geräte der FHT80(b) oder FS20 - Klasse die von einer FHZ1300 über FHEM gesteuert werden.

Vielen Dank im Voraus.
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: jhohn am 20 Januar 2013, 14:43:50
mach aus dem "axes x1y3" ein "axes x1y2". Du willst doch die gleiche y-Achse verwenden wie bei measured-temp.
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: sun1907 am 20 Januar 2013, 15:12:54
Danke für deine Antwort. Das war eher letzte Woche ein Schreibfehler, dennoch danke für den Tip (für andere).

Ich habe aber rausgefunden, dass anscheinend noch die Reihenfolge von Wichtigkeit ist, darum hier der Code, der so läuft und die Kurven nun anzeigt:


set y2label "Temperatur in C"
set ylabel "Ventilposition (%)"

#FileLog 4:measured:0:
#FileLog 4:desired:0:
#FileLog 4:actuator.*[0-9]+%:0:int

plot \
  "< awk '/measured/{print $1, $4}' <IN>"\
     using 1:2 axes x1y2 title 'Gemessene Temp' with lines,\
 "< awk '/desired/ {print $1, $4}' <IN>"\
     using 1:2 axes x1y2 title 'Wunschtemp' with lines,\
  "< awk '/actuator/ {print $1, $4+0}' <IN>"\
     using 1:2 axes x1y1 title 'Ventilposition (%)' with lines\
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: Gunther am 21 Januar 2013, 10:59:51
Das habe ich getestet. Irgendwie sieht die Soll/Wunsch-Temperatur komisch aus. Ist eine schräg steigende Gerade, die einfach aufhört.
Der Verlauf der Soll-Temperatur darf doch eigentlich nur horizintal (verstellen) und vertikal sein. Ähnlich wie die Ventilöffnung.

Sieht das bei Dir korrekt aus?
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: sun1907 am 21 Januar 2013, 11:29:18
OK, das stimmt. Die Kurven sehen bei mir auch ähnlich steil aus, wie die Kurven der Ventile. Aber ich hatte es nun erstmal so gelassen. Wenn du oder jemand Anderes ne perfektere Methode hast/hat, gerne...
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: Gunther am 21 Januar 2013, 11:41:54
Bei mir sehen die Werte nun so aus...

Habt Ihr einen Tipp warum?

Meine fht.gplot schaut so aus:
set y2label "Temperature in C"
set ylabel "Actuator (%)"

#FileLog 4:measured:0:
#FileLog 4:desired:0:
#FileLog 4:actuator.*[0-9]+%:0:int

plot \
  "< awk '/measured/{print $1, $4}' <IN>"\
     using 1:2 ls l0fill axes x1y2 title 'IST-Temperatur' with lines,\
 "< awk '/desired/ {print $1, $4}' <IN>"\
     using 1:2 axes ls l2 x1y2 title 'Soll-Temperatur' with lines,\
  "< awk '/actuator/ {print $1, $4+0}' <IN>"\
     using 1:2 axes ls l7 x1y1 title 'Ventilöffnung (%)' with steps\

Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: jhohn am 21 Januar 2013, 11:43:45
Versucht mal Wunschtemp "with steps" anstatt "with lines".
Die Wunschtemperatur wird ja von jetzt auf gleich geändert und nicht kontinuierlich über die verstrichene Zeit seit der letzten Änderung.
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: Gunther am 21 Januar 2013, 22:55:37
Hab es nun korrigiert. Funktioniert mit folgendem Code:

plot \
  "< awk '/measured/{print $1, $4}' <IN>"\
     using 1:2 ls l0fill axes x1y2 title 'Gemessene Temp' with lines,\
 "< awk '/desired/ {print $1, $4}' <IN>"\
     using 1:2 axes x1y2 title 'Wunschtemp' with steps,\
  "< awk '/actuator/ {print $1, $4+0}' <IN>"\
     using 1:2 axes x1y1 title 'Ventiloeffnung (%)' with lines\


Leider wird die Soll-Temp nur angezeigt wenn sie geändert und ins Log geschrieben wird. Bis zur Änderung auf gleicher Stufe wäre genial.
Titel: Aw: Weitere Plot-Kurven hinzufügen
Beitrag von: jhohn am 22 Januar 2013, 08:19:47
ich habe da mal was von addLog gelesen, was dieses Problem beheben soll.