EnOcean-STM-250-Fenster-Türkontakt: Unterschied zwischen den Versionen

Aus FHEMWiki
K (→‎Türstatus in einem Plot darstellen: ->Rechtschreibkorrektur)
K (→‎Türstatus in einem Plot darstellen: -> unnötigen Schritt entfernt / Filelog mit korrekter RegEx ist laut Voraussetzung bereits existent)
Zeile 65: Zeile 65:
Die Detailansicht des Filelogs FileLog_EnO_contact_00017500 aufrufen.
Die Detailansicht des Filelogs FileLog_EnO_contact_00017500 aufrufen.


Dort im Bereich "Regexp parts" das Device "EnO_contact_00017500" sowie den RegEx ".*" auswählen und den Link "Create SVG Plot" anklicken.
Den Link "Create SVG Plot" anklicken.


Die Felder im erscheinenden Plot-Editor folgendermaßen füllen:
Die Felder im erscheinenden Plot-Editor folgendermaßen füllen:

Version vom 30. Dezember 2014, 22:42 Uhr

EnOcean-STM-250-Fenster-Türkontakt
todo
Allgemein
Protokoll EnOcean
Typ Sender, Sensor
Kategorie EnOcean
Technische Details
Kommunikation EnOcean Funk, 868Mhz
Kanäle
Betriebsspannung solarbetrieben
Leistungsaufnahme
Versorgung solarbetrieben
Abmessungen Kontakt: 110x19x15mm Magnet: 37x10x5mm / evtl. abweichend
Sonstiges
Modulname EnOcean
Hersteller EnOcean, diverse


EnOcean-STM-250-Fenster-Türkontakt ist ein solarbetriebener Sensor

  • für
    • Zustandsüberwachung von Fenstern und Türen

Features

Solarbetriebener Sensor sendet bei jeder Zustandsänderung sofort und alle 15 min eine Zustandsmeldung. Der Sensor wird von verschiedenen Herstellern mit unterschiedlicher Bezeichnung angeboten (Achtung: teilweise abweichende Gehäusegrößen).

Hinweise zum Betrieb mit Fhem

Definition/Anlernvorgang

Der Sensor wird beim Empfang des ersten normalen Funktelegramm im learnigMode vollständig von Fhem erkannt. Der Versand des Anlerntelegramms ist für Fhem nicht zwingend notwendig; er führt zum gleichen Ergebnis wie der Empfang des ersten normalen Funktelegramms. Anlegen in fhem.cfg erfolgt automatisch per autocreate.

Fhem Config-Auszug

Ein exemplarischer Auszug aus der fhem.cfg:

define EnO_contact_00017500 EnOcean 00017505
attr EnO_contact_00017500 IODev TCM310_3
attr EnO_contact_00017500 room EnOcean
attr EnO_contact_00017500 subType contact

Logbeispiel

2014-07-16_19:29:50 EnO_contact_00017500 closed
2014-07-16_19:30:00 EnO_contact_00017500 open
2014-07-16_19:31:10 EnO_contact_00017500 closed
2014-07-16_19:31:20 EnO_contact_00017500 open
2014-07-16_19:33:10 EnO_contact_00017500 closed

Einsatzbeispiel

Anzeige Türstatus im WebFrontend

EnOcean-STM-250-Anzeige-Fensterstatus.JPG

Durch folgendes Attribut wird der Türstatus im WebFrontend bildlich dargestellt:

attr EnO_contact_00017500 devStateIcon closed:fts_door open:fts_door_open

Mit dieser alternativen Variante des Attributs wird das Icon bei offener Tür rot und bei geschlossener Tür schwarz dargestellt:

attr EnO_contact_00017500 devStateIcon open:fts_door_open@red closed:fts_door@black

Türstatus in einem Plot darstellen

EnOcean-STM-250-Fenster-Türkontakt-Garden door gplot.jpg

Mit Hilfe des .gplot-Editors kann ein Plot zur Darstellung des Türstatus im Zeitablauf erzeugt werden. Voraussetzung ist die Existenz eines Logfiles für den Fenster-Türkontakt, das beim Teach-In standardmäßig von autocreate erzeugt wird:

define FileLog_EnO_contact_00017500 FileLog ./log/EnO_contact_0000FA27-%Y.log EnO_contact_0000FA27:.*
attr FileLog_EnO_contact_00017500 logtype text
attr FileLog_EnO_contact_00017500 room EnOcean

Die Detailansicht des Filelogs FileLog_EnO_contact_00017500 aufrufen.

Den Link "Create SVG Plot" anklicken.

Die Felder im erscheinenden Plot-Editor folgendermaßen füllen:

Info green.pngAllgemeiner Hinweis zum Function-Feld im Plot-Editor

Die Function dient zum Umsetzen von nicht-numerischen Werten in plotbare numerische Werte. Es ist ein Perl-Ausdruck für FileLog get (siehe auch Creating Plots)

x in $fld[x] bezeichnet die zu analysierende Spalte im FileLog. Die Spaltenzählung beginnt mit der 0. Spalte (Zeitstempel).
  1. Plot title: <TL>
  2. Y-Axis label, left: Feld komplett löschen
  3. Y-Axis label, rigth: Status
  4. Range as [min:max],left: [-0.1:1.1]
  5. Range as [min:max],right: [-0.1:1.1]
  6. Tics as ("Txt" val, ...),left: ("open" 1, "closed" 0)
  7. Tics as ("Txt" val, ...),right: ("open" 1, "closed" 0)
  8. Diagramm label: notitle
  9. Column: 3
  10. Regexp: EnO_contact_00017500.*
  11. DefaultValue: 0
  12. Function: $fld[2]=~"open"?1:0
  13. Y-Axis: rigth
  14. Plot-Type: steps
  15. Style: I0
  16. Width: 1

Dann den Button "Write .gplot-File" anklicken. Der Plot sollte nun richtig angezeigt werden.

Durch Setzen des folgendes Attribut wird die Titelzeile des Plots erzeugt:

attr SVG_FileLog_EnO_contact_00017500_1 title sprintf("Garden Door %s at %s",$data{currval1}=~"1"?'open':'closed',$data{currdate1} =~ m/_(\d\d:\d\d)/?$1:"")

Automatisch durch den .gplot-Editor erzeugte .glot-Datei (SVG_FileLog_EnO_contact_00017500.gplot_1):

# Created by FHEM/98_SVG.pm, 2014-08-12 21:02:07
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 ("open" 1, "closed" 0)
set y2tics ("open" 1, "closed" 0)
set grid
set ylabel ""
set y2label "Status"
set yrange [-0.1:1.1]
set y2range [-0.1:1.1]

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

plot "<IN>" using 1:2 axes x1y2 notitle ls l0 lw 1 with steps

aus Forenbeitrag

Links

  • Datenblatt: PDF