Attribut 'monitoring'

Das Pragma bewirkt, dass Sie Werte von Eigenschaften oder Funktionsaufrufen in der Online-Ansicht des IEC-Editors oder in einer Überwachungsliste monitoren können. Dazu gibt es zwei mögliche Attributwerte: 'variable' und 'call'.

Syntax:

{attribute 'monitoring' := 'variable'}

oder

{attribute 'monitoring' := 'call'}

Monitoring von Eigenschaften

Sie können in der Onlineansicht eines Funktionsbausteins oder eines Programms zusätzlich zu den lokalen Variablen die untergeordneten Eigenschaften monitoren. Sie können somit die Werte der Get- und Set-Methoden überwachen.

Fügen Sie entweder das Pragma {attribute 'monitoring' := 'variable'} oder das Pragma {attribute 'monitoring' := 'call'} in der Deklaration der Eigenschaft ein. Dann werden automatisch die aktuellen Werte der Eigenschaft im IEC-Editor oder in einer Überwachungsliste angezeigt.

Beispiel:

TwinCAT zeigt während des Onlinebetriebs den Wert für Minutes an der Aufrufstelle inline an, denn in der Deklaration der Eigenschaft Minutes steht das Pragma {attribute 'monitoring' := 'variable'}.

Attribut 'monitoring' 1:

Prüfen Sie für jeden Anwendungsfall sorgfältig, welches Attributpragma geeignet ist, den gewünschten Wert anzuzeigen. Dies hängt davon ab, ob innerhalb der Eigenschaft weitere Operationen mit den Variablen implementiert sind.

1. Pragma {attribute 'monitoring':='variable'}:

Für die Eigenschaft wird eine implizite Variable angelegt, die immer dann den aktuellen Eigenschaftswert erhält, wenn das SPS-Programm die Set- oder Get-Methode aufruft. Der zuletzt in dieser Variablen gespeicherte Wert wird im Monitoring dargestellt.

2. Pragma {attribute 'monitoring':='call'}:

Dieses Attribut können Sie nur für Eigenschaften verwenden, die einfache Datentypen oder Pointer zurückgeben, nicht für strukturierte Typen. Der zu monitorende Wert wird durch direktes Aufrufen der Eigenschaft gelesen oder geschrieben. Das bedeutet, dass der Monitoring-Dienst des Laufzeitsystems die Get- oder Set-Methode der Eigenschaft-Funktion ausführt.

Attribut 'monitoring' 2:

Wenn Sie diesen Monitoringtyp wählen, anstatt eine implizite Variable zu verwenden (wie bei {attribute 'monitoring':='variable'}), müssen Sie mögliche Seiteneffekte bedenken. Solche Seiteneffekte können auftreten, wenn innerhalb der Eigenschaftsfunktion zusätzliche Operationen implementiert sind.

Attribut 'monitoring' 3:

Mit dem Kontextmenü-Befehl Zur Überwachungsliste hinzufügen wird im Onlinebetrieb eine Variable, auf der gerade der Cursor steht, unmittelbar in eine Überwachungsliste aufgenommen.

Attribut 'monitoring' 4:

Forcen oder Schreiben von Funktionen wird nicht unterstützt. Forcen können Sie jedoch implizit implementieren, indem Sie einen zusätzlichen Eingabeparameter für die jeweilige Funktion hinzufügen, der als internes Force-Flag dient.

Attribut 'monitoring' 5:

Funktionsmonitoring ist im Kompaktlaufzeitsystem nicht möglich.

Hinweis: Windows CE ist kein Kompaktlaufzeitsystem. Ein Kompaktlaufzeitsystem unterstützt kein Multitasking und besitzt i.d.R. kein Datei- und Betriebssystem. Ein typischer Prozessor eines Kompaktlaufzeitsystems ist beispielsweise ein ARM Cortex™-M.