Codici G (G-code): Lista Completa e Significato

In sintesi: i codici G (G-code) sono i comandi “preparatori” che governano i movimenti e le modalità di lavoro di una CNC: posizionamenti rapidi (G00), interpolazioni lineari (G01) e circolari (G02/G03), coordinate assolute o incrementali (G90/G91), origini pezzo (G54), compensazioni utensile e cicli fissi. Qui trovi la lista completa, raggruppata per funzione e spiegata con esempi.

Se stai imparando a leggere o scrivere un programma CNC, i codici G sono il primo mattone. Sono comandi brevi — una lettera G seguita da un numero — che dicono alla macchina come muoversi e in quale modalità lavorare. In questa guida li vediamo tutti, raggruppati per famiglia così da capirne la logica invece di impararli a memoria. Per il quadro generale parti dalla guida alla programmazione CNC.

Cosa sono i codici G

I codici G si chiamano preparatori perché “preparano” la macchina a eseguire un certo tipo di movimento o a lavorare in una certa modalità. La maggior parte è modale: una volta attivati restano in vigore finché non li sostituisci con un altro codice dello stesso gruppo. Per esempio, dopo un G01 tutti i movimenti successivi restano lineari finché non scrivi G00 o G02.

Codici G di movimento

Sono i più usati in assoluto, perché definiscono come l’utensile si sposta:

  • G00 — posizionamento rapido, a vuoto: serve per avvicinarsi al pezzo senza tagliare.
  • G01 — interpolazione lineare: movimento in linea retta alla velocità di avanzamento F.
  • G02 — interpolazione circolare in senso orario.
  • G03 — interpolazione circolare in senso antiorario.

Un esempio: G01 X40.0 Y10.0 F150 significa “vai in linea retta fino a X40 Y10 a 150 mm/min”. Per gli archi (G02/G03) si aggiungono il raggio R oppure i parametri di centro I, J, K.

Piani di lavoro e unità di misura

Prima di lavorare archi e fori, la macchina deve sapere su quale piano muoversi e in quali unità ragionare:

  • G17 / G18 / G19 — selezionano il piano di lavoro XY, XZ o YZ.
  • G20 / G21 — impostano le misure in pollici o in millimetri.

Coordinate assolute e incrementali

È uno dei concetti più importanti e una fonte classica di errori:

  • G90 — coordinate assolute: ogni quota è riferita all’origine pezzo.
  • G91 — coordinate incrementali: ogni quota è riferita alla posizione precedente.

Scambiare G90 e G91 manda l’utensile in posti completamente diversi: approfondiamo il tema nella guida alla programmazione ISO.

Origini pezzo e compensazioni

Questi codici dicono alla macchina “dove” è il pezzo e come tener conto del diametro e della lunghezza dell’utensile:

  • G54–G59 — selezionano le origini pezzo memorizzate (i sistemi di coordinate di lavoro).
  • G41 / G42 — attivano la compensazione del raggio utensile a sinistra o a destra del profilo.
  • G43 — attiva la compensazione della lunghezza utensile.
  • G40 — annulla la compensazione del raggio.

Avanzamento e mandrino

Alcuni codici G governano il modo in cui si interpretano avanzamento e velocità:

  • G94 / G95 — avanzamento in mm/min oppure in mm/giro.
  • G96 / G97 — velocità di taglio costante (tipico in tornitura) oppure giri mandrino costanti.

Per scegliere i valori giusti di avanzamento e giri usa il calcolatore dei parametri di taglio.

I codici G dei cicli fissi

Quando devi forare, maschiare o filettare, non serve scrivere ogni singolo movimento: ci pensano i cicli fissi, richiamati da codici dedicati come G81 (foratura), G83 (foratura profonda a tappe), G84 (maschiatura) e G76 (filettatura), chiusi da G80. Li spieghiamo uno per uno nella guida ai cicli fissi.

Tabella riepilogo dei codici G

CodiceFunzione
G00Posizionamento rapido
G01Interpolazione lineare
G02 / G03Interpolazione circolare oraria / antioraria
G17 / G18 / G19Piano di lavoro XY / XZ / YZ
G20 / G21Pollici / millimetri
G28Ritorno allo zero macchina
G40 / G41 / G42Annulla / compensazione raggio sinistra / destra
G43Compensazione lunghezza utensile
G54–G59Origini pezzo
G80–G89Cicli fissi (foratura, maschiatura…)
G90 / G91Coordinate assolute / incrementali
G94 / G95Avanzamento mm/min / mm/giro
G96 / G97Velocità costante / giri costanti

Ricorda che alcuni codici specifici cambiano da un controllo all’altro (Fanuc, Heidenhain, Siemens): in caso di dubbio, fa fede il manuale della tua macchina.

Esempio: contornare un quadrato in G-code

Vediamo i codici G all’opera su un caso semplice: contornare un quadrato di lato 40 mm partendo dall’origine, in millimetri e in coordinate assolute.

BloccoCosa fa
G21 G90 G17Millimetri, coordinate assolute, piano XY
G00 X0 Y0Rapido all’angolo di partenza
G01 X40 F150Lato inferiore, in linea retta a 150 mm/min
G01 Y40Lato destro
G01 X0Lato superiore
G01 Y0Lato sinistro, ritorno all’origine
G00 Z10Rapido in salita, a distanza di sicurezza

Nota come, grazie alla modalità modale, G01 non vada ripetuto a ogni riga: una volta attivato resta valido per i blocchi successivi. Trovi un programma completo, commentato dall’inizio alla fine, nella guida all’esempio di programma CNC.

Errori comuni con i codici G

  • Confondere G90 e G91: lavorare in incrementale pensando di essere in assoluto manda l’utensile fuori posizione. Verifica sempre quale è attivo.
  • Dimenticare G40: lasciare attiva la compensazione raggio quando non serve produce profili sbagliati.
  • Piano di lavoro errato: un arco G02/G03 sul piano sbagliato non viene come previsto. Controlla G17/G18/G19.
  • G00 dentro il materiale: il rapido non è pensato per tagliare; usalo solo a vuoto, in sicurezza.
  • Unità non impostate: dimenticare G20/G21 può far interpretare le quote nell’unità sbagliata.

Domande frequenti

Qual è la differenza tra G00 e G01?
G00 è un movimento rapido a vuoto, usato per spostarsi velocemente senza tagliare; G01 è un movimento in linea retta alla velocità di avanzamento, usato per lavorare il materiale.

Cosa vuol dire che un codice G è “modale”?
Significa che resta attivo finché non lo sostituisci con un altro codice dello stesso gruppo. Per esempio, dopo G01 tutti i movimenti restano lineari finché non scrivi G00, G02 o G03.

Qual è la differenza tra G90 e G91?
Con G90 le coordinate sono assolute (riferite all’origine pezzo); con G91 sono incrementali (riferite alla posizione precedente). È fondamentale sapere quale è attivo.

A cosa serve G54?
G54 (fino a G59) seleziona un’origine pezzo memorizzata, cioè il sistema di coordinate rispetto al quale la macchina interpreta le quote del programma.

I codici G sono uguali su tutte le macchine?
Le basi sì, ma alcuni codici e comportamenti variano tra i diversi controlli. Per i dettagli fa sempre fede il manuale del costruttore.

Per vedere i codici G spiegati a lezione, guarda questo video:

Conclusioni

I codici G non sono una lista da memorizzare a forza: sono un piccolo insieme di comandi con una logica chiara, divisi in famiglie (movimento, coordinate, origini, compensazioni, cicli). Una volta capite le famiglie, leggere e scrivere un programma diventa naturale. Tieni a portata questa pagina come riferimento e prosegui con i codici M e con un esempio di programma commentato.

Guide tecniche su lavorazioni meccaniche, CNC, tolleranze ISO e strumenti di misura. Risorse pratiche per tecnici, operatori e studenti.

In qualità di Affiliato Amazon io ricevo un guadagno dai relativi acquisti idonei. «Amazon» e il logo Amazon sono marchi di Amazon.com, Inc. o delle sue affiliate.

I marchi, i loghi e i nomi commerciali eventualmente citati appartengono ai rispettivi proprietari e sono utilizzati a solo scopo descrittivo e identificativo, senza alcuna affiliazione o sponsorizzazione salvo ove diversamente indicato.