Variabili: Inserire e dichiarare

Quando si dichiarano e inseriscono variabili in FdL di codice valgono le seguenti regole.

Si possono...

  • Inserire nuove variabili locali e variabili globali simboliche e dichiararle allo stesso tempo usando il dialogo 'Variabili' (si veda il procedimento qui sotto). In questo modo, la dichiarazione viene inserita automaticamente nel relativo FdL per variabili (locali o globali).

    Il procedimento è diverso per le variabili I/O globali. Queste vengono create automaticamente quando si trascina un elemento di dati di processo (morsetto di dispositivo) dalla finestra dei 'Dispositivi' e lo si rilascia in un FdL di codice.

  • Inserire variabili già dichiarate nel codice (tutti gli ambiti). Ciò si può fare con il dialogo 'Variabili' o con drag & drop dal FdL per variabili.

Rispettare le regole di dichiarazione quando si dichiarano o modificano variabili.

NOTA:

Per distinguere meglio tra le variabili standard e le variabili di sicurezza, le variabili di sicurezza sono rappresentate con sfondo rosso nel codice grafico. Le variabili di tipi di dati standard sono rappresentate senza sfondo.

NOTA:

Variabili di sicurezza e variabili standard si possono combinare in schemi SBF/LD. In schemi misti simili, i percorsi di segnale di sicurezza principali sono evidenziati graficamente. Ci sono alcune regole e restrizioni da rispettare.

Come inserire variabili nel codice

Come inserire una variabile nel codice e dichiararla allo stesso tempo

  1. Si possono inserire variabili non connesse o connesse/assegnate:

    • Per inserire una variabile non connessa ad alcun oggetto, cliccare su una posizione libera del FdL e premere <F5> o cliccare sull'icona 'Variabile' nella barra strumenti:

    • Per inserire una variabile e connetterla direttamente a una FU o a un BF con l'inserimento, fare doppio clic sul parametro formale che occorre. Esempio:

    • Per inserire una nuova variabile per un contatto o una bobina, cliccare sul rispettivo oggetto LD. Esempio:

    In tutti i casi, si apre il dialogo 'Variabili'.

  2. Selezionare l''Ambito' della variabile:

    • Per dichiarare una nuova variabile locale, selezionare il pulsante di opzione 'Locale'.

    • Per dichiarare una nuova variabile globale simbolica, selezionare il pulsante di opzione 'Globale'.

    Tenere a mente che solo le variabili globali simboliche si possono creare in questo modo, ma non le variabili globali I/O. Le variabili I/O vengono create automaticamente quando si trascina un elemento di dati di processo (morsetto di dispositivo) dalla finestra dei 'Dispositivi' e lo si rilascia in un FdL di codice.

  3. Immettere un nuovo nome di variabile nella casella 'Nome'.

    Dopodiché anche gli altri campi di dialogo diventano attivi per l'editazione.

    Convenzioni di nomenclatura: Machine Expert – Safety permette l'uso di qualificatori DIN nei nomi di variabili CEI 61131.

    Regole per utilizzare qualificatori DIN

    In base alla norma CEI 61131, i nomi di variabili possono consistere di lettere, cifre e trattini bassi (underscore). L'identificatore deve iniziare con un carattere alfabetico o un trattino basso. Ogni altro carattere causa l'errore di compilazione "Identificatore non permesso".

    Questa convenzione di nomenclatura in Machine Expert – Safety è stata estesa in modo che i nomi di variabili a norma CEI 61131 possano contenere anche qualificatori DIN:

    • I caratteri - + < > sono permessi in ogni posizione all'interno del nome e come ultimo carattere. Non possono però essere usati come primo carattere del nome di variabile.

    • I qualificatori DIN / * # e le cifre da 0 a 9 si possono usare in ogni posizione del nome della variabile.

    Regole per usare qualificatori DIN in nomi di variabili a norma CEI 61131

    • I nomi delle variabili devono contenere almeno un carattere alfabetico.

    • Le variabili non possono portare il nome di un tipo di dati CEI 61131, come BOOL, INT, WORD, REAL ecc.

    • I nomi di variabili non possono essere definiti come per i valori letterali. I letterali nel codice si usano specificando prima il tipo di dati letterale seguito da un segno hash: <literal_prefix>#<value>. SAFEINT#5 e WORD#32767, ad esempio, sono letterali. Una dichiarazione di variabile del tipo safeint#MyVar perciò non sarebbe valida.

      I prefissi letterali non sono sensibili alla distinzione tra maiuscole e minuscole e includono le seguenti parole chiave:

      BOOL, REAL, LREAL, SINT, USINT, INT, UINT, DINT, UDINT, LINT, ULINT, BYTE, WORD, DWORD, LWORD, TIME, T, DATE, D, TIME_OF_DAY, TOD, DATE_AND_TIME, DT, STRING, TIMEDATE48, WEIGHT, ANALOG, UNIFRACT, BIFRACT200, FIXED, BOOLEAN2, BCD4, ENUM4, SAFEBOOL, SAFEBYTE, SAFEDWORD, SAFEINT, SAFEDINT, SAFETIME, SAFEWORD

  4. In questo dialogo, specificare la variabile da inserire completando i campi del dialogo.

    Dall'elenco a selezione 'Tipo di dati' si possono selezionare solo i tipi di dati permessi nel contesto attuale, in altre parole le voci disponibili dipendono dal parametro formale o oggetto selezionato.

    Quando si dichiara una variabile globale simbolica, non è possibile selezionarne un 'Utilizzo' perché la parola chiave di dichiarazione 'VAR_GLOBAL' si riferisce automaticamente a tutte le variabili globali.

  5. Infine premere 'OK' per inserire la variabile nel FdL di codice SBF/LD e la dichiarazione nel corrispondente FdL per variabili.

Come inserire una variabile già dichiarata con il dialogo 'Variabili'

Può verificarsi il caso che la dichiarazione di una variabile sia già disponibile nel FdL per variabili e che questa variabile debba essere inserita nel codice o assegnata a un oggetto LD.

Per le variabili I/O globali questa condizione si verifica quando una variabile di questo tipo è stata creata trascinando un elemento di dati di processo (morsetto di dispositivo) dalla finestra dei 'Dispositivi' e poi rilasciata in un FdL di codice.

Procedere come segue:

  1. Si possono inserire variabili non connesse o connesse/assegnate:

    • Per inserire una variabile non connessa ad alcun oggetto, cliccare su una posizione libera del FdL e premere <F5> o cliccare sull'icona 'Variabile' nella barra strumenti:

    • Per inserire una variabile e connetterla direttamente a una FU o a un BF con l'inserimento, fare doppio clic sul parametro formale che occorre. Esempio:

    • Per inserire una nuova variabile per un contatto o una bobina, cliccare sul rispettivo oggetto LD. Esempio:

    In tutti i casi, si apre il dialogo 'Variabili'.

  2. Selezionare un 'Ambito', ossia il FdL per variabili contenente la dichiarazione selezionando il corrispondente pulsante di opzione.

    Esempio: Dopo aver settato l'ambito a 'Globale', tutte le variabili contenute nel FdL per variabili globali sono selezionabili.

  3. Selezionare il 'Gruppo' nel quale si trova la dichiarazione all'interno del FdL per variabili (indicato da 'Ambito').

  4. Aprire l'elenco 'Nome' e marcare la variabile da inserire.

  5. Cliccare su 'OK' per chiudere il dialogo e inserire la variabile.

NOTA:

Per modificare la dichiarazione di una variabile già utilizzata in un FdL di codice, cliccare con il tasto destro sulla variabile e selezionare il comando 'Vai a definizione di variable_name' dal menu di contesto. Viene quindi aperto il FdL per variabili, la riga di dichiarazione è marcata.

Come inserire con drag & drop una variabile già dichiarata

Questo metodo non è adatto per assegnare variabili a oggetti LD già inseriti. È tuttavia possibile inserire una variabile booleana come contatto usando drag & drop (si veda la nota sottostante).

  1. Disporre il FdL di codice e il FdL per variabili in modo che entrambi siano visibili (ad es. usando i comandi di menu 'Finestra > Sovrapponi' o 'Finestra > Affianca...').

  2. Nel FdL per variabili, cliccare con il tasto sinistro nella prima colonna ('Nome') della variabile che occorre (vedere (1) nella figura sotto).

  3. Trascinare la variabile dal FdL per variabili nel codice.

  4. Rilasciare il tasto sinistro del mouse. Appare una sagoma che rappresenta la variabile (2a in figura).

    NOTA:

    Inserire una variabile booleana come contatto: Tenere premuto il tasto <Ctrl> al momento del rilascio del pulsante del mouse dopo aver trascinato la variabile dalla tabella nel FdL di codice. La variabile ora appare come contatto (2b in figura) che si può collegare direttamente a un parametro formale.

  5. Spostare la sagome della variabile (o contatto) alla posizione voluta e cliccare con il tasto sinistro per rilasciarla. Rilasciando la variabile / il contatto sul punto di connessione di un altro oggetto, il collegamento viene stabilito con l'inserimento, come nella figura sotto (3a con variabile/ 3b con contatto).

Per modificare le proprietà (tipo di oggetto) di un contatto inserito in questo modo, procedere come descritto nell'argomento "Contatti/bobine: modificare proprietà".

Regole di dichiarazione per variabili

Le variabili si dichiarano a norma CEI 61131-3. Le regole e restrizioni definite dalla norma vengono rispettate automaticamente quando l'editazione avviene con l'ausilio del dialogo 'Variabili'. Il dialogo aiuta ad evitare errori di sintassi, quali errori di annidamento dei blocchi di dichiarazione o tipi di dati errati.

Quando si dichiara una variabile usando il dialogo 'Variabili' come sopra descritto, il sistema immette automaticamente la dichiarazione nel FdL per variabili corretto. Perciò, basta selezionare un 'Ambito' e un 'Gruppo' di appartenenza in questo dialogo, senza doversi occupare della corretta ubicazione della dichiarazione.

A parte ciò, ci sono alcune regole di dichiarazione aggiuntive da rispettare per le variabili.

Altre informazioni:

Maggiori informazioni si trovano nella descrizione del dialogo 'Variabili' e nell'argomento "Implementazione CEI 61131 – Variabili".