Hallo,
ich bastel gerade an einer Lösung für meine Alarmanlage. Die Anlage soll einen Voralarm und einen Hauptalarm haben.
Das hier ist die Lösung bis zum Voralarm:
# Alarmanlage
define anlage_status dummy
attr anlage_status room Waechter
define alarm_status dummy
attr alarm_status room Waechter
define benachrichtigung_status dummy
attr benachrichtigung_status room Waechter
define Voralarm TRX_SECURITY KD101 52c500 smoke
attr Voralarm room Waechter
define Scharfschalten notify Schalter_1:on.* {\
fhem "set anlage_status scharf";;\
}
define Unscharfschalten notify Schalter_1:off.* {\
fhem "set anlage_status unscharf";;\
fhem "set alarm_status kein alarm";;\
fhem "set benachrichtigung_status keine benachrichtigung";;\
}
define Alarmroutine notify Bewegungsmeld.*:on.* \
{if (Value("anlage_status") eq "scharf"){fhem "set alarm_status alarm"} \
}
define Voralarmfall notify alarm_status:alarm {\
fhem "set Voralarm alert";;\
if (Value("benachrichtigung_status") eq "keine benachrichtigung") {\
DebianMail('xxx@@xxx.de','Alarmierung','Alarm wurde ausgeloest')};;\
fhem "set benachrichtigung_status benachrichtigt";;\
fhem "set alarm_status voralarm";;\
}
Wenn die Anlage scharf geschaltet ist und ein Bewegungsmelder Bewegung meldet, geht alles bis zum Voralarm durch (ein modifizierter Rauchmelder piept leise).
Jetzt wollte ich mit dem Hauptalarm weitermachen - hänge da aber irgendwie.
Was möchte ich?
1.) Wenn die Anlage 10 Sekunden nach dem Auslösen des Voralarms nicht unscharf geschaltet wurde, soll der Haupalarm ("set Rauchmmelder.* alert") losgehen.
2.) Der Hauptalarm soll so lange wiederholt werden ("set Rauchmmelder.* alert" also immer wieder gesendet werden), bis die Anlage unscharf geschaltet wird oder 3 Minuten vorbei sind.
Schon an Punkt 1 scheitere ich momentan.
Hat jemand eine Idee?
Vielen Dank
Ben
Du setzt beim voralarm ein at was in 10sekundenn ausgeführt wird. Nur daran denken, dass du es beim unscharfschalten löschst.
Hallo Paul,
vielen Dank für den hilfreichen Hinweis! Perfekt! Es sieht jetzt so aus:
# Alarmanlage
define anlage_status dummy
attr anlage_status room Waechter
define alarm_status dummy
attr alarm_status room Waechter
define benachrichtigung_status dummy
attr benachrichtigung_status room Waechter
define Voralarm TRX_SECURITY KD101 52c500 smoke
attr Voralarm room Waechter
define Scharfschalten notify Schalter_1:on.* {\
fhem "set anlage_status scharf";;\
}
define Unscharfschalten notify Schalter_1:off.* {\
fhem "set anlage_status unscharf";;\
fhem "set alarm_status kein alarm";;\
fhem "set benachrichtigung_status keine benachrichtigung";;\
}
define Alarmroutine notify Bewegungsmeld.*:on.* \
{if (Value("anlage_status") eq "scharf"){fhem "set alarm_status alarm"} \
}
define Voralarmfall notify alarm_status:alarm {\
fhem "set Voralarm alert";;\
if (Value("benachrichtigung_status") eq "keine benachrichtigung") {\
DebianMail('xxx@@xxx.de','Alarmierung','Alarm wurde ausgeloest')};;\
fhem "set benachrichtigung_status benachrichtigt";;\
fhem "set alarm_status voralarm";;\
fhem "define Hauptalarm at +00:00:10 set alarm_status hauptalarm";;\
}
define Hauptalarmfall notify alarm_status:hauptalarm {\
if (Value("anlage_status") eq "scharf") {\
fhem "set Rauchmelder.* alert"};;\
}
Vorhaben Nr. 1 (wenn die Anlage 10 Sekunden nach dem Auslösen des Voralarms nicht unscharf geschaltet wurde, soll der Haupalarm losgehen) ist damit gelöst.
Jetzt bräuchte ich "nur" noch einen Tipp für Vorhaben Nr. 2: Der Hauptalarm soll so lange wiederholt werden ("set Rauchmmelder.* alert" also immer wieder - z.B. alle 10 Sekunden - gesendet werden), bis die Anlage unscharf geschaltet wird oder 3 Minuten vorbei sind.
Vielen Dank für Deine Hilfe!
Ben
Na genauso ich weiß nur nicht den Zeitinterval wo dein Rauchmelder wieder ausgeht
Hallo Paul,
das Problem ist, dass der Rauchmelder, wenn ich ihn auf "alert" setze, nur so ca. 10 Sekunden Alarm gibt.
Ich möchte den "alert" Befehl also immer wieder rausschicken, bis die Alarmanlage unscharf geschaltet wird.
Schöne Grüße
Ben
P.S.: Ich nutze diese Rauchmelder www.amazon.de/gp/product/B0045Y5SFO
P.P.S.: Und für den Voralarm dies hier http://forum.fhem.de/index.php/topic,13144.msg80468.html#msg80468
Na wenn er alle 10 Sekunden ausgeht , machst du es wieder mit einem at in 10 sekunden
Hallo Paul,
meinst Du so in etwa?
define Hauptalarmfall notify alarm_status:hauptalarm {\
if (Value("anlage_status") eq "scharf") {\
fhem "set Rauchmelder.* alert"};;\
fhem "define schleife at +00:00:10 set alarm_status hauptalarm";;\
}
Irgendwas passt da nicht. FHEM wiederhohlt den Befehl zwar - aber nur einmal.
Hab ich da was falsch gemacht oder hast Du noch eine Idee?
Danke nochmals!
Ben
Nein hast keinen Fehler gemacht , hast ja im Befehl angegeben das er nur einmal na 10 Sekunden wieder angehen soll
Hallo Paul,
genau. Aber ich dachte, weil ich am Ende ja
fhem "define schleife at +00:00:10 set alarm_status hauptalarm"
setzte, dass er dann wieder von vorne anfängt und wieder und wieder und ...
Da habe ich wohl einen Denkfehler?
Was wäre die Alternative?
fhem "define schleife at +00:00:10 set alarm_status hauptalarm";;\
fhem "define schleife1 at +00:00:20 set alarm_status hauptalarm";;\
fhem "define schleife2 at +00:00:30 set alarm_status hauptalarm";;\
...
fhem "define schleife17 at +00:03:00 set alarm_status hauptalarm";;\
War es das, was Du meintest? Das scheint zu funktionieren!
Ach so. Noch besser wäre wohl:
fhem "define schleife at +*{18}00:00:10 set alarm_status hauptalarm";;\
Super!
Eine letzte Frage:
Wie setze ich beim Unscharfschalten, das "at" zurück bzw. lösche es? Ich will vermeiden, dass ich drei Minuten warten muss, um die Anlage wieder scharf schalten zu können. Einfach "schleife" anders definieren funktionierte nicht.
Ah, vermutlich mit "delete schleife"!
Und ein weiteres Mal Danke!
Ben
Super,
alles klar!!
Das Ganze funktioniert und sieht dann jetzt so aus:
# Alarmanlage
define anlage_status dummy
attr anlage_status room Waechter
define alarm_status dummy
attr alarm_status room Waechter
define benachrichtigung_status dummy
attr benachrichtigung_status room Waechter
define Voralarm TRX_SECURITY KD101 52c500 smoke
attr Voralarm room Waechter
define Scharfschalten notify Schalter_1:on.* {\
fhem "set anlage_status scharf";;\
}
define Unscharfschalten notify Schalter_1:off.* {\
fhem "delete schleife";;\
fhem "set anlage_status unscharf";;\
fhem "set alarm_status kein alarm";;\
fhem "set benachrichtigung_status keine benachrichtigung";;\
}
define Alarmroutine notify Bewegungsmeld.*:on.* \
{if (Value("anlage_status") eq "scharf"){fhem "set alarm_status alarm"} \
}
define Voralarmfall notify alarm_status:alarm {\
fhem "set Voralarm alert";;\
if (Value("benachrichtigung_status") eq "keine benachrichtigung") {\
DebianMail('xxx@@xxx.de','Alarmierung','Alarm wurde ausgeloest')};;\
fhem "set benachrichtigung_status benachrichtigt";;\
fhem "set alarm_status voralarm";;\
fhem "define Hauptalarm at +00:00:10 set alarm_status hauptalarm";;\
}
define Hauptalarmfall notify alarm_status:hauptalarm {\
if (Value("anlage_status") eq "scharf") {\
fhem "set Rauchmelder.* alert"};;\
fhem "define schleife at +*{18}00:00:10 set alarm_status hauptalarm";;\
}
;D
Du solltest beim unscharfschalten noch delete hauptalarm setzen sonst geht der an obwohl du bereits unscharf geschaltet hast
Hi Paul,
danke!! Klappt jetzt alles wunderbar! Das Grundgerüst steht damit :)
Schöne Grüße
Ben