FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: buliwyf am 27 September 2015, 20:06:37

Titel: PloT nach Firmware update
Beitrag von: buliwyf am 27 September 2015, 20:06:37
Hallo,

ich habe gestern einige
HM_TC_IT_WM_W_EU
auf die Version 1.3 aktualisiert.
Doch seitdem bekomme ich im Log vom
HM_LC_SW4_SM
welchen ich mit dem Wandthermostat steuere deutlich mehr Einträge.
wie z.b.

2015-09-26_23:37:24 CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02 trigLast: CUL_HM_HM_TC_IT_WM_W_EU_2B08AF_SwitchTr:0
2015-09-26_23:37:24 CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02 trig_CUL_HM_HM_TC_IT_WM_W_EU_2B08AF_SwitchTr: 0
2015-09-26_23:41:24 CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02 trigLast: CUL_HM_HM_TC_IT_WM_W_EU_2B08AF_SwitchTr:0
2015-09-26_23:41:24 CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02 trig_CUL_HM_HM_TC_IT_WM_W_EU_2B08AF_SwitchTr: 0
2015-09-26_23:45:24 CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02 trigLast: CUL_HM_HM_TC_IT_WM_W_EU_2B08AF_SwitchTr:0
2015-09-26_23:45:24 CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02 trig_CUL_HM_HM_TC_IT_WM_W_EU_2B08AF_SwitchTr: 0


Im Plot verwendete ich bisher
$fld[2]eq"on"?1:0
als Funktion was tadellos funktionierte.
Doch durch die zusätzlichen Zeilen habe ich jetzt natürlich ständig "off" im Graphen.

Da ich die zusätzlichen Informationen gern im Log behalten möchte suche ich nun nach einer Anpassen der Funktion
bin aber in der Doku bisher nicht fündig geworden.

Die Funktion sollte nur noch on und off auswerten und dann halt eine 1 oder 0 als Wert zurück geben.

Hat irgendjemand eine Idee?
Oder zumindest einen Link zur passenden Doku?

Danke und Gruß
Dominik




Titel: Antw:PloT nach Firmware update
Beitrag von: buliwyf am 28 September 2015, 08:57:03
Hallo Zusammen bin etwas weiter.

Habe das gplot File händig angepasst von.

# Created by FHEM/98_SVG.pm, 2015-09-28 08:51:14
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics Off 0, On 1
set y2tics Off 0, On 1
set grid y2tics
set ylabel "Switch "
set y2label "Switch "
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]

#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_01.*:0:$fld[2]eq"on"?1:0
#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02.*:0:$fld[2]eq"on"?1:0
#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_03.*:0:$fld[2]eq"on"?1:0
#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_04.*:0:$fld[2]eq"on"?1:0

plot "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 1' ls l0fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 2' ls l1fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 3' ls l2fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 4' ls l3fill lw 1 with steps


in

# Created by FHEM/98_SVG.pm, 2015-09-28 08:51:14
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics Off 0, On 1
set y2tics Off 0, On 1
set grid y2tics
set ylabel "Switch "
set y2label "Switch "
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]

#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_01.on*|CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_01.off*:0:$fld[2]eq"on"?1:0
#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02.on*|CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_02.off*:0:$fld[2]eq"on"?1:0
#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_03.on*|CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_03.off*:0:$fld[2]eq"on"?1:0
#FileLog_CUL_HM_HM_LC_SW4_SM_25F5F0 3:CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_04.on*|CUL_HM_HM_LC_SW4_SM_25F5F0_Sw_04.off*:0:$fld[2]eq"on"?1:0

plot "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 1' ls l0fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 2' ls l1fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 3' ls l2fill lw 1 with steps,\
     "<IN>" using 1:2 axes x1y2 title 'Stellantrieb 4' ls l3fill lw 1 with steps


Das sieht erstmal soweit aus als ob es funktioniert.
Eine bessere Lösung wo die Daten im "function" behandelt werden wäre mir lieber.

Ich freue mich über jeden Verbesserungsvorschlag.
Danke
Dominik
Titel: Antw:PloT nach Firmware update
Beitrag von: frank am 28 September 2015, 10:10:43
ich würde ein anderes reading zum plotten nutzen. homematic bietet ja genügend.

edit:das sollte auch funktionieren
$fld[2]eq"on"?1:$fld[2]eq"off"?0:undef
Titel: Antw:PloT nach Firmware update
Beitrag von: buliwyf am 28 September 2015, 21:17:41
Sehr schön, hab es gleich wieder umgebaut.

Danke für die Hilfe.