FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: FHEm2005 am 17 März 2014, 09:26:36

Titel: GELÖST Grafische Darstellung über "Function" verändern [W/h] in [kW/h]
Beitrag von: FHEm2005 am 17 März 2014, 09:26:36
Ich habe von einem Homematic Zwischenstecker Verbrauchswerte in Watt/h, die ich gerne über gplot in kW/h darstellen möchte. Nach meiner Recherche wird für die Darstellung eine Logzeile offensichtlich in ein array $fld[ ]  eingelesen. Die Anzahl der Elemente richtet sich wohl nach den gefundenen "Leerzeichen". Eine Zeile aus meinem Log sieht so aus:
2014-03-15_18:04:52 Stecker01_Pwr energy: 5737.9            also gibt es vier Einträge (beginnend mit 0).
------$fld[0]------+--$fld[1]----+$fld[2]+$fld[3]

Der eigentliche Messwert (5737,9) ist im Datenfeld $fld[3] zu finden. Jetzt habe ich im Feld Fuction den Ausdruck
$fld[3]=$fld[3]/1000  eingetragen. Jetzt wird der dargestellte Wert korrekt in kw/h dargestellt.
Ich frage mich jetzt:
Für die Darstellung ohne Brücksichtigung von Nachkommatas reicht ja auch der Eintrag von int aus und nicht $fld[3]=int $fld[3]
Die Dokumentation von gnu-plot ist zu mächtig. Schön wäre etwas auf fhem Zugeschnittenes.

Gruß Eberhard
Titel: Antw:Grafische Darstellung über "Function" verändern [W/h] in [kW/h]
Beitrag von: Joachim am 17 März 2014, 09:43:13
Alternativ ein userReading verwenden, und gleich den geäderten Wert loggen.

Beispiel:

attr Zwischenstecker userReadings kW/h { int ( 10 *( (ReadingsVal("Zwischenstecker","Wattstunde",0) / 1000) + 0.5 ) / 10 }
Titel: Antw:Grafische Darstellung über "Function" verändern [W/h] in [kW/h]
Beitrag von: FHEm2005 am 17 März 2014, 10:11:54
Danke für die interessante Alternative; ich werde sie im Hinterkopf behalten, wenn ich die Log-Daten verändert abspeichern möchte. Nur ein kleiner Hinweis:
[korinthenkackermodus] Hinter der letzten 10 fehlt noch 'ne Klammer zu. Sorry, aber nur zu Vervollständigung. [/korinthenkackermodus]

Mir geht es momentan hier nur um das THema gplot und die damit verbundenen Möglichkeiten über Function angezeigte Logwerte gezielt temporär  zu verändern.

Gruß Eberhard
Titel: Antw:Grafische Darstellung über "Function" verändern [W/h] in [kW/h]
Beitrag von: FHEm2005 am 17 März 2014, 10:31:05
Da sucht man tagelang nach Informationen und fragt letztendlich das Forum. Dann hat man den Thread eingestellt, schaut noch mal ins wiki und dann - oh-Graus-mich-trifft-der-Schlag - findet man einen Beitrag in englischer Sprache, der sagt was Sache ist.

Fazit: Nicht nur eine Nacht warten, bevor man (ich) etwas einstellt sondern immer eine Nacht länger  :-[

Es gibt nur zwei Funktionen, die eingearbeitet sind: int und delta-h bzw. delta-d. Alles Andere geht nur über pearl-Ausdrücke wie oben erwähnt.

Gefunden habe ich es unter: http://www.fhemwiki.de/wiki/Creating_Plots (http://www.fhemwiki.de/wiki/Creating_Plots)

Danke nochmal an Joachim.

Gruß Eberhard
Titel: Antw:Grafische Darstellung über "Function" verändern [W/h] in [kW/h]
Beitrag von: Joachim am 17 März 2014, 10:38:40
Moin FHEm2005,

ZitatNur ein kleiner Hinweis:
[korinthenkackermodus] Hinter der letzten 10 fehlt noch 'ne Klammer zu. Sorry, aber nur zu Vervollständigung. [/korinthenkackermodus]

Da hast Du recht, also hier die korrigierte Version:

attr Zwischenstecker userReadings kW/h { int ( 10 *( (ReadingsVal("Zwischenstecker","Wattstunde",0) / 1000) + 0.5 ) / 10 )}

das kommt davon, wenn man eigenen Codeschnippsel versucht anzupassen.
Gut dass Du eine Lösung für Dich gefunden hast.
Setze bitte deinen Tread-Titel auf gelöst.

Gruß Joachim