NEWS
[gelöst] Zeitverzögerung und Timer
-
(bei mir is Deutsch), stimmt das für die Feuchtigkeit?
-
@Humidor sagte:
stimmt das für die Feuchtigkeit?
Nein, so ist die Bedingung für Befeuchten nie erfüllt. Außerdem darf man timeAktiv nicht stoppen, weil dann das Ausschalten verhindert wird. Die erste Verzögerung beträgt 6 Minuten (1 + 5 Minuten).
Versuche es mal so: -
@paul53
Danke!wie kann ich den Export hier runterladen?
was ich nciht verstehe ist, wie ich im Blocky den "Wert" (rot), "Tür_offen" (rot) und "timeout" (rot) so auswählen kann ??
und was bewirkt "timeout" im sonst falls Zweig? -
@Humidor sagte:
"Wert" (rot), "Tür_offen" (rot) und "timeout" (rot)
Wert findet man unter "Trigger"
Tuer_offen ist eine selbst erstellte Variable
timeout ist eine Variable, die mit "Ausführen timeout" erstellt wird.@Humidor sagte in Zeitverzögerung und Timer:
was bewirkt "timeout" im sonst falls Zweig?
Es verhindert, dass weitere Timer gestartet werden, wenn bei Wertänderungen unter 68 erneut getriggert wird.
@Humidor sagte in Zeitverzögerung und Timer:
wie kann ich den Export hier runterladen?
Copy (^C) aus dem Forum & Paste (^V) in den Blockly-Import.
-
@paul53 sagte in Zeitverzögerung und Timer:
@Humidor sagte:
"Wert" (rot), "Tür_offen" (rot) und "timeout" (rot)
Wert findet man unter "Trigger"
Tuer_offen ist eine selbst erstellte Variable
timeout ist eine Variable, die mit "Ausführen timeout" erstellt wird.@Humidor sagte in Zeitverzögerung und Timer:
was bewirkt "timeout" im sonst falls Zweig?
Es verhindert, dass weitere Timer gestartet werden, wenn bei Wertänderungen unter 68 erneut getriggert wird.
@Humidor sagte in Zeitverzögerung und Timer:
wie kann ich den Export hier runterladen?
Copy (^C) aus dem Forum & Paste (^V) in den Blockly-Import.
gefunden!
ist im falls wenn der Timeout bei 0 erfüllt oder bei einem Wert?
-
@Humidor sagte:
gefunden!
Der untere Trigger-Datenpunkt ist falsch: Es muss die Tür sein.
@Humidor sagte in Zeitverzögerung und Timer:
wenn der Timeout bei 0 erfüllt oder bei einem Wert?
nicht timeout ist erfüllt, wenn timeout den Wert null (wird bei stop timeout gesetzt) oder den Wert undefined (wird bei Scriptstart gesetzt) enthält. Wenn der Timer gestartet ist, enthält die Variable timeout ein Timer-Objekt.
Anmerkung: Anstelle von nicht timeout könnte man auch auf vorheriger Wert > 68 prüfen, so wie es @Asgothian vorgesehen hatte.
-
so richtig ?
-
@Humidor sagte:
so richtig ?
Der Trigger ja, die Abfrage nicht: vorheriger Wert > 68 (vorheriger Wert unter "Trigger").
Die Bedingung Wert <= 68 ist bereits im sonst enthalten. -
@paul53
das mit dem "vorherigen Wert" verstehe ich nicht, soll das eine Zwischenvariable sein? -
@Humidor sagte:
das mit dem "vorherigen Wert" verstehe ich nicht, soll das eine Zwischenvariable sein?
Nein, das ist eine Eigenschaft des Trigger-Datenpunktes (deshalb unter Blöcke "Trigger")
-
@paul53
das hab ich nicht ?
-
-
@paul53
gefunden, danke!aber kapier ich nicht was der vorherige Wert mit der Abfrage zu tun hat?
-
-
@Humidor sagte:
aber kapier ich nicht was der vorherige Wert mit der Abfrage zu tun hat?
Es soll die Verzögerung nur gestartet werden, wenn
- der Wert <= 68 ist (sonst)
- der vorherige Wert > 68 ist
- die Tür geschlossen ist
Die Prüfung auf vorheriger Wert > 68 verhindert, dass ein weiterer Timer gestartet wird, wenn sich der Wert z.B. von 68 auf 67 ändert.
-
@paul53 sagte in Zeitverzögerung und Timer:
@Humidor sagte:
aber kapier ich nicht was der vorherige Wert mit der Abfrage zu tun hat?
Es soll die Verzögerung nur gestartet werden, wenn
- der Wert <= 68 ist (sonst)
- der vorherige Wert > 68 ist
- die Tür geschlossen ist
Die Prüfung auf vorheriger Wert > 68 verhindert, dass ein weiterer Timer gestartet wird, wenn sich der Wert z.B. von 68 auf 67 ändert.
d.h. dass er den "mach" Zweig nur 1x beschreitet, darin aber die Timer laufen bis die Feuchte >68 wird ?
-
@Humidor
Im oberen mache-Zweig werden die Timer gelöscht, wenn die Feuchte > 68 ist.
Der sonst-Zweig wird ausgeführt, wenn die Feuchte <= 68 ist. falls bei sonst falls prüft weitere Bedingungen. -
@paul53 sagte in Zeitverzögerung und Timer:
@Humidor
Im mache-Zweig werden die Timer gelöscht, wenn die Feuchte > 68 ist.
Der sonst-falls-Zweig wird ausgeführt, wenn die Feuchte <= 68 ist.ja richtig im sonst falls, dort muss die Tür zu sein und der vorige Wert <=68
ich kapiers nicht, warum voriger Wert <= 68 ?
-
@Humidor sagte:
ich kapiers nicht, warum voriger Wert <= 68 ?
Das würde ich auch nicht kapieren, denn die richtige Bedingung ist vorheriger Wert > 68, wie schon mehrmals geschrieben.
-
@paul53 sagte in Zeitverzögerung und Timer:
@Humidor sagte:
ich kapiers nicht, warum voriger Wert <= 68 ?
Das würde ich auch nicht kapieren, denn die richtige Bedingung ist vorheriger Wert > 68, wie schon mehrmals geschrieben.
bei @Asgothian war voriger Wert <=68 geschrieben
voriger Wert >68 bedeutet , dass der Zweig nur 1x abgearbeitet wird, wenn 1x die Bedingung eintritt, dass der Wert <=68 wurde. Das verhindert bei erneutem Durchlauf des Blocky, dass eine weitere Instanz generiert wird!? ist das so, werden bei jedem Durchlauf von Blocky weitere erzeugt??