NEWS
Blockly Timeout hält sich nicht an die eingestellte Zeit
-
Korrekt.. das war aber beim vorherigen Skript auch so. Ich bin einfach mal davon ausgegangen das der OP das auch wollte. Ansonsten wäre das Ziel-Skript deutlich aufwändiger.
A.
-
@asgothian sagte: das war aber beim vorherigen Skript auch so.
Nicht ganz: Es können auch zwei Timer parallel laufen, die sich aber zumindest wieder stoppen lassen. Zwei parallel laufende Timer mit nur einer Timer-Variablen lassen sich nicht mehr stoppen.
Ich gehe davon aus, dass die Verzögerung mit Ende des letzten Ereignisses (Bewässerung / Regen) starten soll.
-
@paul53 sagte in Blockly Timeout hält sich nicht an die eingestellte Zeit:
Ich gehe davon aus, dass die Verzögerung mit Ende des letzten Ereignisses (Bewässerung / Regen) starten soll.
Denkbar, aber so war es nicht umgesetzt. Wenn Du dir das Skript anschaust werden immer beide Timeouts gelöscht wen eine der beiden Bedingungen nicht mehr gegeben ist.
A.
-
@paul53 sagte in Blockly Timeout hält sich nicht an die eingestellte Zeit:
@jensven sagte: So wäre es evtl. einfacher:
Es fehlt die Oder-Verknüpfung der beiden Werte. Besser so:
Zwei Trigger-Einträge werden wie ein "oder" behandelt; das Blockly einen Beitrag höher wäre somit auch korrekt...
-
@fu_zhou Wo kommt denn der Wert "Moving time exceed" her? Kann es sein, dass der vom Mäher aktualisiert wird?
-
@guergen sagte: Zwei Trigger-Einträge werden wie ein "oder" behandelt
Nein, sondern nur Ereignis1 oder Ereignis2 (Ereignis = Wertänderung), nicht aber Wert1 oder Wert2.
-
@paul53 ??? DAS verstehe ich jetzt grade nicht.... Ereignis... Wertänderung...
-
@guergen
Der Elektroniker sagt Flanke: Es wird bei jeder Flanke (Wertänderung) getriggert unabhängig von der Richtung der Flanke. -
@paul53 Das habe ich verstanden (bin Elektriker), aber das ist bei dem oberen doch auch: "Wert von ObjektID" oder "Wert von ObjektID" vs "Wert". Bei beiden steht doch "wurde geändert" (Flankenrichtungsneutral)
-
@guergen sagte: "Wert von ObjektID" oder "Wert von ObjektID" vs "Wert".
Das "oder" ist entscheidend: "Wert von ObjektID" oder "Wert von ObjektID".
Es verhindert, dass bei der negativen Flanke eines Wertes der sonst-Zweig ausgeführt wird, wenn der andere Wert noch "wahr" ist. -
@paul53 Ahhhhhhh! Jetzt hab ich das auch verstanden
-
Viele Dank an Euren Input bisher, bin die Woche unterwegs und komme erst am Wochenende dazu, die Ideen zu verarbeiten.
@Asgothian Ich werde mich auf jedem Fall mal auf die Suche machen, ob ggf. der Rasenmäher tatsächlich die Mähzeit umschaltet.
@jensven Sobald die Mähzeitreduktion bei mähendem Mäher aktiv wird (-100%), bricht der Mäher den Mähvorgang ab und fährt nach Hause. -
Habe jetzt das vereinfachte Skript umgesetzt - funktioniert erst mal:
@paul53 : wo hast du denn das "oder" her? Ich habe nur das gefunden, wie jetzt bei mir im Skript, also Objekt - ODER - Objekt
vs.
Evtl. unterschiedliche Blockly/ Javascript-Versionen?
@Asgothian @guergen Es sieht möglicherweise danach aus, dass ich den Rasenmäher nicht im automatischen Zeitplan laufen lassen darf, sondern im manuellen, um die Mähzeitreduktion vorgeben zu können bzw. dass die Automatik sie nicht zurücknimmt. Ich habe jetzt auf manuell umgestellt und warte mal ab. Es gab seit dem letzten Jahr ein paar App- und Firmware-Updates, da ist das scheinbar auf Auto gestellt worden und ich habe mir nichts weiter dabei gedacht... -
@fu_zhou sagte: wo hast du denn das "oder" her?
Rechte Maustaste über dem Block und "externe Eingänge" auswählen.