NEWS
Blockly einfacher Vergleicher
-
Hallo, ich will unter Blockly einen einfachen Vergleicher (Ungleich) anwenden,
allerdings wird der Wert (Raspberry Ram Gesamt) nicht aktualisiert.
Was habe ich verkehrt gemacht ? -
@tourer4778
Als Trigger sind nur Objekte erlaubt. -
@Jan1
Aber beides finde ich unter Objekte .... -
@tourer4778
Du hast ne Funktion als Trigger und da darf nur EIN Objekt rein. -
@Jan1
Hat man keine möglichkeit, ständig zu vergleichen ? Der Wert Ram vom RPI20 wird sich nicht ändern. -
@tourer4778
Doch aber eben nicht als Trigger. Dafür gibts den FALLS, der in den Trigger kommt. im Übrigen reicht für Dein Vorhaben ein einziger Block ganz ohne Trigger
-
@Jan1
Aber es setzt eine Änderung von RAM RPI20 aus, oder nicht ? -
@Jan1 sagte in Blockly einfacher Vergleicher:
@tourer4778
Doch aber eben nicht als Trigger. Dafür gibts den FALLS, der in den Trigger kommt. im Übrigen reicht für Dein Vorhaben ein einziger Block ganz ohne Trigger
Okay, danke
aber wenn Objekt ID 1 immer den gleichen wert hat, ändert sich Objekt ID 2 nicht. -
@tourer4778
richtig, aber Du willst doch den Wert eines DP, einfach in einen anderen schreiben wenn die beiden ungleich sind und der Block schreibt einfach je Änderung auch gleich in den anderen DP, somit sind beide immer identisch und da soll Dein Blockly ja tun. -
@Jan1
Aber das funktioniert nicht.
Objekt ID 2 bleibt immer auf 0.0 stehen -
@tourer4778
Wenn sich die erste Objekt ID ändert, dann muss sich die zweite Objekt ID der ersten anpassen, wenn der DP beschreibbar und das Script auch eingeschalte ist. -
@tourer4778 sagte:
Objekt ID 2 bleibt immer auf 0.0 stehen
Es wird nur bei Wertänderung getriggert, aber der Wert von "memory_total" ist konstant.
-
@paul53 sagte in Blockly einfacher Vergleicher:
der Wert von "memory_total" ist konstant.
Das ist ja das Problem. Ich würde gerne vergleich und den wert übertragen, auch wenn der Wert "memory_total" sich nicht ändert.
Hintergrund : Ich übertrage den Wert in eine S7 und der Wert bleibt ständig 0, weil memory_total sich nie ändert. -
@tourer4778 sagte:
wert übertragen, auch wenn der Wert "memory_total" sich nicht ändert.
Skript einmal ausführen:
-
@paul53
Okay, das wird dann immer beim Skript ausführen gemacht.
Ich habe es nun mit einer Zeit gelöst. Ich dachte, man könnte den Wert schreiben, wenn die Werte unterschiedlich sind.
Scheinbar geht das nicht -
@tourer4778 sagte in Blockly einfacher Vergleicher:
Ich dachte, man könnte den Wert schreiben, wenn die Werte unterschiedlich sind.
Übersetzt heisst das: sobald es unterschiedliche Werte gibt soll das Skript getriggert werden??
Natürlich kann man Werte vergleichen und etwas schreiben, wenn zwei Werte unterschiedlich sind.
Aber irgendetwas muss diese Aktion auslösen.Was genau ist denn jetzt das Problem?
In deinen KNX(???) Datenpunkten steht auf einmal (????) eine 0 statt einem anderen Wert.
Also hat sich da doch etwas geändert und du kannst darauf triggern.So lange da der Wert noch korrekt ist musst du doch auch nichts schreiben????
-
@tourer4778 sagte:
Ich dachte, man könnte den Wert schreiben, wenn die Werte unterschiedlich sind.
Das kann man auch (als falls-Logik ohne Trigger). Ein Trigger setzt voraus, dass der Zustand irgendwann aktualisiert / geändert wird.
@tourer4778 sagte in Blockly einfacher Vergleicher:
Ich habe es nun mit einer Zeit gelöst.
Wenn eine Konstante einmal geschrieben wurde, muss der Wert nicht noch einmal geschrieben werden. Oder behält die S7 den Wert nicht dauerhaft ? In dem Fall müsste man auf den S7-Datenpunkt triggern.
-
@paul53 sagte in Blockly einfacher Vergleicher:
Oder behält die S7 den Wert nicht dauerhaft ?
Wenn ich den Datenbaustein in der S7 Überarbeite, wird der Wert überschrieben und wird wieder 0 bzw. je nach dem was als Startwert eingetragen ist im S7 DB.
Werde später weiter testen...
-
Also auch hier funktioniert es nicht wie gewünscht.
Wenn ich auf seite S7 eine Null eintrage, wird diese nicht mit einem neuen Wert aktualisiert. -
@tourer4778 sagte in Blockly einfacher Vergleicher:
Also auch hier funktioniert es nicht wie gewünscht.
Welcher dieser Datenpunkte stammt denn von der S7?