[Gelöst] Wie Delta Werte im Plot darstellen

Begonnen von Bracew, 09 November 2014, 15:30:39

Vorheriges Thema - Nächstes Thema

Bracew

Hallo,

wie bekomme ich zusätzlich die Delta Werte des täglichen Verbrauchs (Liter pro Tag) in einen Plot eingezeichnet?

Ich bekomme einen wunderbaren Plot des Füllstandes gezeichnet. (Siehe Dateianlage, leider bekomme ich das Bild hier nicht zwischen die Textzeilen eingefügt):

Beispiel-Zeilen aus der Log Datei: Heizoel.log

2014-11-07_12:10:12 Entfernung: 79.4 cm  Fuelhoehe: 82.4 cm  Liter: 2472 l
2014-11-07_18:10:12 Entfernung: 79.5 cm  Fuelhoehe: 82.3 cm  Liter: 2469 l
2014-11-08_00:10:24 Entfernung: 80.1 cm  Fuelhoehe: 81.7 cm  Liter: 2450 l
2014-11-08_06:10:23 Entfernung: 79.9 cm  Fuelhoehe: 81.9 cm  Liter: 2457 l
2014-11-08_12:10:24 Entfernung: 80.4 cm  Fuelhoehe: 81.4 cm  Liter: 2441 l
2014-11-08_18:10:25 Entfernung: 80.2 cm  Fuelhoehe: 81.6 cm  Liter: 2447 l
2014-11-09_00:10:23 Entfernung: 80.3 cm  Fuelhoehe: 81.5 cm  Liter: 2444 l
2014-11-09_06:10:32 Entfernung: 80.9 cm  Fuelhoehe: 80.9 cm  Liter: 2426 l
2014-11-09_12:10:24 Entfernung: 80.8 cm  Fuelhoehe: 81.0 cm  Liter: 2429 l


mit folgendem Code aus der fhem.cfg:

define HeizoelFileLog FileLog ./log/Heizoel.log fakelog
attr   HeizoelFileLog room Heizung
attr   HeizoelFileLog group Heizoelstand
attr   HeizoelFileLog logtype heizoel:Window,text

define PlotHeizoel SVG HeizoelFileLog:heizoel:CURRENT
attr PlotHeizoel label "Liter (l)"::"Liter (l)"::"Heizoel: Max=$data{max1} Liter, Letzter=$data{currval1} Liter"
attr PlotHeizoel group Heizoelstand
attr PlotHeizoel room Heizung


und folgendem .gplot-File
############################
# Display the tank level.
#
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel "Heizoel"
set ytics
set y2tics
set title <L3>
set grid xtics y2tics
set ylabel <L1>
set y2label <L2>
set yrange [0:4500]
set y2range [0:4500]
#FileLog 9::0:
plot "<IN>" using 1:2 title 'Tankfuellung' with lines


Nun würde ich gerne auch den täglichen Verbrauch in Litern im möglichst gleichen Plot als Säulen dargestellt bekommen.
Ich habe dazu "delta-d" versucht.
Doch trotz allen googeln, ausprobieren vieler Beispiele hier aus dem Forum, dem Wiki und den Beispiel .gplot-Dateien bekomme ich es nicht hin!!!

Kann mir bitte jemand auf die Sprünge helfen, Tipps geben oder sagen was ich falsch mache?

Danke Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Bracew

Hallo FHEM-Freunde,

niemand eine Idee, Tipp oder Hilfe, wie ich die Differenzwerte zweier Tage, den Verbrauch also, in den Plot integrieren kann?

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

ojb

Das versuche ich auch gerade .... habe aber noch nichts zustande gebracht.

Daher auch von meiner Seite:

Any help highly appreciated ....
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

Bracew

Hallo,

leider komme ich von allein nicht weiter. Gibt es niemanden, der helfen kann?

Ich würde gerne den täglichen Öl-Verbrauch in Litern als Säulen dargestellt bekommen.
Ob in einen extra Plot oder im gleichen wie der Füllstand wäre mir zunächst egal.

Schönen 1. Advent wünscht Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

ojb

Servus Bracew,

ich habe das Problem (zumindest für mich) mittlerweile gelöst.

Hier
http://forum.fhem.de/index.php/topic,29366.msg223454.html#msg223454
steht wie.

Liebe Güße
Oli
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

Bracew

Hallo ojb,

schön, dass es für Dich OK ist und danke für Deinen Tip.

Ich haben Deinen Tip und alles mögliche andere ausprobiert. Doch leider bekomme ich jede Menge Varianten von Unsinnigkeiten im Plot gezeichnet. Die Doku zu .gplot ist sehr schlecht. Die Beispiele die ich finde gehen von anderen Bedingungen aus, vor allem nicht von einem "fakelog".
Es kann auch sein, dass ich zu blöd bin.
Ich versuche mich nun schon seit Wochen daran und komme zu keinem brauchbarem Ergebnis. Bald bin ich es Leid und gebe auf. Meine Frustschwelle ist bald erreicht.

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

ojb

Hallo Bracew,

nicht aufgeben, das kann doch nicht so schwierig sein.

Zeig doch nochmal die .gplot mit dem "normalen" Verlauf ...

Liebe Grüße
Oli
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

Bennemannc

Hallo,

mal ein anderer Ansatz. Du errechnest doch die "Restmenge". Dann könntest Du doch auch die "verbrauchte Menge" errechnen. Wenn das nicht direkt geht, schau Dir mal difference in der commandref an. Auf diesen Wert läßt Du ein average laufen. Dann bekommst Du Werte aufsummiert pro Tag und Monat. Diesen kann man kurz vor Mitternacht mit einem Script auslesen und in die Log-Datei schreiben. Die Daten kann man dann in der Grafik anzeigen lassen. Ich mache das mit meinen Tagesverbräuchen zumindest so.
Das Script kann ich die senden, wenn Du Interesse hast.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

Bracew

Hallo ojb, hallo Bennemannc,

danke für Eure Hilfe. Ich bin sehr froh, dass ich Hilfe zu diesem Thema erhalte und sich jemand meiner Probleme versucht anzunehmen.

@ojb:
Die ".gplot mit dem "normalen" Verlauf " habe ich im ersten Beitrag ganz oben bereits beigefügt. Es ist eine Datei "Plot.jpg" angehängt, welche den "normalen" Verlauf darstellt (leider habe ich die Grafik nicht zwischen die Textzeilen bekommen). Wenn Du auf "plot.jpg" klickst siehst Du die Grafik größer.
Auch der  .gplot-File ist im ersten Beitrag beigefügt ("Display the tank level.").

@Bennemannc
Zunächst einmal würde ich mir gerne Dein Script ansehen.
Bedenken habe ich jedoch ob es bei mir sinngemäß funktionieren würde, da bei mir die Log-Datei alle sechs Stunden durch einen zweiten RasPi geschrieben und überschrieben wird (ich nenne diesen "HeizPi", da dieser in der Heizung die Werte messen und in eine Log-Datei schreibt). Meine Log-Datei wird also nicht vom RasPi geschrieben auf welchem FHEM läuft. Für den Pi auf welchem FHEM läuft wird die Log-Datei sozusagen extern erstellt, er soll nur die Auswertung übernehmen.
Die Original Messwerte-Datei (Log-Datei) wird also alle 6 Stunden von einem RasPi (Name="HeizPi") auf den anderen RasPi (Name="Pi") kopiert. Dabei würde natürlich auch jede Änderung an der Log-Datei durch FHEM auf dem "Pi" spätestens nach 6 Stunden durch die Datei von "HeizPi" wieder überschrieben, also auch die mit difference bzw. average neu berechneten Werte.
Ich hoffe ich habe mich verständlich ausgedrückt. Ich habe den Werdegang übrigens einmal hier: http://www.forum-raspberrypi.de/Thread-haussteuerung-heizoel-tankstand-oder-verbrauchs-fernablesung-mit-raspi?pid=115200#pid115200 als HowTo beschrieben.

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Bennemannc

Hallo,

soweit ich weiß, gehen die Module difference und average nur auf readings (oder userreading) die auch in fhem vorliegen. Wenn ich Deine konstellation richtig verstanden habe, schreibt ein RPI die Datei und der fhem-RPI zeigt nur die Daten aus der Datei an.
Dann würde das nur mit rechen in Perl und REGEXP gehen. REGEXp sucht nur die Datenätze mit 00:00 und zieht diese voneinander ab. So etwas habe ich noch nicht gemacht, aber vielleicht findet sich ja ein Perl/REGEXp Freak, der so etwas schreiben kann.

Gruß Christoph
Cubietruck, Fhem 5.8
CC-RT-DN|LC-SW2-FM|RC-12|RC-19|LC-SW4-BA-PCB|LCp-SW1-BA-PCB|ES-PMSw1-Pl|LC-Bl1PBU-FM|PBI-4-FM|CC-VD|CC-TC|SEC-SC(2)|RC-KEY3-B|LC-Sw1PBU-FM|PB-2-FM|WDS100-C6-O|WDC7000|LC-Bl1-FM
Module: Dewpoint,FB_Callmonitor,HCS,Panstamp,at,notify,THRESHOLD,average,DOIF

ojb

Hallo Bracew,

mach jetzt mal bitte folgendes:

Nimm die ursprüngliche .gplot und ändere
#FileLog 9::0:
in
#FileLog 9::0:delta-d

Und dann attributiere das SVG mit
fixedrange 30days

Und zeig mal her was rauskommt.

Liebe Grüße
Oli
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

Bracew

Hallo ojb,

ich habe die Änderungen eingearbeitet.

Die fhem.cfg sieht nun so aus:
define HeizoelFileLog FileLog ./log/Heizoel.log fakelog
attr HeizoelFileLog group Heizoelstand
attr HeizoelFileLog logtype heizoel:Window,text
attr HeizoelFileLog room Heizung

define PlotHeizoel SVG HeizoelFileLog:heizoel:CURRENT
attr PlotHeizoel group Heizoelstand
attr PlotHeizoel label "Liter (l)"::"Liter (l)"::"Heizoel: Max=$data{max1} Liter, Letzter=$data{currval1} Liter"
attr PlotHeizoel room Heizung
attr PlotHeizoel fixedrange 30days


und der  .gplot-File so:
############################
# Display the tank level.
#
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel "Heizoel"
set ytics
set y2tics
set title <L3>
set grid xtics y2tics
set ylabel <L1>
set y2label <L2>
set yrange [0:4500]
set y2range [0:4500]
#FileLog 9::0:delta-d
plot "<IN>" using 1:2 title 'Tankfuellung' with lines


Als Ergebnis bekomme ich den in der jpg-Anlage beigefügten Plot gezeichnet (Ich habe immer noch nicht rausgefunden, wie ich diesen hier zwischen die Textzeilen einfügen kann)

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

ojb

Ich glaube das funktioniert, nur Du hast einen Ausreisser im Log.

Änder doch mal die yrange von [0:4500] auf z.B. [:100] und das "with lines" in "with bars" ...
FHEM unter Debian auf Asus EEBox: KNX (Wetterstation, Rollläden, Beleuchtung), Maple-CUN (Temperatur und Feuchte über 1-Wire, Intertechno-Funksteckdosen), PV-Anlage mit Plenticore und BYD, Viessmann Wärmepumpe, 1-Wire (Temperatur, Feuchte, Stromverbrauch), Husquarna-Automower, ...

Bracew

Hallo ojb,

danke für Deine Hilfsversuche. In der Anlage wiederum das Ergebnis-Plot, welches auch abgesehen vom Ausreisser nicht OK ist.

Zur Erklärung noch für den Ausreisser. Am 19.11.2014 habe ich Heizöl nachgetankt, bis der Tank randvoll war. Für die Tage danach ist der Tankstand nicht gesunken, also nichts verbraucht worden, da der Füllstand zu nah am Sensor ist (Messwertfehler des Sensors, da Abstand zur Oberfläche zu gering).
Vor dem 19.11. ist der Füllstand jedoch täglich gesunken, also etwas verbraucht worden.

Der Logfile sieht so aus:
2014-11-08_00:10:24 Entfernung: 80.1 cm  Fuelhoehe: 81.7 cm  Liter: 2450 l
2014-11-08_06:10:23 Entfernung: 79.9 cm  Fuelhoehe: 81.9 cm  Liter: 2457 l
2014-11-08_12:10:24 Entfernung: 80.4 cm  Fuelhoehe: 81.4 cm  Liter: 2441 l
2014-11-08_18:10:25 Entfernung: 80.2 cm  Fuelhoehe: 81.6 cm  Liter: 2447 l
2014-11-09_00:10:23 Entfernung: 80.3 cm  Fuelhoehe: 81.5 cm  Liter: 2444 l
2014-11-09_06:10:32 Entfernung: 80.9 cm  Fuelhoehe: 80.9 cm  Liter: 2426 l
2014-11-09_12:10:24 Entfernung: 80.8 cm  Fuelhoehe: 81.0 cm  Liter: 2429 l
2014-11-09_18:10:24 Entfernung: 81.3 cm  Fuelhoehe: 80.5 cm  Liter: 2414 l
2014-11-10_00:10:35 Entfernung: 81.2 cm  Fuelhoehe: 80.6 cm  Liter: 2419 l
2014-11-10_06:10:23 Entfernung: 81.2 cm  Fuelhoehe: 80.6 cm  Liter: 2417 l
2014-11-10_12:10:23 Entfernung: 81.9 cm  Fuelhoehe: 79.9 cm  Liter: 2397 l
2014-11-10_18:10:27 Entfernung: 81.6 cm  Fuelhoehe: 80.2 cm  Liter: 2407 l
2014-11-11_00:10:25 Entfernung: 82.3 cm  Fuelhoehe: 79.5 cm  Liter: 2386 l
2014-11-11_06:10:36 Entfernung: 82.0 cm  Fuelhoehe: 79.9 cm  Liter: 2396 l
2014-11-11_12:10:25 Entfernung: 82.2 cm  Fuelhoehe: 79.6 cm  Liter: 2388 l
2014-11-11_18:10:24 Entfernung: 82.7 cm  Fuelhoehe: 79.1 cm  Liter: 2374 l
2014-11-12_00:10:56 Entfernung: 82.5 cm  Fuelhoehe: 79.4 cm  Liter: 2381 l
2014-11-12_06:11:00 Entfernung: 82.5 cm  Fuelhoehe: 79.3 cm  Liter: 2378 l
2014-11-12_12:10:55 Entfernung: 83.1 cm  Fuelhoehe: 78.7 cm  Liter: 2361 l
2014-11-12_18:10:48 Entfernung: 82.8 cm  Fuelhoehe: 79.0 cm  Liter: 2369 l
2014-11-13_00:11:00 Entfernung: 83.0 cm  Fuelhoehe: 78.8 cm  Liter: 2364 l
2014-11-13_06:10:53 Entfernung: 83.2 cm  Fuelhoehe: 78.6 cm  Liter: 2357 l
2014-11-13_12:10:47 Entfernung: 83.3 cm  Fuelhoehe: 78.5 cm  Liter: 2354 l
2014-11-13_18:11:27 Entfernung: 83.8 cm  Fuelhoehe: 78.0 cm  Liter: 2340 l
2014-11-14_00:11:02 Entfernung: 83.6 cm  Fuelhoehe: 78.2 cm  Liter: 2347 l
2014-11-14_06:10:53 Entfernung: 83.8 cm  Fuelhoehe: 78.1 cm  Liter: 2342 l
2014-11-14_12:11:43 Entfernung: 84.2 cm  Fuelhoehe: 77.6 cm  Liter: 2327 l
2014-11-14_18:10:50 Entfernung: 84.1 cm  Fuelhoehe: 77.7 cm  Liter: 2332 l
2014-11-15_00:11:20 Entfernung: 84.5 cm  Fuelhoehe: 77.3 cm  Liter: 2320 l
2014-11-15_06:11:40 Entfernung: 84.7 cm  Fuelhoehe: 77.2 cm  Liter: 2314 l
2014-11-15_12:10:50 Entfernung: 84.5 cm  Fuelhoehe: 77.3 cm  Liter: 2318 l
2014-11-15_18:10:49 Entfernung: 85.2 cm  Fuelhoehe: 76.6 cm  Liter: 2299 l
2014-11-16_00:10:46 Entfernung: 84.9 cm  Fuelhoehe: 76.9 cm  Liter: 2308 l
2014-11-16_06:10:49 Entfernung: 84.9 cm  Fuelhoehe: 76.9 cm  Liter: 2307 l
2014-11-16_12:10:47 Entfernung: 85.6 cm  Fuelhoehe: 76.2 cm  Liter: 2286 l
2014-11-16_18:11:47 Entfernung: 85.2 cm  Fuelhoehe: 76.6 cm  Liter: 2298 l
2014-11-17_00:11:17 Entfernung: 85.4 cm  Fuelhoehe: 76.4 cm  Liter: 2291 l
2014-11-17_06:11:25 Entfernung: 85.8 cm  Fuelhoehe: 76.0 cm  Liter: 2281 l
2014-11-17_12:10:49 Entfernung: 85.8 cm  Fuelhoehe: 76.0 cm  Liter: 2280 l
2014-11-17_18:11:01 Entfernung: 86.4 cm  Fuelhoehe: 75.4 cm  Liter: 2261 l
2014-11-18_00:11:11 Entfernung: 86.2 cm  Fuelhoehe: 75.7 cm  Liter: 2270 l
2014-11-18_06:10:47 Entfernung: 86.8 cm  Fuelhoehe: 75.0 cm  Liter: 2250 l
2014-11-18_12:11:09 Entfernung: 86.6 cm  Fuelhoehe: 75.2 cm  Liter: 2256 l
2014-11-18_18:11:13 Entfernung: 87.0 cm  Fuelhoehe: 74.8 cm  Liter: 2243 l
2014-11-19_00:10:50 Entfernung: 87.0 cm  Fuelhoehe: 74.8 cm  Liter: 2245 l
2014-11-19_06:10:59 Entfernung: 87.1 cm  Fuelhoehe: 74.7 cm  Liter: 2241 l
2014-11-19_12:10:54 Entfernung: 87.5 cm  Fuelhoehe: 74.4 cm  Liter: 2231 l
2014-11-19_18:10:46 Entfernung: 27.9 cm  Fuelhoehe: 133.9 cm  Liter: 4018 l
2014-11-20_00:10:50 Entfernung: 27.6 cm  Fuelhoehe: 134.2 cm  Liter: 4025 l
2014-11-20_06:12:02 Entfernung: 30.0 cm  Fuelhoehe: 131.8 cm  Liter: 3954 l
2014-11-20_12:10:49 Entfernung: 28.0 cm  Fuelhoehe: 133.8 cm  Liter: 4014 l
2014-11-20_18:10:48 Entfernung: 27.4 cm  Fuelhoehe: 134.4 cm  Liter: 4031 l
2014-11-21_00:10:46 Entfernung: 29.3 cm  Fuelhoehe: 132.5 cm  Liter: 3976 l
2014-11-21_06:10:49 Entfernung: 27.7 cm  Fuelhoehe: 134.1 cm  Liter: 4022 l
2014-11-21_12:10:55 Entfernung: 31.5 cm  Fuelhoehe: 130.3 cm  Liter: 3910 l
2014-11-21_18:10:58 Entfernung: 27.8 cm  Fuelhoehe: 134.0 cm  Liter: 4019 l
2014-11-22_00:10:50 Entfernung: 27.7 cm  Fuelhoehe: 134.1 cm  Liter: 4024 l
2014-11-22_06:10:59 Entfernung: 28.3 cm  Fuelhoehe: 133.5 cm  Liter: 4006 l
2014-11-22_12:12:01 Entfernung: 27.4 cm  Fuelhoehe: 134.4 cm  Liter: 4031 l
2014-11-22_18:11:23 Entfernung: 27.5 cm  Fuelhoehe: 134.3 cm  Liter: 4028 l
2014-11-23_00:10:46 Entfernung: 27.7 cm  Fuelhoehe: 134.1 cm  Liter: 4022 l
2014-11-23_06:10:54 Entfernung: 27.4 cm  Fuelhoehe: 134.4 cm  Liter: 4032 l
2014-11-23_12:10:47 Entfernung: 27.2 cm  Fuelhoehe: 134.6 cm  Liter: 4037 l
2014-11-23_18:10:53 Entfernung: 27.4 cm  Fuelhoehe: 134.4 cm  Liter: 4031 l


Mit lieben Grüßen Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe

Bracew

Hallo,

ich habe mir einen Teilbereich der Daten mal in Excel eingelesen und daraus einen Plot erstellt, wie ich mir den FHEM-Plot im Idealfall vorstellen würde, als Muster. Zu mindestens so ähnlich. Ich füge diesen mal in der Anlage bei.

Gruß Bracew
FHEM auf Raspberry Pi
für z.B. Lichtsteuerung, Temperaturmessung, Balkonkraftwerk,
Öltankfüllstandsmessung und für Hühnerstall Hühnerklappe