FHEM Forum

FHEM => Frontends => SVG / Plots / logProxy => Thema gestartet von: Grinsekatze am 18 Oktober 2016, 22:48:55

Titel: Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 18 Oktober 2016, 22:48:55
Hallo,

ich habe zwar schon einige Threads im Forum zu diesem und ähnlichen Themen gefunden, jedoch konnte noch keines mein Problem lösen:
Einen Plot, der mir angibt, wan und wie lange z.B. das Licht o.ä. an bzw. aus ist. Zur Verfügung stehen dabei nur das state-Reading des Devices (on/off, open/closed o.ä.).

Ich habe zunächst anhand des vorhandenen Logs ein Plot erstellt:
define SVG_FileLog_LampeWohnzimmerDecke_2 SVG FileLog_LampeWohnzimmerDecke:SVG_FileLog_LampeWohnzimmerDecke_2:CURRENT

Danach habe ich den gplot angepasst (anhand verschiedener Infos hier aus dem Forum):

# Created by FHEM/98_SVG.pm, 2016-10-18 19:01:57
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
set ylabel "Status"
set y2label "Status"
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]

#FileLog_LampeWohnzimmerDecke 4:LampeWohnzimmerDecke.*::$fld[3]=~"on"?1:0

plot "<IN>" using 1:2 axes x1y1 title 'Aktivität' ls l1fill lw 2 with steps


Jedoch zeigt mir der Plot nur einen kurzen ausschlag an, wenn das Lich angemacht wurde - aber nicht, wie lange es an bleibt.

Habt ihr da ne Lösung / Tipps, was ich falsch mache?
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: rudolfkoenig am 19 Oktober 2016, 20:35:56
Zeig mal die Rohdaten an, im Plot-Editor kann man dafuer den Knopf "Show preprocessed input" verwenden.
Wer die .gplot Datei selbst editiert, muss das FileLog get Befehl selbst zusammenreimen :)
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: schka17 am 19 Oktober 2016, 22:26:06
Ich verwende für meine Beschattung (oben/unten) diese gplot definition
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 '<L1>'
set ytics ("Oben" 0, "Unten" 1)
set y2tics
set grid ytics
set ylabel "Stellung"
set y2label ""
set yrange [0:1]

#FileLog 3:WG_FB_Rolax.*:0:$fld[2]=~"Unten"?1:0
#FileLog "0":WG_FB_Rolax.*::

plot "<IN>" using 1:2 axes x1y2 notitle ls l6fill lw 1 with histeps,\
     "<IN>" using 1:2 axes x1y2 notitle ls l1 lw 1 with bars

vielleicht hilft dir das weiter
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 20 Oktober 2016, 19:48:04
Also ich möchte damit zzt. ein HM-Aktor plotten.

Wenn ich auf "Show processed input" klicke erhalte ich nur:
Zitatget FileLog_LampeWohnzimmerDecke CURRENT INT 2016-10-20_00:00:00 2016-10-21_00:00:01 3:LampeWohnzimmerDecke.*::$fld[2]=~"on"?1:0

2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:12 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 0
2016-10-20_04:05:13 1
2016-10-20_04:05:13 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:29 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_04:05:32 0
2016-10-20_06:44:43 0
2016-10-20_06:44:43 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:44 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 0
2016-10-20_06:44:48 1
2016-10-20_06:44:48 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:00 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_06:48:03 0
2016-10-20_09:39:01 0
2016-10-20_09:39:01 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:02 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 0
2016-10-20_09:39:05 1
2016-10-20_09:39:05 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:43 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_10:02:46 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:56 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 0
2016-10-20_17:21:58 1
2016-10-20_17:21:58 0
#3:LampeWohnzimmerDecke.*::$fld[2]=~"on"?1:0

Mir ist dabei egal, ob ich das Ergebnis per Editor zusammen "klicke" oder eine gplot Datei schreibe - solange es hinterher funktioniert.  ;)
Ich dachte nur, dass diese Art der Beschreibung aufschlussreicher ist.

Es fehlt zzt. wohl regelmäßige ON-Meldungen. Off-Meldungen gehen ja offenbar ein. Auch habe ich gecheckt, ob eventuell wieder ein event-on-Change schuld ist - jedoch existiert keiner.
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: franky08 am 20 Oktober 2016, 22:43:55
@Grinsekatze
Habe ich letztens schon mal ein Beispiel gepostet:  :)

https://forum.fhem.de/index.php/topic,58803.msg501922.html#msg501922

VG
Frank
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 20 Oktober 2016, 23:48:16
Hallo Franky, ich habe es wie in deinem Beispiel übernommen (jedoch open gegen on und closed gegen off getauscht).
Jedoch ist der Plot immernoch fehlerhaft:
In den letzten Stunden wird off angezeigt, doch das Licht war an.
Ebenfalls zeichnet er keine linie bei on, wenn an ist. Nur einen Ausschlag und anschliessend weiter die "off-Linie" (wie schon in meinem Screenshot zuvor.
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: rudolfkoenig am 21 Oktober 2016, 08:40:30
Die Anzeige entspricht den gefilterten Daten.

Ich gehe davon aus, dass in deinem Log viel "Muell" protokolliert wird, und nicht nur on/off.
Wenn das stimmt, dann gibt es zwei Moeglichkeiten:
- nur das Wichtige Protokollieren (macht die Anzeige auch schneller), indem man das FileLog/DbLog Regexp anpasst
- Log lassen wie es ist, und den SVG-Plot-Regexp anpassen auf "on/off".

Fuer beide Loesungen ist die Analyse des Logs unerlaesslich (vulgo: wissen, was drin ist), das kann man z.Bsp. in der FileLog Detail-Ansicht, indem man auf dem "text" Link klickt.
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 21 Oktober 2016, 11:16:53
Ja, es wird einiges an Extras geloggt (ist ja ein Homematic Device, mit der Default-Log-Definition). Ich hatte hier im Forum schon einmal irgendwo gelesen, dass es evtl. daran liegen kann (ich glaube, das war sogar ein Beitrag von Rudi - jedoch finde ich den nicht wieder). Ich hatte daraufhin mal versucht, ein Regex zu finden, der funktioniert - jedoch ohne Erfolg, weshalb ich es erstmal verworfen habe.

Wobei ich mich ja eh schwer mit Regex anstelle - wie ich ja in anderen Beiträgen schon unter Beweis stellen konnte. :)
In diesem Zusammenhang ist es super, wenn mal Jemand, der sich damit auskennt dokumentiert, (evtl. im Wiki?), wie man mit Regex arbeitet (im Code, in Deklarationen usw.).

Ich poste heute Abend einmal ein Auszug aus dem Log (1 - 2 Tage).

Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 22 Oktober 2016, 23:08:10
Wie versprochen hier nun der Log des heutigen Tages:
Zitat2016-10-22_02:32:13 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:short
2016-10-22_02:32:13 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Short_125
2016-10-22_02:32:13 LampeWohnzimmerDecke deviceMsg: 95 (to LampentasterWohnzimmer)
2016-10-22_02:32:13 LampeWohnzimmerDecke dim: down:95
2016-10-22_02:32:13 LampeWohnzimmerDecke level: 95
2016-10-22_02:32:13 LampeWohnzimmerDecke overheat: off
2016-10-22_02:32:13 LampeWohnzimmerDecke overload: off
2016-10-22_02:32:13 LampeWohnzimmerDecke pct: 95
2016-10-22_02:32:13 LampeWohnzimmerDecke reduced: off
2016-10-22_02:32:13 LampeWohnzimmerDecke 95
2016-10-22_02:32:13 LampeWohnzimmerDecke timedOn: off
2016-10-22_02:32:16 LampeWohnzimmerDecke deviceMsg: off (to VCCU)
2016-10-22_02:32:16 LampeWohnzimmerDecke dim: stop:off
2016-10-22_02:32:16 LampeWohnzimmerDecke level: 0
2016-10-22_02:32:16 LampeWohnzimmerDecke overheat: off
2016-10-22_02:32:16 LampeWohnzimmerDecke overload: off
2016-10-22_02:32:16 LampeWohnzimmerDecke pct: 0
2016-10-22_02:32:16 LampeWohnzimmerDecke reduced: off
2016-10-22_02:32:16 LampeWohnzimmerDecke off
2016-10-22_02:32:16 LampeWohnzimmerDecke timedOn: off
2016-10-22_08:08:06 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_02:long
2016-10-22_08:08:06 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_02: Long_130
2016-10-22_08:08:06 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_02:long
2016-10-22_08:08:06 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_02: Long_130
2016-10-22_08:08:07 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_02:long
2016-10-22_08:08:07 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_02: Long_130
2016-10-22_08:08:07 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_02:long
2016-10-22_08:08:07 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_02: Long_130
2016-10-22_08:08:07 LampeWohnzimmerDecke deviceMsg: 20 (to LampentasterWohnzimmer)
2016-10-22_08:08:07 LampeWohnzimmerDecke dim: stop:20
2016-10-22_08:08:07 LampeWohnzimmerDecke level: 20
2016-10-22_08:08:07 LampeWohnzimmerDecke overheat: off
2016-10-22_08:08:07 LampeWohnzimmerDecke overload: off
2016-10-22_08:08:07 LampeWohnzimmerDecke pct: 20
2016-10-22_08:08:07 LampeWohnzimmerDecke reduced: off
2016-10-22_08:08:07 LampeWohnzimmerDecke 20
2016-10-22_08:08:07 LampeWohnzimmerDecke timedOn: off
2016-10-22_08:08:08 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:long
2016-10-22_08:08:08 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Long_126
2016-10-22_08:08:08 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:long
2016-10-22_08:08:08 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Long_126
2016-10-22_08:08:08 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:long
2016-10-22_08:08:08 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Long_126
2016-10-22_08:08:09 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:long
2016-10-22_08:08:09 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Long_126
2016-10-22_08:08:09 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:long
2016-10-22_08:08:09 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Long_126
2016-10-22_08:08:09 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:long
2016-10-22_08:08:09 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Long_126
2016-10-22_08:08:09 LampeWohnzimmerDecke deviceMsg: off (to LampentasterWohnzimmer)
2016-10-22_08:08:09 LampeWohnzimmerDecke dim: stop:off
2016-10-22_08:08:09 LampeWohnzimmerDecke level: 0
2016-10-22_08:08:09 LampeWohnzimmerDecke overheat: off
2016-10-22_08:08:09 LampeWohnzimmerDecke overload: off
2016-10-22_08:08:09 LampeWohnzimmerDecke pct: 0
2016-10-22_08:08:09 LampeWohnzimmerDecke reduced: off
2016-10-22_08:08:09 LampeWohnzimmerDecke off
2016-10-22_08:08:09 LampeWohnzimmerDecke timedOn: off
2016-10-22_08:08:10 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_02:short
2016-10-22_08:08:10 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_02: Short_131
2016-10-22_08:08:10 LampeWohnzimmerDecke deviceMsg: 10 (to LampentasterWohnzimmer)
2016-10-22_08:08:10 LampeWohnzimmerDecke dim: up:10
2016-10-22_08:08:10 LampeWohnzimmerDecke level: 10
2016-10-22_08:08:10 LampeWohnzimmerDecke overheat: off
2016-10-22_08:08:10 LampeWohnzimmerDecke overload: off
2016-10-22_08:08:10 LampeWohnzimmerDecke pct: 10
2016-10-22_08:08:10 LampeWohnzimmerDecke reduced: off
2016-10-22_08:08:10 LampeWohnzimmerDecke 10
2016-10-22_08:08:10 LampeWohnzimmerDecke timedOn: off
2016-10-22_08:08:13 LampeWohnzimmerDecke deviceMsg: on (to VCCU)
2016-10-22_08:08:13 LampeWohnzimmerDecke dim: stop:on
2016-10-22_08:08:13 LampeWohnzimmerDecke level: 100
2016-10-22_08:08:13 LampeWohnzimmerDecke overheat: off
2016-10-22_08:08:13 LampeWohnzimmerDecke overload: off
2016-10-22_08:08:13 LampeWohnzimmerDecke pct: 100
2016-10-22_08:08:13 LampeWohnzimmerDecke reduced: off
2016-10-22_08:08:13 LampeWohnzimmerDecke on
2016-10-22_08:08:13 LampeWohnzimmerDecke timedOn: off
2016-10-22_10:01:45 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_01:short
2016-10-22_10:01:45 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_01: Short_127
2016-10-22_10:01:46 LampeWohnzimmerDecke deviceMsg: 95 (to LampentasterWohnzimmer)
2016-10-22_10:01:46 LampeWohnzimmerDecke dim: down:95
2016-10-22_10:01:46 LampeWohnzimmerDecke level: 95
2016-10-22_10:01:46 LampeWohnzimmerDecke overheat: off
2016-10-22_10:01:46 LampeWohnzimmerDecke overload: off
2016-10-22_10:01:46 LampeWohnzimmerDecke pct: 95
2016-10-22_10:01:46 LampeWohnzimmerDecke reduced: off
2016-10-22_10:01:46 LampeWohnzimmerDecke 95
2016-10-22_10:01:46 LampeWohnzimmerDecke timedOn: off
2016-10-22_10:01:49 LampeWohnzimmerDecke deviceMsg: off (to VCCU)
2016-10-22_10:01:49 LampeWohnzimmerDecke dim: stop:off
2016-10-22_10:01:49 LampeWohnzimmerDecke level: 0
2016-10-22_10:01:49 LampeWohnzimmerDecke overheat: off
2016-10-22_10:01:49 LampeWohnzimmerDecke overload: off
2016-10-22_10:01:49 LampeWohnzimmerDecke pct: 0
2016-10-22_10:01:49 LampeWohnzimmerDecke reduced: off
2016-10-22_10:01:49 LampeWohnzimmerDecke off
2016-10-22_10:01:49 LampeWohnzimmerDecke timedOn: off
2016-10-22_19:20:06 LampeWohnzimmerDecke trigLast: LampentasterWohnzimmer_Btn_02:short
2016-10-22_19:20:06 LampeWohnzimmerDecke trig_LampentasterWohnzimmer_Btn_02: Short_132
2016-10-22_19:20:06 LampeWohnzimmerDecke deviceMsg: 10 (to LampentasterWohnzimmer)
2016-10-22_19:20:06 LampeWohnzimmerDecke dim: up:10
2016-10-22_19:20:06 LampeWohnzimmerDecke level: 10
2016-10-22_19:20:06 LampeWohnzimmerDecke overheat: off
2016-10-22_19:20:06 LampeWohnzimmerDecke overload: off
2016-10-22_19:20:06 LampeWohnzimmerDecke pct: 10
2016-10-22_19:20:06 LampeWohnzimmerDecke reduced: off
2016-10-22_19:20:06 LampeWohnzimmerDecke 10
2016-10-22_19:20:06 LampeWohnzimmerDecke timedOn: off
2016-10-22_19:20:09 LampeWohnzimmerDecke deviceMsg: on (to VCCU)
2016-10-22_19:20:09 LampeWohnzimmerDecke dim: stop:on
2016-10-22_19:20:09 LampeWohnzimmerDecke level: 100
2016-10-22_19:20:09 LampeWohnzimmerDecke overheat: off
2016-10-22_19:20:09 LampeWohnzimmerDecke overload: off
2016-10-22_19:20:09 LampeWohnzimmerDecke pct: 100
2016-10-22_19:20:09 LampeWohnzimmerDecke reduced: off
2016-10-22_19:20:09 LampeWohnzimmerDecke on
2016-10-22_19:20:09 LampeWohnzimmerDecke timedOn: off
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: rudolfkoenig am 23 Oktober 2016, 11:50:54
Wenn man das FileLog Regexp auf
LampeWohnzimmerDecke:on.*|LampeWohnzimmerDecke:off.*
setzt (was man so in dem FileLog DetailFenster im Regexp-Parts Bereich zusammenklicken kann, ohne was zu tippen), dann sollten nur folgende Daten geloggt werden
Zitat2016-10-22_02:32:16 LampeWohnzimmerDecke off
2016-10-22_08:08:09 LampeWohnzimmerDecke off
2016-10-22_08:08:13 LampeWohnzimmerDecke on
2016-10-22_10:01:49 LampeWohnzimmerDecke off
2016-10-22_19:20:09 LampeWohnzimmerDecke on
was mit der Plot-Funktion
$fld[2]=~"on"?1:0
zu einem "ansaehnlichen" Log fuehrt.


Leider geht es hier offensichtlich um einen Dimmer. Ich wuerde dafuer folgenden FileLog-Regexp empfehlen:
LampeWohnzimmerDecke.(on|off|\d+)
was zu folgenden Daten fuehrt:
Zitat2016-10-22_02:32:13 LampeWohnzimmerDecke 95
2016-10-22_02:32:16 LampeWohnzimmerDecke off
2016-10-22_08:08:07 LampeWohnzimmerDecke 20
2016-10-22_08:08:09 LampeWohnzimmerDecke off
2016-10-22_08:08:10 LampeWohnzimmerDecke 10
2016-10-22_08:08:13 LampeWohnzimmerDecke on
2016-10-22_10:01:46 LampeWohnzimmerDecke 95
2016-10-22_10:01:49 LampeWohnzimmerDecke off
2016-10-22_19:20:06 LampeWohnzimmerDecke 10
2016-10-22_19:20:09 LampeWohnzimmerDecke on
was man mit folgenden Plot-Funktion visualisieren kann:
$fld[2]=~"on"?100:$fld[2]=~"off"?0:$fld[2]
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 23 Oktober 2016, 22:42:50
Hallo,

also mit dem RegExpPart-Helper des Filelogs hab ich es nicht hinbekommen (dort gab es die notwendigen Auswahlmöglichkeiten nicht). Daher habe ich es von Hand in der Config eingetragen.
Soweit ich das jetzt sehe, funktioniert es. Mal sehen, wie es morgen aussieht - nachdem es neue Werte gibt.

Vielen Dank Rudi!!
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 06 November 2016, 12:31:35
Hm, nachdem nun alles soweit klappt ist mir aufgefallen, dass regelmäßig de Plot abreisst und dann Unsinn loggt (in Ermangelung von Daten). Gibt es bei Homematic-Dimmern und Schaltern eine Möglichkeit regelmäßig Status-Events zu erzeugen?
Ich hab es mit einem Notify der statusRequest triggert versucht, doch dabei werden keine Events erzeugt. Mit min-Intervall, on-Change und on-Update funktionieren auch nicht.
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: frank am 07 November 2016, 17:28:33
entweder du schaust dir das "verstaubte" wiki plotabriss vermeiden an, oder nimmst logproxy mit option extend und predict. auch im wiki zu finden.
Titel: Antw:Plot für Lichtschalter o.ä.?
Beitrag von: Grinsekatze am 08 November 2016, 17:58:12
Danke, das hat geklappt. Ich habe es mit LogProxy umgesetzt.

Am Beispiel von dem ursprünglichen Plot:
fhem.cfg:
define lp logProxy
define Plot_LampeWohnzimmerDecke SVG lp:My_LampeWohnzimmerDecke:CURRENT



My_LampeWohnzimmerDecke.gplot:
# Created by FHEM/98_SVG.pm, 2016-10-19 19:18:21
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 ("On" 1, "Off" 0)
set y2tics ("On" 1, "Off" 0)
set grid ytics
set ylabel "Status"
set y2label "Status"
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]

#logProxy FileLog:FileLog_LampeWohnzimmerDecke,predict=60*60*24,extend=60*60*24,clip:3:LampeWohnzimmerDecke.(on|off|\d+):0:$fld[2]=~"on"?1:0

plot "<IN>" using 1:2 axes x1y1 title 'Aktivität' ls l1fill lw 2 with steps


Ich muss lediglich noch den Titel der Plots ändern / benennen, da es zzt. CURRENT ist. Aber das sollte kein Problem sein.