NEWS
UNSOLVED 2 Trigger Abhängigkeit definieren
-
@jjmargis
Zeige uns doch mal bitte deinen Versuch!Enrico
-
@RappiRN
Ich habe noch keinen. Ich habe nur die Einzelscripte und noch keine Idee, wie ich die kombinieren kann. -
@jjmargis
Eigentlich recht simpel. Da es sehr unwahrscheinlich ist das beide Ereignisste zur selben Zeit sattfinden, einfach ne Variable bei beiden setzen wenn das Ereignis eintritt und diese als UND mit in die Falls Bedingung rein. -
@Jan1
Naja, eigentlich doch.
Wenn beide Personen im Auto sitzen und das Auto dem Home Bereich erreicht, dann schon.
Es geht quasi um die Steuerung des Garagentores über einen Impulstaster.
Bei dem sendet man ja immer nur einen Impuls und dann reagiert der.
Wenn also von Person 1 der Trigger kommt, reagiert der Impulstaster und das Tor geht auf. Wenn Person 2 mit Person 1 im Auto ist, sind es nur Millisekunden und der Trigger kommt erneut zum Impulstaster, diesmal von Person 2.
Das führt dazu, dass das Tor stoppt. -
@jjmargis
Selbst wenn Ihr im Auto aufeinander sitzt wird das nicht in der selben Zeit eintreffen. Wir reden hier von Millisekunden.
Schau Dir doch mal die Zeit der DPs an. -
@Jan1
Ja, da ist ein leichter Versatz.
Das ist ja das Problem.
Wenn der Trigger von Person 1 kommt, dann wird der Impulstaster angesteuert und das Tor geht auf.
Wenn der Trigger kurze Zeit danach von Person 2 kommt, dann wird der Impulstaster wieder angesteuert und das Tor stoppt. -
@jjmargis sagte:
Wenn nun Person 1 und Person 2 gleichzeitig (Bsp. in einem Auto) den Home Bereich betreten, werden Aktionen 2x ausgeführt.
Suche mal im Forum nach "Entprellen".
Die Timeout-Zeit muss natürlich größer sein als 100 ms.
-
@jjmargis
Hast mein Vorschlag mit der Variable nicht verstanden?
Damit kannst das gegenseitig verriegeln. Hat einer ausgelöst, ist der andere gesperrt. -
@Jan1
Nein, nicht wirklich... -
@jjmargis
Ereignis setzt Variable und diese sperrt das zweite Ereigniss und umgekehrt, eigentlich ne einfache gegenseitige Verriegelung. -
@Jan1
Ich glaube ich kann dir folgen.Das wären dann 2 Scripts.
Script 1:
Wenn Person 1 den Home Bereich betritt (true) und Variable 2 = false dann sende Befehl an Impulstaster für Tor und setze Variable 1 auf true.Script 2:
Wenn Person 2 den Home Bereich betritt (true) und Variable 1 = false dann sende Befehl an Impulstaster für Tor und setze Variable 2 auf true.Damit sollten sich die Verhalten gegenseitig steuern.
Jetzt müsste ich die Variablen aber nach (sagen wir mal) 30 Sekunden wieder auf false zurücksetzen.Das müsste doch mit rein in die Scripts - am Ende.
Wie sollte das wohl aussehen? -
@jjmargis
Genau so wie Du es geschrieben hast kommt das mit ins Blocky rein. Ersetzte einfach das "wenn" am Anfang mit Namen von vorhandenen Blöcken "falls", Dann hast schon Dein BlocklyIst eigentlich das was @paul53 oben schon gepostet hat nur mit dem UND in der falls Bedingung mit drin. Der Trigger ist dann auch wie oben nur Deine Geofence Ereignisse.
-
@Jan1
Dann versuche ich mich mal am Wochenende daran.
-
-
@paul53
Wenn er das gleich mit ins sein Script einbaut schon, wobei wenn ich drüber nachdenke, könnte da auch ohne funktionieren. Bist eben echt ein Fuchs beim ums Eck denken -
@jjmargis
Ist wie es @paul53 schreibt. Kannst das Script von oben so verwenden, musst nur noch zusätzlich Deine Aktion einfügen und die zwei Trigger DPs anpassen, fertig.
Das Ereignis das zuerst eintrifft sperrt eh das andere und somit wird immer nur eins der beiden Ereignisse abgearbeitet. Beim Timeout musst mal schauen, wie weit die Ereignisse bei einer gemeinsamen Autofahrt auseinander liegen und dem entsprechend anpassen, dass das zuverlässig läuft (lieber bisschen mehr als zu wenig).Manchmal kann man mit einer Erweiterung ein Programm tatsächlich verkürzen
-
@Jan1
Ich habe jetzt mal einiges probiert. Leider komme ich nicht zum Ergebnis mit dem "Prell Hinweis"..
Ich habe einen Außenkontakt angebracht, über den ich dann noch gleich eine Zustandsmeldung bekomme. Den habe ich in die Scripts eingebaut.
Siehe:
Das läuft nun so:
Wenn das erste Script reagiert hat, ist der Kontakt offen und das zweite Script reagiert dann nicht.
Das ist auch soweit in Ordnung.
Allerdings reagiert das zweite Script, wenn ich den Carport wieder schließe.
Ich habe keine Idee wie ich das verhindern kann.