Diese Logik erlaubt es, feste oder variable Werte regelmäßig sowie bei Trigger zu senden. Die Ausführung der Funktion kann gesperrt werden.
Einsatzbereiche
Weitersenden nur bei Wertänderung: Empfangenen Wert ausschließlich bei Wertänderung weitersenden (Intervall = 0 und in der Eingangsbox Auslösefilter “C” und Startverhalten “I”)
Weitersenden nur bei Intervall: Empfangenen Wert zwischenspeichern und anschließend regelmäßig weitersenden (Intervall = x Sekunden und in der Eingangsbox Auslösefilter “X” und Startverhalten “I”)
Weitersenden bei Wertänderung & im Intervall: Empfangenen Wert bei Wertänderung weitersenden, zwischenspeichern und zusätzlich im Intervall aussenden (z.B. um häufig erhaltene Werte nur bei Wertänderung weiterzugeben und danach in langen Intervallen von z.b. 10 Minuten in die Zeitserie zu schreiben, damit Linien bei grafischer Auswertung ausreichende Stützpunkte haben; hierfür Intervall = x Sekunden und in der Eingangsbox Auslösefilter “C” und Startverhalten “I”)
Weitersenden nur bei externem Auslöser: Empfangenen Wert zwischenspeichern und nur auf einen externen Auslöser hin senden (damit kann z.B. eine Sequenz gesteuert werden; hierfür Intervall = 0 und in der Eingangsbox Auslösefilter “X” und Startverhalten “I” sowie separate Trigger verbinden)
Wiederholtes Senden eines manuell vorgegebenen Wertes: Manuell vorgegebenen Wert regelmäßig aussenden, z.B. um einen Vorgabewert für andere Prozesse und Geräte zu setzen bzw. auf einen sicheren Wert zurück zusetzen.
Weitersenden unterbinden: In allen Kombinationen kann zusätzlich die Ausführung dieser Logikzelle - und damit der Weiterversand von Werten - über die Sperrfunktion (mehrere Sperr-Eingänge möglich) unterbunden werden
Logikfunktion
Kern-Modul
Sendet eine am Eingang anliegende Fließkommazahl
bei jedem Auslöser
sowie bei jedem Intervallablauf
Auslöser kann der Auslösefilter am Eingang sein, aber auch externe Auslöser über ein oder mehrere Steuereingänge vom Typ “Trigger”.
Der Wert des Intervalls in Sekunden kann übergeben werden, ansonsten gilt der Vorgabewert von 600 Sekunden. Bei 0 oder negativen Werten wird kein Intervall ausgeführt.
Das Kern-Modul stellt zwei Eingänge, einen Ausgang und optionale Steuereingänge zur Verfügung.
Kern-Operation
Werte-Puffer für Fließkommazahlen mit wiederholtem Senden bei Ablauf des Intervalles sowie bei jedem Auslöser.
Kern-Eingänge
Bezeichnung | Typ | Nutzung | Hinweise |
---|---|---|---|
Eingang | Operand | Wert, der weitergesendet werden soll | Nur ein Eingang pro Modul möglich Eingehende Wertaktualisierung wird, je nach Einstellung des Triggerfilters in der Eingangsbox, sofort gesendet |
Intervall in Sekunden | Operator | Variable zur Bestimmung des Intervalls in Sekunden | Vorgabewert = 600 Sekunden Bei 0 oder negativem Operand wird kein Intervall ausgelöst |
Steuer-Eingänge (optional)
Bezeichnung | Typ | Nutzung | Hinweise |
---|---|---|---|
Trigger | Steuerung | Auslöser, um den letzten gespeicherten Wert weiterzusenden | Optional. Beliebig viele Triggereingänge pro Modul möglich Zusätzlich erfolgen Auslösungen durch Ablauf des Intervalls (sofern > 0) und je nach Auslösefilter in der Eingangsbox für “Eingang” soweit mit einem Objekt verknüpft. |
Inhibit | Steuerung | Sperre der Verarbeitung der gesamten Logikzelle. Sobald ein Inhibit Steuereingang mit TRUE aktiv ist, wird die Verarbeitung der Logikzelle gestoppt. | Optional. Beliebig viele Sperreingänge pro Modul möglich Bei aktiver Sperre wird ein Wert am Eingang trotz erfolgender Aktivierungen nicht weitergesendet, da die Verarbeitung der Logikzelle angehalten wird. |
Kern-Ausgang
Bezeichnung | Typ | Nutzung | Hinweise |
---|---|---|---|
Ausgang | Ergebnis | Erhaltener Wert, der entsprechend der Konfiguration wegen Wertänderung und / oder Zeitablauf weitergesendet wird | Nur ein Ausgang verfügbar |
Eingangsboxen Logikzelle
Bezeichnung | Typ | Variante | Hinweise |
---|---|---|---|
Logik triggern | Auslösefilter | (A) | Die Berechnung der Logikzelle wird bei jedem Wert, der an DIESER Eingangsbox eintrifft, neu gestartet = ausgelöst. In dieser Einstellung wird nicht gefiltert. Jeder neu ankommende Wert löst die Logik aus, unabhängig davon, ob der neue Wert sich gegenüber dem zuvor empfangenden geändert hat. Hinweis: Es kann über andere Eingänge dieser Logikzelle - abhängig vom dort jeweils gewählten Auslösefilter - eine Auslösung bewirkt werden. Zusätzlich können separate Triggereingänge für die Auslösung der Logikzelle konfiguriert werden. |
(C) | Die Berechnung der Logikzelle wird bei Wertänderung (neuer Wert ist unterschiedlich gegenüber dem zuvor empfangenen Wert) neu gestartet = ausgelöst. Bei dieser Einstellung wird auf Veränderung des jeweiligen Wertes an diesem Eingang gefiltert. Nur Wertänderungen führen zur Auslösung der Zelle. Hinweis: Jedoch wird immer - also auch ohne Auslösung - der zuletzt empfangene Wert gespeichert. Bei sonstigen Auslösungen (oder hier auch bei Intervallablauf) wird der zuletzt empfangene Wert verwendet. | ||
(U) | Die Berechnung der Logikzelle wird NIE durch einen neu empfangenen Wert dieser Logikzelle ausgelöst, unabhängig ob der empfangene Wert unterschiedlich gegenüber einem zuvor empfangenen ist, oder nicht. Bei dieser Einstellung wird die Auslösung komplett gefiltert, d.h. NIE durch durch Wertempfang ab diesem Eingang bewirkt. Hinweis: Jedoch wird immer - also auch ohne Auslösung - der zuletzt empfangene Wert gespeichert. Bei sonstigen Auslösungen (oder hier auch bei Intervallablauf) wird der zuletzt empfangene Wert verwendet. | ||
Start-Verhalten | Initialisierung | (I) | Die Logikzelle ist gegen jegliche Ausführung (durch andere Auslöser) gesperrt, solange die Eingangsbox noch keinen Wert erhalten hat. Erst nach Eingang eines Wertes, wird die Logikzelle für die Berechnung freigegeben. Diese Logik wird dann mit Erhalt des nächsten Auslösers ausgeführt. Hinweis: Diese Einstellung dient dazu, dass eine Logikzelle nur ablaufen kann, wenn alle Eingänge sauber initialisiert sind (hierfpr ist dann an allen Eingängen auch I zu setzen bzw. X und ein Startwert vorzugeben). Diese Einstellungen wird für den Neustart einer Logik bzw. bei Neustart des Servers benötigt, soweit keine Persistenz für diese Logik aktiviert wurde. |
(X) | Vorgabe Startwert für diesen Eingang. Bei Auslösung (durch andere Eingänge bzw. sep. Trigger) wird, soweit noch kein Wert empfangen wurde, dieser vorgegebene Startwert verwendet. Hinweis: Diese Einstellungen wird für den Neustart einer Logik bzw. bei Neustart des Servers benötigt, soweit keine Persistenz für diese Logik aktiviert wurde. |
Kommentar hinzufügen