NEWS
Licht an so lange Bewegung
-
@crunchip
OK, für die allgemeine Antwort gibts unten noch mal ein "Antwort" Button -
Ja da hast du recht nach meinem Test bis jetzt passiert genau das was du gesagt hast ich schalte das Licht an (Außerhalb der Zeit zwischen 16:00 und 21:00) und nach einer minute geht es einfach aus.
Damit bin ich natürlich nicht glücklich.
Zu den Punkten :
- Der Datenpunkt "Motion Detected" muss von Falsch auf Wahr gehen damit das Licht getriggert wird. Das bedeutet das das Licht ggf. kurz aus geht bevor es wieder an geht wenn jemand im Flur bleibt
....ja das passiert ist nicht erwünscht.....
- Wenn ausserhalb der angegebenen Zeit jemand das Licht im Flur an macht (von Hand), dann wird der Timeout das Licht automatisch wieder aus machen (Absicht ?)
....ja das passiert ist nicht erwünscht.....
So wie das Skript gebaut ist bleibt das Licht 1 Minute nachdem der BWM "Motion Detected" gelöscht hat, sprich 1 Minute nachdem die letzte Person den Erkennungsbereich verlassen hat.
....ja das passiert habe das einfach so eingertragen kann man auf jeden fall runtersetzen evtl auf 10 sec.....
- Ich würde auf deinen ersten versuch mit Timeout zurück gehen - der bei dem das Licht nicht aus ging - und als einzige Anpassung den "Stop Timeout" direkt vor den "Ausführen Timeout" block setzen. Bei diesem Versuch blieb das Licht nur deswegen an weil du den Timeout bei jeder Aktualisierung des Status gelöscht hast, insbesondere also auch als die person den Erkennungsbereich verlassen hat. damit hast du das Abschalten abgeschaltet
A.
...kanst du mir das näher erklären ?? evtl sogar mit eine Bild als Beispiel ?
Für die Allgemeinheit:
Hast den sowas keiner erfolgreich am laufen ?
Dein Einwand mit Bastellösung verstehe ich nicht....kennst du Fibaro ?
Ich habe eine normalen Bewegungssensor Zwave und dann hinter dem Lichtschalter ein Modul zum schalten Zwave und das läuft über eine Zentrale.
Die Zentrale ist Home Center 2.
Leider kann ich die Programmiersprache lua nicht und finde die Lösung mit Iobroker und Blockly leichter zu erlernen. Und IObroker ist doch genazu dafür da.....
Verstehe mich bitte nicht falsch und ist auch nicht böse gemeint
Fals du nährer infos benötigst warum und wieso man das so macht zeige ich dir gerne einen Blog wo du dich einlesen kannst.
-
Normal brauch ich das ja auch nicht mit dem Timeout ......
Vom Prinzip her passiert doch folgendes :
-
Bewegung wird erkannt Datenpunkt geht auf True
-
Jetzt kommt doch die Konfiguration des Bewegungsmelder ins Spiel.. die meisten haben doch ein Timout mit drin soll bedeuten das nach dem Auslösen einen bestimmtezeit vergeht bis er ein weiteres mal auslöst... das sieht bei mir so aus :
-
-
ListenpunktSolange Bewegung erkannt wird sollte doch der Datenpunkt auf True bleiben......
-
jetzt hat man nach meiner Einstellung ein zeitfenster von 15 sec wo nach der letzten erkannten Bewegung zeit bleib (15sec) bis die nächste Bewegung erkannt wird
-
wenn das nicht passiert geht der Datenpunkt auf false und das Licht sollte ausgehen
-
Durch den Timeout dachte ich zumindest das ich die Zeit von 15sec über das Skrip in die gewünschte Länge ziehen kann (Blindzeit + Zeit aus Skrip bis das Licht wieder aus geht....
So hatte ich mir das gedacht, aber bin auch Anfänger.
-
-
@Flopsi sagte in Licht an so lange Bewegung:
...kanst du mir das näher erklären ?? evtl sogar mit eine Bild als Beispiel ?
Bild ist schwierig - bin bei der Arbeit. Aber:
Dieses Bild kommt von Dir, so hattest du das Skript mal. Wenn du jetzt den gelben Block "stop timeout" direkt vor den Block "ausführen Timeout" schiebst dann ist die eigentliche Funktion gegeben.
Ggf. musst du noch die Zeit von 30 Sekunden auf 1 Minute anheben, dann sollte es passen.
Wie lange die Zeit genau sein muss hängt auch von deinem BWM ab. Die die ich einsetze liefern max. alle 90 Sekunden ein Signal, weswegen die Zeit bei mir auf 2 Minuten steht.A.
-
@Flopsi sagte in Licht an so lange Bewegung:
jetzt hat man nach meiner Einstellung ein zeitfenster von 15 sec wo nach der letzten erkannten Bewegung zeit bleib (15sec) bis die nächste Bewegung erkannt wird
Bei dieser Einstellung sollte der Timeout von 30 Sekunden in dem Beispiel von meinem Post von vor wenigen Sekunden ausreichend sein.
A.
-
-
@Flopsi
Nein, ich meinte das so : -
Hab nur kurz in den thread gesehen...
timeouts, wenn nicht wirklich notwendig würde ich hier nicht verwenden.
Die Lösung von @paul53 ist schön, aber wenn ein Bewegungsmelder schneller meldet, bzw. die Rückstellzeit nicht lange genug gestellt ist, dann hätte man Disko...
Hier eine Idee. Dies hier spart Ressourcen und unnötige Steuerbefehle mMn...
Wenn ein Bewegungsmelder aus war, Bewegung erkennt, bleibt das Licht 2 Minuten lang an. Diese 2 Minuten werden solange auf 2 Minuten zurückgesetzt, wie Bewegung davor stattfindet und der BWM immer wieder mit "true" es meldet. Tut er dies nicht mehr, läuft der Timer ab, Licht geht aus. Neues Licht (steuere) geht nur, wenn es zuvor aus. (im Sinne Bewegung)
Wünsche einen schönen Abend und sorry fürs reinstolpern in euren thread
LG
Wolfgang
-
@paul53 sagte in Licht an so lange Bewegung:
Ja, man darf, es ist aber nicht sinnvoll, 2 Trigger auf den gleichen Datenpunkt zu verwenden (Resourcen).
Bisschen OT...
Ich trigger so einige Dinge auf "History.Summary" des Alexa2 Adapters.
Für jeden Anwendungsfall ein Skript.
Sollte ich die alle in eins packen und nur durch "falls" die Richtung angeben?
Wird dann schon unübersichtlich... -
jeder ist willkommen danke für den Vorschlag ich werde das ma versuchen mit einzubauen.
Hört sich ertsmal super an.
-
So ist jetzt mein Stand und es scheint zu funktionieren.
Mein Bewegungsmelder ist:
-
ist der gruselig!
-
auge von sauron
-
In diesem Beispiel ist mein Bewegungsmelder auf 30 Sekunden eingestellt.
Ich habe jetzt nochmal ein "Testbeispiel" mit einem längeren Timeout (Licht soll noch mindestens 5 Minuten nach dem der BWM auf false geht an bleiben und der Timer soll immer wieder gestoppt und gestartet werden, wenn neue Bewegungen erkannt werden) gemacht und debug Bausteine und einige Bedingungen eingebaut.
Hier laufe ich in den Raum rein und der Trigger geht auf true und es wird geprüft ob das Licht an oder aus ist und die eingestellte Uhrzeit passt. Sollte das Licht aus sein und die Uhrzeit ist zwischen 08-19 Uhr, dann wird das Licht eingeschaltet.
Dann habe ich anschließend den Raum verlassen und auch immer mal wieder betreten, nachdem der BWM schon wieder auf false gegangen ist. Das Licht blieb während dieser Zeit immer an. Erst als ich den Raum anschließend nicht mehr betreten habe, nachdem der BWM auf false ging, wird auch das Licht nach Ablauf der 5 Minuten ausgeschaltet.
Wichtig ist das der stop Timeout unterhalb des Triggers ist, da er dann bei Änderung gestoppt wird.Hier das Log (auf den Ablauf und die Zeiten achten)
16.2.2020, 15:54:09.152 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Trigger: true 16.2.2020, 15:54:09.152 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestoppt ! 16.2.2020, 15:54:09.152 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Bedingungen zum einschalten sind alle wahr ! 16.2.2020, 15:54:09.152 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Licht wird eingeschaltet ! 16.2.2020, 15:54:09.153 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Script ist durchgelaufen ! 16.2.2020, 15:54:12.153 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Der Status vom Licht ist: true 16.2.2020, 15:54:50.409 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Trigger: false 16.2.2020, 15:54:50.409 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestoppt ! 16.2.2020, 15:54:50.410 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Bedingungen zum ausschalten sind alle wahr ! 16.2.2020, 15:54:50.410 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestartet ! 16.2.2020, 15:54:50.410 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Script ist durchgelaufen ! 16.2.2020, 15:54:53.410 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Der Status vom Licht ist: true 16.2.2020, 15:56:16.650 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Trigger: true 16.2.2020, 15:56:16.651 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestoppt ! 16.2.2020, 15:56:16.652 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Script ist durchgelaufen ! 16.2.2020, 15:56:19.652 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Der Status vom Licht ist: true 16.2.2020, 15:56:54.907 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Trigger: false 16.2.2020, 15:56:54.907 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestoppt ! 16.2.2020, 15:56:54.908 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Bedingungen zum ausschalten sind alle wahr ! 16.2.2020, 15:56:54.908 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestartet ! 16.2.2020, 15:56:54.908 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Script ist durchgelaufen ! 16.2.2020, 15:56:57.909 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Der Status vom Licht ist: true 16.2.2020, 15:58:55.415 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Trigger: true 16.2.2020, 15:58:55.416 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestoppt ! 16.2.2020, 15:58:55.416 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Script ist durchgelaufen ! 16.2.2020, 15:58:58.417 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Der Status vom Licht ist: true 16.2.2020, 15:59:40.970 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Trigger: false 16.2.2020, 15:59:40.970 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestoppt ! 16.2.2020, 15:59:40.970 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Bedingungen zum ausschalten sind alle wahr ! 16.2.2020, 15:59:40.970 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Timer wird gestartet ! 16.2.2020, 15:59:40.970 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Script ist durchgelaufen ! 16.2.2020, 15:59:43.971 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Der Status vom Licht ist: true 16.2.2020, 16:04:40.971 [info ]: javascript.0 (4053) script.js.05_Bewegungsmelder.Küche.Küche_BWM_Licht: Licht wurde nach Verzögerung ausgeschaltet !
Hier das Blockly mit debug Bausteinen.
Hier das gleiche Blockly ohne Debug Bausteine
-
Echt super die Hilfe hier, das kommt heut zutage selten vor
Aktuell passt mein letztes Skript, aus welchen gründen auch immer mach die Lampe was sie will (mal geht es, mal schaltet sie nicht ein, mal läuft die Lampe nur kurz ) wenn ich mit timeout was baue...
Bis jetzt ist das Letzte von mir gepostete Skrip ohne fehler, aber die Zeit wird es Zeigen wenn man es im alltag testet.
Gruss
-
@Flopsi
thx
@padrino Thema "dispatcher Alexa"
Schwer zu sagen.... ich habe einen Vorschlag.
Ein Dispatcher ist etwas komfortabler für deine zukünftigen Skripts und du muss nur einmal das Objekt als trigger einsetzen. Was meine ich genau...:
Alexa History Trigger -> Objekt triger -> IF/Falls mit multiplen sonst falls -> diese trigger boolean (wahr/falsch) Objekte.
Deine Programme haben somit ein eigenes "request" objekt um ausgelöst zu werden. Das erleichtert dir das zukünftige mgmt und du kannst schnell dazu bauen/aktivieren und verlierst nicht die Übersicht mMn. Hier ein Beispiel anhand meiner Sonoff RFbridge mit Bewegungsmelder.
Bei zweiter Überlegung ist dies fix der bessere Weg. Stell dir vor du hast 20 Skripts die auf die Alexa history getriggert werden und dann aber nicht laufen, weil das "Wort" nicht passt, im Vergleich zu einem Skript, dass entscheidet welches Objekt es auf true setzt. Thema und ressourcentechnisch recht klar...
-
So einen Tag später .....Test war leider nicht zufriedenstellend:
Folgendes Problem Tritt auf :
- wenn das Licht manuell in der Zeit (nicht zwischen) 19:00 und 08:00 eingeschalten wird dann geht es nach ca. 1 Minute wieder aus, die Zeit kann ich nicht genau sagen ist jedesmal um ein paar sekunden anders
Ich versteh das nicht ich gebe doch eine Zeitraum an in dem auf den Bewegungsmelder und die Verzögerung reagiert werden soll.....
Hat jemand einen Rat ?
-
@Flopsi sagte in Licht an so lange Bewegung:
Ich versteh das nicht ich gebe doch eine Zeitraum an in dem auf den Bewegungsmelder und die Verzögerung reagiert werden soll.....
Dein aus schalten Baustein ist unterhalb von falls, also nicht mit in der falls Geschichte wo Du Zeiten drinn hast.
probiere doch mal meinen letzten Export ohne die Debug Bausteine, da wird nur an, oder auch aus innerhalb der angegebenen Zeiten geschaltet.
-
-
@Flopsi
okay, mach mal. Ich habe Dir etwas funktionierendes gepostet (als Export), sogar mit Log, um zu zeigen das es auch mit timeout geht, aber das möchtest Du anscheinend nicht probieren ?
Ich bin dann ab jetzt raus...