Guide
Il codice M è il linguaggio di controllo della macchina per la lavorazione CNC. È usato in combinazione con il codice G per attivare e disattivare varie funzioni della macchina. Come per il G-code, c’è una certa comunanza di funzioni tra le varie piattaforme di controllo, ma la definizione finale per ogni particolare funzione M-code è espressa dal produttore del controllo. Questo articolo discuterà l’M-code in generale e come si applica alla lavorazione CNC. Per ulteriori informazioni si prega di vedere gli altri articoli correlati in questa serie elencati alla fine di questo articolo.
Comandi
La M in M-code dice alla macchina che segue un comando vario. Per esempio, M03 avvia il mandrino ed è generalmente preceduto da un codice S per impostare la velocità. La seguente lista parziale di codici M, mostrata sotto come esempi, è per i controllori Fanuc.
M00 Arresto del programma
M01 Arresto del programma–opzionale
M02 Fine del programma
M03 Avvio del mandrino–avanti, di rotazione in senso orario
M04 Avvio del mandrino–indietro, o rotazione antioraria
M05 Arresto mandrino
M06 Cambio utensile
I codici continuano, fino a M99, che termina un sottoprogramma. Non tutti i numeri sono assegnati, e alcuni codici M, come M06, sono usati solo per i centri di lavoro e non per i torni, e viceversa. Altri fornitori forniscono più codici. È importante conoscere i codici per la particolare macchina in questione. Molti produttori lasciano anche un certo numero di codici M non assegnati per essere definiti dall’utente. La tabella 1 qui sotto mostra un’altra lista di codici M per le operazioni del tornio. La tabella 2 ha un elenco simile di codici M per le operazioni di fresatura. Entrambe queste tabelle sono basate sui codici Fanuc.
Tabella 1 – Riassunto dei comandi M-Codes per le operazioni di tornio
Codice M* |
Descrizione* |
M00 |
Arresto programma |
M01 |
Fermo programma opzionale |
M02 |
Fine programma |
M03 |
Avvio mandrino avanti CW |
M04 |
Avvio mandrino inverso CCW |
M05 |
Arresto mandrino |
M08 |
Raffreddamento attivo |
M09 |
Raffreddatore spento |
M29 |
Rigido modalità rubinetto |
M30 |
Ripristino fine programma |
M40 |
Mandrino al centro |
M41 |
Selezione marcia bassa |
M42 |
Selezione marcia alta |
M68 |
Chiusura mandrino idraulico |
M69 |
Porta idraulica aperta |
M78 |
Punta avanzare |
M79 |
Punta invertita |
M94 |
Annullamento immagine speculare |
M95 |
Immagine speculare dell’asse X |
M98 |
Chiamata del sottoprogramma |
M99 |
Fine del sottoprogramma |
Table data source: http://www.helmancnc.com/fanuc-m-code-list/
Tabella 2 – Riepilogo comandi M-Codes per operazioni di fresatura
Codice M* |
Descrizione* |
M00 |
Arresto programma |
M01 |
Fermo programma opzionale |
M02 |
Fine programma |
M03 |
Inizio mandrino avanti CW |
M04 |
Avvio mandrino inverso CCW |
M05 |
Arresto mandrino |
M06 |
Cambio utensili |
M07 |
Raffreddante ON – Nebbia di refrigerante/ Refrigerante attraverso il mandrino |
M08 |
Raffreddante ON – Allagare il refrigerante |
M09 |
Raffreddante OFF |
M19 |
Orientamento del mandrino |
M28 |
Ritorno all’origine |
M29 |
Rigido tap |
M30 |
Fine programma (Reset) |
M41 |
Selezione marcia bassa |
M42 |
Massa alta seleziona |
M94 |
Annulla lo specchio |
M95 |
Specchio dell’asse X |
M96 |
Specchio dell’asse Y |
M98 |
Chiamata del sottoprogramma |
M99 |
Fine del sottoprogramma |
Table data source: http://www.helmancnc.com/fanuc-m-code-list/
Sottoprogrammi e macro
I sottoprogrammi sono chiamati con il comando M98. Questi sono utilizzati per varie operazioni, come l’indicizzazione dell’asse Z tra i tagli ripetuti. I sottoprogrammi sono designati con la lettera “P” e una “L” specifica il numero di volte che il sottoprogramma deve essere eseguito. Ogni sottoprogramma termina con M99, che riporta il controllore al programma principale, o alla subroutine precedente se sono annidati. Un altro sottoprogramma comune è quello che resetta gli stati modali prima o dopo un cambio di utensile – un passo di sicurezza.
Anche le funzioni preprogrammate fornite dal costruttore della macchina sono considerate sottoprogrammi, ma sono richiamate nel codice G.
Le macro permettono alla macchina CNC di fare due cose importanti. Creando variabili che possono essere cambiate, le dimensioni delle caratteristiche (come la larghezza di una scanalatura) possono essere regolate senza cambiare il programma. Permettono anche allo stesso programma di lavorare una famiglia di dimensioni di pezzi come potrebbe essere tabulato su un disegno. Alle variabili sono assegnati degli indirizzi che sono tipicamente chiamati nella linea del programma in questo modo: G00 X#123 che dice alla macchina di spostarsi velocemente alla posizione memorizzata nell’indirizzo variabile 123.
Si deve prestare molta attenzione nell’uso delle macro perché si potrebbe inserire un numero troppo veloce per il processo che potrebbe portare a danni e/o lesioni. I programmatori CNC costruiscono abitualmente dei controlli nei programmi per evitare queste catastrofi.
Applicazioni
Altre denominazioni di lettere (o “parole”) sono usate per specificare l’avanzamento (F), la velocità del mandrino (S), gli indirizzi degli utensili (T), ecc. Un programma CNC completo sarà costellato da queste lettere e dai codici G e M. Diversi codici M sono usati per fare riferimento al pannello di controllo per l’input dell’operatore. M01, un arresto opzionale del programma, ferma temporaneamente il programma e attende l’input dell’operatore se il pulsante Opt Stop sul pannello di controllo è acceso. Altrimenti, il comando M01 viene ignorato. Questa funzione potrebbe essere usata per permettere all’operatore di rimuovere i chip. Un altro pulsante del pannello etichettato Block Skip farà saltare i programmi su tutti i blocchi di codice che sono preceduti da una barra in avanti. Questo è utile per le operazioni di auto-alimentazione in quanto può essere usato per saltare il comando di arresto del programma.
Sommario
Questo articolo ha presentato una breve discussione del codice M e la sua applicazione alla programmazione della lavorazione CNC. Per ulteriori informazioni sui prodotti correlati, consultate le nostre altre guide o visitate la Thomas Supplier Discovery Platform per individuare potenziali fonti di fornitura o visualizzare i dettagli su prodotti specifici.
Altri articoli sulla programmazione CNC
- Introduzione al G-Code e alla programmazione CNC
- Lista dei comandi G-Code comuni e del loro significato
- Esempi di G-Code per funzioni CNC comuni
- Scheda G-Code di comandi comuni
- Sottoprogrammi, macro e programmazione parametrica per lavorazione CNC