Seite 1 von 2

Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 10:29
von Daniel-Hannover
Hallo,
im Anhang findet ihr einen screenshot meines Programms für die aktivierung der "Alarmanlage".
Ich möchte dass das Programm stoppt und etwas anderes oder garnichts macht wenn noch ein Fenster offen ist.
Eine entsprechende SysVar habe ich schon.
Wo baue ich diese SysVar mit ein ?

Grüße Daniel

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 10:33
von JRiemann
Und was funktioniert jetzt nicht wie gewünscht?

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 10:49
von Daniel-Hannover
Hallo Jörg,
das Programm funktioniert soweit super.
Die Frage ist wenn ich unter "Wenn Sonst" die SYSVar "mind. 1 Fensteroffen" eintrage --> wie stoppe sofort das Programm?
Ist das möglich ?

Grüße Daniel

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 10:57
von JRiemann
Was bedeutet für Dich stoppen?
Ein Programm läuft nur immer für die Dauer der Überprüfung (max. wenige Sekunden) nachdem ein Trigger ausgelöst hat. Danach ruht das Programm bis zur nächsten Auslösung.
Wenn Du also "scharf" schaltest startet der Programmdurchlauf und alle Bedingungen werden von der 1. Zeile ab an geprüft. Wenn nun bei dem Durchlauf die Systemvariable "Fenstersensoren" NICHT auf "alle geschlossen" steht wird der Programmdurchlauf beendet und das DANN nicht ausgeführt.

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 11:07
von Daniel-Hannover
Wenn nun bei dem Durchlauf die Systemvariable "Fenstersensoren" NICHT auf "alle geschlossen" steht wird der Programmdurchlauf beendet und das DANN nicht ausgeführt.
Verstanden.

Wenn ich also ein unter Wenn ...Sonnst mit den 3 "Bedingungen" erstelle, nur mit min. 1 Fenster offen und eine andere Aktion anhänge (zb. Licht im Hof) erstelle müsste es funktionieren. --> wird nachher getestet.

Ich berichte.
Danke dir herzlich Jörg.
Grüße Daniel

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 11:23
von Daniel-Hannover
Kleine Nachfrage:
wird sich der Sysstemzustand Alarmanlage "scharf" welcher ja der erste Trigger ist nachdem das Programm nicht weiter durchläuft weil ja ein Fenster offen ist sich automatisch wieder auf "unscharf" zurückstellen oder sollte dann im Sonnst.. Wenn.. der Systemzustand in den Aktionen wieder auf "unscharf" zurück stellen?

Grüße Daniel

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 11:34
von Sven_A
Da wird nichts zurückgestellt, das musst du im sonst wenn zweig schon selber machen.
Aber deiner Frage nach zu Urteilen ist dir das gerade selber aufgegangen.

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 11:44
von Daniel-Hannover
ja genau, da ja zum Start des Programms die Alarmanlage schon auf "scharf" sein musste.
Danke

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 11:44
von JRiemann
Daniel-Hannover hat geschrieben:Wenn ich also ein unter Wenn ...Sonnst mit den 3 "Bedingungen" erstelle, nur mit min. 1 Fenster offen und eine andere Aktion anhänge (zb. Licht im Hof) erstelle müsste es funktionieren. --> wird nachher getestet.
Wenn der Programmdurchlauf angestoßen wurde, egal aus welchem Bereich im Programm, startet die Prüfung IMMER in der 1. Zeile.
Sind bei der Überprüfung die Bedingungen erfüllt (Alarm scharf, Zeitmodul tagsüber, keine Fenster offen) wird das folgende DANN ausgeführt und der Durchlauf beendet. Ist eine der Bedingungen nicht erfüllt wird das folgende DANN nicht ausgeführt und der Durchlauf beendet wenn keine SONST-WENN oder SONST vorhanden sind.
Wäre jetzt ein oder mehrere SONST-WENN vorhanden würde die Überprüfung im nächsten Block fortgesetzt werden. Der Ablauf ist identisch dem im WENN.
Wird kein erfülltes WENN oder SONST-WENN gefunden und ein SONST ist vorhanden, dann wird dieses SONST ausgeführt.
Ohne einen erfüllten Block und ohne vorhandenes SONST endet der Durchlauf ohne eine Aktion auszuführen.

In einem SONST-WENN kannst Du also Bedingen definieren die geprüft werden wenn der vorherige Block NICHT erfüllt ist und damit evtl. ein alternatives DANN ausführen.
Ein SONST ist führt eine alternative Aktion aus sobald ALLE vorherigen WENN oder SONST-WENN nicht erfüllt sind.

Re: Alarmanlage nur aktivieren wenn alle Fenster zu.

Verfasst: 14.06.2018, 11:54
von JRiemann
Daniel-Hannover hat geschrieben:automatisch wieder auf "unscharf" zurückstellen oder sollte dann im Sonnst.. Wenn.
Automatisch passiert das nicht. Warum auch, es wurde ja nicht so programmiert.
Da Du nicht möchtest das "scharf" gestellt wird wenn ein Fenster offen ist, musst Du in diesem Fall z.B. ein SONST-WENN anhängen.
Das setzen des Status "scharf" der Variable kannst Du im ersten Moment zwar nicht verhindern, aber Du kannst ihn sofort wieder zurücksetzen wenn die Bedingungen im WENN nicht erfüllt sind. Allerdings solltest Du in diesem Fall eine alternative Aktion/Benachrichigung im SONST-WENN erstellen damit Du auch informiert wirst das "etwas nicht stimmt".

In dem SONST-WENN kannst Du dann bestimmen was passieren soll sobald der WENN-Block nicht erfüllt ist.
Das würde ja z.B. auch der Fall sein wenn "tagsüber" nicht erfüllt ist. Also wenn Du nachts "scharf" schaltest.

Ach ja, und wenn Du schon dabei bist Änderungen zu machen: Alle Aktionen im DANN sofort auszuführen führt zu 100% irgendwann zu Fehlschaltungen. Es sollten ausreichend Verzögerungen zwischen den einzelnen Aktionen eingebaut werden. In der jetzigen Form kommt es schnell zu Funküberschneidungen, verloren gegangenen Befehlen oder Rückmeldungen. Das wiederum bringt Servicemeldungen mit sich.