📌 Introduzione
Le macchine CNC (Controllo Numerico Computerizzato) sono strumenti avanzati per la lavorazione dei metalli e di altri materiali, utilizzate in settori come l’industria manifatturiera, aerospaziale e automobilistica. Per operare correttamente su una macchina CNC, è fondamentale comprendere il linguaggio G-Code, le impostazioni di origine del pezzo e la manutenzione della macchina.
Questo modulo ti guiderà attraverso i principali comandi G e M, le modalità di programmazione e le pratiche di manutenzione per garantire il corretto funzionamento della macchina.
🔹 1. Introduzione ai comandi G e M
📌 Cosa sono i comandi G e M?
Le macchine CNC operano attraverso un linguaggio standardizzato, noto come G-Code, che indica come la macchina deve muoversi e operare durante il ciclo di lavoro. Ogni comando G-Code è preceduto da una lettera seguita da un numero.
I comandi G (Geometrici) servono per definire i movimenti e le operazioni geometriche sulla macchina, come spostamenti lineari, circolari, compensazioni e impostazioni delle coordinate.
I comandi M (Miscellaneous) controllano funzioni ausiliarie come accensione e spegnimento del mandrino, cambio utensile, attivazione del refrigerante e gestione della fine programma.
📌 Struttura di un programma CNC
Un programma CNC è composto da una sequenza di comandi che vengono letti dalla macchina riga per riga. Ogni linea di codice viene chiamata blocco.
Esempio di programma CNC semplice:
G21 ; Imposta unità in millimetri
G90 ; Modalità assoluta
G00 X50 Y50 ; Movimento rapido a X50 Y50
G01 X100 Y100 F500 ; Movimento lineare a 100 mm/min
M03 S1000 ; Avvia il mandrino a 1000 RPM
G02 X150 Y150 I50 J0 ; Movimento circolare orario
M30 ; Fine programma
📌 Analisi del codice:
Comandi di impostazione generale:
- G21 → Imposta il sistema di misura in millimetri. Se omesso, la macchina potrebbe lavorare in pollici (G20 imposta in pollici).
- G90 → Seleziona la modalità assoluta, quindi ogni coordinata sarà relativa allo zero macchina o pezzo.
Comandi di movimento:
- G00 X50 Y50 → Movimento rapido senza controllo della velocità , utile per spostamenti a vuoto.
- G01 X100 Y100 F500 → Movimento controllato con velocità F500 mm/min.
- G02 X150 Y150 I50 J0 → Movimento circolare orario con centro a 50 mm a sinistra dell’inizio del movimento.
Comandi ausiliari (M-Codes):
- M03 S1000 → Accende il mandrino in senso orario alla velocità di 1000 RPM.
- M30 → Fine programma e reset della macchina.
📌 Struttura e ordine di esecuzione
Un programma CNC segue un ordine logico:
- Definizione delle unità di misura e della modalità di programmazione (G21, G90).
- Spostamenti iniziali e posizionamento dell’utensile (G00, G54).
- Avvio del mandrino e attivazione delle funzioni ausiliarie (M03, M08).
- Lavorazione del pezzo (G01, G02, G03, cicli di foratura).
- Ritorno alla posizione di sicurezza e fine programma (G28, M30).
📌 Differenza tra G-Code e M-Code
| Codice | Funzione | Esempio |
| G00 | Movimento rapido | G00 X50 Y50 |
| G01 | Movimento lineare controllato | G01 X100 Y100 F500 |
| G02 | Movimento circolare orario | G02 X150 Y150 I50 J0 |
| G03 | Movimento circolare antiorario | G03 X150 Y150 I-50 J0 |
| G21 | Imposta unità in millimetri | G21 |
| G90 | Modalità di programmazione assoluta | G90 |
| M03 | Accensione del mandrino in senso orario | M03 S1200 |
| M05 | Spegnimento del mandrino | M05 |
| M08 | Attivazione del refrigerante | M08 |
| M09 | Disattivazione del refrigerante | M09 |
| M30 | Fine programma e reset macchina | M30 |
📌 Commenti nel G-Code
I commenti nel G-Code possono essere scritti tra parentesi () oppure dopo il punto e virgola ;. Sono fondamentali per rendere il programma più leggibile.
📌 Esempio di G-Code con commenti:
G21 ; Imposta le unità in millimetri
G90 ; Modalità assoluta
G00 X100 Y50 ; Posiziona l’utensile
M03 S1200 ; Accende il mandrino a 1200 RPM
G01 X150 Y150 F300 ; Movimento lineare con avanzamento controllato
M05 ; Spegne il mandrino
M30 ; Fine programma
📖 MOVIMENTI BASE: G00, G01, G02, G03
📌 Introduzione
I movimenti della macchina CNC sono definiti dai comandi G, che indicano come deve spostarsi l’utensile nel piano di lavoro. Comprendere questi comandi è fondamentale per la programmazione e l’uso della macchina.
In questo capitolo vedremo i quattro movimenti principali:
- G00 – Movimento rapido
- G01 – Movimento lineare controllato
- G02 – Movimento circolare in senso orario
- G03 – Movimento circolare in senso antiorario
Ogni sezione conterrà spiegazioni dettagliate, esempi pratici e un’analisi approfondita del codice.
🔹 1. G00 – MOVIMENTO RAPIDO
📌 Definizione
G00 viene utilizzato per spostare l’utensile alla massima velocità della macchina, senza controllo dell’avanzamento.
📌 Caratteristiche:
- Ideale per movimenti a vuoto (quando l’utensile non sta tagliando il pezzo).
- Raggiunge la posizione finale nel minor tempo possibile.
- Non tiene conto degli ostacoli, quindi va usato con attenzione.
📌 Esempi
Esempio 1 – Movimento rapido su X e Y
G00 X100 Y50
🔎 Analisi: L’utensile si sposta alla massima velocità verso la posizione X=100 e Y=50.
Esempio 2 – Movimento rapido con Z incluso
G00 X100 Y50 Z10
🔎 Analisi:
- La macchina si sposta su X=100, Y=50, e Z=10.
- Se l’utensile è vicino al pezzo, potrebbe collidere. Bisogna assicurarsi che il percorso sia libero.
Esempio 3 – Movimento rapido tra più punti
G00 X0 Y0
G00 X100 Y50
G00 X50 Y25 Z5
🔎 Analisi:
- L’utensile si sposta rapidamente tra le coordinate indicate.
- Nessun controllo sulla velocità , quindi da usare solo per posizionamenti senza lavorazione.
🔹 2. G01 – MOVIMENTO LINEARE CONTROLLATO
📌 Definizione
G01 viene utilizzato per eseguire movimenti lineari con velocità controllata.
📌 Caratteristiche:
- L’avanzamento viene definito dal parametro F (feedrate).
- Utilizzato per tagli, incisioni e fresature.
- Sicuro da usare per evitare collisioni improvvise.
📌 Esempi
Esempio 1 – Movimento lineare con velocità impostata
G01 X50 Y50 F300
🔎 Analisi:
- L’utensile si sposta a X=50, Y=50 con una velocità di 300 mm/min.
- Se F non è specificato, la macchina usa l’ultima velocità impostata.
Esempio 2 – Movimento lineare tra più punti
G01 X50 Y50 F300
G01 X100 Y100 F200
G01 X150 Y50 F100
🔎 Analisi:
- L’utensile segue un percorso lineare con velocità diverse in ogni segmento.
- Si nota la differenza tra i valori F: 300, 200 e 100 mm/min.
- Una velocità più bassa offre più precisione e meno vibrazioni.
Esempio 3 – Combinazione di G00 e G01
G00 X0 Y0 ; Posizionamento rapido
G01 X50 Y50 F300 ; Movimento controllato
G01 X100 Y100 F150
G00 X0 Y0 ; Ritorno rapido alla posizione iniziale
🔎 Analisi:
- G00 viene usato per posizionare velocemente l’utensile.
- G01 esegue i movimenti di taglio a velocità controllata.
- Alla fine, G00 riporta l’utensile a zero macchina rapidamente.
🔹 3. G02 E G03 – MOVIMENTI CIRCOLARI
📌 Definizione
- G02 → Movimento circolare in senso orario.
- G03 → Movimento circolare in senso antiorario.
📌 Caratteristiche:
- Necessitano di un punto finale e un centro dell’arco.
- L’offset del centro viene specificato con I e J (coordinate relative).
- Utili per creare archi, tasche e contorni curvi.
📌 Esempi
Esempio 1 – Arco orario con G02
G02 X100 Y100 I50 J0
🔎 Analisi:
- L’utensile parte dalla posizione corrente e si sposta a X=100, Y=100.
- Il centro dell’arco è 50 mm a sinistra della posizione iniziale (I=50, J=0).
Esempio 2 – Arco antiorario con G03
G03 X100 Y100 I-50 J0
🔎 Analisi:
- Stesso movimento dell’esempio precedente, ma in senso antiorario.
Esempio 3 – Creazione di un cerchio completo
G02 X100 Y50 I50 J0
G02 X50 Y50 I-50 J0
🔎 Analisi:
- Il primo arco va da X=0 Y=50 a X=100 Y=50.
- Il secondo arco chiude il cerchio tornando alla posizione di partenza.
📌 CONCLUSIONI
In questo capitolo abbiamo visto: ✅ G00 – Movimento rapido, utile per spostamenti a vuoto. ✅ G01 – Movimento lineare controllato, usato per il taglio. ✅ G02 e G03 – Movimenti circolari per realizzare archi e curve.
💡 Questi comandi sono alla base di ogni programma CNC. Provali con simulazioni prima di eseguirli sulla macchina reale!