Hallo Zusammen,
ich nutze seit geraumer Zeit logProxy um vor allem in meinen Diagrammen die Zeitachsen manipulieren und Daten aus mehreren FileLog zusammen führen zu können.
In diesem Zusammenhang möchte beim Plot meine Heizleistung von W in kW umrechnen, heißt:
FileLog:FileLog_SolvisBen_Solar_Summary:4:myLeistung.*:$fld[4]/1000
Aber das funktioniert nicht.
Das List zum Diagramm:
Internals:
DEF MyLogProxy:FH_Dia_lp_Linie_Linie_Linie_MinMax:CURRENT
FUUID 5d0b55a5-f33f-076e-6946-da74e5630c74f59b
GPLOTFILE FH_Dia_lp_Linie_Linie_Linie_MinMax
LOGDEVICE MyLogProxy
LOGFILE CURRENT
NAME Dia_Heizung_Solar
NOTIFYDEV global
NR 1409
STATE initialized
TYPE SVG
Attributes:
endPlotNow 1
endPlotToday 1
group Diagramme
label "Temperatur / °C"::"Leistung / W"::"[0:120]"::"[0:12000]"::''::''::"Solarkollektor (°C)"::"Warmwasser (°C)"::"Leistung (W)"
plotfunction FileLog:FileLog_SolvisBen:4:Solarkollektortemperatur.*:$fld[4] FileLog:FileLog_SolvisBen:4:Warmwasserpuffer.*:$fld[4] FileLog:FileLog_SolvisBen_Solar_Summary:4:myLeistung.*:$fld[4]/1000
room Keller
sortby 003
title "SolvisBen - Solarmodule"
Und hier noch die GPLOT Definition:
# Created by FHEM/98_SVG.pm, 2018-04-08 16:03:46
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 <L5>
set y2tics <L6>
set grid ytics y2tics
set ylabel "<L1>"
set y2label "<L2>"
set yrange <L3>
set y2range <L4>
#MyLogProxy <SPEC1>
#MyLogProxy <SPEC2>
#MyLogProxy <SPEC3>
plot "<IN>" using 1:2 axes x1y1 title '<L7>' ls l3 lw 3 with lines,\
"<IN>" using 1:2 axes x1y1 title '<L8>' ls l0 lw 3 with lines,\
"<IN>" using 1:2 axes x1y2 title '<L9>' ls l1 lw 3 with lines
Wo ist mein Denkfehler?
Grüße
Knut
das ist das erste mal das ich sehe das die komplette columnspec in plotfunction gesteckt wird statt nur dem device oder dem reading. mal sehen wofür das noch nützlich ist :)
zum konkreten problem: ich glaube du bist eine spalte verrutscht und hast den default wert vergessen. d.h. vor das $fld[4]/1000 muss noch ein :0
Danke für die schnelle Rückmeldung.
Die ":0" brachte keinen Erfolg, es werden alle Werte durch Null ersetzt.
Grüße
2019-06-22_08:25:45 0
2019-06-22_08:30:45 0
2019-06-22_08:31:15 0
2019-06-22_09:01:45 0
2019-06-22_09:36:17 0
2019-06-22_10:08:04 0
2019-06-22_10:38:20 0
2019-06-22_11:08:23 0
#4:myLeistung.*:0:$fld[4]/1000