In questa pagina
No. Molti macchinari CNC accettano programmi in stile G-code, ma i comandi, i cicli e le funzioni macchina supportati possono differire. Alcuni controlli offrono anche formati di programmazione conversazionale. Una famiglia linguistica condivisa non rende tutti i programmi intercambiabili.
Per un acquirente di componenti, la distinzione pratica riguarda la definizione del progetto, le operazioni di lavorazione programmate e il programma predisposto per una specifica macchina.
Il G-code è un formato comune, non un’implementazione universale unica
I programmi in stile G-code organizzano le istruzioni in blocchi contenenti comandi e valori. Questi possono descrivere movimenti, velocità di avanzamento e altre azioni di lavorazione. LinuxCNC, ad esempio, documenta il proprio linguaggio come basato su RS274/NGC e spiega come i comandi G e M compaiano in tali blocchi.
I controlli possono condividere comandi familiari, pur differendo nei cicli supportati, nelle variabili, nelle funzioni ausiliarie o nella sintassi. Un programmatore deve consultare la documentazione relativa al controllo e alla macchina di destinazione. La nostra guida su come un sistema CNC controlla il movimento spiega ciò che accade dopo l’interpretazione delle istruzioni.
La programmazione conversazionale è un altro approccio. Il manuale della TNC 320 di HEIDENHAIN descrive sia il linguaggio Klartext guidato da dialogo sia la programmazione in formato ISO. Si tratta di un esempio di un singolo controllo che supporta formati diversi, non di una prova che ogni controllo accetti entrambi i formati.
Un postprocessore genera un output specifico per la macchina
In un flusso di lavoro CAM, il programmatore definisce le operazioni, gli utensili e i percorsi utensile a partire dalla geometria del pezzo. Un postprocessore converte quindi tali dati di produzione nel formato di programma specifico della macchina destinataria. Il suo compito va ben oltre la semplice modifica dell’estensione del nome file.

L’introduzione di Autodesk ai postprocessori descrive un output specifico per ogni macchina e un trattamento separato per l’avvio del programma, la sostituzione degli utensili e i movimenti. Anche la sua libreria di postprocessori avverte che un postprocessore standard potrebbe non corrispondere a una particolare configurazione CNC. La selezione di un nome macchina simile è quindi un punto di partenza per la verifica.
| Strato | Cosa deve corrispondere | Cosa non dimostra |
|---|---|---|
| Formato del programma | Sintassi, cicli e funzioni accettati | La configurazione fisica è corretta |
| Configurazione della macchina | Assi disponibili, opzioni e azioni ausiliarie | Un’altra macchina utilizza un comportamento identico |
| Configurazione del lavoro | Gruppi utensili, offset, materiale grezzo e dispositivi di fissaggio | Il pezzo finito rispetta il relativo disegno |
Il termine «programma NC» è ancora utilizzato per i file eseguiti dai moderni controlli CNC. La spiegazione NC versus CNC distingue questa terminologia dalle più vecchie architetture di controllo.
Lo stesso controllo non garantisce una configurazione riutilizzabile
Anche all’interno di una stessa famiglia di controlli, la compatibilità va verificata. Il manuale del TNC 320 specifica esplicitamente che i programmi provenienti da altri controlli di contornatura HEIDENHAIN possono contenere elementi non accettati dal sistema.
Esiste un secondo aspetto da considerare oltre alla compatibilità linguistica: il lavoro fisico. Se un dispositivo di fissaggio solleva il pezzo, il riferimento di lavoro e lo spazio libero disponibile devono riflettere la nuova altezza. Anche la modifica del gruppo utensile può alterare i dati utensile. Nessuna di queste modifiche richiede necessariamente un linguaggio di programmazione diverso.

Un programma che viene caricato senza errori di sintassi ha superato un solo controllo. I suoi movimenti, gli utensili impiegati e gli spazi liberi devono comunque essere verificati rispetto alla configurazione prevista. Questa distinzione evita che «il codice è accettato» venga scambiato erroneamente per «il lavoro è pronto».
Per i pezzi esternalizzati, inviare la definizione del pezzo
Il team di produzione prepara normalmente il programma specifico per la macchina a partire dalla geometria e dai requisiti concordati. L’acquirente non deve di norma selezionare un linguaggio di controllo. Fornire la progettazione corrente e i requisiti di accettazione utilizzando la guida RFQ per la lavorazione CNC.
Se il trasferimento di un processo esistente fa parte dell’ordine, va indicato separatamente. La revisione del programma, la macchina target, gli utensili e i record di configurazione sono altrettanto rilevanti quanto il disegno; un vecchio file NC da solo non definisce l’intero processo produttivo.
Domande frequenti
Posso rendere compatibile un programma modificando l’estensione .nc in un’altra estensione?
No. Rinominare un file non traduce le sue istruzioni né modifica la configurazione richiesta della macchina. La denominazione dei file e la sintassi del programma accettata sono questioni distinte.
Un file STEP è un linguaggio di programmazione CNC?
No. Un modello STEP ordinario utilizzato per lo scambio di componenti fornisce dati progettuali. Il flusso di lavoro produttivo deve comunque definire le operazioni e generare istruzioni adatte alla macchina. Un modello e un programma di lavorazione eseguibile assolvono a scopi diversi.
Ogni programma CNC deve necessariamente essere generato da un software CAM?
No. I programmi possono anche essere scritti manualmente o preparati tramite funzioni conversazionali supportate direttamente dal controllo. Il CAM è utile per molti flussi di lavoro, ma la sua presenza non è ciò che rende una macchina una macchina CNC.
Fonti tecniche
LinuxCNC, Panoramica del linguaggio G-code, sezione 1. HEIDENHAIN, Manuale utente per la programmazione in Klartext TNC 320, software NC 77185x-18, ottobre 2023, pagina 80. Autodesk, Introduzione ai postprocessori in Fusion, aggiornato il 4 settembre 2025, e Libreria postprocessori per Autodesk Fusion, informazioni sulla compatibilità.



