Skip to main content

Variabili locali

Ogni file di codice G può dichiarare variabili locali. Per i programmi principali, le dichiarazioni devono essere inserite all'inizio; per i sottoprogrammi, subito dopo la dichiarazione del sottoprogramma.

Le variabili locali sono visibili solo nel programma o sottoprogramma in cui sono dichiarate. (Nessun ambito dinamico)

Suggerimento

Le variabili locali funzionano solo nel decoder online (non nell'editor CNC).

Numero di variabili locali

  • Prima della versione 4.18.0.0: il numero di variabili locali è limitato a 21 per sottoprogramma e nel programma principale.

  • Versione 4.18.0.0 e successive: il numero di variabili locali è limitato solo dalla memoria. Il valore massimo può essere modificato utilizzando SMC_CNC_LIBPARAMS.MAX_SUBPROGRAM_PARAMS.

    Per ulteriori informazioni, vedere: Parametri della libreria

Sintassi per la dichiarazione

La sintassi è simile alla sintassi utilizzata per dichiarare i parametri del sottoprogramma. È possibile dichiarare una variabile per blocco. Il blocco non inizia con una N-word. La variabile può essere fornita con un valore iniziale opzionale quando viene dichiarata. In caso contrario, viene assegnato un valore predefinito a seconda del tipo di dati (LREAL: 0, BOOL: FALSE, STRING: ‘‘).

Sintassi della dichiarazione: LET <FormalParam> [:= <InitialValue>].

<FormalParam> ::= <ParamName> : <ParamType>
<ParamName>   ::= #[a-zA-Z0-9_]+

<ParamType> ::= LREAL | BOOL | STRING ; String mit maximaler Länge von 255 Bytes

<InitialValue>: Espressione che ha un valore e un tipo che corrisponde alla variabile. L'espressione può utilizzare anche variabili locali (e nei sottoprogrammi i parametri del sottoprogramma), ma solo quelle dichiarate sopra nel codice del programma.

Esempi

•   LET #x : LREAL            (* Variable #x, Typ LREAL, Initialwert 0 *)
•   LET #y : LREAL := #x + 1  (* Variable #y, Typ LREAL, Initialwert #x+1 = 1 *)
•   LET #b : BOOL := #x >= #y (* Variable #b, Typ BOOL, Initialwert FALSE *)

Come con i parametri del sottoprogramma, le variabili locali non fanno distinzione tra maiuscole e minuscole. (Entrambi #x e #X indicare la stessa variabile.) I nomi di tutte le variabili locali dichiarate in un programma/sottoprogramma devono essere diversi. Devono differire dai nomi dei parametri formali del sottoprogramma.

Le variabili locali possono essere utilizzate in codice G come parametri di sottoprogrammi.

Esempi

•   N10 G01 X#x Y#y
•   N20 G20 L10 K#b