Salto
codice G: G20
Funzione: Il comando esegue un salto condizionato.
Sintassi
G20 L K
Parola in codice G | Descrizione |
---|---|
L | . Obiettivo di salto:
|
K | Condizione Se K <> 0, il salto viene eseguito. Se K non è definito, viene utilizzata una variabile di decodifica interna. Il valore della variabile del decodificatore interno può essere definito con Modifica dei valori delle variabili comando. Il valore predefinito di questa variabile interna è |
Dieci righe sono collegate tra loro dalla relativa modalità. Ciò si traduce in un movimento di linea a 100/100.
N00 G36 D10 (Setzen des Zählers auf 10) N10 G91 (Relativer Modus) N20 G01 X10 Y10 F100 (Bewegung um Distanz 10/10) N30 G37 D-1 (Zähler dekrementieren) N40 G20 L20 (Sprung, wenn Zähler != 0)
Requisito: Il comportamento della variabile bvar
è programmato nell'applicazione. Se l'asse X supera la posizione 15, allora bvar FALSE
è impostato. (bVar
è inizialmente impostato su TRUE
.)
Nel primo ciclo di programma, la posizione X è 10 e il programma salta alla riga 20. Il ciclo viene eseguito continuamente perché la valutazione della condizione avviene al momento della decodifica e l'interpolatore non è stato ancora avviato o è occupato con l'elaborazione di oggetti all'inizio del buffer. Questa condizione è soddisfatta e il decodificatore salta fuori dal ciclo solo dopo che sono stati generati abbastanza oggetti da riempire il buffer e l'interpolatore inizia l'elaborazione.
Nella seconda esecuzione, l'asse X non è ancora nella posizione 20. La condizione non è soddisfatta e bVar
non era impostato su FALSE
nel codice IEC.
N0 G92 X0 Y0 N10 G91 (Relativer Modus) N20 G01 X10 Y10 F100 (Bewegung um Distanz 10/10) N30 G20 L20 K$bvar$ (Sprung, wenn Zähler != 0)
G75 esegue una sincronizzazione temporale dell'interpolatore. G75 sospende l'elaborazione del decoder fino a quando l'interpolatore e la meccanica raggiungono la rispettiva posizione.
N0 G92 X0 Y0 N10 G91 (Relativer Modus) N20 G01 X10 Y10 F100 (Bewegung um Distanz 10/10) N25 G75 N30 G20 L20 K$x$ (Sprung, wenn Zähler != 0)
Per ulteriori informazioni, vedere: Sincronizzazione dei tempi con l'interpolatore
Nota: i salti alle etichette di salto funzionano solo nel decoder online (non nell'editor CNC).
N0 G16 F100 E100 E-100 N10 G20 L?4 //unconditional jump to the unknown target with index 4 N15 G20 L60 N20 G1 X1 N30 G1 X1 L!5 //resolution unknown jump target with index 5 N40 G1 Z1 L!4 //resolution unknown jump target with index 4 N50 G20 L15 N55 G1 Y1 N60 G0 X0 Y0 Z0