Visita il nostro nuovo sito

Il codice abitualmente utilizzato per la programmazione delle macchine a controllo numerico, viene comunemente chiamato "codice ISO".

Definizioni del codice ISO 6983

Caratteri del codice ISO 6983

Funzioni Preparatorie

Funzioni Miscellanee

I vari linguaggi utilizzati, infatti, fanno per lo più riferimento allo standard ISO 6983 che definisce gli elementi fondamentali di un linguaggio generico, adatto alla programmazione dei vari tipi di macchina utensile.

Lo standard di linguaggio ISO 6983 non costituisce, comunque, un'obbligo all'utilizzo da parte dei costruttori di CNC, che nella pratica adottano i codici principali dello standard, integrandoli con loro codici proprietari. Per le tantissime funzionalità offerte oggi dai controlli, quali:
risoluzione automatica della geometria del piano,
programmazione con enti virtuali,
programmazione parametrica,
gestione della correzione utensile con tavole o teste rotanti,
gestione della correzione utensile su cinque assi, eccetera,
ciascun costruttore ha definito in pratica i propri linguaggi o sottolinguaggi specializzati. Tali linguaggi specializzati hanno reso molto più agevole, flessibile, rapida ed efficace la programmazione di funzioni o geometrie complesse, ma hanno reso in pratica molto diversa la programmazione da controllo a controllo, vanificando in pratica l'obbiettivo primo dello standard:

un linguaggio unico di programmazione, indipendente dal tipo di controllo impiegato.

Per approfondire l'argomento: click qui

 
Definizioni
Programma Si può definire un programma come una collezione ordinata di blocchi. L'ordine è quello di esecuzione. Il controllo leggerà tutto il programma e lo interpreterà un blocco alla volta, dal blocco di inizio fino al blocco di fine programma. A meno di specifiche istruzioni di salto o di interruzione, la lettura dei blocchi procede in successione.
Blocco

Il blocco è un'insieme di funzioni che saranno interpretate "tutte insieme", cioè in relazione tra loro. Il blocco viene spesso identificato come la "riga" di programma; questo non è del tutto corretto potendo un blocco occupare più righe sul video.
La posizione delle funzioni all'interno del blocco, nei controlli più moderni è, con alcune eccezioni, libera; il controllo al momento dell'elaborazione del blocco determina la priorità nell'esecuzione dei singoli comandi che, unche se letti tutti insieme, vengono eseguiti separatamente. Ad esempio nel caso si sia programmato contemporaneamente il movimento di uno o più assi e l'accensione del mandrino, il CNC provvederà normalmente ad accendere il mandrino prima di muovere gli assi.
Esempio:
N10G01X100Y100Z100S1000F250M03

Funzione

La funzione è in pratica un comando, costituito da una lettera e da un numero che ne costituisce il valore.
Le funzioni si classificano come "modali" o "non modali" a seconda del fatto che generino un comando con effetto permanente o temporaneo. Il comando di accensione mandrino, ed esempio, è modale perché il mandrino, una volta acceso, resta in moto fino all'eecuzione del relativo comando di arresto.
Esempio:
G01

 

Caratteri del codice ISO 6983
Funzione

Significato

A

Asse rotativo (dimensione angolare) perpendicolare all'asse X

B

Asse rotativo (dimensione angolare) perpendicolare all'asse Y

C

Asse rotativo (dimensione angolare) perpendicolare all'asse Z

D

Seconda funzione utensile

E

Seconda funzione di avanzamento

F

Funzione di avanzamento (Feed)

G

Funzione preparatoria

H

Non assegnato

I

Centro di interpolazione circolare, asse X

J

Centro di interpolazione circolare, asse Y

K

Centro di interpolazione circolare, asse Z

L

Non assegnato

M

Funzione miscellanea

N

Numero di bloco (sequenza)

O

Non assegnato

P

Asse lineare parallelo all'asse X (terza funzione di definizione)

Q

Asse lineare parallelo all'asse Y (terza funzione di definizione)

R

Asse lineare parallelo all'asse Z (terza funzione di definizione)

S

Funzione di velocità (Speed)

T

Funzione di definizione utensile

U

Asse lineare parallelo all'asse X (seconda funzione di definizione)

V

Asse lineare parallelo all'asse Y (seconda funzione di definizione)

W

Asse lineare parallelo all'asse Z (seconda funzione di definizione)

X

Asse lineare X

Y

Asse lineare Y

Z

Asse lineare Z


Funzioni Preparatorie

G00

Posizionamento in rapido: movimento alla massima velocità consentita
G01 Interpolazione lineare: movimento di uno o più assi alla velocità programmata con la funzione F (Feed)
G02 Interpolazione circolare oraria: movimento di due assi lungo un arco in senso orario
G03 Interpolazione circolare antioraria: movimento di due assi lungo un arco in senso antiorario
G04 Sosta temporizzata: sosta per il tempo specificato dalla funzione F
G05 Arresto macchina (Hold)
G13 Selezione asse
G16 Selezione asse
G17 Piano di interpolazione XY
G18 Piano di interpolazione ZX
G19 Piano di interpolazione YZ
G33 Filettatura: movimento sincronizzato di due assi
G34 Filettatura: movimento sincronizzato di due assi
G35 Filettatura: movimento sincronizzato di due assi
G40 Cancellazione della compensazione raggio utensile
G41 Compensazione raggio utensile a sinistra
G42 Compensazione raggio utensile a destra
G43 Compensazione lunghezza utensile in senso positivo
G44 Compensazione lunghezza utensile in senso negativo
G53 Cancellazione spostamento origine
G54 Spostamento origine asse X
G55 Spostamento origine asse Y
G56 Spostamento origine asse Z
G57 Spostamento origine asse X ,Y
G58 Spostamento origine asse Y,Z
G59 Spostamento origine asse X,Z
G80 Annullamento cicli fissi
G81 Ciclo fisso
G82 Ciclo fisso
G83 Ciclo fisso
G84 Ciclo fisso
G85 Ciclo fisso
G86 Ciclo fisso
G87 Ciclo fisso
G88 Ciclo fisso
G89 Ciclo fisso
G90 Programmazione in coordinate assolute

G91

Programmazione in coordinate relative
G92 Programmazione assoluta zero pezzo
G93 Programmazione assoluta zero pezzo
G94 Programmazione assoluta zero pezzo
G95 Programmazione assoluta zero pezzo
G96 Programmazione assoluta zero pezzo
G97 Programmazione assoluta zero pezzo
G98 Programmazione assoluta zero pezzo
G99 Programmazione assoluta zero pezzo

Funzioni Miscellanee

M00

Arresto programma
M01 Arresto programma opzionale
M02 Fine programma
M03 Avvio mandrino con rotazione oraria
M04 Avvio mandrino con rotazione antioraria
M05 Arresto rotazione mandrino
M13 Selezione asse
M06

Cambio utensile

M07 Erogazione refrigerante 1
M08 Erogazione refrigerante 2
M09 Arresto erogazione refrigerante
M10 Blocco assi
M11 Sblocco assi
M12 Non definito
M13 Avvio mandrino con rotazione oraria ed erogazione refrigerante 2
M14 Avvio mandrino con rotazione antioraria ed erogazione refrigerante 2
M19 Arresto orientato mandrino
M30 Fine programma e riavvolgimento nastro
M40 Cambio gamma di velocità: gamma folle
M41 Cambio gamma di velocità: gamma 1
M42 Cambio gamma di velocità: gamma 2
M43 Cambio gamma di velocità: gamma 3
M44 Cambio gamma di velocità: gamma 4
M45 Cambio gamma di velocità: gamma 5

Visita il nostro nuovo sito

  contatore di accessi