FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: hhsch am 03 November 2013, 09:56:53

Titel: Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 03 November 2013, 09:56:53
Hallo,

ich habe den Bewegungsmelder FS20 PIRI-2, und will jetzt einen Plot für diesen erstellen. Das Problem liegt darin, dass dieser keine einfachen "on/off" Logs hat.
z.B.
2013-11-03_09:51:25 FS20_1dc200 on-old-for-timer 60

Wie konfiguriere Ich den Plot so, dass der Ausschlag nach oben genau um die gesendete Zeit anhält (hier 60), und dann wieder zurück geht?

Grüße
hhsch
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: Puschel74 am 03 November 2013, 10:11:14
Hallo,

da meine Bewegungsmelder ein notify triggern in dem ich den Bewegungsmelder wieder auf off schalte kann ich dir nur bedingt helfen.
Auch verwende ich DBLog und kein FileLog - das sollte aber das kleinere Problem sein  :D

Hier mal meine gplot die ich mit Hilfe erstellt habe und die auch meine restlichen FS20-Komponenten abdeckt.
Wenn du on/off sendest musst du eigentlich nur Ein/Aus gegen on/off tauschen.
dim habe ich drinnen weil ich auch FS20-Dimmer im einsatz habe.

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 ("Aus" 0, "Ein" 1)
set y2tics ("Aus" 0, "Ein" 1)
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]
set ylabel "Status"
set y2label "Status"

#DbLog <SPEC1>:state:::$val=~s/(Ein|Aus|dim)(\d*).*/$1eq"Ein"?1:($1eq"dim"?$2*0.01:0)/eg

plot "< awk '{print $1, $3~/dim.*/? 1 : 0; }' <IN>"\
        using 1:2 notitle with steps


Ein Plot sieht dann so aus:

Grüße
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: justme1968 am 03 November 2013, 10:34:16
was du ja eigentlich möchtest ist nicht den bewegungsmelder plotten (der sendet nur events für bewegung) sondern die brenn dauer der lampe. dann solltest du das notify bzw. das log auch  an die lampe hängen. dann bekommst du die dauer automatisch.

falls noch nicht passiert solltest du dafür follow-on-for-timer für die lampe setzen.

ich kann vom handy grad kein beispiel angängen aber es gibt eins in der commandref. die syntax ist bei dblog etwas anders als bei filelog. bei den plotfiles gibt es auch ein fs20 file genau dafür. das kannst du als vorlage verwenden.

gruss
  andre
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 03 November 2013, 18:50:21
Hallo,

ich habe jetzt das Beispiel von Puschel übernommen (und abgeändert), aber ich sehe keine Veränderung im Plot. Hat jemand ein Beispiel für FileLog oder eine genauere Beschreibung wie ich es machen könnte?

Grüße
hhsch
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: Puschel74 am 03 November 2013, 19:01:04
Hallo,

Zitat(und abgeändert)

evtl. wäre es einfacher du postest deine geänderte Version  8)

Grüße
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: justme1968 am 03 November 2013, 19:09:15
wie oben schon geschrieben gibt es ein fertiges fs20.gplot das direkt passen sollte.

gruss
  andre
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 03 November 2013, 19:17:40
Hallo,

Ich habe das hier:
############################
# Display the on and off values off an FS20 device
# Corresponding FileLog definition:
# define fs20log FileLog /var/log/fhem/fs20dev-%Y-%U.log fs20dev

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 yrange [-0.1:1.1]
set y2range [-0.1:1.1]
set ylabel "Status"
set y2label "Status"

#FileLog 3::0:$fld[2]=~"on"?1:0

plot "< awk '{print $1, $3~/on/? 1 : 0; }' <IN>"\
        using 1:2 notitle with steps



In das hier geändert:
############################
# Display the on and off values off an FS20 device
# Corresponding FileLog definition:
# define fs20log FileLog /var/log/fhem/fs20dev-%Y-%U.log fs20dev

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 yrange [-0.1:1.1]
set y2range [-0.1:1.1]
set ylabel "Status"
set y2label "Status"

#FileLog <SPEC1>:state:::$val=~s/(on|off|dim)(\d*).*/$1eq"on"?1:($1eq"dim"?$2*0.01:0)/eg

plot "< awk '{print $1, $3~/dim.*/? 1 : 0; }' <IN>"\
        using 1:2 notitle with steps



Bei beiden erstellt sich nicht automatisch ein Plot. Auch wenn ich einen manuell erstelle sind keine Einstellungen vorhanden.

Grüße
hhsch
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: justme1968 am 03 November 2013, 19:22:50
versuch es bitte erst mal mit der original zeile#FileLog 3::0:$fld[2]=~"on"?1:0 bevor du wild was zusammen kopierst. du hast genau die teile aus filelog und dblog zusammen gemischt die so nicht zusammen gehören.

gruss
  andre
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: Puschel74 am 03 November 2013, 19:26:13
Hallo,

ZitatBei beiden erstellt sich nicht automatisch ein Plot.

Automatisch erstellt sich mit diesen Einstellungen (andre hat grad gepostet) auch kein Plot.

Einen Plot musst du auch erstmal definieren.
Etwa so:
define wl_OG_Badezimmer_Ventilator SVG myDbLog:fs20db:CURRENT
attr wl_OG_Badezimmer_Ventilator label "OG_Badezimmer_Ventilator"
attr wl_OG_Badezimmer_Ventilator plotfunction OG_Badezimmer_Ventilator
attr wl_OG_Badezimmer_Ventilator room 39_Plots_Schalter

Nur das du myDBLog und fs20db austauschen musst.

Schau mal in der commandref unter SVG oder weblink.
Oder im Einsteiger.pdf  8)

Grüße
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 06 November 2013, 22:51:47
Hallo,

ich habe die Standardvorlage für den Plot wie oben schon erwähnt verwendet. Der Plot wurde definiert und erscheint auch.
Es wird jedoch nur der Status "On" im Plot angezeigt, egal welchen Status der Bewegungsmelder hat.
Hat jemand einen fertigen Plot für die Fritzbox und FileLog?

Grüße
hhsch
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 08 November 2013, 21:17:51
Hallo,

gibt es eine Möglichkeit aus der Logdatei das Datum und die Uhrzeit in den Plot zu übertragen? D.h. Immer wenn der Bewegungsmelder aktiviert wird, wird ein Logeintrag geschrieben, welcher dann als "Spitze" im Plot angezeigt werden soll.

Grüße
hhsch
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: Puschel74 am 08 November 2013, 21:29:10
Hallo,

Zitatgibt es eine Möglichkeit

FHEM biete viele Möglichkeiten.
Aber mann muss zwischendurch auch selbst Hand anlegen.

Zitataus der Logdatei das Datum und die Uhrzeit in den Plot zu übertragen?
Das wird Mwn automatisch gemacht - siehe meinen Beitrag ganz oben.
Da hast du Datum und Uhrzeit und den Peak des Bewegungsmelders.

Zitatwird ein Logeintrag geschrieben,
Wenn du ein LogFile definiert hast für den Bewegungsmelder wird das auch in diesem LogFile so hinterlegt.
Wenn die *.gplot dann auch passend erstellt/geändert wurde wird dir das auch im Plot angezeigt.
siehe oben in meinem Beitrag und Screenshot dazu.

Was hast du den bisher alles für deinen Bewegungsmelder definiert?
Nein. Nicht die gesamte fhem.cfg sondern nur der relevante Teil daraus.

OT und hat nichts mit dir zu tun aber ...
Leute. Für Hilfe zur Selbsthilfe sind unsere Kristallkugeln (ich hab schon versucht Kristallglas zu verwenden) einfach zu trübe.
Postet doch bitte was ihr bereits versucht habt und die Fehlermeldungen aus dem Logfile *grummel*
BTT und sorry

Grüße
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: stenny73 am 09 November 2013, 20:11:17
Ich weiß ja nicht. Aber wenn auf den bewegungsmelder reagiert werden soll wird das doch wohl nicht gehen, oder?
Ein Bewegungungsmelder, zu mindestens mein HomeMatic Bewegungsmelder, meldet halt einen event:motion. Was will man daraus für ein Log machen..... Es gibt doch keine event:nomotion oder so was....
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: justme1968 am 09 November 2013, 20:17:12
na klar geht das...

gruss
  andre
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 10 November 2013, 19:49:00
Hallo,

habe es nun geschafft einen Plot zu erstellen, der anzeigt wenn der Bewegungsmelder aktiviert wird (siehe Anhang).
Wie schaffe ich es, dass die Bewegungen nicht als Punkte, sondern als lines dargestellt werden? Also nur wenn der Bewegungsmelder aktiviert wird soll ein Ausschlag nach oben kommen (So wie bei Puschel74, auch im Anhang).
Wenn ich einfach lines einstelle dann bleibt die Linie ja logischerweise auf "On".

Grüße
hhsch
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: justme1968 am 10 November 2013, 19:53:34
wie oben schon gesagt...

der bewegungsmelder gibt nur das motion event. und kein 'motion zu ende' event. deshalb kannst du auch nur die punkte verwenden.

wenn du anzeigen möchtest wie lange die lampe an war musst du die lampe plotten. nicht den bewegungsmelder. die Lampe liefert on und off. zur not mit follow-on-for-timer.

gruss
  andre
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: Puschel74 am 10 November 2013, 19:54:02
Hallo,

ich habe meine Bewegunsmelder so eingestellt das diese nur ein on senden und kein on-irgendwas
Weiters stelle ich den Bewegungsmelder in FHEM nach der Auslösung per at wieder auf off.

Grüße

Edith: Die letzte Zeile stellt natürlich nicht den Bewegungsmelder auf off - das geht ja nicht - sondern dient nur dazu das in FHEM der Bewegungsmelder nicht auf on stehen bleibt.
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 10 November 2013, 20:32:43
Hallo Puschel74,

kannst Du das mit "per at wieder auf off" genauer beschreiben, was ich da eingeben muss, damit in der Log-Datei nach Ablauf der im PIRI-2 eingestellten Zeit automatisch wieder ein off steht.

Danke


Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: Puschel74 am 11 November 2013, 16:56:16
Hallo,

EG_Eingang_Bewegungsmelder:on.* {
  my $fhttk_eing_tuer = ReadingsVal("EG_Eingangstuer", "Window", "nA");
  if ( $fhttk_eing_tuer eq "Closed" ) {
    fhem ("set EG_Eingang_Licht_innen on-for-timer 30; set EG_Vorraum_Licht on-for-timer 48");
  }
  fhem ("define EG_Eingang_Bewegungsmelder_Aus at +00:00:10 set EG_Eingang_Bewegungsmelder off") if (Value("EG_Eingang_Bewegungsmelder_Aus") eq "");
}


Das notify löst aus wenn EG_Eingang_Bewegungsmelder ein on(irgendwas) sendet.
Dann wird geprüft ob die Eingangstüre auch zu ist und dann das Licht eingeschaltet.
In der letzten Zeile wird 10 Sekunden nach dem auslösen der Bewegungsmelder in FHEM wieder auf off gesetzt.

Grüße
Titel: Antw:Bewegungsmelder FS20 Plot
Beitrag von: hhsch am 16 November 2013, 20:38:26
Hallo,

habe das Problem jetzt folgendermaßen gelöst:

define NotifyPiri notify FS20_1dc200 set FS20_1dc200 on;;define FS20_1dc200_off at +00:00:10 set FS20_1dc200 off

Danke an alle!
hhsch