NEWS
Blockly Script Zeitgesteuert mit Bewegungsmelder
-
@funcarv3r sagte in Blockly Script Zeitgesteuert mit Bewegungsmelder:
das Script
Zeigen!
Das sieht bei jedem leicht anders aus.https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
-
-
@funcarv3r
Du brauchst einen weiteren timeout für den "Falls"-Teil."Wert = Wahr" kannst Du Dir bei bool'schen Werten schenken.
Eine solche Prüfung ergibt ja auch nur wahr oder falsch. Also kann man da einfach direkt den Wert einsetzen - ohne weitere Prüfung.
Der Wert selbst kann ja auch nur wahr oder falsch sein. -
@codierknecht
Perfekt, danke, funktioniert.Was ich nicht verstehe ist, ich hatte es so meine ich schon versucht, und es hat nicht funktioniert. Hm ... Vielleicht hab ich irgendwas vergessen ...
-
@funcarv3r sagte: Alarm immer nur für 20 Sekunden zu hören ist.
-
@paul53
Damit trötet die Sirene beim Öffnen eines Fensters zwar für 20 sec. los, der Alarm wird aber beim Schließen nicht beendet -
@codierknecht sagte: der Alarm wird aber beim Schließen nicht beendet
Ja, er wird nicht vorzeitig beendet. Ist das bei 20 s erforderlich?
Mit dem 2. Timeout wird er auch nicht vorzeitig beendet.EDIT: Da ein Selektor zum Triggern verwendet wird, kann der sonst-Zweig ohnehin nicht so ausgewertet werden, denn es kann mehr als ein Fenster geöffnet werden (auch innerhalb von 20 s).
-
@paul53
Stimmt auch wieder.
Wie immer ist Deine Lösung die elegantere -
So habe ich es gelöst. aktuell funkzt und der Bewegungsmelder muss nicht umgelötet werden.
-
Ich habe mir ein Skript gebastelt, nach Sonnenuntergang soll der Hue Bewegungsmelder eingeschaltet werden.
Wenn er dann Bewegung erkennt sollen zwei Lampen angehen, nach 4 min sollen diese wieder ausgehen falls keine Bewegung mehr erkannt wird, falls doch noch Bewegung erkannt wird, sollen sie an bleiben.
Nach Sonnenaufgang wird der Bewegungsmelder wieder ausgeschaltet.
Den Stop Timeout Block habe ich eben erst hinzugefügt, ich hatte gelesen der muss mit rein.
Ohne diesen funktioniert es auch.
Würde aber gerne wissen wie man das Skript evtl. einfacher, besser machen könnte. -
@chuck2941 sagte in Blockly Script Zeitgesteuert mit Bewegungsmelder:
Würde aber gerne wissen wie man das Skript evtl. einfacher, besser machen könnte.
Du solltest im Trigger nicht nochmal den Wert des auslösenden DP lesen.
Der Trigger kennt "seinen Wert" bereits.
Außerdem muss man bool'sche Werte nicht nochmal auf "= Wahr" prüfen. -
@chuck2941
Trigger (Sonnenaufgang) im Trigger (BWM) funktioniert nur eine gewisse Zeit! -
@paul53
Glatt übersehen@chuck2941
Trigger in Trigger funktioniert in der Regel nie. Zumindest nicht ordentlich.
Den Trigger zum Sonnenaufgang solltest Du (wie den für Sonnenuntergang auch) alleine stellen. -
Danke schon mal für die Tipps.
Das mit Trigger im Trigger hatte ich eigentlich nicht, muss ich ausversehen mit darein gesetzt haben.
Das mit dem das ich nichmal auf wahr geprüft habe ändere ich auch ab.
Sonst siehts gut aus? Auch mit dem Timeout und stop Timeout?Habe es geändert.
-
@chuck2941
Sind das verschiedene DP?
Wenn nicht, ist das doppelt gemoppelt.
Wenn der BWM auf "off" geht (keine Bewegung), wird ein timeout gestartet, der die Lampen nach 4 min. ausschaltet.
Wenn Bewegung erkannt wird, wird ein evtl. laufender timeout gestoppt. -
@codierknecht Ja, das ist der selbe Datenpunkt.
Also würde, wenn das Skript wie es im unteren Beispiel aussieht, genauso funktionieren?
Das wäre ja viel einfacher.
Und dann noch den Sonnenaufgang noch darunter gehangen? -
@chuck2941 sagte in Blockly Script Zeitgesteuert mit Bewegungsmelder:
Und dann noch den Sonnenaufgang noch darunter gehangen?
Ja. Deine Trigger für Sonnenauf- und untergang habe ich mal außen vor gelassen.
-
@codierknecht danke, werde ich testen
-
@paul53 Servus zusammen,
Mein Licht geht manchmal unwillkürlich aus, nach einer unbestimmten Zeit! Teilweise funktioniert esmauch wie es soll, also nach Bewegung im Sensorbereich, bleibt es an! Manchmal aber halt auch nicht! Werd nicht ganz schlau daraus! Der BWM ist ein HMIP-smi55-2, der hat unten noch einen Taster, der das Licht manuell steuert. Eigentlich sollte er es dauerhaft einschalten nach Betätigung, es läuft aber das Zeitprogramm des anderen Skriptes!
Kann mir hier bitte jemand helfen? -
@bikerbiker12 sagte: es läuft aber das Zeitprogramm des anderen Skriptes!
Führe beide Skripte zusammen: