Modifica dei valori delle variabili
codice G: G36, G37
Funzione: I comandi cambiano il valore di una variabile. G36 scrive il valore specificato in una variabile. G37 incrementa la variabile del valore specificato. O$var$ definisce la variabile che viene modificata. D definisce il valore che è scritto per G36 o aggiunto per G37. Il comando viene utilizzato, ad esempio, per un contatore di loop necessario per i salti condizionali.
Sintassi
G36 O D G37 O D
Parola di codice G per G36 | Descrizione |
|---|---|
O | Variabile scritta. La variabile interna può essere utilizzata nel Salto comando. |
D | Nuovo valore variabile |
Parola di codice G per G37 | |
O | Variabile che viene incrementata. Se |
D | Incremento |
Programmazione del contatore (se il percorso viene elaborato online)
Il
g_ila variabile globale è impostata su 5.
N1000 G36 O$g_i$ D5
Le linee 1010 e 1020 vengono percorse cinque volte.
N1000 G36 O$g_i$ D5 N1010 G1 X100 F100 E100 E-100 N1020 G1 X0 N1030 G37 O$g_i$ D-1 N1040 G20 L1010 K$g_i$
Suggerimento
Il meccanismo funziona solo se il percorso viene elaborato online, perché solo così è possibile utilizzare le variabili. Questo meccanismo non funziona nell'editor CNC.
Programmazione del contatore per la modalità offline
Per lavorare con l'editor offline, non specificare nessuna variabile tramite O. Quindi una variabile di decodifica implicita di tipo INT viene utilizzato. Tuttavia, è disponibile solo una variabile. Non è possibile programmare salti o loop nidificati.
Utilizzo di variabili stringa
Puoi usare una variabile stringa nella parola O nel codice G. Inoltre, a questa variabile può essere assegnato e inserito un valore di stringa tramite il comando G36 e G37.
N10 G36 O$strTest$ D'Name'
Il strTest variabile ottiene il valore Nome.
N20 G37 O$strTest$ D'=Test'
Il valore =Test viene aggiunto alla variabile strTest.
Suggerimento
Se si utilizzano variabili stringa nel programma CNC e se il programma CNC (nel programma IEC) viene letto mediante il tasto SMC_ReadNCFile blocco funzione, quindi i buffer per le stringhe devono essere riservati nel programma IEC. Altrimenti, l'errore SMV_RNCF_NO_STRINGBUFFER si verifica. Il SMC_StringBuffer blocco funzione è disponibile per questo scopo.
Ogni stringa del programma CNC richiede il proprio spazio nell'istanza del blocco funzione di SMC_StringBuffer, anche se la stessa stringa si verifica più volte.
La seguente dichiarazione può bufferizzare 32 stringhe, ad esempio:
sb: SMC_StringBuffer(uiBufferSize := 32);
L'istanza del blocco funzione sb viene passato come puntatore al pStringBuffer ingresso del SMC_ReadNCFile esempio.