NEWS
8 Werte auf False oder TRUE vergleichen...dann setze
-
-
ja das sieht ganz gut aus....ich glaube hier werde ich mal drauf aufbauen...
Meine Idee sag bisher so aus...
-
obwohl das ist für mich halt auch sehr gut nachvollziehbar....."als laie"
aber ich denke auch aufwendiger...
-
Hier löst dein Script allerdings schon aus, sobald eines der Objekte auf 'false' wechselt bzw. aktualisiert. Das würde der "oder" Verknüpfung entsprechen. Wenn alle Objekte z.B. auf 'true' stehen und NUR dann ausgelöst werden soll, musst du einen anderen Weg suchen. Aber wie du ja gesehen hast, führen einige Wege zum Ziel.
-
ja meins ist auch nur mal so ein versuch....man muss auch probieren, sonst lernt man es ja nie. Zum Glück gibt es hier dieses Forum....
Vielen Dank nochmal an alle
-
Richtig. Einfach machen und gucken, was passiert. So lernt man am Besten.
-
so ich habe das mal aufgebaut und getestet,
aber leider nimmt er immer den oberen Wert zum Steuern. (12346)Was könnte verkehrt sein ?
-
@zimbl sagte in 8 Werte auf False oder TRUE vergleichen...dann setze:
Was könnte verkehrt sein ?
Wenn Du das mal zeigen würdest (bildlich) dann könnte man da auch helfen
-
natürlich kein Problem.
ich muss dazu sagen, das ich derzeit eigentlich "denke" das ich hier nur Änderungen registriere, weil die unteren Werte sind im "Normal" Zustand TRUE und die oberen GPIO "FALSE"
-
@zimbl sagte: das ich hier nur Änderungen registriere
So ist es: Wenn sich kein Wert ändert, wird auch nicht getriggert.
-
Aber was ist dann eigentlich die Ausgangsposition ?
Weil ich will ja praktisch das der "Normal" Zustand als Sollwert ist und wenn sich ein
Wert ändert, wäre das ja dann der Grund warum sich das Signal auf 12346 ändert. -
@zimbl sagte: Aber was ist dann eigentlich die Ausgangsposition ?
Das, was du im ersten Post geschrieben hast:
@zimbl sagte in 8 Werte auf False oder TRUE vergleichen...dann setze:
wenn einer von Ihnen ein TRUE hat
und sich ein Wert ändert, wird 12345 geschrieben.
-
ok, dann ist das vielleicht der Fehler. Sorry, habe ich was vergessen.
wie kann ich das zwei Teilen ?
Ich denke weil die unteren Werte nicht False sind. Geht es nicht. Da ist der Unterschied 1 bzw. 0, da es aber glaube keine Boolschen Werte sind, müsste ich den INT auf 0 oder 1 Abfragen. -
@zimbl sagte: Da ist der Unterschied 1 bzw. 0
Das spielt keine Rolle, wenn 1 als true interpretiert werden kann (implizite Typwandlung).
-
JA dann wird es noch das Problem sein, das TRUE / FALSE bei den letzten 5 genau umgedreht ist.
Gibt es sowas wie eine Negation die ich vor der Objekt ID setzen kann ? -
-
wahnsinn was du da immer so strickst... da kommt doch niemand drauf
Also ist es so, das die oberen Werte normal auf TRUE und FALSE abgefragt werden, und die unteren 5 Werte auf 0 und 1 abgefragt werden.
Aber ich habe bei dem ganzen hin und her, selbst ein Gedankenfehler gemacht....
Also die oberen GPIO stehen aktuell auf TRUE und die anderen "valve_state" close(1)
INFO: { "type": "state", "common": { "type": "number", "states": { "0": "open", "1": "close"} "read":
true, "write": false, "name": "valve_state", "role": "value"Wenn also einer von denen auf FALSE oder OPEN(0) dann soll der Wert 12346 geschaltet werden, wenn komplett alle wieder auf TRUE bzw. close(1) stehen, dann soll der Wert 12345 geschaltet werden.
-
habe das obere jetzt noch mit eingebaut, aber es wird immer noch auf 12345 gesetzt. Es wird auch immer ausgeführt....nur ob es TRUE oder FALSE ist...es wird immer wieder auf 12345 gesetzt.
-
@zimbl sagte: Wenn also einer von denen auf FALSE oder OPEN(0) dann soll der Wert 12346 geschaltet werden
Alle true bzw. 1 --> 12345.
-
ich probiere das sofort nochmal.