Skip to main content

Dichiarazione AT

Utilizzo di un chiaro editor di configurazione per la mappatura I/O

Si sconsiglia di assegnare gli indirizzi di memoria come descritto qui, poiché ciò può portare a una perdita di chiarezza.

Si consiglia di assegnare indirizzi di memoria alle variabili nell'editor di configurazione Modifica immagine I/O del dispositivo.

La parola chiave AT nella dichiarazione delle variabili assegna a una variabile di progetto un indirizzo di input, di output o di memoria specifico del controller configurato nell'albero dei dispositivi.

La dichiarazione AT consente di assegnare all'indirizzo un nome significativo. È possibile apportare le modifiche necessarie al segnale in entrata o in uscita solo in un punto, ad esempio nella dichiarazione.

Suggerimento

È possibile apportare le modifiche necessarie ai segnali di ingresso o di uscita in una sola posizione (ad esempio, nella dichiarazione).

Per ulteriori informazioni, vedere:

Sintassi

<nome della variabile> AT %<indirizzo>:<tipo di dati>;

<nome della variabile>

Richiesto

% <indirizzo>

Richiesto

Indirizzo nell'area di memoria

% <prefisso dell'area di memoria> <prefisso di dimensione> <posizione di memoria>

<prefisso dell'area di memoria>

Richiesto

  • I: Area di memoria di input

    Area di memoria per segnali di ingresso e ingressi

    Per ingressi fisici tramite driver di ingresso e sensori

  • Q: Area di memoria di uscita

    Area di memoria per segnali di uscita e uscite

    Per uscite fisiche tramite driver di uscita e attuatori

  • M: Contrassegna l'area di memoria

<prefisso di dimensione>

Facoltativo

  • Nessun prefisso di dimensione: bit

    Bit singolo

  • X: Bit

    Bit singolo

  • B: Byte

    Larghezza dati a 8 bit

  • W: Parola

    Larghezza dati a 16 bit

  • D: Spada

    Larghezza dati a 32 bit

<posizione di memoria>

<numero di posizione > . <numero di posizione del bit>

Esempio: %IB2.4 rappresenta il quinto bit del terzo byte

<numero di posizione >

Richiesto

La numerazione dipende dal sistema di destinazione e inizia da 0.

. <numero di posizione del bit>

Facoltativo

0.. 7 per un byte

<tipo di dati>

Facoltativo

Il tipo di dati deve corrispondere al prefisso della dimensione.

Esempio 21. Esempi
VAR 
    wInput AT %IW0 : WORD; 
END_VAR

Dichiarazione di variabili con indicazione dell'indirizzo di una parola di ingresso

VAR 
    xActuator AT %QW0 : BOOL; 
END_VAR

Dichiarazione di variabile booleana

Nota: un byte viene allocato internamente per le variabili booleane se non viene specificato alcun indirizzo a bit singolo. Una variazione di valore di xActuator interessa quindi l'area di QX0.0 Fino a QX0.7.

VAR
    xSensor AT %IX7.5 : BOOL; 
END_VAR

Dichiarazione di variabile booleana con specifica esplicita di un indirizzo a bit singolo

Durante l'accesso viene letto solo il bit di ingresso 7.5.

VAR 
    xSensor AT %IX* : BOOL; 
END_VAR

Quando si specifica l'indirizzo, viene utilizzato il segnaposto al posto della posizione di archiviazione * specificato. La specifica dell'indirizzo finale viene effettuata nella configurazione delle variabili.

Nota: questo è possibile nei blocchi funzione.



Suggerimenti utili

Importante

A meno che non specifichi esplicitamente un indirizzo a bit singolo, le variabili booleane vengono allocate byte per byte.

Importante

Gli indirizzi di bit individuali mappati su variabili booleane sono soggetti a restrizioni. Non è possibile utilizzare queste variabili VAR_IN_OUT, REFERENCE TO, o il ADR operatore.

Quando si assegna una variabile a un indirizzo, è necessario considerare quanto segue:

  • Non è possibile scrivere su variabili assegnate a un ingresso. Questo porta a un errore del compilatore.

  • Puoi fare AT dichiarazioni solo per variabili locali e globali, non per variabili di input e output delle POU.

  • Non devi usare AT dichiarazioni in elenchi di variabili permanenti.

  • Se usi AT dichiarazioni per i membri della struttura o le variabili dei blocchi di funzione, quindi tutte le istanze utilizzano la stessa memoria. Ciò corrisponde all'uso di «variabili statiche» nei linguaggi di programmazione classici come «C

  • La disposizione della memoria delle strutture dipende anche dal sistema di destinazione.

Esempio

PROGRAM PLC_PRG
VAR
    xVar AT %QW0 : BOOL;
END_VAR
xVar := TRUE;

Quando si scrivono le variabili xVar è l'area di memoria iniziale di QX0.0 Fino a QX0.7 ricercato.