NEWS
Kontinuierliche Prüfung ob Kontakt offen
-
Ich würde gerne prüfen lassen, ob mein Garagentor offen ist.
Allerdings nur in der Zeit von X bis Y.
Falls es offen ist soll allerdings erst alarmiert werden, falls dies länger als X Minuten offen ist und dann solange alle X Minuten melden bis es wieder geschlossen wird.Im Blockly breche ich mir hierbei allerdings einen ab:
Könnt ihr mir ggf. mal wieder aushelfen?
-
@xadox sagte: länger als X Minuten offen ist und dann solange alle X Minuten melden bis es wieder geschlossen wird.
-
@paul53 Erneut Vielen Dank für die schnelle Hilfe
Würde das Script hierbei direkt Melden oder findet die erste Meldung erst nach 3 Minuten statt.
Ich frage mich was passiert wenn das Tor offen ist der Trigger für die 3 Minuten startet und das Tor in der Zwischenzeit geschlossen wurde? -
@xadox Willst Du wirklich nicht, dass ein NACHTS offen stehendes Garagentor gemeldet wird?
Böse Buben lieben doch wie man sagt die Dunkelheit ...
Vielleicht ist eine Ansage, die die ganze Familie weckt nicht das Mittel der Wahl, um so etwas zu detektieren (z. B. wenn Papi und Mami um 23:00 aus dem Theater zurückkommen, und der Babysitter die Kinder gerade zum Schlafen gebracht hat ...), aber auf irgendeinen Hinweis, dass nachts das Tor aufgeht würde ich schon nicht verzichten wollen ...
-
@xadox sagte: direkt Melden oder findet die erste Meldung erst nach 3 Minuten statt.
Die erste Meldung erfolgt nach 3 Minuten.
@xadox sagte in Kontinuierliche Prüfung ob Kontakt offen:
das Tor in der Zwischenzeit geschlossen wurde?
Beim Schließen wird das Intervall gestoppt: Keine Ansage.
-
@paul53 sagte in Kontinuierliche Prüfung ob Kontakt offen:
@xadox sagte: länger als X Minuten offen ist und dann solange alle X Minuten melden bis es wieder geschlossen wird.
damit wird nix geprüft ob es offen ist. Der Zustand ist doch bei diesem Blockly egal, oder?
löst auch bei false aus -
@stenmic sagte in Kontinuierliche Prüfung ob Kontakt offen:
oder
!!
@stenmic sagte in Kontinuierliche Prüfung ob Kontakt offen:
damit wird nix geprüft ob es offen ist.
Natürlich wird geprüft!
falls WERT
ist nur bei offenem Tor wahr
-
@homoran wo wird denn in dem Blockly nach wahr geprüft… es wird nur nach wert geprüft, und der dürfte somit auch falsch sein.
-
@stenmic sagte in Kontinuierliche Prüfung ob Kontakt offen:
wo wird denn in dem Blockly nach wahr geprüft
Da steht im Prinzipfalls Wert = True
... nur eben kürzer formuliert.
EinFalls
erwartet als Operanden einen bool'schen Wert. Ob da jetzt ein (mehr oder weniger komplexer) Ausdruck folgt oder ein einzelner Wert, ist da völlig Wurscht. -
@stenmic sagte in Kontinuierliche Prüfung ob Kontakt offen:
es wird nur nach wert geprüft, und der dürfte somit auch falsch sein.
nein, dürfte er bei der Schreibweise nicht.
da wäre
nicht
Wert
das Äquivalent für false -
@stenmic
Vielleicht wird das klarer, wenn man sich anschaut was da an Code produziert wird.Ein
if
erwartet auf der rechten Seite einen Ausdruck, der als Ganzestrue
liefert.
Das kann etwas recht komplexes sein wie z.B.:if (wert== true && name == 'Blubb' && answer == 42)
oder aber - wenn nur eine zu prüfende Variable vorliegt und die bereits Bool enthält:
if (wert)
Will man jetzt prüfen, ob in
wert
einfalse
steht, wird das einfach negiert:if (!wert)
Damit wird der Ausdruck auf der rechten Seite dann wieder
true
, wenn inwert
einfalse
steht.Programmierer sind von Haus aus faul - sonst wären sie ja nicht Programmierer geworden.
Darum schreiben sie Dinge in der Regel so kurz wie möglich.
Ein Grund, warum Dennis Ritchie seinerzeit die Sprache "C" erfunden hat. Warum sollte manbegin ... end
schreiben, wenn man das auch mit{ ... }
hinkriegt? -
@codierknecht
Danke für die Erklärung, wieder was gelernt