Es bestehen verschiedene Möglichkeiten, festzulegen, ob eine Logik ihre Arbeit überhaupt aufnimmt, resp. mit dem Objektsystem kommuniziert. Sie kann gänzlich deaktiviert werden, ihre Datenübergabe kann über die Abbruchfunktion blockiert werden oder sie kann von der Aussenwelt abgekoppelt werden.
Dieses Kapitel beschreibt diese grundlegend verschiedenen Konzepte.
Aktivierung: Starten und Anhalten von Logiken
Damit eine Logik überhaupt ihren Bearbeitungsprozess aufnehmen kann, muss sie aktiviert (oder gestartet) sein.
Dieser Status wird im Logikeditor in der unteren rechten Ecke der Logikbox über die beiden nachfolgend dargestellten Symbole beeinflusst. Der Aktivierungsstatus wird ebenfalls in der Logikbox (oben in der Mitte) angezeigt:
Anhalten | Starten |
Über diese beiden Buttons lässt sich jede der angelegten Logiken unabhängig von allen anderen Logiken einzeln anhalten und starten. Nach dem Starten ist die Logik unmittelbar scharf und reagiert auf an den Eingängen eintreffende Daten entsprechend dem gewählten Ausführungsverhalten des jeweiligen Einganges.
Gegenüberstellung zur Abbruchfunktion
Wie bereits oben erwähnt, kann der Bearbeitungsprozess einer Logik nur durchgeführt wird, wenn die Logik aktiviert (d.h. gestartet) ist.
Es ist aber auch möglich eine Logik bloss zu pausieren, indem ihre Bearbeitung durch ein dauerhaftes Einschalten der Abbruchfunktion permanent abgebrochen wird.
Zwischen dem Anhalten auf der Aktivierungsebene und dem Abbruch im Rahmen des Bearbeitungsprozesses besteht jedoch ein ganz wesentlicher Unterschied:
Eine angehaltene Logik ist nicht aktiv: Sie liest daher keine Daten an den Eingängen.
Bei einer (allenfalls auch dauerhaft) abgrebrochene Logik läuft der Bearbeitungsprozess, es werden einzig die Resultate der Berechnungen nicht weitergegeben; damit bleiben bei einer abgebrochenen Logik die Eingänge weiterhin aktiv und lesen die eingehenden Daten mit; .
Somit wird eine abgebrochene Logik nach ihrer Freischaltung mit den zwischenzeitlich aktualisierten Werten weiterarbeiten, während dem eine angehaltene Logik die zwischenzeitlich erfolgten Wertänderungen nicht kennt und deshalb mit ihren Defaultwerten arbeiten muss.
An- und Abkoppeln von Ein- und Ausgängen
Über ein “Abkoppeln” kann eine Logik im Logikeditor von der Aussenwelt isoliert werden, das bedeutet dass vorübergehend die Datenübernahme, resp. die Datenübermittlung gestoppt wird. Alle übrigen Prozessschritte des Bearbeitungsprozess einer Logik bleiben aber aktiv und werden durch das Abkoppeln nicht beeinflusst.
Damit kann beispielsweise das Verhalten der Logik im Doktormodus beobachtet werden, ohne dass das berechnete Ergebnis auf das Zielobjekt geschrieben wird. Gleiches gilt für abgekoppelte Eingänge: In diesem Fall triggert ein eintreffender Wert die Ausführung der Logik nicht und der empfangene Wert wird auch nicht in die Logik übernommen.
Der Logikeditor ermöglicht es, jeden Ein- und Ausgang durch einen Klick auf das Stecker-Symbol vom Quell- oder Zielobjekt abzukoppeln:
Gekoppelt: | Abgekoppelt: | |
Zum Wechseln der Zustände auf das Symbol klicken |
0 Kommentare