HM-Sec-RHS mit HM-SEC-SD verbinden als Alarmanlage

Begonnen von Tommy82, 12 September 2014, 20:11:22

Vorheriges Thema - Nächstes Thema

topfi

#15
Zitat von: Pfriemler am 18 September 2014, 22:31:53
Also die Trommelfellkillmaschine willst du nicht bauen.
:D :D :D

Übrigens hatte meine Anlage Seit Anfang Juli noch keinen einzigen Fehlalarm. Die Trommelfellkiste hatte ich auch nur während des Urlaubs scharf geladen. Sonst bin ich noch in der Testphase (habe einfach auf die beiden ungenutzten Relaiskontakte im HM-Aktor umgelegt). Schließlich will ich einer Ehekrise vorbeugen, nicht dass die Familie nach Hause kommt und die Schallkanone nicht auskriegt.. :o

Mit den Notifys habe ich das mehrstufig gemacht, um Meldelinien zu teilen. Anleitung gibt es doch hier: http://www.fhemwiki.de/wiki/Alarmanlage. Die hat zwar noch ein paar Ecken, zum Beispiel ist da ein rekursives Notify beim Unscharfschalten drin (da schalten die Sirenen mehrfach hintereinander aus), aber das kriegt man relativ einfach gelöst.

Die Terrassentür löst sofort die Meldelinie Aussentuer.* aus (Wohnungstür ist komplizierter, die hat Verzögerungen eingebaut):

define act_on_Terrassentuer notify TFD_Terrasse { if (Value("TFD_Terrasse") eq "closed") \
{ fhem("set AussentuerEG_Terrasse zu") } else { fhem("set AussentuerEG_Terrasse offen") }}


Die Meldelinie Ausentuer.* triggert dann die Alarmfunktionen, also bei Dir beispielsweise den Rauchmelder

define act_on_Aussentuer notify Aussentuer.*:offen {if (Value("ANLAGE_STATUS") eq "scharf" || Value("ANLAGE_STATUS") eq "scharf_intern") \
{fhem("set ALARM_STATUS ALARM_TUER;;{Mail_Alarm_Tueren()};;set ALARM_Melder on")}}


Übrigens eignet sich die Homematic-Retroanzeige http://www.ehomeportal.de/shop/prodpic/HomeMatic-Funk-Anzeigeaktor-HM-Dis-TD-T-mit-Wechselanzeige-Komplettbausatz-68-1037-21_b_0.JPG wunderbar als Statusanzeige für die Alarmanlage, weil das Ding batteriebetrieben ist und einfach an die Wand gehangen werden kann. Ich muss meine mal irgendwann zusammenbauen...

Tommy82

Hallo,
hab mich mit den Notify noch nie so richtig beschäftigt. Hab jetzt hier mal gelesen http://www.fhemwiki.de/wiki/Notify daraus hab ich das gebaut

define Einbruchalarm_Fenster notify (trig_Fenster_ueber_Heizung|trig_Terassen_Tuer|Fenster_neben_Couch:state { fhem "set Rauchmelder_Btn1$teamCall" }

Wäre das soweit richtig?
Wie baue ich da jetzt noch die Zeit mit ein damit das auch nur zu festgelegten Zeiten geprüft wird?

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

Sollte ich einen dummy oder ein virtuelles Device nutzen im die fensterkontakt abzufragen?
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

Komme einfach nicht weiter :-(
Hab jetzt mal das versucht:
Einen dummy für die Fensterkontage erstellt, ein list davon sieht so aus:
Internals:
NAME Fensterkontakte_Wohnzimmer
NR 122
STATE Terassen_Tuer:open,Fenster_ueber_Heizung:open, Fenster_neben_Couch:open
TYPE dummy
Readings:
2014-09-27 22:12:00 state Terassen_Tuer:open,Fenster_ueber_Heizung:open, Fenster_neben_Couch:open
Attributes:

So richtig? Wie stelle ich die abfrage dazu ein ob ein Fenster geöffnet ist?
und einen zweiten Dummy für die Uhrzeit abfrage, ein list ergibt
Internals:
CFGFN
NAME Einbruch_Alarm
NR 969
STATE ???
TYPE dummy
Attributes:

Nur wie stell ich dort jetzt die Zeit ein?

Wäre super wenn mir einer helfen könnte

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

martinp876

warum brauchst du für alles einen Dummy? warum fragst du nicht einfach den Fensterkontakt ab?
schreiben einmal genau auf, was du willst.
alarm wenn ein Fenster geöffnet wird während von uhrzeit abends bis Uhrzeit morgens?
Alarm wenn ein Fenster offen ist um einen bestimme Uhrzeit abends?
alarm wenn du die Anlage scharf schaltest abends und keinen Alarm wenn sie morgens aus ist? geht sie automatisch aus oder wenn du ein Kommando gibtst?
mache ein Dummy, wenn die anlage scharf sein soll. Manuell oder zeitgesteuert.
mache ein notify, das auf die fenster-offen reagiert - das fragt den Alarmanlagenzustand ab und löst den Alarm abhängig davon aus.
Beim Einschalten der Alarmanlage wird der aktuelle zustand geprüft - und es passiert was du eben willst... sofort Alarm, Antwort beim Einschalten,...

Tommy82

Hallo Martin,
Es sind ja drei Fenstern Melder, und da war die Idee die als dummy zusammen zufassen.
Keine gute Idee?

Der Alarm soll automatisch um 23 Uhr aktiv werden und um 6 Uhr morgens deaktiviert werden.
Er soll sich aber auch per Button aktivieren und  deaktivieren lassen.

Der Alarm soll ausgelöst werden wenn zwischen 23 und 6 Uhr das Fenster auf offen oder gekippt steht.
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

martinp876

ich würde einen Dummy "alarmanlage" bauen. Den kannst du on oder off schalten - per timer oder manuell - sollte kein Problem darstellen.
dann würde ich ein Notify machen, dass alle 3 Fenster überwacht. Wenn die Fenster einen ähnlichen Namen haben kannst du das geschickt machen

.*Fenster.*:offen

so in der Art.
Des weiteren musst du überlegen, ob beim Einschalten der Anlage der Zustand der Fenster geprüft werden soll.
das baust du entweder in ein notify zum Dummy ein oder jeweils in das Setze-scharf kommando. Das hast du 2-mal. Einmal vom Timer und einmal für das manuelle Einschalten

Tommy82

Hallo MArtin,
komm einfach nicht wirklich weiter hab einen Dummy Alarmanlage mir on:off erstellt.
Internals:
   CFGFN
   NAME       Alarmanlage
   NR         172
   STATE      ???
   TYPE       dummy
Attributes:
   setList    on:off


Ist das schonmal richtig? Wie kann ich den jetzt automatisch zu festgelegten Zeiten on:off setzen?

Wäre das notify so richtig?
define Einbruchalarm_Fenster notify (.*Fenster.*:offen){ fhem "set Alarmanlage:on" }

Ein list vom notify zeigt jetzt
Internals:
   CFGFN
   DEF        (.*Fenster.*:offen){ fhem "set Alarmanlage:on" }
   NAME       Einbruchalarm_Fenster
   NR         201
   NTFY_ORDER 50-Einbruchalarm_Fenster
   REGEXP     (.*Fenster.*:offen){
   STATE      active
   TYPE       notify
Attributes:
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

martinp876

ZitatWie kann ich den jetzt automatisch zu festgelegten Zeiten on:off setzen?
kein notify, ein (zwei) timer
define alarmOn at *18:00:00 set Alarmanlage on
define alarmOff at *08:00:00 set Alarmanlage off


Du könntest noch ein notify einbauen, das beim Einschalten auf "alles zu" prüft:
define AlarmOnTest notify Alarmanlage:.*on <check alle Fenster und generiere evtl einen Alarm>

beim Einschalten willst du sicher, dass ein Alarm sofort kommt. Schliesslich kommt ein Alarm nur bei Änderung auf "offen"!

Tommy82

Hab jetzt zwei timer hinzugefügt,,
define alarmOn at *23:00:00 set Alarmanlage on
define alarmOff at *06:00:00 set Alarmanlage off

Hab auch deinen Vorschlag
define AlarmOnTest notify Alarmanlage:.*on <check alle Fenster und generiere evtl einen Alarm>
eingebaut

Würde das jetzt schon bedeuten das wenn heute aben um 23 nicht alle Fenster zu sind, der Alarm losgeht?

Oder was muss ich noch tun?

Hier mal ein paar List ausgaben:

Zitatalram off
Internals:
   CFGFN
   DEF        *06:00:00 set Alarmanlage off
   NAME       alarmOff
   NR         138
   REP        -1
   STATE      Next: 06:00:00
   TRIGGERTIME 1412568000
   TRIGGERTIME_FMT 2014-10-06 06:00:00
   TYPE       at
Attributes:


Zitatalarm on
Internals:
   CFGFN
   DEF        *23:00:00 set Alarmanlage on
   NAME       alarmOn
   NR         135
   REP        -1
   STATE      Next: 23:00:00
   TRIGGERTIME 1412542800
   TRIGGERTIME_FMT 2014-10-05 23:00:00
   TYPE       at
Attributes:


ZitatAlarmanlagen dummy
Internals:
   NAME       Alarmanlage
   NR         127
   STATE      ???
   TYPE       dummy
Attributes:
   setList    on:off


ZitatAlarmanlageOnTest notify
Internals:
   CFGFN
   DEF        Alarmanlage:.*on <check alle Fenster und generiere evtl einen Alarm>
   NAME       AlarmOnTest
   NOTIFYDEV  Alarmanlage
   NR         146
   NTFY_ORDER 50-AlarmOnTest
   REGEXP     Alarmanlage:.*on
   STATE      active
   TYPE       notify
Attributes:


Zitatnotify Eibruchalarm Fenster
Internals:
   DEF        (.*Fenster.*:offen){ fhem "set Alarmanlage:on" }
   NAME       Einbruchalarm_Fenster
   NR         128
   NTFY_ORDER 50-Einbruchalarm_Fenster
   REGEXP     (.*Fenster.*:offen){
   STATE      active
   TYPE       notify
Attributes:


Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

frank

<check alle Fenster und generiere evtl einen Alarm>
das was da steht, musst du natürlich umsetzen/programmieren.  ;)
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Tommy82

Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Tommy82

#27
Hallo,
ich hab nochmal drüber nachgedacht, ich glaube es wäre sinnvoller wenn die Prüfung am Abend ob noch ein Fenster offen ist keinen Alarm bei offenem Fenster auslöst, sondern mir eine Email sendet (sonst hab ich zu oft alarm :-) )
Dafür hab ich das notify mal so umgebaut:
.*Fenster.*:offen { FB_mail('xyz@googlemail.com','FHEM Fenster Offen',$NAME.'ist offen' ) }

und das list des Notify ergibt jetzt:

Internals:
   DEF        .*Fenster.*:offen { FB_mail('xyz@googlemail.com','FHEM Fenster Offen',$NAME.'ist offen' ) }

   NAME       Pruefung_Fenster_Offen
   NR         130
   NTFY_ORDER 50-AlarmOnTest
   REGEXP     .*Fenster.*:offen
   STATE      active
   TYPE       notify
Attributes:


Wäre das so richtig? Wie kann ich die Prüfung jetzt jeden Abend um 23 Uhr  laufen lassen? Und es soll auch geprüft werden ob die Fenster gekippt sind, wie bekomme ich das hin?

Wie komme ich dann mit meiner eigentlichen Alarmanlagen schaltung weiter?

Danke
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

Pfriemler

Du lässt auch nicht locker ...  ;)
Ein Notify löst bei Ereignis aus. Deine Def reagiert auf Zustandsänderung. Zustandsprüfung zu einer Zeit ist etwas anderes.
Der Tipp mit dem structure war echt ernst gemeint. Du bekommst eine auswertbare Variable, die einen Zustand hat, wenn alle Fenster geschlossen sind, und einen anderen, wenn 1 oder mehr Fenster offen sind. Damit kannst Du beim Schärfen einfach prüfen, ob alle Fenster geschlossen sind - schärfen oder Hinweis, dass noch was offen ist. Für das Schärfen zu einer Zeit reicht ein "at" (define SetScharfAbends at *23:00:00 [anweisungsteil]) und eine IF THEN ELSE Anweisung. Die Structure brauchst Du bei Erweiterung (mehr Fenster) nur anpassen, ohne weitere Änderungen. Eine detaillierte Meldung über den Fensterzustand (welche Fenster genau) würde ich in die 99_myUtils auslagern, da kannst Du sie ggf. mehrfach aufrufen (etwa bei einer manuellen Scharfstellung), idealerweise mit einer Schleife über alle .*Fenster und einer sinnfälligen Textkomposition, die dann am Schluss geschickt wird.

Ob Du die Scharfstellung am Abend trotz offenem Fenster ausführst, musst Du selbst entscheiden - einmal zu geht dann noch ohne Alarmauslösung ...

Ob Fenster gekippt sind, kannst Du auf verschiedene Weise feststellen - zwei Kontakte am Flügel oben und unten, der untere bleibt dann "geschlossen" beim Kippen - oder Du überwachst die Drehriegelstellung mit dem Threestate-Sensor. Der ist bei höchster Sicherheitsanforderung dann mit einem echten Fensterkontakt oben zu koppeln.
Drehriegel "zu", Fensterkontakt auf: Einbruch/Sabotage (Aufhebeln des Fensters), sollte immer Alarm erzeugen.
Drehriegel "offen" oder "gekippt", Fensterkontakt zu: Fenster ist nur angelehnt im Rahmen, aber nicht verriegelt, und kann bei Wind aufdrücken oder durch einen Einbrecher...

Genug gesenft. Try and error!

"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

roedert

Zitat von: Tommy82 am 12 September 2014, 20:11:22
Hallo,
ich habe mir überlegt, ob es nicht möglich wäre meine HM-SEC-RHS Fensterkontakte mit meinen HM-SEC-SD Rauchmeldern zu verbinden und als Alarmanlage zu nutzen.
Ein aufgehebeltes Fenster wird doch vom SEC-RHS überhaupt nicht erkannt!