Utilizzo di un editor di configurazione chiaro per la mappatura degli I/O
Utilizzo di un editor di configurazione chiaro per la mappatura degli I/O
Si sconsiglia di assegnare gli indirizzi di memoria come descritto qui, perché ciò può comportare una perdita di chiarezza.
Si consiglia di assegnare gli indirizzi di memoria alle variabili nell'editor di configurazione Modifica mappatura IO del dispositivo.
La parola chiave AT nella dichiarazione delle variabili assegna a una variabile del progetto uno specifico
indirizzo di ingresso, di uscita o di memoria del PLC configurato nell'albero dei
dispositivi. La dichiarazione AT consente di assegnare a un indirizzo un nome significativo.
È possibile apportare le modifiche necessarie ai segnali di ingresso o di uscita in un'unica posizione (ad esempio, nella dichiarazione).
Sintassi
<variable name> AT % <address> : <data type>;
|
<nome della variabile> |
Richiesto |
|
% <indirizzo> |
Richiesto Indirizzo nell'area di memoria % <prefisso area di memoria> <prefisso dimensione> <posizione memoria> |
|
<prefisso dell'area di memoria> |
Richiesto
|
|
<prefisso dimensione> |
Opzionale
|
|
<posizione di memoria> |
<numero posizione> . <numero posizione bit> Esempio: %IB2.4 indica il 5° bit del 3° byte. |
|
<numero di posizione>. |
Richiesto La numerazione dipende dal sistema di destinazione e inizia da 0. |
|
. <numero di posizione del bit> |
Opzionale 0...7 per un byte |
|
<tipo di dati> |
Opzionale Il tipo di dati deve corrispondere al prefisso della dimensione. |
Esempi
|
|
Dichiarazione di variabile con informazioni sull'indirizzo di una parola in ingresso |
|
|
Dichiarazione di variabile booleana Nota: Per le variabili booleane, viene allocato internamente un byte se non viene
specificato un indirizzo a singolo bit. Una variazione del valore di |
|
|
Dichiarazione di variabile booleana con indicazione esplicita di un indirizzo a singolo bit All'accesso, viene letto solo il bit di ingresso 7.5. |
|
|
Per la specifica dell'indirizzo, al posto della posizione di memoria viene indicato
il segnaposto Nota: Questo è possibile nei blocchi funzione. |
Suggerimenti utili
Se non si specifica esplicitamente un indirizzo a singolo bit, le variabili booleane vengono allocate byte per byte.
Gli indirizzi dei singoli bit mappati su variabili booleane hanno delle restrizioni. Non è possibile utilizzare queste variabili con VAR_IN_OUT, REFERENCE TO o l'operatore ADR.
Quando si assegna una variabile a un indirizzo, si noti quanto segue:
-
Non è possibile scrivere su variabili posizionate sugli ingressi. Questo causerà un errore del compilatore.
-
È possibile eseguire dichiarazioni AT solo per le variabili locali e globali, non per le variabili di input/output delle POU.
-
Inoltre, le dichiarazioni AT non possono essere utilizzate negli elenchi di variabili persistenti.
-
Se si utilizzano le dichiarazioni AT per i componenti della struttura o le variabili del blocco funzione, tutte le istanze utilizzano la stessa memoria. Ciò corrisponde all'uso di "variabili statiche" nei linguaggi di programmazione classici come il "C".
-
Anche la disposizione delle strutture in memoria dipende dal sistema di destinazione.
Esempio
PROGRAM PLC_PRG
VAR
xVar AT %QW0 : BOOL;
END_VAR
xVar := TRUE;
Quando viene scritta la variabile xVar, viene influenzato l'intervallo di memoria di uscita compreso tra QX0.0 e QX0.7.