Vai all'articolo
VETCNCCNC MANUFACTURING
CNC fresatrice con pannello di controllo esterno e mandrino retratto sopra un pezzo in lavorazione fissato nella morsa.

Come un sistema CNC controlla il movimento della macchina

Processi di lavorazione11 min lettaPubblicatoAggiornato
In questa pagina

Un sistema CNC (controllo numerico computerizzato) trasforma un programma di lavorazione in movimenti coordinati della macchina. Il controllore interpreta le istruzioni e pianifica un percorso; gli azionamenti forniscono potenza elettrica controllata ai motori; i motori muovono gli assi della macchina. In un sistema a ciclo chiuso, il feedback di posizione aiuta il controllore a confrontare il movimento comandato con quello misurato. Per la terminologia e la sua storia, il confronto NC contro CNC spiega cosa è cambiato quando i computer sono diventati parte del sistema di controllo.

Si tratta di compiti distinti. Un programma corretto può essere eseguito con un errore di posizionamento, mentre un movimento perfettamente tracciato può comunque realizzare la caratteristica sbagliata se il programma o l’impostazione sono errati. Seguire un singolo movimento attraverso il sistema rende più facile comprendere questa distinzione.

Funzioni di ciascuna parte del sistema di controllo

Il controllore CNC combina hardware di calcolo e software di controllo. La sua interfaccia operatore visualizza programmi, posizioni, offset e stato della macchina. Dietro tale interfaccia, l’elaborazione del programma e la pianificazione del movimento determinano quale azione la macchina dovrà eseguire successivamente.

Un azionamento è lo stadio di controllo della potenza, non semplicemente un altro nome per il controllore. In un sistema servo, regola il funzionamento del motore tramite loop di controllo. Il motore quindi genera il movimento: un motore rotativo può far ruotare una vite a ricircolo di sfere per muovere un carrello, mentre un motore lineare può agire direttamente su un asse. La collocazione dei loop di posizione, velocità e corrente varia a seconda dell’architettura del sistema di controllo.

Il sequenziamento della macchina opera in parallelo con questo controllo del movimento. Un controllore logico programmabile, o PLC, gestisce spesso comandi ausiliari e segnali di stato — ad esempio, coordina una sequenza di cambio utensile con i relativi segnali di completamento. Questo è diverso dal calcolo di un percorso di taglio continuo. La documentazione sulle funzioni ausiliarie di Beckhoff mostra come tali comandi possano essere sincronizzati con il movimento degli assi.

Un programma entra nel controllore, quindi negli azionamenti, nei motori e negli assi; un percorso di feedback di posizione ritorna al controllore.
Flusso funzionale di un sistema a ciclo chiuso. I confini effettivi del loop e i collegamenti dei sensori dipendono dall’architettura del controllore e dell’azionamento. Visualizza il diagramma a dimensione intera.

Il programma richiede un riferimento fisico

Un programma descrive i movimenti e le operazioni di lavorazione previsti, comunemente utilizzando il codice G e comandi correlati. Può essere generato da software CAM e da un postprocessore specifico per la macchina, oppure tramite programmazione manuale o conversazionale. Il controllo interpreta le istruzioni nel contesto delle impostazioni attive, inclusi unità di misura, sistemi di coordinate e compensazioni. Ad esempio, le modalità assoluta e incrementale interpretano le posizioni in modo diverso: rispettivamente come destinazione nel sistema di coordinate attivo o come distanza dalla posizione corrente. Una semplice coordinata non costituisce un’istruzione completa di movimento.

Coordinate macchina si riferiscono al sistema di riferimento della macchina. Coordinate pezzo posizionano il programma rispetto al pezzo o al dispositivo di fissaggio. Un offset pezzo collega questi due riferimenti, consentendo di programmare la stessa geometria del pezzo a partire da un comodo zero pezzo. Haas distingue esplicitamente queste visualizzazioni delle coordinate.

Gli offset utensile tengono conto della geometria dell’utensile; su una fresatrice, la compensazione della lunghezza utensile mette in relazione la posizione programmata dell’utensile con quella effettiva dell’insieme installato. Questi offset non spostano fisicamente il pezzo né modificano l’utensile. Modificano soltanto il modo in cui il controllo interpreta la posizione richiesta della macchina. Anche le configurazioni rotanti possono richiedere una trasformazione cinematica per convertire la relazione desiderata tra utensile e pezzo in comandi specifici per ciascun asse.

Per una semplice traslazione X–Y, posizionare lo zero pezzo alle coordinate macchina X = 100 mm, Y = 200 mm. Con sistemi di coordinate paralleli e in assenza di ulteriori offset, rotazioni o compensazioni utensile, il punto finale nelle coordinate pezzo X = 30 mm, Y = 40 mm corrisponde alle coordinate macchina X = 130 mm, Y = 240 mm. Se la posizione X memorizzata dello zero pezzo è erroneamente impostata su 102 mm, lo stesso punto finale diventa X = 132 mm. L’asse può eseguire correttamente il comando ricevuto, mentre la caratteristica risulta spostata di 2 mm.

Il feedback di posizione non riconosce automaticamente che l’origine scelta era errata. Correggere il riferimento che ha generato il comando, anziché considerare uno schema di caratteristiche spostato come prova che il servo richieda un aggiustamento. Per il contesto meccanico alla base di questi riferimenti, vedere parti e movimento di una fresatrice.

Sistemi di coordinate della macchina e del pezzo in lavorazione paralleli su un piano, con l’origine del sistema di coordinate del pezzo posta nell’angolo di un blocco fissato.
Un offset pezzo stabilisce la relazione tra l’origine del pezzo selezionata e il riferimento macchina. Le origini illustrate sono esempi, non posizioni di home prescritte. Visualizza il diagramma a dimensione reale.

Un flusso di avanzamento lungo un percorso si traduce in diverse velocità degli assi

L’interpolazione determina le posizioni intermedie lungo un percorso specificato. Per un movimento rettilineo X–Y, entrambi gli assi devono compiere la giusta quota di spostamento nello stesso istante. Spostare prima X fino al suo punto finale e poi Y produrrebbe due lati di un rettangolo, non la diagonale.

Il movimento pianificato diventa un flusso di obiettivi a intervalli di controllo successivi. A seconda dell’architettura, l’azionamento riceve obiettivi di posizione o di velocità, anziché interpretare direttamente il disegno del pezzo.

Calcolare un movimento coordinato con 30 mm di spostamento lungo X e 40 mm di spostamento lungo Y. Si assumano assi lineari perpendicolari, nessuna rotazione, orientamento fisso dell’utensile e un avanzamento richiesto lungo il percorso di 500 mm/min. I valori seguenti descrivono la porzione a velocità costante, qualora la macchina riesca a raggiungerla:

Grandezza Calcolo Risultato
Lunghezza del percorso √(30² + 40²) 50 mm
Velocità asse X 500 × 30 / 50 300 mm/min
Velocità asse Y 500 × 40 / 50 400 mm/min

Le due velocità degli assi si combinano per dare √(300² + 400²) = 500 mm/min lungo la linea. Non vengono né sommate né impostate entrambe su 500. Durante accelerazione e decelerazione, le velocità variano in sincronia mantenendo costante il rapporto tra gli spostamenti. Questo è il principio descritto nella documentazione sul movimento coordinato di LinuxCNC.

L’asse con velocità massima consentita più bassa può limitare l’intero movimento. Se Y è limitato a 320 mm/min mentre X può raggiungere almeno 240 mm/min, il limite di velocità lungo questa diagonale diventa 320 × 50 / 40 = 400 mm/min, con X a 240 mm/min. Ridurre soltanto Y lasciando X a 300 mm/min modificherebbe la direzione del percorso. Il pianificatore deve ridurre la velocità coordinata; ulteriori limitazioni legate ad accelerazione, angoli e altri fattori possono ridurla ulteriormente. La sezione Concetti fondamentali per l’utente di LinuxCNC, all’interno della voce «Pianificazione della traiettoria», spiega perché i limiti configurati per ciascun asse prevalgono sull’avanzamento richiesto.

Una diagonale arancione rettilinea collega il punto di partenza e quello di arrivo, con componenti tratteggiati orizzontali (X) e verticali (Y).
I segmenti tratteggiati sono componenti coordinate, non movimenti successivi. Entrambi gli assi contribuiscono contemporaneamente alla generazione del percorso arancione. Visualizza il diagramma a dimensione intera.

Un percorso circolare richiede contributi continui e variabili da parte degli assi. L’aggiunta di assi rotativi e modalità alternative di avanzamento introducono ulteriori regole di interpretazione; pertanto, questo esempio a due assi non deve essere utilizzato come formula universale per programmi a cinque assi o per tornitura.

Perché la macchina rallenta prima di un angolo

Una macchina non può modificare istantaneamente la propria velocità. Il pianificatore di traiettoria tiene conto dei limiti configurati di velocità e accelerazione; alcuni sistemi vincolano esplicitamente anche il jerk, ovvero la variazione dell’accelerazione nel tempo. Una corsa breve potrebbe terminare prima che venga raggiunta la velocità di avanzamento richiesta.

Anticipazione prepara i blocchi di programma successivi mentre è in esecuzione il movimento corrente. Ciò consente al pianificatore di prevedere le variazioni anziché trattare ciascun punto finale come un evento isolato. Haas descrive questa preparazione anticipata dei blocchi nella documentazione del proprio controllo.

In un angolo matematicamente appuntito, seguire esattamente il percorso richiede un arresto. Una modalità di raccordo (blending) può mantenere il movimento arrotondando la transizione entro i limiti configurati di deviazione dal percorso. Il compromesso riguarda la fedeltà del percorso rispetto alla continuità della velocità; le modalità disponibili e il loro comportamento dipendono dal sistema di controllo. LinuxCNC documenta il comportamento delle modalità exact-path, exact-stop e blending.

Un percorso ad angolo acuto a forma di L accanto a una transizione arrotondata, con geometria programmata tratteggiata e moto pianificato arancione.
Un angolo appuntito esatto richiede un arresto; il raccordo modifica il percorso nelle vicinanze dell’angolo. La deviazione ammessa del percorso è distinta dalla tolleranza del pezzo finito. Visualizza il diagramma a dimensione intera.

La tolleranza di raccordo (blending) è un parametro di pianificazione del movimento, non la tolleranza del pezzo finito. Le forze di taglio, la geometria dell’utensile e gli altri fattori del processo influenzano comunque la superficie ottenuta. Il numero di giri del mandrino rpm è una grandezza distinta dall’avanzamento lineare. Nelle operazioni con avanzamento per giro e nelle operazioni sincronizzate con il mandrino, l’avanzamento è intenzionalmente legato alla rotazione del mandrino.

Il feedback misura il movimento in un determinato punto.

In un anello chiuso di posizione, il sistema confronta il comando di posizione con la posizione effettivamente misurata e agisce per ridurre la differenza tra i due valori. Tale differenza è spesso denominata errore di inseguimento. Non costituisce una misurazione diretta della caratteristica lavorata. La stessa distinzione è rilevante anche quando si leggono le specifiche di accuratezza della macchina. L’anello pertinente può essere chiuso nel controller o nell’azionamento, a seconda del sistema.

La posizione del sensore determina quali elementi sono inclusi nella misurazione:

  • Encoder del motore: misura la rotazione del motore. Per un asse lineare azionato da vite, il controllo può dedurre la posizione della slitta sulla base del rapporto di trasmissione. Le variazioni a valle di tale sensore — ad esempio la dilatazione termica della vite a ricircolo di sfere — potrebbero non comparire nel feedback di posizione del motore.
  • Encoder lineare: misura direttamente la posizione della slitta rispetto alla sua scala. Quando viene utilizzato per chiudere il loop di posizione, include nella misurazione anche la meccanica di avanzamento, anziché dedurre lo spostamento esclusivamente dalla rotazione del motore.

Nella terminologia delle macchine utensili, il feedback di posizione basato sul motore su un asse azionato da vite è comunemente definito semi-chiuso; il feedback diretto della posizione della slitta è invece definito chiuso o totalmente chiuso. Entrambi utilizzano un feedback. HEIDENHAIN illustra questa distinzione. La semplice presenza di un encoder non determina quale segnale venga effettivamente utilizzato dal loop di posizione.

Due assi azionati da vite confrontano un encoder sul motore posteriore con una scala lineare fissa e una testina di lettura montata sul tavolo mobile.
Un encoder del motore rileva la rotazione; una scala lineare rileva lo spostamento della slitta. Queste configurazioni di rilevamento possono coesistere, e il loop di posizione configurato determina quale feedback controlla la posizione dell’asse. Visualizza il diagramma a dimensione reale.

Alcuni assi CNC operano invece in modalità ad anello aperto, comandando i passi del motore senza misurare effettivamente la posizione dell’asse all’interno di tale loop. Un passo perso potrebbe quindi non essere rilevato dal sistema di comando di posizione. I motori passo-passo non sono intrinsecamente limitati al funzionamento in anello aperto: esistono anche configurazioni di motori passo-passo in anello chiuso.

Separare il comando, il movimento e il risultato sul pezzo

Una prima domanda utile è dove si manifesti una discrepanza. Un programma spostato, un asse incapace di seguire il proprio comando e una fresa che si deforma sotto carico possono tutti produrre un pezzo errato, ma richiedono verifiche diverse.

Osservazione Ciò che potrebbe indicare Evidenze utili
L’intero schema di lavorazione è spostato Un riferimento di programma o un offset di setup potrebbero essere errati, anche con un tracking accurato dell’asse. Confrontare il riferimento previsto, il sistema di lavoro attivo, gli offset e le posizioni programmate.
Si verificano allarmi di errore di inseguimento o deviazioni di tracciamento insolite Il movimento comandato e quello misurato non coincidono; la causa potrebbe risiedere nel carico, nella meccanica, nel feedback o nell’azionamento. Correlare il registro degli allarmi e le diagnosi dell’asse con il movimento eseguito e le condizioni operative.
Il tracking dell’asse appare normale, ma una parete, un foro o una superficie risultano errati La geometria dell’utensile, la sua deformazione, il sistema di fissaggio del pezzo o gli effetti termici potrebbero trovarsi al di fuori del loop di posizione misurato. Confrontare le caratteristiche misurate con lo stato dell’utensile, il setup e le condizioni di taglio.

Questi sono punti di partenza per l’indagine, non diagnosi basate esclusivamente sull’aspetto. Anche la misurazione diretta con il cursore non rileva tutti i movimenti tra il tagliente e il pezzo in lavorazione. L’ispezione delle caratteristiche rilevanti del componente colma un diverso divario informativo rispetto al feedback degli assi.

Il sistema CNC stabilisce e segue un moto comandato. Comprendere cosa è stato comandato, dove è stato misurato il moto e cosa è stato effettivamente lavorato fornisce una spiegazione più chiara del risultato di lavorazione rispetto al considerare il controllore come un’unica fonte di «accuratezza».

Domande frequenti

Un controllore CNC è la stessa cosa di un sistema CNC?

Il controllore è la parte computazionale e di controllo. L’espressione «sistema CNC» può indicare in senso più ampio il controllore, le interfacce, gli azionamenti e il feedback che operano insieme. La terminologia prodotto varia: verificare quindi quali funzioni e quali componenti hardware una descrizione include.

Il controllore CNC legge direttamente un modello CAD?

Di norma esegue un programma di lavorazione anziché interpretare un modello CAD non preparato. CAM e un postprocessore adeguato generano comunemente tale programma. Alcuni controlli offrono programmazione integrata o conversazionale, ma la geometria deve comunque tradursi in azioni di lavorazione definite.

Il controllo in catena chiusa garantisce un pezzo accurato?

No. Esso controlla il moto utilizzando il feedback disponibile per quella catena. Offset errati, deformazione dell’utensile, spostamento del pezzo in lavorazione e altri effetti del processo possono comunque produrre una caratteristica non conforme. Il feedback degli assi e l’ispezione del pezzo rispondono a domande diverse.

Perché l’avanzamento effettivo può essere inferiore a quello programmato?

Limiti di accelerazione, segmenti brevi, angoli, impostazioni di controllo del percorso e sovrascritture dell’avanzamento possono ridurre la velocità effettiva. L’avanzamento richiesto non è una garanzia che la macchina mantenga tale velocità durante ogni singolo movimento.

Informazioni sull'autore

· VETCNC

Kevin scrive di lavorazione CNC e approvvigionamento presso VETCNC.

Conosci Kevin ed esplora i suoi articoli →
Condividi questo articolo
LinkedInXFacebook

VETCNCCNC MANUFACTURING

Richiedi un preventivo

Carica disegno

*Campi obbligatori

Condividi solo file dei quali hai l’autorizzazione a rivelare il contenuto. Concorda le modalità di riservatezza e il canale di trasferimento prima di inviare informazioni sensibili.

Italiano
WhatsApp Invia una email

Parlaci del tuo progetto

Condividi le tue esigenze e ti risponderemo via email.

PDF, CAD o ZIP · fino a 20 MB