HM-Sec-WDS Funk-Wassermelder: Unterschied zwischen den Versionen

Aus FHEMWiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
K (→‎Automatische E-Mail bei Feuchte/Nässe: @ und % -> $NAME und $EVENT)
Zeile 87: Zeile 87:


  <nowiki>define n_wasser_chk notify CUL_HM_HM_SEC_WDS_xxxxxx:contact.* { \
  <nowiki>define n_wasser_chk notify CUL_HM_HM_SEC_WDS_xxxxxx:contact.* { \
  if("%"&#160;!~ m/dry/) {\
  if("$EVENT" !~ m/dry/) {\
   {fhemMail('Max.Mustermann@@Mustermann.de','FHEM Wasseralarm','@&#160;%')};;\
   {fhemMail('Max.Mustermann@@Mustermann.de','FHEM Wasseralarm','$NAME&#160;$EVENT')};;\
   Log 3, "@: Wassermeldung&#160;%";;\
   Log 3, "$NAME: Wassermeldung&#160;$EVENT";;\
  }\
  }\
}</nowiki>
}</nowiki>

Version vom 30. März 2016, 15:47 Uhr

HM-Sec-WDS Funk-Wassermelder

Wassermelder, der feuchte und nasse Untergründe detektieren kann.

Features

Kontakte des Wassermelders


Der Wassermelder wird an einer HomeMatic Anlage betrieben, z.B. an einem HMLAN Konfigurator.

Gemeldet werden drei verschiedene Stati: "dry", "damp" und "wet".

Den Status "damp" (feucht) nimmt das System an, wenn zwei der äußeren Kontakte (rot) über eine Wasserfläche Kontakt haben. Der Status "Wet" (nass) wird angenommen, wenn einer der äußeren Kontakte über eine Wasserfläche mit dem inneren, ca. 1,5 mm höher liegenden Kontakt (blau) hat. Unbedingt Seite 5 der Anleitung beachten.


Ca. alle 24 Stunden sendet das System eine "battery" Meldung.


Hinweise zum Betrieb mit FHEM

Auszug aus der fhem.cfg

Angelegt durch autocreate

define CUL_HM_HM_SEC_WDS_xxxxxx CUL_HM xxxxxx
attr CUL_HM_HM_SEC_WDS_xxxxxx .devInfo yyyyyy
attr CUL_HM_HM_SEC_WDS_xxxxxx .stc 80
attr CUL_HM_HM_SEC_WDS_xxxxxx actCycle 028:00
attr CUL_HM_HM_SEC_WDS_xxxxxx actStatus alive
attr CUL_HM_HM_SEC_WDS_xxxxxx alias WassermelderHeizung
attr CUL_HM_HM_SEC_WDS_xxxxxx expert 2_full
attr CUL_HM_HM_SEC_WDS_xxxxxx firmware 1.1
attr CUL_HM_HM_SEC_WDS_xxxxxx model HM-SEC-WDS
attr CUL_HM_HM_SEC_WDS_xxxxxx peerIDs 
attr CUL_HM_HM_SEC_WDS_xxxxxx room 8-Wasseralarm
attr CUL_HM_HM_SEC_WDS_xxxxxx serialNr xyz
attr CUL_HM_HM_SEC_WDS_xxxxxx subType threeStateSensor
#Melde alle Kontaktstatusänderungen
define Wasseralarm_Contact notify CUL_HM_HM_SEC_WDS_xxxxxx:contact.* { sendmail('local@@mail.tld','%-@','%-@') }
attr Wasseralarm_Contact room 8-Wasseralarm
#Melde Batteriewarnung
define Wasseralarm_Battery notify CUL_HM_HM_SEC_WDS_xxxxxx:battery.* { sendmail('local@@mail.tld','%-@','%-@') }
attr Wasseralarm_Battery room 8-Wasseralarm
#Melde nur "wet" Meldung
define Wasseralarm_Contact_Wet notify CUL_HM_HM_SEC_WDS_xxxxxx:contact:.wet.* { sendmail('local@@mail.tld','WET-ONLY-ALARM-%-@','%-@') }
attr Wasseralarm_Contact_Wet room 8-Wasseralarm
define CUL_HM_HM_SEC_WDS_xxxxxx FileLog /usr/local/FHEM/var/log/CUL_HM_HM_SEC_WDS_xxxxxx-%Y-%m.log CUL_HM_HM_SEC_WDS_xxxxxx
attr CUL_HM_HM_SEC_WDS_xxxxxx logtype wateralert:Plot,text
attr CUL_HM_HM_SEC_WDS_xxxxxx room 8-Wasseralarm
define CUL_HM_HM_SEC_WDS_xxxxxx weblink fileplot FileLog_CUL_HM_HM_SEC_WDS_xxxxxx:wateralert:CURRENT
attr CUL_HM_HM_SEC_WDS_xxxxxx room 8-Wasseralarm,97-Graphen

Plots / Grafiken

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 ("dry" 0, "damp" 1, "wet" 2)
set y2tics ("dry" 0, "damp" 1, "wet" 2)
set yrange [-0.1:2.1]
set y2range [-0.1:2.1]
set ylabel "Status"
set y2label "Status"
#FileLog 3::0:$fld[2]=~"damp"?1:$fld[2]=~"wet"?2:0
plot "< awk '{print $1, $3~/damp/? 1 : $3~/wet/? 2 : 0; }' <IN>"\
    using 1:2 notitle with steps

Log-Auszug

2013-03-07_21:47:28 CUL_HM_HM_SEC_WDS_xxxxxx Activity:: alive
2013-03-08_09:56:20 CUL_HM_HM_SEC_WDS_xxxxxx alive: yes
2013-03-08_09:56:20 CUL_HM_HM_SEC_WDS_xxxxxx battery: ok
2013-03-08_09:56:20 CUL_HM_HM_SEC_WDS_xxxxxx dry
2013-03-08_09:56:20 CUL_HM_HM_SEC_WDS_xxxxxx contact: dry (to HMLAN)
2013-03-08_17:42:29 CUL_HM_HM_SEC_WDS_xxxxxx wet
2013-03-08_17:42:29 CUL_HM_HM_SEC_WDS_xxxxxx contact: wet (to HMLAN)
2013-03-08_17:42:53 CUL_HM_HM_SEC_WDS_xxxxxx dry
2013-03-08_17:42:53 CUL_HM_HM_SEC_WDS_xxxxxx contact: dry (to HMLAN)
2013-03-08_17:43:10 CUL_HM_HM_SEC_WDS_xxxxxx damp
2013-03-08_17:43:10 CUL_HM_HM_SEC_WDS_xxxxxx contact: damp (to HMLAN)
2013-03-08_17:43:16 CUL_HM_HM_SEC_WDS_xxxxxx dry
2013-03-08_17:43:16 CUL_HM_HM_SEC_WDS_xxxxxx contact: dry (to HMLAN)

Automatische E-Mail bei Feuchte/Nässe

Mittels folgendem Eintrag in der fhem.cfgwird bei jedem Statuswechsel des HM-Sec-WDS auf dampbzw. wetvon FHEM eine E-Mail an eine bestimmte E-Mail-Adresse gesendet und ein entsprechender Eintrag in der fhem.logerzeugt:

define n_wasser_chk notify CUL_HM_HM_SEC_WDS_xxxxxx:contact.* { \
 if("$EVENT" !~ m/dry/) {\
  {fhemMail('Max.Mustermann@@Mustermann.de','FHEM Wasseralarm','$NAME $EVENT')};;\
  Log 3, "$NAME: Wassermeldung $EVENT";;\
 }\
}

Das setzt aber eine funktionierende 99 myUtils anlegen voraus.

Die Mail, die erzeugt wird, hat den Inhalt:

An:    Max.Mustermann@Mustermann.de 
Betreff:  FHEM Wasseralarm
Mail-Text: CUL_HM_HM_SEC_WDS_xxxxxx contact: wet (to HMLAN1)

Hinweis:Man kann zwar nur auf :contact.*filtern, aber dann kommt z.B. auch bei Statusänderungen von vorhandenen HM-Sec-SC eine Mail. Bei mehreren HM-Sec-WDS muss dann der Filter entsprechend angepasst werden, um mit einem notifyauszukommen.

Links

Anleitung PDF