Questo attributo pragma permette di monitorare i risultati delle proprietà e delle chiamate di funzioni nella vista online dell'editor IEC o in una lista di monitoraggio.
Aggiungere il pragma nella riga sopra la definizione della proprietà. A questo punto il nome, il tipo e il valore delle variabili della proprietà verranno visualizzati nella vista online della POU mediante la proprietà o in un elenco di controllo. Qui si possono anche immettere valori preparati per forzare le variabili appartenenti alla proprietà.
Esempio di proprietà preparata per il monitoraggio delle variabili
Esempio di vista di monitoraggio
Monitoraggio del valore corrente delle variabili della proprietà
Vi sono due modi diversi per monitorare il valore corrente delle variabili della proprietà. Per il caso d'uso particolare, considerare attentamente l'attributo adatto per ottenere il valore desiderato. Questo dipende dal fatto che le operazioni sulle variabili siano implementate o meno nella proprietà.
1. Pragma {attribute 'monitoring':='variabile'}
Viene creata una variabile implicita per la proprietà, che otterrà il valore della proprietà corrente ogni volta che l'applicazione richiama il metodo set o get. Verrà monitorato l'ultimo valore memorizzato in questa variabile implicita.
Sintassi
{attribute 'monitoring':='variable'}
2. Pragma {attribute 'monitoring':='call'}
Si può utilizzare questo attributo per le proprietà che restituiscono tipi di dati o puntatori semplici, non per tipi strutturati.
Il valore da monitorare viene letto o scritto da una chiamata diretta della proprietà: il servizio di monitoraggio del sistema runtime esegue il metodo Get o Set della funzione proprietà comprendente la parte di implementazione della proprietà.
NOTA: Quando si sceglie questo tipo di monitoraggio invece di utilizzare una variabile intermedia (vedere 1. Pragma), considerare i possibili effetti collaterali dovuti ad operazioni implementate nella proprietà.
NOTA: Anche il pragma monitoring viene valutato dalla configurazione simboli. Se è stato specificato il valore variable, è disponibile solo un accesso in lettura alla proprietà nella configurazione simboli.
Sintassi
{attribute 'monitoring':='call'}
Monitoraggio dei risultati della chiamata della funzione
Si può utilizzare il monitoraggio dei risultati della chiamata della funzione per qualsiasi valore costante che può essere interpretato come valore numerico di 4 byte (ad esempio, INT, SHORT, LONG). Per gli altri parametri di ingresso (ad esempio, BOOL), usare una variabile anziché un parametro costante. Aggiungere il pragma {attribute 'monitoring':='call'} nella riga sopra la dichiarazione della funzione. A questo punto questa variabile può essere monitorata nella vista dell'editor di testo del POU nel quale a una variabile viene assegnato il risultato della chiamata di funzione. È possibile anche inserire la variabile in una lista di monitoraggio allo stesso scopo. Per recuperare la variabile fornita immediatamente con una vista di monitoraggio, eseguire il comando Add watchlist.
Esempio 1: funzioni FUN2 e FUN_BOOL2 con attributo 'monitoring'
Esempio 2: chiamata di funzioni FUN2 e FUN_BOOL2 in una POU di programma
Esempio 3: chiamate di funzione in modalità online:
Monitoraggio di variabili con una chiamata implicita di una funzione esterna
Per poter monitorare le variabili con una chiamata implicita di una funzione esterna, devono essere soddisfatte le seguenti condizioni:
oLa funzione è contrassegnata con {attribute 'monitoring' := 'call'}.
oLa funzione è contrassegnata come Collega sempre.
oLa variabile è contrassegnata con {attribute 'monitoring_instead' := 'MyExternalFunction(a,b,c)'}.
oI valori a,b,c sono valori interi e corrispondono ai parametri di ingresso della funzione da chiamare.
NOTA: La forzatura o la scrittura di funzioni non è supportata. Si può implementare implicitamente la forzatura aggiungendo un ulteriore parametro di ingresso per la funzione particolare che serve da flag di forzatura interno.
NOTA: Il monitoraggio delle funzioni non è possibile sul sistema di runtime compact.