NEWS
Lampen für x-Minuten anschalten
-
Hallo,
ich bräuchte einmal einen Gedankenanstoss - Szenario:
Mehrere Lampen (Zigbee) sind einzuschalten und auf kaltweiss mit 100% Intensität zu setzen wenn Bewegung erkannt wird und Helligkeite größer 125 ist.
Welche Bausteine nehme ich dafür ?Nach der Dauer soll wieder auf einen Standardwert zurückgesetzt werden.
Kann man irgendwie die Birnen zusammenfassen oder muss ich jede einzelne im Blockly ansprechen ?
-
@segway sagte: Kann man irgendwie die Birnen zusammenfassen
Vielleicht mit dem Selektor, wenn eine Gemeinsamkeit in der ID vorliegt, die bei anderen Lampen nicht vorhanden ist, oder wenn die Lampen einem Gewerk (functions) zugeordnet sind.
Beispiel:Alternative: Szenen-Adapter.
-
@paul53
clearTimeout() sollte da IMHO noch rein -
@ticaki sagte: clearTimeout() sollte da IMHO noch rein
Hast recht. Habe ich ergänzt.
-
Das ist ein interessanter Ansatz den ich so noch nicht kannte.
Wie fasse ich die Lampen in einem Gewerk (functions) zusammen ?
Ich habe viele Lampen mit dem gleichen STATE deswegen kann ich es nicht einfach über einen Selektor machen -
@segway sagte in Lampen für x-Minuten anschalten:
Wie fasse ich die Lampen in einem Gewerk (functions) zusammen ?
über den Admin
du kannst ein Gewerk erstellen (enums/Aufzählungen) und die gewünschten Geräte dem zuordnen
https://www.iobroker.net/#de/documentation/admin/enums.md -
@homoran sagte in Lampen für x-Minuten anschalten:
über den Admin
du kannst ein Gewerk erstellen (enums/Aufzählungen) und die gewünschten Geräte dem zuordnen
https://www.iobroker.net/#de/documentation/admin/enums.mdUih, wieder was gelernt.
Danke dafür
Habe aber auch entdeckt, dass unter dem Zigbee Adapter eine GROUP wohl angelegt wird. Diese kann ich definieren und dann die Lampe dieser Group zuordnen. So sieht es wohl aus.
Unter group befindet sich in em Fall wieder STATE Brightness usw also kann ich das darüber auch machen.Ich werde beides mal testen !!!
-
@segway sagte: die Lampe dieser Group zuordnen.
Das ist sicherlich die bessere Methode.
-
@paul53 sagte in Lampen für x-Minuten anschalten:
@segway sagte: die Lampe dieser Group zuordnen.
Das ist sicherlich die bessere Methode.
Ja denke ich auch nur leider habe ich 2 Instanzen und die Gruppe funktioniert logischerweise nicht Instanzübergreifend.
Aber zwei GROUPS ansprechen ist immer noch besser als 17 einzelne Lampen -
Funktioniert hervorragend mit den GROUPS im zigbee Adapter ! Nur als Info
-
@paul53 Gibt es einen Grund dafür, einen Extra Timer zu nutzen für das verzögerte Zurücksetzen?
Kann man da nicht einfach den "mit Verzögerung" Timer im Objekt setzen?
EDIT: Selbst gefunden .... Der umklammernde Timer wird Ressourcenschonender sein, als eine separate Verzögerung in jedem Objekt Aufruf... -
Bin nicht so gut mit Blockly aber wenn ich das richtig im Kopf in Javascript umgewandelt habe, hast du mit deiner Frage recht und der Abbruch eines laufenden Timers funktioniert nicht so wie beabsichtigt. Die beiden Timerblockly entfernen, das in den "steuern mit Verzögerung" übernehmen und löschen falls schon läuft anklicken.
-
@paul53
Ich habe noch einmal eine Frage zu dem Blockly im Thread #2Woher kommt der Wert von Objekt ID Dauer ?
-
@segway sagte: Woher kommt der Wert von Objekt ID Dauer ?
Der Datenpunkt "Dauer" enthält die variablen Minuten (siehe Überschrift).
-
@paul53 sagte in Lampen für x-Minuten anschalten:
@segway sagte: Woher kommt der Wert von Objekt ID Dauer ?
Der Datenpunkt "Dauer" enthält die variablen Minuten (siehe Überschrift).
Ja ok habe ich in der Überschrift geschrieben aber brauche ich den denn ? Ich hab den nicht angelegt. Momentan ist es so (zum testen):
-
@segway sagte: brauche ich den denn ?
Nur dann, wenn die Einschaltdauer nicht konstant sein, sondern z.B. per Visualisierung verändert werden soll.
-
@paul53 sagte in Lampen für x-Minuten anschalten:
@segway sagte: brauche ich den denn ?
Nur dann, wenn die Einschaltdauer nicht konstant sein, sondern z.B. per Visualisierung verändert werden soll.
Okay, dann kann ich drauf verzichten.
Allerdings funktioniert der Blockly nichtIch weiss noch nicht warum
-
Nun, dein Blockly macht folgendes:
- Wenn der Bewegungsmelder reagiert und es hell genug ist, schalte an und nach 30 Sekunden aus
- Wenn der Bewegungsmeder reagiert und es nicht hell genug ist tue nichts.
Kann es sein, dass es nicht hell genug ist? Außerdem hast du dort Zustandänderung ausgewählt, bleibt der Bewegungsmelder auf "wahr" wird die Lampe nach 30 Sekunden ausgeschaltet. Prüfe ob der Bewegungsmelder wahr ist und Starte den Timeout erst wenn der BWM auf false springt unabhängig von der helligkeit. stoppe Timeout sollte aus der Fallsbedingung raus und als erstes in dem Triggeblockly kommen.
-
@ticaki
Puh, da komme ich wieder nicht mit. Ich habe nun auf wahr abgefragt und es geht. Keine Ahnung ob es so richtig ist - es kommt anscheinend vor dass der BWM ca. 3 Minuten lang auf true bleibt und erst dann wieder auf false umspringt wenn nicht zwischendurch wieder eine Bewegung erkannt wurde.
Zählt der dann eigentlich die 30sekunden wieder neu ? -
@segway
Erst mal zu deiner Frage: Jeder Bewegungsmelder hat einen Delay und Ja der Zählt immer dann, wenn der BWM auf true schaltet.Das von dir gewünschte Verhalten ist wohl: Wenn eine Bewegung erkennbar ist und es zu Dunkel ist, schalte Lampe ein. Wenn keine Bewegung zu erkennen ist schalte Lampe nach 30 Sekunden aus.
EDIT: Hab gerade gelesen das du das bei Helligkeit größer als 125 an haben möchtest, dafür bitte das kleiner als Zeichen rumdrehen.
Als Blockly sieht das so aus:
KAnn sein das ich dein Ziel falsch verstanden habe