Insieme con attribute symbol, il pragma {attribute namespace} permette di ridefinire lo spazio dei nomi delle variabili di progetto. Può essere applicato a interi POU, come GVL o programmi, ma non a variabili particolari. Le variabili interessate saranno esportate con la nuova definizione di namespace in un file di simboli e, dopo un download di questo file, saranno disponibili nel controller.
Questo permette anche di accedere alle variabili dai POU o dalle visualizzazioni che originariamente hanno namespace diversi. Ad esempio, consente di eseguire una precedente visualizzazione di EcoStruxure Machine Expert anche in un ambiente EcoStruxure Machine Expert più recente.
Per maggiori informazioni, vedere la descrizione della configurazione dei simboli. Un nuovo file di simboli verrà creato durante il download o una modifica online del progetto. Viene scaricato nel controller insieme all'applicazione.
{attribute 'namespace' := '<spazio dei nomi>'}
Esempio di sostituzione dello spazio dei nomi per le variabili di un programma
{attribute 'namespace':='prog'}
PROGRAM PLC_PRG
VAR
{attribute 'symbol' := 'readwrite'}
iVar:INT;
bVar:BOOL;
END_VAR
Se, ad esempio, prima si accedeva a iVar con App1.PLC_PRG.ivar, adesso è possibile accedervi mediante prog.ivar.
Namespace originale |
Variabile |
Namespace sostitutivo |
Accesso alla variabile nel progetto corrente |
---|---|---|---|
App1.Lib2.GVL2 |
Var07 |
{attribute 'namespace':=''} |
.Var07 |
App1.GVL2 |
Var02 |
{attribute 'namespace':='Ext''} |
Ext.Var02 |
App1.GVL2.FB1 |
Var02 |
{attribute 'namespace':='App1.GVL2''} |
App1.GVL2.Var02 |
Le sostituzioni mostrate nella tabella hanno come risultato le seguenti voci nel file dei simboli:
<NodeList>
<Node name="">
<Node name="Var07" type="T_INT" access="ReadWrite">
</Node>
</NodeList>
<NodeList>
<Node name="Ext">
<Node name="Var02 " type="T_INT" access="ReadWrite"></Node>
</Node>
</NodeList>
<NodeList>
<Node name="App1">
<Node name="GVL2">
<Node name="Var02 " type="T_INT" access="ReadWrite"></Node>
</Node>
</Node>
</NodeList>