Einführung
...
Eine Logik kann zwischen 0 und einer beliebigen Zahl von Eingänge verfügen; dabei wird zwischen drei Arten von Eingängen unterschieden:
Input (Wertübergabe-Eingänge (in einer Logik meist als “Input” bezeichnet): Sie übergeben der Logik die zu verarbeitenden Werte
entweder als dynamische Variable (durch Verknüpfung mit einem Objekt des Objektsystems)
oder als konstante Variable (durch Verwendung der Funktion “Parameter” bei den Einstellungen in der Logikbox; [------- Achtung: Der als Parameter zugewiesene Wert wird nur beim Abspeichern in die Berechnung übernommen; es muss somit explizit ein Trigger definiert werden, damit die Logik erneut ausgeführt werden kann --------].
Inhibit (Sperr-Eingänge): Über ein TRUE auf diesem Eingang kann die Ausführung der Logik gesperrt werden, näheres dazu unten unter → Sperrfunktion)
Trigger (Trigger-Eingänge): Sie definieren weitere Elemente, die dieser Logik als Trigger dienen; näheres dazu unten unter → Triggerfunktion.
...
Sperr-Eingänge (“Inhibit”): Über ein TRUE auf diesem Eingang kann die Ausführung der Logik gesperrt werden, näheres dazu unten unter →Sperrfunktion)
Trigger-Eingänge (“Trigger”): Sie definieren weitere Elemente, die dieser Logik als Trigger dienen; näheres dazu unten unter →Triggerfunktion.
Die Eingänge haben für die Abarbeitung einer Logik folgende Funktionen:
sie übergeben Werte an die Logik (→Wertübergabefunktion)
sie lösen die Abarbeitung der Logikzelle aus (→Triggerfunktion), wobei diese Werte
entweder von einem Objekt des Objektsystems stammen,
oder als Parameter für die konkrete Logik (im Sinne von Konstanten) vorgegeben sind;
sie lösen die Abarbeitung der Logikzelle aus (Triggerfunktion), resp.
sie resp.
sie beeinflussen das Startverhalten der Logik (→Startfunktion),
sie können einen vom einem Objekt des Obkektsystem übergebenen Wert vor der Bearbeitung in der Logik logisch negieren (→Negationsfunktion),
sie können einen von einem Objekt des Objektsystems stammenden Wert umwandeln (→Konvertierungsfunktion über “Innerhalb Bereich”),
sie können einen von einem Objekt des Objektsystems stammenden Wert mit einer Vorgabe vergleichen (→Vergleichsfunktion).
Ausgänge
...
sie übergeben Werte an Objekte des Objektsystems (→Wertübergabefunktion),
sie bestimmen,
bei welchem Ereignis die Ausgabewerte an das Objekt des Objektsystems übergeben werden soll (→Sendefunktion), und
ob diese Übergabe unmittelbar oder verzögert erfolgen soll (→Verzögerungsfunktion)
sie können einen Wert vor der Übergabe an das Objekt des Obkektsystem Objektsystem logisch negieren (→Negationsfunktion),
sie können einen von einem Objekt des Objektsystems stammenden Wert umwandeln (→Konvertierungsfunktion über “Mapping”).
...
Als mögliche Trigger stehen zur Verfügung
ein Wertübergabeeingang (in Logiken meist mit “Input x” bezeichnet), sofern seine Triggerfunktion auf A (always) oder C (on Change) gesetzt ist (näheres sogleich);
ein spezieller Triggereingang, der abhängig von einem äusseren Ereignis die Logik triggert; als solche Trigger dienen können
ein Zeitintervall (bspw. alle 30 Sekunden),
ein Zeitpunkt (bspw. 08:25 Uhr) oder
ein zusätzliches Eingangsobjekt, dass als blosser Trigger dient (“Data Value”);
ein Trigger, welcher innerhalb einer Custom-Logik (bspw. über den Logikbaustein → Clocksignal) codiert wurde.
Triggerfunktionen über einen
...
Wertübergabe-Eingang
In der GUI (am Eingang einer Logikbox) und im Input-Array einer Custom-Logik kann die Trigger-Funktion des jeweiligen Wertübergabe-Eingangs festgelegt werden.
...
Ein- und Ausgänge stellen die Schnittstellen eine Logik zum Objektsystem des TWS dar.
Über diese Schnittstellen können Werte von und an die und von der Logik übergeben werden. Voraussetzung ist, dass die Datentypen der Objekte und der Logik übereinstimmen. Ist dies nicht der Fall, stellt der Logikeditor →Konvertierungsfunktionen zur Verfügung. Im Rahmen der Wertübergabe können im Logikeditor gleichzeitig auch →Vergleichsfunktionen hinzugefügt werden.
Jedem Ein- und Ausgang können mehrere Objekte des Objektsystems zugeordnet werden. Auf diese Weise kann bspw. das Resultat einer Logik gleichzeitig an mehrere Objekte gesendet werden.
Bei Eingängen können die übergebenen Werte
entweder als dynamische Variable von einem Objekt des TWS-Objektsystems stammen,
oder als feste definierte Variable (“Konstante”) vorgeben werden; in der Logikbox wird eine Konstante über die Verwendung der Funktion “Parameter” definiert.
[------- Achtung: Der als Parameter zugewiesene Wert wird nur beim Abspeichern in die Berechnung übernommen; es muss somit explizit ein Trigger definiert werden, damit die Logik erneut ausgeführt werden kann --------].
Konvertierungsfunktion
Jede Datenübergabe in der Informatik setzt voraus, dass die Datentypen übereinstimmen. Der Objektsystem des TWS (und damit auch die Logikfunktion) arbeitet mit folgenden Datentypen:
...
In einer Custom-Logik kann diese Funktion im Modul-Array mit einer entsprechenden Codierung vorgenommen werden; dazu steht u.a. der Modulbaustein [---------- Stopwatch ------------] zur Verfügung. In der Regel wird aber auch bei der Verwendung einer Custom-Logik die Verzögerungsfunktion über Einstellungen in der GUI definiert.