NEWS
8 Werte auf False oder TRUE vergleichen...dann setze
-
Also ich möchte :
Bei 8 Überwachten Werte auf "TRUE" in eine Globale Variable den Wert 12345 schreiben.
Wenn keiner dieser Werte ein TRUE hat, dann soll in dieser Globalen Variable den Wert 12346 schreiben.
Mit einer Normalen SPS wäre das richtig easy...aber bei Blockly tue ich mir etwas schwer...
Eine ODER Verknüpfung mit 8 Eingängen, einem Ausgang und diesen dann auf ein MOVE mit EN-Eingang. oder vielleicht sogar einen SEL Baustein....aber wie gesagt, bei Blockly ist es verwirrend...
-
@zimbl sagte: Bei 8 Überwachten Werte
Du meinst mit Werten Datenpunkte?
Dann kann man entsprechend viele Blöcke "oder" verwenden oder es über eine Schleife lösen.
-
obwohl das ist für mich halt auch sehr gut nachvollziehbar....."als laie"
aber ich denke auch aufwendiger...
-
ja das sieht ganz gut aus....ich glaube hier werde ich mal drauf aufbauen...
Meine Idee sag bisher so aus...

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.
-
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
-
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.
-
@zimbl sagte: Bei 8 Überwachten Werte
Du meinst mit Werten Datenpunkte?
Dann kann man entsprechend viele Blöcke "oder" verwenden oder es über eine Schleife lösen.
-
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.
-
@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. -
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.
-
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.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden


