NEWS
[gelöst] mehr als einen Trigger für Variable nutzen
-
Hallo Forum,
ich habe mein Anliegen bereits in der FB Gruppe angebracht aber leider keine Rückmeldung bekommen, nun versuche ich es hier mal.
Ich habe mehr als 1 Xiaomi Tür/Fensterkontakt im System, diese sind in diversen Küchenschränken angebracht sodass beim öffnen einer der Schränke eine Beleuchtung mittels Shelly RGBW 2 geschalten werden soll.Also zur Theorie:
- Schrank 1 wird geöffnet, Variable als Zwischenspeicher nimmt Schaltzustand und Lichtfarbe des Shelly auf (Bsp.: switch - true und white Wert - 180)
- Script setzt Switch auf true und white Wert auf 255
- ca. 30 sek später geht Switch auf Wert aus Variable Schaltzustand und Variable dimmwert (180) zurück - hier nur exemplarisch, also je nach dem welcher Zustand vor Scriptauslösung war
- das ganze halt nur ausführen zwischen Sonnenuntergang und Sonnenaufgang
Wenn ich das ganze mit nur 1 Kontakt mache funktioniert das Script problemlos, jedoch mit 2 und mehr Kontakten nicht mehr, da bei Auslösung des ersten Kontakts die Variablen geschrieben werden (gut so), bei Auslösung des weiteren Kontakts dieVariable erneut beschrieben wird aber dann mit Switch Wert true und white Wert 255, somit passiert beim schliessen des letzten Schranken eigentlich nichts, da die Variablen ja wieder überschrieben wurden.
Ich hoffe, ich konnte mich einigermaßen verständlich ausdrücken können und es kann mir jemand weiterhelfen.
Zusatz: Für mein Verständniss könnte man ein leicht abgewandeltes Script auch für eine BWM Schaltung nutzen !?
Schonmal vielen Dank!
-
@matze2711 sagte in mehr als einen Trigger für Variable nutzen:
Ich hoffe, ich konnte mich einigermaßen verständlich ausdrücken können
mal sehen.
Du müsstest eine weitere Variable nehmen, di solange auf true steht bis alle Türen wieder zu sind.
solange die auf true steht, darf die erste variable nicht beschrieben werden. -
@Homoran naja die hab ich meines Erachtens ja....Küchenschränke auf, Problem hierbei ist das jeder weitere Kontaktsensor sie immerwieder erneut auf true setzt bis mal alle zu sind dann springt sie auf false.
Jedesmal wenn Küchenschränke auf true ist werden die Variablen beschrieben.
-
@matze2711 Du könntest einfach bei den oberen Falls-Anweisungen zusätzlich auf "Küchenschränke auf" prüfen. Damit wird ja nur auf wahr oder falsch gesetzt, wenn ein Wechsel des Zustands erfolgt.
Und vor dem Setzten natürlich auf Änderung des Zustands prüfen.
-
@matze2711 sagte in mehr als einen Trigger für Variable nutzen:
die hab ich meines Erachtens ja.
Aber die prüfst du ja nicht vor dem setzen
-
@matze2711
versuch das mal so:Hintergrund: Du versuchst zu viele Bedingungen in eine Abfrage zu stecken und übersiehst dabei das die Bedingungen voneinander unabhängig sind.
Also: Erst schauen ob die Zeit stimmt. Wenn nicht, nix machen
Dann schauen ob mindestens einer der beiden Werte wahr ist. Wenn ja, schauen ob wir schon an gemacht haben. Wenn ja, nix machen, sonst anschalten.
Sonst zurück setzen.
Wenn die Zeit nicht stimmt (Es ist Tag), schauen ob die lichter vom Skript gesetzt wurden. Wenn ja, zurück setzen. -
@matze2711 sagte:
bei Auslösung des weiteren Kontakts dieVariable erneut beschrieben wird aber dann mit Switch Wert true und white Wert 255,
Vorschlag:
-
Vielen Dank an euch alle, habe mein Blockly jetzt mal so umgebaut wie @Asgothian es beschrieben hat.....und es funktioniert vielen vielen Dank an dieser Stelle hätte ich allein niemals hinbekommen.
vom Prinzip her funktioniert der Vorsschlag von @paul53 ja genauso bis auf die ausführung bei der Zeit, auch hier danke.Eine Frage bliebe mir jetzt noch.....gibt es mittlerweile die Möglichkeit den oder Block um weitere Eingänge zu erweitern oder bleibt dann nur mehrere oder blöcke hintereinander und ineinander zu packen ?
-
-
Danke für die rasche Antwort.
Sehr stark das hier im Forum so schnell und kompetent geholfen wird, für zukünftige, für mich unlösbare Aufgaben werde ich wohl nur noch das Forum nutzen statt der FB Gruppe.
Jetzt muss ich nur noch rausfinden wie ich das Thema als gelöst markiere.
-
@matze2711 sagte:
rausfinden wie ich das Thema als gelöst markiere.
Die Überschrift im ersten Beitrag editieren.
-
@matze2711 sagte in mehr als einen Trigger für Variable nutzen:
für mich unlösbare Aufgaben werde ich wohl nur noch das Forum nutzen statt der FB Gruppe.
Bitte auch für andere Informationen.
Das Forum sollte die erste Anlaufstelle sein, wo alles zusammenlaufen sollte, so dass man nicht verschiedene Plattformen bemühen muss um alle Informationen zu finden.
Hier sind ja schließlich fast 30.000 User unterwegs