Hallo,
gibt es eine Möglichkeit zwei Geräte-Logs (in meinem Fall einen Thermostat und einen Stellantrieb für die Heizung) in einen Log zusammen zu fassen. Damit ich einen mir einen Plot davon erstellen lassen kann?
Ist der Übersicht halber für mich "schöner" anzuschauen - Hat also absolut keine Dringlichkeit...
Danke trotzdem für Lösungsvorschläge.
Ja, das geht.
hier ein Beispiel in dem ein MAX Heizungsthemostat (HK_Regler_Badezimmer) und ein 1-Wire-Temperatursensor (Temp_Sensor_Badezimmer) zusammengefasst sind.
define FileLog_Bad FileLog ./log/Badezimmer-%Y-%m.log (HK_Regler_Badezimmer:.*(battery|temperature|desiredTemperature|valveposition)):|(Temp_Sensor_Badezimmer:.*temperature).*
attr FileLog_Bad logtype text
attr FileLog_Bad room Logs
attr FileLog_Bad change
#attr FileLog_Bad debug
define weblink_Bad weblink fileplot FileLog_Bad:MAXOWX:CURRENT
attr weblink_Bad plotsize 1050,840
attr weblink_Bad room Badezimmer
cool, vielen Dank hat funktioniert...
Wenn ich nun meinen eigenen Plot erstelle dann bekomm ich lustige Meldungen und einen nicht so ganz schönen Plot...
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 ytics nomirror
set y2tics
#set ytics
set title '<L1>'
set grid xtics y2tics
plot \
"< egrep 'measured-temp' <IN>"\
using 1:4 axes title 'Temp' with lines,\
"< egrep 'ValvePosition' <IN>"\
using 1:4 axes title 'Valve' with lines,\
"< egrep 'humidity' <IN>"\
using 1:4 axes title 'Humidity' with lines
Als Beispiel hab ich temp4hum4 hergenommen, da ja alle Werte im vierten "Feld" liegen.
Log:
2013-01-08_19:35:18 badezimmer_thermo_motor ValvePosition: 100 %
2013-01-08_19:38:00 badezimmer_thermo measured-temp: 20.6
2013-01-08_19:38:00 badezimmer_thermo humidity: 51
2013-01-08_19:38:21 badezimmer_thermo_motor ValvePosition: 100 %
2013-01-08_19:40:48 badezimmer_thermo measured-temp: 20.6
2013-01-08_19:40:48 badezimmer_thermo humidity: 51
2013-01-08_19:41:08 badezimmer_thermo_motor ValvePosition: 100 %
2013-01-08_19:43:21 badezimmer_thermo measured-temp: 20.6
2013-01-08_19:43:21 badezimmer_thermo humidity: 51
2013-01-08_19:43:43 badezimmer_thermo_motor ValvePosition: 100 %
2013-01-08_19:45:40 badezimmer_thermo measured-temp: 20.7
2013-01-08_19:45:40 badezimmer_thermo humidity: 51
2013-01-08_19:46:01 badezimmer_thermo_motor ValvePosition: 100 %
Fehlermeldung auf der Konsole
Use of uninitialized value within %hmin in addition (+) at ./FHEM/98_SVG.pm line 353.
Use of uninitialized value in subtraction (-) at ./FHEM/98_SVG.pm line 358.
Use of uninitialized value $i in numeric le (<=) at ./FHEM/98_SVG.pm line 425.
Use of uninitialized value $i in subtraction (-) at ./FHEM/98_SVG.pm line 426.
Use of uninitialized value $i in sprintf at ./FHEM/98_SVG.pm line 441.
Use of uninitialized value within %hmin in addition (+) at ./FHEM/98_SVG.pm line 353.
Use of uninitialized value in subtraction (-) at ./FHEM/98_SVG.pm line 358.
Use of uninitialized value $i in numeric le (<=) at ./FHEM/98_SVG.pm line 425.
Use of uninitialized value $i in subtraction (-) at ./FHEM/98_SVG.pm line 426.
Use of uninitialized value in numeric gt (>) at ./FHEM/98_SVG.pm line 436.
Use of uninitialized value $i in numeric gt (>) at ./FHEM/98_SVG.pm line 436.
Use of uninitialized value $i in sprintf at ./FHEM/98_SVG.pm line 441.
Use of uninitialized value in numeric gt (>) at ./FHEM/98_SVG.pm line 436.
Bitte danke fürs helfen.
Hab jetzt fast alles geschafft - und sogar einfacher... :-)
Im FHEM-Wiki wirds beschrieben: http://www.fhemwiki.de/wiki/HM-CC-TC_Funk-Wandthermostat#Alles-drin-Plot (//www.fhemwiki.de/wiki/HM-CC-TC_Funk-Wandthermostat#Alles-drin-Plot)
Jedoch funktionieren noch nicht alle Graphen - der für die tatsächliche Temperatur funktioniert nicht...
"Gefiltert" wird mit: "< awk '/temperature/{print $1, $4}' <IN>"\
Protokolliert wird aber: measured-temp
Trotz ändern der Zeile auf: "< awk '/measured-temp/{print $1, $4}' <IN>"\
Ist der Graph für Temperatur noch immer leer.
:-(
Versuchs mal mit den Informationen aus diesen Tread:
Max und 1-Wire in einen Plot [Beitrag #49462]
Gruß Joachim
Hi bjoern,
da bin ich auch schon drüber gestolpert ...
Zitat von: bjoernhoefer schrieb am Di, 08 Januar 2013 22:12... Jedoch funktionieren noch nicht alle Graphen - der für die tatsächliche Temperatur funktioniert nicht...
"Gefiltert" wird mit: "< awk '/temperature/{print $1, $4}' <IN>"\
Protokolliert wird aber: measured-temp
Trotz ändern der Zeile auf: "< awk '/measured-temp/{print $1, $4}' <IN>"\
Ist der Graph für Temperatur noch immer leer.
:-(
Du musst auch noch die "vorgeblichen" Kommentarzeilen
#FileLog 4:temperature:0:
#FileLog 4:desired:0:
#FileLog 4:humidity:0:
#FileLog 4:actuator:0:int
anpassen.
Sind für GNU-Plot Kommentare, nicht aber für FHEM ;)
Gruß
Thomas
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 ytics nomirror
set y2tics
#set ytics
set title '<TL>'
set grid xtics y2tics
set y2label "Temperatur in C"
set ylabel "Ventilstellung (%)"
set y2range [15:21]
set yrange [0:80]
Hier mal der relevante Teil aus meiner MaxOWX.gplot (also Max-Heizkörperthermostate und 1-Wire Tempmessung).
#FileLog 4:desiredTemperature:4.5:
#FileLog 4:HK_Regler.*temperature:4.5:
#FileLog 4:valveposition:0:
#FileLog 4:Temp_Sensor.*:4.5:
plot \
"< egrep 'desiredTemperature' <IN>"\
using 1:4 axes x1y2 title 'Soll Temperatur' with steps,\
"< egrep 'HK_Regler.*temperature' <IN>"\
using 1:4 axes x1y2 title 'Ist Temperatur' with steps ,\
"< egrep 'valveposition' <IN>"\
using 1:4 axes x1y1 title 'Ventilstellung (%)' with steps\
"< egrep 'Temp_Sensor.*' <IN>"\
using 1:4 axes x1y2 title '1-Wire Temperatur' with lines,
Gruß Joachim
Knurr, fehlende Edit-Funktion, nun aber richtig:
Hier mal der relevante Teil aus meiner MaxOWX.gplot (also Max-Heizkörperthermostate und 1-Wire Tempmessung).
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 ytics nomirror
set y2tics
#set ytics
set title '<TL>'
set grid xtics y2tics
set y2label "Temperatur in C"
set ylabel "Ventilstellung (%)"
set y2range [15:21]
set yrange [0:80]
#FileLog 4:desiredTemperature:4.5:
#FileLog 4:HK_Regler.*temperature:4.5:
#FileLog 4:valveposition:0:
#FileLog 4:Temp_Sensor.*:4.5:
plot \
"< egrep 'desiredTemperature' <IN>"\
using 1:4 axes x1y2 title 'Soll Temperatur' with steps,\
"< egrep 'HK_Regler.*temperature' <IN>"\
using 1:4 axes x1y2 title 'Ist Temperatur' with steps ,\
"< egrep 'valveposition' <IN>"\
using 1:4 axes x1y1 title 'Ventilstellung (%)' with steps\
"< egrep 'Temp_Sensor.*' <IN>"\
using 1:4 axes x1y2 title '1-Wire Temperatur' with lines,
Gruß Joachim
Danke nochmals - funktioniert jetzt alles tadellos...