M335C2 - Programmazione Torni
M335C2 - Programmazione Torni
M335C2 - Programmazione Torni
ELECTRON
dal 1977 Al t a Tecnol ogi a
per l a Macchi na Ut ensi l e
CNC
Z32
Documento M335
C2 – 20.02.08
Questo manuale contiene informazioni destinate esclusivamente all’utente di prodotti D.Electron per consentirgli l’uso corretto
delle apparecchiature fornite. Nessuna parte di questo manuale può essere duplicata o fornita a terzi per uso diverso da quello
indicato
Le informazioni qui contenute sono state accuratamente controllate perché risultino esatte ed affidabili, ma la D.Electron non si
assume alcuna responsabilità per possibili inesattezze. La D.Electron si riserva anche di fare tutti i cambiamenti che essa riterrà
opportuni per migliorare le prestazioni o l’affidabilità dei suoi prodotti
INDICE
1. INTRODUZIONE .................................................................................................................................................... 1
i
CNC Z32 - Guida alla programmazione (TORNIO)
ii
CNC Z32 - Guida alla programmazione (TORNIO)
1. INTRODUZIONE
Per una descrizione più completa e dettagliata delle funzionalità messe a disposizione dal controllo Z32, consultare
il “Manuale di Programmazione” M96.
1
CNC Z32 - Guida alla programmazione (TORNIO)
2. PROGRAMMAZIONE DI BASE
2.1 Introduzione
La programmazione di BASE del controllo numerico Z32 segue le indicazioni della normativo ISO.
Un programma pezzo (o part-program) è un file di testo ASCII costituito da una serie di istruzioni memorizzate in
maniera sequenziale.
Le righe ISO sono costituite da un numero di riga (non necessario) e da una serie di istruzioni elementari.
2
CNC Z32 - Guida alla programmazione (TORNIO)
• Al reset inoltre vengono disattivate tutte le trasformazioni geometriche di traslazione, specularità, rotazione,
fattori di scala,…
• Al reset vengono disattivate le funzioni e le impostazioni relative all’RTCP (rotating tool centre point)
• Al reset vengono ripristinate le impostazioni di alta velocità secondo i parametri inseriti nelle tarature
macchina. Consultare il costruttore per maggiori dettagli.
Attenzione: è importante sottolineare il fatto che all’inizio dell’esecuzione di ogni programma viene
ripristinata la condizione di reset. Questo significa che la macchina inizia l’esecuzione partendo dallo
stato di reset e che ogni modifica richiesta al suddetto stato deve essere espressamente programmata
nel part-program.
G0 Z100
e
N10 G0Z100
Formato del numero di riga: il numero di riga può essere intero o decimale, specificato col punto o con
la virgola. Tra la lettera N ed il numero è possibile inserire alcuni spazi. Ad esempio è possibile
impostare:
N100
N 100.2
N100,34
L’unica limitazione da seguire è che il numero di cifre prima e dopo la virgola o il punto deve essere non
superiore a 9.
Numero di riga come destinazione di salto: Il numero di riga può essere usato come “destinazione di
salto” nella programmazione logico-matematica. Per la descrizione di questa funzionalità consultare il
presente manuale alla sezione della programmazione logico-matematica.
3
CNC Z32 - Guida alla programmazione (TORNIO)
G0Z0X0Y0
Il numero che segue G identifica la particolare funzione alla quale è predisposto lo Z32. Il valore che segue G deve
essere sempre un valore numerico (NON può essere il risultato di una espressione).
Solo alcune funzioni G (ossia solo alcuni valori numerici) sono interpretate ed eseguite dallo Z32: se si programma
una G non implementata lo Z32 dà l'apposito allarme.
Le funzioni sono quelle previste dalle norme ISO, con alcuni adattamenti. In particolare:
• Gli zeri iniziali delle G possono essere omessi (G0 equivale a G00)
• Possono essere programmate nello stesso blocco più funzioni G: in questo caso le G sono
riconosciute dal CN ed eseguite via via che vengono incontrate nella riga programmata: in caso di
programmazione di più G contrastanti resta attiva l'ultima G programmata.
• Di seguito a particolari funzioni G possono essere specificati dei dati aggiuntivi che ne completano la
definizione.
• Si chiamano MODALI le funzioni G il cui effetto si mantiene anche nei blocchi successivi a quello in cui
sono programmate: le funzioni G modali sono normalmente annullate da apposite altre funzioni G.
• Alcune G richiedono l'ARRESTO della macchina: il profilo deve essere completamente definito al momento
della loro esecuzione. Non deve perciò essere in corso una contornatura con profilo aperto né una
contornatura con compensazione raggio.
4
CNC Z32 - Guida alla programmazione (TORNIO)
• Programmata dopo G95 definisce la velocità di avanzamento come “unità” per giro del mandrino. Per unità
si intendono millimetri, pollici o gradi a seconda del tipo di asse.
• Programmata dopo G93 definisce la velocità come inverso del tempo in minuti per eseguire il movimento
programmato. In questo caso, la F da programmare è pari alla velocità che si desidera sulla traiettoria
diviso la lunghezza della traiettoria stessa:
• Programmata dopo la G96 imposta la modalità di “Velocità di Taglio Costante”. Questa è una funzionalità
tipica dei torni: la velocità di rotazione del mandrino è calcolata in modo che la velocità di taglio risulti pari
alla S programmata (valutata in m/min) considerando la distanza dell’utensile dal centro di rotazione del
mandrino.
Nota sulla G96: Per evitare velocità eccessive quando la distanza dal centro del mandrino è molto ridotta,
con G96 si attiva il parametro MS (che può essere programmato anche in precedenza) determinando la
massima velocità mandrino (in giri/minuto) consentita. La MS attiva è quella presente al momento dell'ultima
S programmata: se viene riprogrammato il parametro MS, la limitazione non cambia fino a che non si
programma una nuova S.
L'utensile può oltrepassare il centro di rotazione: la velocità è comunque determinata dal valore assoluto
della distanza dal centro mandrino, e al passaggio attraverso lo zero è limitata dalla MS programmata. Ad
esempio si può programmare:
E’ frequente, per lavorazioni al tornio l’uso combinato della funzione G96 e della funzione G95.
Ad esempio:
5
CNC Z32 - Guida alla programmazione (TORNIO)
2.3 Funzioni M
Le funzioni M (miscellanee) interessano più che altro il comportamento della macchina utensile e quindi sono in
massima parte definite nei loro effetti dal costruttore.
Tutte le M richiedono l'arresto.
Le norme ISO indicano le funzioni di numerose M: solo alcune M sono decodificate e gestite direttamente dallo
Z32, di queste sole si darà il dettaglio.
Il valore numerico (due cifre intere) che segue la lettera 'M' indica la 'M' programmata. Gli zeri iniziali possono
essere omessi (M0 = M00).
M “ISO”
M0 - stop
Arresta l'esecuzione del programma, che può essere ripreso premendo il pulsante di start. Richiede anche
stop mandrino e stop refrigeranti.
M1 - stop condizionato
Come M0, solo che l'efficacia di M1 è condizionata da un apposito ingresso di logica programmabile:
consultare il costruttore della macchina utensile per ulteriori dettagli. Richiede anche stop mandrino e stop
refrigeranti.
M2 - fine programma
Fa uscire il controllo dal modo “ESECUZIONE” e chiude le operazioni in automatico.
M3 - mandrino orario
Richiede moto mandrino orario alla velocità S precedentemente programmata.
M4 - mandrino antiorario
Richiede moto mandrino antiorario alla velocità S precedentemente programmata.
M5 - stop mandrino
Richiede l'arresto del mandrino. Arresta anche i refrigeranti.
M6 - cambio utensile
Chiede che l'utensile (programmato come T nello stesso blocco o in blocchi precedenti) sia montato sul
mandrino. Arresta anche il mandrino e i refrigeranti. Dopo la esecuzione di una M6 il CN prende atto della
descrizione dell'utensile montato sul mandrino e quindi aggiorna i parametri in conseguenza.
M7 - eroga refrigerante n.1
Richiede l’erogazione del refrigerante n.1 .
M8 - eroga refrigerante n.2
Richiede l’erogazione del refrigerante n.2 .
M9 - stop refrigeranti
Chiede che venga cessata l'erogazione dei refrigeranti.
M19 - orientamento mandrino
Richiede l’orientamento del mandrino.
Richiede anche stop mandrino e stop refrigeranti.
Il costruttore della macchina può definire altre funzioni M per usi e scopi particolari della macchina. Consultare il
costruttore della macchina per ulteriori dettagli.
M “speciali”
Esiste una categoria di funzioni M definite come M “speciali”. A differenza delle funzioni M normali, che vengono
gestite esclusivamente dal PLC della macchina, le M speciali sono associate ad un part-program di servizio. Un
esempio tipico di M speciale è l’M6 di cambio utensile.
La definizione e la programmazione dei sottoprogrammi delle M speciali sono attività riservate al costruttore della
macchina.
Durante l'esecuzione del sottoprogramma associato alle M speciali è bloccato il conteggio del numero progressivo
(ossia in ricerca blocco la M speciale è un solo blocco che non può essere ripreso in un punto intermedio.
Il sottoprogramma associato alla M speciale può essere eseguito in blocco singolo.
6
CNC Z32 - Guida alla programmazione (TORNIO)
7
CNC Z32 - Guida alla programmazione (TORNIO)
Per impostare il sistema di coordinate del pezzo, vengono utilizzate le origini pezzo.
Le origini pezzo sono definite dall’utente e definiscono la posizione della lavorazione all’interno del campo di
lavoro. Quando vengono attivate le origini pezzo, le quote programmate nel part-program si riferiscono
all’origine pezzo attiva.
Nota: In macchina è sempre definita l’origine base. L’origine base è il punto di riferimento definito dal costruttore e
rappresenta lo zero macchina.
Normalmente, nell’uso di un tornio, si definiscono le origini in modo tale che l’asse X sia centrato a centro mandrino
e l’asse Z sia azzerato sulla faccia del pezzo.
Z
OZ1 OX1
Ad esempio:
OZ1 OX1 (Attiva sull’asse X e sull’asse Z l’origine 1)
OZ2 OX2 (Attiva sull’asse X e sull’asse Z l’origine 2)
OZ3 (Attiva sull’asse Z l’origine 3 e mantiene l’origine precedentemente attivata sugli altri assi)
Nota: E’ possibile programmare le origini da 1 (OX1 OZ1) a 9 (OX9 OZ9). Valori a due cifre, ad esempio OX10 non
sono ammessi.
La programmazione dell’origine 0, ha il significato di impostare l’origine base della macchina. Quindi l’origine 0
(OX0 OZ0) non può essere utilizzata come origine pezzo.
Nota: In casi molto particolare può essere utile avere a disposizione altre origini oltre alle 9 standard.
E’ possibile in questi casi fare uso di un singolo carattere dell’alfabeto al posto dei numeri da 1 a 9.
Ad esempio è possibile programmare ed utilizzare l’origine OXA OZA (origine A).
Si faccia attenzione al fatto che i caratteri minuscoli e maiuscoli hanno significato diverso: OXA e OXa sono
pertanto due origini diverse.
8
CNC Z32 - Guida alla programmazione (TORNIO)
Dopo la programmazione di
B OZ1 OX1
OZ2
Il punto A ha coordinate
A Z0 X80
350
80
Processo: 0 1 2 3 4 5
File Origini: 126 123 120 117 114 111
Per macchine ad un solo processo, il file dove risiedono le origini è il file 126 (ovvero quello relativo al processo 0).
La sintassi di un file origini è la seguente:
:OS
X1=123.4
Y1=-231.5
…
Il file inizia con l’intestazione “:OS” che specifica l’inizio della sezione di specifica delle origini
Nelle righe successive sono memorizzati i valori delle varie origini.
Nell’esempio:
L’origine numero 1 sull’asse X determina una traslazione di 123.4 dall’origine base
9
CNC Z32 - Guida alla programmazione (TORNIO)
Attenzione: Al momento del cambio utensile vengono richiamati ed assegnati tutti i parametri presenti in
tabella utensili relativi all’utensile richiamato.
Ad esempio vengono assegnati i valori di lunghezza (LX ed LZ) e raggio utensile (R), ma anche qualsiasi
altro parametro memorizzato in tabella.
Processo: 0 1 2 3 4 5
Tabella Utensili: 127 124 121 118 115 112
Per macchine ad un solo processo, il file dove risiedono le descrizioni degli utensili è il file 127 (ovvero quello
relativo al processo 0).
La sintassi di un file origini è la seguente:
T1P127
:TL
T1#1R0.4LX-121,230LZ-74.21
T2#2LX-124,354LZ-112.345R0(TRONCATORE)
…
Il file inizia con l’utensile attualmente sul mandrino. Nell’esempio è l’utensile numero 1 contento nel file numero
127.
La label “:TL” specifica l’inizio della sezione di descrizione degli utensili
Nelle righe successive sono memorizzate le descrizioni dei vari utensili:
- Il parametro “T” indica il numero dell’utensile
- Il parametro “#” indica il posto dell’utensile nel magazzino utensili
- I vari parametri che descrivono l’utensile vengono descritti sulla riga tramite il nome del parametro ed
il suo valore numerico.
- Sulla riga è possibile inserire un commento inserito tra parentesi tonde.
Nell’esempio:
L’utensile T1 è collocato ad posto #1, ha lunghezza LX-121.23, lunghezza LZ-74.21 e raggio R0.4
10
CNC Z32 - Guida alla programmazione (TORNIO)
I correttori utensile servono per specificare le dimensioni dell’utensile rispetto ad un punto standard della macchina
usato per il calcolo dei correttori.
E’ importante che il punto rispetto al quale vengono calcolati i correttori sia lo stesso per tutti gli utensili. Solo in
questo modo i correttori dei vari utensili saranno congruenti tra di loro. Ad esempio, è possibile scegliere come
punto di azzeramento degli utensili il mandrino del tornio.
LX
LZ
La punta teorica dell’utensile è il punto definito dalle lunghezze LX ed LZ, ed è pertanto il punto di azzeramento
dell’utensile.
La posizione della punta utensile segue lo schema riportato qua sotto.
X X
2
3 1
9
4 8
Z Z
5 7
6
11
CNC Z32 - Guida alla programmazione (TORNIO)
Nell’esempio che segue, vengono eseguite pareti orizzontali e verticali con un utensile azzerato in posizione 1.
Quando nel profilo contiene tratti inclinati oppure raggiature, non è più possibile trascurare la posizione della punta
teorica dell’utensile ed il suo raggio. In questi casi, per eseguire il profilo desiderato, la punta teorica dell’utensile
deve percorrere una traiettoria diversa da quella del profilo desiderato.
X
1
Nell’esempio al lato vengono mostrati il profilo desiderato e
il percorso eseguito dal centro dell’utensile.
12
CNC Z32 - Guida alla programmazione (TORNIO)
E’ possibile variare i correttori utensile o il raggio utensile, senza modificare il valore del correttore stesso.
Nota: La lunghezza utensile LX è sempre espressa come valore radiale e non diametrale. Lo stesso vale per la
correzione DLX
I valori DLX, DLZ e DDR non sono incrementali. Per annullare le correzioni occorre impostare a zero tali parametri.
Ad esempio:
13
CNC Z32 - Guida alla programmazione (TORNIO)
Per annullare le correzioni dovute alla lunghezza utensile occorre programmare una lunghezza nulla:
LX0 LZ0
Per sospendere le correzioni dovute alle origini supplementari e alla lunghezza utensile è possibile
programmare la G53. Programmando la G53 vengono sospese anche eventuali rototraslazioni, specularità e
fattori di scala per poter riferire i movimenti all’origine base. Dopo la programmazione di G53 i movimenti si
riferiscono all’origina base (origine “0”)
La riattivazione delle correzioni dovute alle origini supplementari e alla lunghezza utensile si effettua
programmando G54. Dopo la programmazione della G54 viene ripristinata la situazione di origini, lunghezze,
rototraslazioni, specularità e fattori di scala precedenti alla programmazione dalla G53
Per sospendere solamente la correzione dovuta alla lunghezza utensile è possibile utilizzare la funzione G45.
Dopo la programmazione della G45 i movimenti dell’asse utensile non tengono più conto della lunghezza
dell’utensile. La riattivazione della correzione si effettua con la programmazione della G43 o della G44
14
CNC Z32 - Guida alla programmazione (TORNIO)
Il piano di contornatura definisce il piano nel quale sono possibili le interpolazioni circolari (G2 e G3).
Nota: L’ordine di programmazione degli assi del piano di lavoro definisce il senso (orario o antiorario) delle
interpolazioni circolari. In generale prendendo come ascissa il primo asse del piano di lavoro e come ordinata il
secondo asse del piano di lavoro, G2 esegue un’interpolazione oraria, G3 antioraria.
X Z
G2 G2
G3 G3
Z X
G25ZX G25XZ
Nota: All'accensione e ad ogni inizio programma è attivata il piano di lavoro di taratura definito dal costruttore della
macchina. Normalmente per un tornio viene definito il piano G25ZX.
Attenzione: E’ possibile definire un terzo asse nella programmazione della G25. Il terzo asse generalmente viene
utilizzato per macro istruzioni o per cicli fissi di sistema.
Ad esempio, per macchine dotate di programmazione con assi polari, è possibile definire come piano di
contornatura il piano nel quale devono essere fatte le interpolazioni circolari, e come terzo asse il piano di
profondità. Per maggiori informazioni, consultare il capitolo relativo alla programmazione degli assi polari.
15
CNC Z32 - Guida alla programmazione (TORNIO)
La normativa ISO standard prevede che le funzioni G di movimento siano MODALI. Questo significa, ad esempio,
che dopo aver programmato un movimento in G0, tutti i posizionamenti successivi saranno in G0 a meno che non
venga dichiarato un movimento di diverso tipo.
Ad esempio:
Esiste comunque la possibilità di definire in taratura un diverso comportamento della macchina e di definire le
funzioni di movimento come non modali.
In questa modalità, tutti i movimenti senza indicazione della funzione G vengono intesi come programmati in G1.
16
CNC Z32 - Guida alla programmazione (TORNIO)
200 X
G0 X200 Z10
Z
La funzione G0 specifica un movimento in rapido, ovvero alla massima velocità ammessa dalla macchina. Possono
essere effettuati movimenti in rapido solamente lineari programmando anche più di un asse alla volta.
G0 X220
200
G0 Z10
Z
17
CNC Z32 - Guida alla programmazione (TORNIO)
X
T1 M6
OZ1 OX1
G96 S100 MS2000 M3
G95 F0.3
G0 X200 Z5
G1 Z0
G1 X380 Z-100
380
200
Z M2
La funzione G1 specifica un movimento lineare in lavoro. Possono essere programmati più assi alla volta.
Possono essere programmati fino a cinque assi contemporanei. La traiettoria percorsa dagli assi per raggiungere il
punto finale programmato è rettilinea: tutti gli assi programmati arrivano insieme nel punto programmato.
G0 X10 Z5
G1 Z0
Z G1 X200
G1 Z-200
G0 X205
M2
Per esempio:
...
N10 G1
N11 X0 Y0
...
non è ammessa: al blocco 11 dà errore CN3414
18
CNC Z32 - Guida alla programmazione (TORNIO)
In generale, avendo specificato come piano di lavoro il piano G25ZX vale la seguente regola:
Per macchine con asse X positivo verso il basso i sensi sono invertiti, come mostrato nella figura sottostante:
X
G2
Nella figura sono mostrati I
sensi di percorrenza dei cerchi.
G3
G3 G2
Sono presi in considerazione
archi di cerchio effettuati con X
Z Z positive e archi di cerchio
effettuati con X negative (linea
G2 G3 tratteggiata) per il caso di
G3 G2 torrette posteriori.
X
La specifica del movimento in G2/G3 ha la seguente sintassi:
G2 I… J… Z… X… F…
Oppure
G3 I… J… Z… X… F…
I rappresenta le quote del centro dell’arco di cerchio secondo l’asse Z espresse in valore assoluto non
incrementale
J rappresenta le quote del centro dell’arco di cerchio secondo l’asse X espresse in valore assoluto non
incrementale
Z è la quota finale sull’asse Z raggiunta a fine interpolazione
X è la quota finale sull’asse X raggiunta a fine interpolazione
F è l’avanzamento durante l’interpolazione. Se non viene programmato, viene lasciato attivo il valore
precedentemente impostato
Attenzione: Se il piano di contornatura è diverso dal piano ZX, ma è per esempio il piano VW, la
sintassi diventa:
G3 I.. J.. V.. W..
Dove “I” si riferisce al primo asse del piano di contornatura (V) e “J” al secondo asse (W)
19
CNC Z32 - Guida alla programmazione (TORNIO)
E’ possibile definire il cerchio anche in un secondo modo, ovvero specificando le quote del punto finale e il raggio
del cerchio.
In questo caso, la sintassi del movimento in G2/G3 diventa la seguente:
G2 Z… X… RA… F…
Oppure
G3 Z… X… RA… F…
Con il parametro aggiuntivo KA1 è possibile specificare se l’arco di cerchio è superiore a 180°.
Ad esempio:
X R100 X
R100
R100 R100
400 400
T1 M6 T1 M6
OZ1 OX1 OZ1 OX1
G96 S100 MS2000 M3 G96 S100 MS2000 M3
G95 F0.3 G95 F0.3
G0 X410 Z5 G0 X410 Z5
G1 Z0 X400 G1 Z0 X400
G1 X-70 G1 X-70
G3 Z-250 X400 RA100 G3 Z-250 X400 KA1 RA100
G1 Z-370 G1 Z-370
G2 Z-570 X400 RA100 G2 Z-570 X400 KA1 RA100
G1 Z-700 G1 Z-700
M2 M2
Nota: La programmazione di archi superiori a 180° è gen eralmente rara e utile solo per casi particolari di
programmazione.
20
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio:
Utensile azzerato
in posizione 1
Raggio inserto=0.4
T1 M6
OZ1 OX1
X G96 S100 MS2000 M3
G95 F0.3
G0 X440 Z5
X700 G1 Z0 X440
G1 Z-220.4
G2 Z-350 X699.2 RA129.6
X440 G1 X700
G1 Z-600
R130 G0 X705
M2
21
CNC Z32 - Guida alla programmazione (TORNIO)
La quota programmata sul terzo asse è raggiunta, a fine movimento, insieme alle due quote del piano. La velocità
con G12 attiva è la F programmata.
G12 può essere attiva anche in correzione raggio (G41 o G42 attive): permette quindi il moto del terzo asse,
sempre come coordinato agli altri due assi.
G12 può rimanere attiva, in correzione raggio, anche nei tratti che vengono accorciati o eliminati.
Attenzione: Se un tratto che viene accorciato od eliminato per effetto della correzione raggio,
contiene un movimento del terzo asse, questo movimento viene eseguito completamente al
prossimo movimento utile.
Poiché la G12 impone alcune limitazioni (pendenza, correzione raggio, …) è buona regola programmarla solo
quando necessario e disattivarla (G13) quando non serve più.
L’interpolazione elicoidale può essere ad esempio utile, nel caso di lavorazioni con assi polari.
Se gli assi polari sono, ad esempio, gli assi V e W, è possibile eseguire un cerchio nel piano VW e
contemporaneamente muovere l’asse di profondità Z.
Ad esempio:
G12
G3 V..W..I..J..Z..
G13
In un solo blocco non è possibile programmare un tratto di elica maggiore di una spira completa. Per programmare
più spire occorre utilizzare un ciclo ripetitivo.
22
CNC Z32 - Guida alla programmazione (TORNIO)
La sintassi è la seguente:
Attenzione: La programmazione incrementale si riferisce solamente alle quote finali dei movimenti.
La programmazione dei centri dei cerchi resta sempre in quote assolute indipendentemente dalla
programmazione della G91.
Ad esempio:
T4 M6
OZ1 OX1
G96 S30 MS2000 M3
X G95 F1
G0 X45 Z5
G0 Z-20
G1 X35
HX1000 G91
40
35
X8
Z G0 Z-15
G1 X-8
G0 X8
G0 Z-15
G1 X-8
15 15 15 20 X8
G0 Z-15
G1 X-8
G90 G0 X45
M2
Attenzione: la programmazione del parametro HX deve essere effettuata prima della programmazione di
G91:
Corretto:
HX1000 G91
Errato:
G91 HX1000
23
CNC Z32 - Guida alla programmazione (TORNIO)
Per lavorazioni al tornio è frequente utilizzare la specularità per lavorare un pezzo con la torretta dalla parte
negativa delle X. In questi casi è normale programmare la lavorazione in X+ e impostare una specularità per
portare la lavorazione in X-.
E’ possibile impostare la specularti solamente sui due assi del piano di lavoro identificati dalla funzione G25. Su un
tornio normale il piano di lavoro è generalmente il piano ZX.
La specularità viene abilitata con la funzione G56 (modale). G55 annulla G56 e quindi annulla la specularità.
T4 M6
OZ1 OX1
G96 S30 MS2000 M3
G95 F1
G56 (attiva specularita’)
G0 X50 Z2
G1 Z0
Z X100
140
100
Z-80
X140
Z-90
80 G55 (disattiva specularita’)
G0 X-145
X M2
In generale è possibile usare la specularità per specchiare una lavorazione rispetto ad un asse qualsiasi. La
lavorazione programmata è trasformata nella figura speculare rispetto all'asse di specularità individuato dal punto
di coordinate (IS, JS) e dalla pendenza QS.
Attenzione: La coordinata del punto JS deve essere espressa come quota radiale, anche se è attiva la
programmazione diametrale.
24
CNC Z32 - Guida alla programmazione (TORNIO)
E’ possibile impostare una rotazione solamente sul piano di lavoro individuato dalla G25. Su un tornio normale il
piano di lavoro è generalmente il piano ZX.
Per la sua disattivazione, anche se è sufficiente programmare a zero il solo parametro QR, è consigliabile azzerare
anche i valori IR e JR:
Attenzione: il centro di rotazione (IR JR) è definito rispetto all’origine attiva senza considerare eventuali
traslazioni (DA DB DC), specularità (G56) o fattori di scala.
25
CNC Z32 - Guida alla programmazione (TORNIO)
Attenzione: La traslazione DB deve essere espressa come quantità radiale, anche se è attiva la programmazione
diametrale.
Ad esempio:
T4 M6
OZ1 OX1
X
G96 S30 MS2000 M3
G95 F1
G0 X5 Z1
0.5 x 45° G1 Z-1
X9
Z-1.5 X10
2.5 G0 X11
20 10
Z DA-15 DB5
G0 X5 Z1
G1 Z-1
X9
1 Z-1.5 X10
G0 X11
15 M2
26
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio:
KMX 1.2 (fattore di scala di 1.2 sul solo asse X)
KDZ 10 (fattore additivo di 10 sul solo asse Z)
L’attivazione dei fattori moltiplicativi e additivi è automatica dopo la programmazione dei parametri KM.. e KD...
Attenzione: A differenza di tutti gli altri fattori di traslazione, rotazione, specularità e scala, i parametri
moltiplicativi e additivi sui singoli assi possono essere usati solo in programmi senza interpolazioni
circolari.
27
CNC Z32 - Guida alla programmazione (TORNIO)
Il valore della sosta, espresso in secondi, è pari al parametro “TT” che può essere programmato sulla stessa riga
della funzione G4 oppure in una riga precedente.
Esempio:
G4 TT2.5 (sosta di 2.5 secondi)
Ad esempio:
Numero logico degli assi 0 1 2 3 4
Nomi assi desiderati Z X C A B
Nomi asse in taratura X Z C A B
Nell’esempio superiore occorre programmare:
G16ZX
Attenzione:
- Lo scambio assi viene sospeso dalla G53
- Lo scambio degli assi è valido anche per le funzioni G25, G28, G29, G43, G44, KM, KD
- Lo scambio assi è valido per tutte le quote programmate, ma non cambia il piano di contornatura
individuato dalla G25. Per scambiare anche il piano di contornatura è necessario programmare anche la
G25 opportuna.
28
CNC Z32 - Guida alla programmazione (TORNIO)
Un asse è vivo quando la sua posizione è controllata dal controllo numerico, anche in assenza di movimento.
• La funzione G28 (modale, con arresto) chiede al CN di tenere sotto controllo l'asse anche quando l'asse
non è interessato al movimento in corso (asse vivo).
Dopo G28 deve essere specificato il nome (per esempio X) dell'asse che si vuol tenere vivo, per esempio:
G28X
Deve essere specificato un solo asse, tra quelli definiti come continui dalle tarature di macchina.
Se si vogliono attivare più assi si può programmare G28 più volte nella stessa riga o in righe successive.
Per esempio:
G28Z G28A
chiede di tenere sempre sotto controllo gli assi Z e A.
Alcuni assi (definiti nelle tarature di macchina) possono essere definiti come vivi fin dall'accensione: ad
ogni inizio programma (o dopo ogni reset) è ripristinata la situazione di assi vivi/non vivi definita in taratura.
Nota: In funzione delle tarature di macchina è possibile definire gli assi come “Vivi al reset”. Con
questa taratura, gli assi resi vivi (con la funzione G28) o abbandonati (con la funzione G29)
mantengono il proprio stato di assi vivi o non vivi anche dopo un reset o alla successiva accensione.
Può nascere qualche problema se l'errore è molto vicino a quello tollerato. Se la quota rilevata
dell'asse non vivo (che non dovrebbe muoversi) ha dei piccoli cambiamenti tali che l'errore passi
da sotto a sopra la soglia di taratura può verificarsi un allarme CN1513.
La quota rilevata può oscillare di qualche passo rilevatore, pur rimanendo entro la soglia di
posizionamento, quindi il sorpasso della soglia si può verificare se la posizione è già al limite della
tolleranza, il che accade per esempio quando:
− una tavola girevole (o altro asse) durante il bloccaggio ha un leggero movimento che la porta
molto vicino all'errore di taratura ammesso
− viene programmato un movimento di un asse bloccato di entità di poco inferiore alla soglia di
posizionamento
In questi casi si consiglia di non utilizzare l'attivazione automatica dell'asse morto e di forzarlo vivo
direttamente da part-program.
29
CNC Z32 - Guida alla programmazione (TORNIO)
Dopo l’esecuzione della riga N11, HX contiene il valore 101, se l'utensile montato sul mandrino è il T101. Se è
installata la gestione dell'utensile sostitutivo dell'utensile usurato e l'utensile montato è un sostituto di T101 il
parametro HX conterrà il T.. dell’utensile effettivamente montato.
La G105 Trasferisce nei parametri quote assi le quote fisiche attuali di tutti gli assi della macchina.
Attiva solo nel blocco, con arresto.
Con la G105 le quote rilevate (riferite all'origine e correzioni attive al momento) sono trasferite nei parametri quote
assi. Il trasferimento delle quote avviene per tutti e soli gli assi continui, inclusi gli assi non vivi.
Attenzione:
La quota trasferita è quella reale misurata, e non quella comandata. Queste due quote possono essere diverse per
errori di posizionamento (che comunque devono essere molto piccoli per rientrare sotto la soglia di
posizionamento).
Per esempio, se si comanda X10 e l'asse si porta alla quota 9,998 la G105 acquisisce la quota 9,998 e non la
quota 10.
30
CNC Z32 - Guida alla programmazione (TORNIO)
N1 G107
N2 G0 X10 (l'asse X va alla quota 5, diametro 10)
N3 G106 (programmazione radiale)
N4 X10 (l'asse X va alla quota 10, diametro 20)
N5 G107 X10 (l'asse X va alla quota 5, diametro 10)
Per consentire il movimento degli assi in semiautomatico o in jog con rilevatori in allarme (tipo CNxx12) è stata
introdotta la G119, che ha queste caratteristiche:
• Ha effetto solo se programmata da una riga di semiauto (MDI)
• E’ modale, trasparente al reset
• Se G119 attiva sono ignorati gli allarmi rilevatori tipo 12
• E’ automaticamente resettata se si lancia un programma automatico o se si tenta di eseguire un qualsiasi
sottoprogramma (anche di M speciale) da semiautomatico
Attenzione:
Con G119 attiva i fine corsa software sono disabilitati su tutti gli assi, perché i rilevatori possono essere a
quote non significative e quindi possono impedire il movimento. Spetta all'operatore mettere in atto la
massima cautela per evitare collisioni e danni.
In ogni caso, per cautela, Z32 attiva automaticamente la condizione di TEST (riduzione del rapido a 1/5)
quando G119 è attiva.
Con la G123 è possibile limitare il campo di lavoro per le quote programmate degli assi continui (numero logico da
0 a 12).
ATTENZIONE
La G123 agisce solo sulle quote finali programmate di movimenti lineari. Non è prevista l'intersezione del
movimento con la quota limite, ma solo la sostituzione (o il test a seconda della modalità) della quota finale
programmata.
Per ogni asse continuo è definibile un campo di lavoro, definito da un estremo superiore ed un estremo inferiore
(detti anche limite positivo e limite negativo), che limita la quota programmata dopo che ha subito tutte le
trasformazioni attive (G121, fattori di scala ecc.).
All'accensione della macchina e al reset, le limitazioni dovute alla G123 vengono annullate.
31
CNC Z32 - Guida alla programmazione (TORNIO)
Modalità di funzionamento
G123 KA3
Attiva modalità di allarme: se una delle quote programmate è fuori campo viene l’allarme CN5614
G123 KA4
Ripristina modalità normale, le quote vengono limitate al campo di lavoro. Questa è la modalità di
default, cioè quella normalmente attiva se non programmato diversamente. Se viene programmato
un movimento fuori dei limiti, il movimento viene arrestato quando viene raggiunto il limite
impostato senza generare allarmi.
G123 KA5
Abilita modalità di arresto: se una o più quote programmate sono fuori campo arresta tutti i
movimenti e li riprende solo quando tutte le quote programmate sono rientrate nel campo di lavoro.
Nel momento in cui le quote programmate rientrano tutte nel campo di lavoro sono considerati
programmati tutti gli assi che siano stati bloccati nella fase precedente.
Attenzione: se durante la fase di arresto si muovono più di 5 assi, alla ripresa dei
movimenti sono considerati programmati più di 5 assi e quindi viene allarme
CN2C14 PARAMETRI INCOMPATIBILI.
Disattivazione
Programmando G123KA0 si eliminano sia la limitazione positiva che quella negativa, ma rimangono attive tutte le
predisposizioni (limiti, KA3 o KA4) programmati.
Per ripristinare la limitazione positiva precedente basterà programmare G123KA1 senza nessuna quota e per
ripristinare quella negativa G123KA-1 senza nessuna quota.
32
CNC Z32 - Guida alla programmazione (TORNIO)
Nella programmazione diretta, oltre alle quote X e Z degli assi, vengono utilizzati anche i seguenti parametri:
• QF (Pendenza)
La definizione della pendenza di un tratto è possibile tramite la programmazione del parametro QF secondo la
seguente convezione:
X X
QF > 0 QF < 0
Z
Z
QF tra 180 e 270 QF tra 270 e 360 QF tra -90 e -180
QF tra 0 e -90
QF > 0
QF < 0
QF tra 0 e -90
QF tra 180 e 270 QF tra 270 e 360 QF tra -90 e -180
Z
Z
QF tra 90 e 180 QF tra -180 e -270
QF tra 0 e 90 QF tra -270 e -360
X X
33
CNC Z32 - Guida alla programmazione (TORNIO)
• RR (raccordi)
La programmazione di un raggio di raccordo è possibile tramite la programmazione del parametro RR.
Il parametro RR deve essere programmato con segno.
In generale la scelta del segno del raccordo segue la stessa convezione della scelta tra G2 e G3.
Se l’arco di cerchio che rappresenta il raccordo desiderato è un tratto in G2, il raccordo equivalente è negativo
Se l’arco di cerchio che rappresenta il raccordo desiderato è un tratto in G3, il raccordo equivalente è positivo
X
RR-
Nella figura vengono mostrati i sensi e il segno dei
raccordi.
RR+
Z Z Vengono presi in considerazione sia il caso con asse
X rivolto verso l’alto sia il caso con asse X rivolto verso
RR+ il basso.
RR-
Nel caso in cui si programmi un profilo dalla parte delle X negative, la convenzione sul segno dei raggi di raccordo
diventa la seguente:
RR+
Attenzione: Questa convenzione vale solo nel caso
RR- in cui si programmi il profilo direttamente in X-, non
deve essere applicata se il profilo viene programmato
Z Z in X+ e successivamente specchiato con la funzione
di specularità.
RR-
RR+
L’inserimento di un raggio di raccordo si programma aggiungendo il parametro RR seguito dal valore del raggio di
raccordo (con segno) nello stesso blocco di movimento che deve terminare con il raccordo.
34
CNC Z32 - Guida alla programmazione (TORNIO)
• RB (Smussi)
X X RB
RB
RB
RB
Z Z
L’inserimento di uno smusso si programma aggiungendo il parametro RB seguito dal valore dello smusso nello
stesso blocco di movimento che deve terminare con lo smusso.
35
CNC Z32 - Guida alla programmazione (TORNIO)
Esempi di programmazione:
30° G1 X50 Z0
Z-20
50 Z-40 QF150
Z
-40 -20
30° 70 G1 X50 Z0
Z-20
50 X70 QF150
Z
-20
120
60°
G1 X50 Z0
30° Z-15
QF150
Z-50 X120 QF120
50
Z
-50 -15
36
CNC Z32 - Guida alla programmazione (TORNIO)
X
30°
70
G1 X20 Z0
QF 90
Z-25 X70 QF150
Z-50
20
Z
-50 -25
Alla fine di ogni tipo di movimento programmato è possibile inserire un raggio di raccordo oppure uno smusso
programmando sullo stesso blocco di definizione del movimento il valore del raccordo (RR) oppure dello smusso
(RB)
30° 70
G1 X50 Z0
Z-20 RR-15
50 Z-40 QF150
R15
Z
-20
120
60° R15
30° G1 X50 Z0
R10
Z-15 RR-10
QF150 RR-15
50 Z-50 X120 QF120
Z
-50 -15
37
CNC Z32 - Guida alla programmazione (TORNIO)
30° 70
50 G1 X20 Z0
QF 90 RR10
R15
Z-25 X70 QF150 RR10
Z-50
Z
-20
30°
50 G1 X50 Z0
Z-20 RB5
Z-40 QF150
5
Z
-40 -20
120
60°
30° G1 X50 Z0
Z-15 RB5
5
QF150 RB5
50
Z-50 X120 QF120
5
Z
-50 -15
38
CNC Z32 - Guida alla programmazione (TORNIO)
5 X
30°
70
G1 X20 Z0
QF 90 RB5
Z-25 X70 QF150 RB5
5 Z-50
20
Z
-50 -25
39
CNC Z32 - Guida alla programmazione (TORNIO)
Si noti che:
− gli spigoli interni possono non essere lavorati a causa del raggio utensile (zone 'X')
− sono inseriti alcuni tratti di raccordo (non programmati nel profilo originale) attorno agli spigoli
esterni (B e D)
− alcuni tratti programmati sono eliminati perché non sono lavorabili con il raggio utensile
programmato (tratto 5)
In generale, se in un programma è attivata (con G41/G42) la correzione raggio, lo Z32 esegue, su ogni tratto del
profilo programmato, una serie di operazioni per trasformarlo nel percorso di centro fresa.
Tali operazioni possono portare all’eliminazione di alcuni tratti di profilo perché non lavorabili con il raggio
impostato. L’eliminazione di alcuni tratti di profilo impone al controllo di “esplorare” la traiettoria in avanti in cerca di
eventuali tratti non lavorabili.
La funzione G109 permette di impostare quanti tratti vengono esplorati in avanti per cercare i tratti non lavorabili:
40
CNC Z32 - Guida alla programmazione (TORNIO)
Nel caso di profili da eseguire in correzione raggio, la punta teorica dell’utensile deve seguire un profilo diverso
rispetto al profilo teorico del pezzo.
Per affrontare la questione della compensazione del raggio utensile, occorre prima definire due punti importati, la
punta teorica dell’utensile e il centro utensile:
B
Nella figura, il punto A rappresenta il centro utensile, ovvero il centro del settore raggiato. Il punto B rappresenta la
punta teorica dell’utensile.
La punta teorica è il punto di azzeramento dell’utensile, le quote assi visualizzate a video sono riferite sempre al
punto B (punta teorica).
41
CNC Z32 - Guida alla programmazione (TORNIO)
Quando si affronta un profilo in correzione raggio, è necessario conoscere la posizione della punta teorica rispetto
al centro utensile:
X X
2
3 1
9
4 8
Z Z
5 7
6
6
5 7
9
Z Z
4 8
3 1
2
X X
La programmazione della G150 deve essere fatta prima di iniziare un profilo un correzione raggio.
42
CNC Z32 - Guida alla programmazione (TORNIO)
X X
G41 G42
G42 G41
Z Z
X X
G42 G41
G41 G42
Z Z
Z Z
X
G42 G41
G41 G42
X X
Z Z
G41 G42
G42 G41
X X
43
CNC Z32 - Guida alla programmazione (TORNIO)
Il movimento di attacco è il movimento successivo alla programmazione delle funzioni G41 o G42.
Il movimento di attacco porta il settore raggiato dell’utensile tangente alla traiettoria nel primo punto che definisce il
profilo. Ovvero il centro utensile viene portato sulla normale al profilo tangente al primo punto:
Lo stesso vale per l’ultimo punto del profilo. L’ultimo tratto del profilo porta il settore raggiato dell’utensile tangente
alla traiettoria nell’ultimo punto che definisce il profilo. Ovvero il centro utensile viene portato sulla normale al profilo
tangente all’ultimo punto:
80
70
G0 Z5 X70
G42
50 X50 Z0
Z-50
X70
G40
X80 Z-40
Z
-50 -40 5
44
CNC Z32 - Guida alla programmazione (TORNIO)
Attenzione! La riga di part-program nella quale si specifica il primo punto da raggiungere in correzione raggio è
necessario che sia sulla riga successiva a quella nella quale si programma l’attivazione della correzione raggio.
E non
G41 X.. Z..
La programmazione delle quote X e Z sulla stessa riga di attivazione della funzione G41 (o G42) ha il significato di
considerare in correzione raggio anche il primo movimento di attacco al profilo. In questi casi, non è detto che il
primo punto del profilo sia correttamente raggiunto. Consultare il manuale di programmazione M323 per una
descrizione più dettagliata.
Il movimento di attacco è descritto con il blocco G41 (o G42) X... Z.. QF.. X e Z sono le quote del primo punto del
profilo, QF è la pendenza finale del movimento di attacco, ovvero è la direzione del primo tratto di profilo. QF segue
la stessa convenzione già descritta per i tratti di profilo.
X
80
70
G0 Z5 X70
G42 X50 Z0 QF180
50
Z-50
X70
G40 X80 Z-40
Z
-50 -40 5
45
CNC Z32 - Guida alla programmazione (TORNIO)
Attenzione: nel caso di raggi utensile molto piccoli (inferiori a circa 3 micron) si possono avere errori sul
profilo interpolato di un massimo di circa 2 micron, che dovrebbero essere tollerati senza difficoltà in
qualsiasi applicazione, in quanto inferiori agli altri errori che influiscono sul risultato finale (errori di
inseguimento, di temperatura, di geometria utensile ecc.). Se però non sono tollerati errori di questa entità,
si raccomanda di non programmare raggi utensili molto piccoli (ossia si deve programmare il raggio
utensile fisico e non la correzione rispetto al raggio teorico.
Nel normale funzionamento della correzione raggio, sugli spigoli esterni viene inserito un raggio di raccordo.
Con G109S è possibile forzare il sistema di correzione raggio di Z32 a non introdurre l’arco di raccordo ma a
proseguire il segmento fino alla bisettrice dello spigolo
La G109S ha efficacia solo su spigoli generati da due segmenti rettilinei. Se uno dei due tratti è un arco di cerchio
(che impedirebbe comunque l’arrotondamento) si ha la normale introduzione dell’arco di raccordo.
G109S (modale, non attiva al reset) forza la correzione sulla bisettrice, mentre con G109T (modale, attiva al reset)
si ripristina il normale funzionamento di Z32 con l’introduzione dell’arco di raccordo.
G109T G109S
Attenzione: Per evitare grossi allungamenti dei tratti programmati, la modalità G109S elimina solamente i raccordi
esterni inferiori a 91 gradi.
G109S
46
CNC Z32 - Guida alla programmazione (TORNIO)
Quando un profilo non è eseguibile in correzione raggio, può essere segnalato un errore di PROFILO
INCOMPATIBILE. In questi casi, al fine di visualizzare il tratto che genera il problema, è possibile programmare la
funzione G109R ,che forza l'inserimento di un raccordo anche intorno allo spigolo interno (facendo una specie di
fiocco) e quindi elimina l'errore PROFILO INCOMPATIBILE.
Attenzione: normalmente la programmazione della G109R serve solamente per capire quali sono le
situazioni che generano l’errore di PROFILO INCOMPATIBILE in correzione raggio. Non è una funzione da
utilizzare nella programmazione normale.
Durante l’esecuzione di un profilo in correzione raggio, le quote visualizzate dal CN continuano ad essere riferite
alla punta virtuale dell’utensile.
Questo significa che, nel caso di pareti inclinate, o nel caso di cerchi, le quote visualizzate, non corrispondono alle
quote del profilo teorico.
La figura seguente mostra la traiettoria del profilo teorico (in linea continua) e le quote della punta virtuale
visualizzate a video (in linea tratteggiata).
X
1
47
CNC Z32 - Guida alla programmazione (TORNIO)
X
T4 M6
120 OZ1 OX1
110 G96 S30 MS2000 M3
G95 F1
2x45°
G150KA1
G0 Z10 X60
R5 G42
30°
70 X50 Z5
Z-30 RR-5
50 X70
Z-50 QF150 RR-5
R5 X110 RB2
Z-60
X120
G40
G0 Z-50 X130
Z
-60 -50 -30 5
48
CNC Z32 - Guida alla programmazione (TORNIO)
Con la funzione G150 è possibile specificare un sovrametallo nell’esecuzione di un profilo in correzione raggio.
La sintassi di programmazione è
G150 I…
Esempio:
Sovrametallo di 2mm sul profilo:
T4 M6
OZ1 OX1
X G96 S30 MS2000 M3
120 G95 F1
110 G150KA1 I2
2x45° N10
G0 Z10 X60
G42
R5
30° X50 Z5
70 Z-30 RR-5
X70
50 Z-50 QF150 RR-5
X110 RB2
R5 Z-60
X120
G40
G0 Z-50 X130
N20
Z
G150 I0
-60 -50 -30 5 !GON10-N20!
Nell’esempio di programma, dopo l’esecuzione del profilo con sovrametallo di 2mm, viene annullata la
programmazione del sovrametallo (con l’istruzione G150 I0) e ripetuto il profilo, questa volta, senza sovrametallo.
La ripetizione del profilo viene fatta con l’istruzione di salto con ritorno !GON..-N..! Consultare il presente
manuale al capitolo relativo ai salti con ritorno (programmazione parametrica).
49
CNC Z32 - Guida alla programmazione (TORNIO)
5. PROGRAMMAZIONE PARAMETRICA
• Parametri letterali:
Sono costituiti da combinazioni di uno o due caratteri.
Nei nomi dei parametri letterali non possono essere utilizzati:
- lo SPAZIO (BLANK)
- i NUMERI
- i caratteri ! $ % ( ) * + , - . / ; < = >
- il primo carattere non può essere nessuno dei seguenti: “G”, “N”, “O”
I caratteri minuscoli sono utilizzabili.
PARAMETRI DI SISTEMA:
Esistono alcuni parametri che hanno un significato ben preciso nella programmazione dello Z32 e che non
sono utilizzabili per scopi diversi da quelli ai quali sono destinati. Tali parametri sono definiti parametri di
sistema e sono:
50
CNC Z32 - Guida alla programmazione (TORNIO)
La D.ELECTRON potrà definire in seguito altri parametri per ampliare le prestazioni di software dello
Z32.
NOMI ASSI:
I nomi degli assi sono sempre definiti con una sola lettera a scelta tra le seguenti:
A B C D H P Q U V W X Y Z
Devono essere definiti nelle tarature di macchina.
PARAMETRI UTENTE
L’utente può definire in un programma un massimo di 60 “parametri letterali” per la programmazione
parametrica.
Sono vietate le seguenti combinazioni:
E’ normale utilizzare come parametri utente per la programmazione parametrica i parametri costituiti dalla
lettera H seguita da una seconda lettera, ad esempio HA, HB, HC,…
51
CNC Z32 - Guida alla programmazione (TORNIO)
• Parametri PAR[…]
E’ un vettore di 513 parametri. Da PAR[0] a PAR[512].
Il numero del parametro può essere il risultato di un’espressione, ad esempio:
HA10 HB5
PAR[6]30
PAR[HA + PAR[HB + 1]]
Equivale a:
PAR[10+PAR[6]]
Cioè:
PAR[40]
L’uso dei parametri PAR[…] può sostituire l’uso dei parametri utente letterali in tutte le situazioni. Tali
parametri inoltre non sono soggetti ad alcuna limitazione nel massimo numero di parametri utilizzabili.
• Parametri PAL[…]
Le modalità di uso sono le stesse del vettore PAR[…]
E’ un vettore di 513 parametri. Da PAL[0] a PAL[512].
Questi parametri sono solo INTERI e normalmente riservati allo scambio di informazioni tra il PLC ed il
part-program.
I valori da PAL[256] a PAL[512] sono di sola lettura.
I valori da PAL[0] a PAL[255] sono assegnabili da part-program. Quando ad un parametro PAL[…] viene
assegnato un numero non intero, tale numero viene arrotondato all’intero più vicino.
L’assegnazione di un valore numerico ad un parametro si effettua con una programmazione del tutto simile alla
programmazione del movimento di un asse.
E’ possibile programmare espressioni matematiche il cui risultato è funzione di valori numerici o di altri parametri.
Per assegnare un parametro con il risultato di un’espressione, si utilizzano le parentesi acute “<” e “>” (ovvero
simbolo di minore e maggiore) per indicare l’inizio e la fine dell’espressione.
52
CNC Z32 - Guida alla programmazione (TORNIO)
Oppure per assegnare al parametro PAR[10] il valore della radice quadrata del parametro HC:
PAR[10]< RQ(HC) >
Tramite l’uso delle parentesi tonde è possibile programmare espressioni anche molto complesse:
HA< HB + (HC+HD/2)/(SN(HE) >
N40 G0 X<HA>
N50 F<HB>
N60 G1 X<HC+100>
La programmazione di movimenti asse tramite un’espressione parametrica può essere anche molto complessa e
segue le stesse regole dalla programmazione dei parametri.
Ad esempio, è possibile impostare o modificare la lunghezza utensile lungo l’asse X (parametro LX):
LX100
Assegna il valore L al parametro lunghezza utensile.
Oppure
LX< LX-2 >
Accorcia l’utensile in direzione X di 2
Allo stesso modo è possibile assegnare un valore, anche tramite un’espressione, a tutti i parametri di sistema.
Attenzione: la programmazione dei parametri di sistema è del tutto equivalente alla programmazione dei parametri
utente. L’uso dei parametri di sistema deve essere però riservato per lo scopo previsto per il parametro steso e non
per calcoli parametrici generici
53
CNC Z32 - Guida alla programmazione (TORNIO)
Attraverso questi parametri è possibile programmare movimenti degli assi indipendentemente dai nomi degli assi
reali.
La sintassi di programmazione è esattamente uguale alla programmazione normale di movimenti asse, quindi è
possibile fare uso dei movimenti in G0, G1, G2, G3 e di tutte le funzionalità per la programmazione di profili
complessi (raggi di raccordo, smussi, etc.).
Ad esempio:
G25ZX
G0 AA5 (movimento in rapido dell’asse Z a quota 5)
G0 AB120 (movimento in rapido dell’asse X a quota 120)
HA-40 (assegno al parametro HA il valore -5)
G1 AA<HA> (movimento in lavoro dell’asse Z a quota -40)
…
54
CNC Z32 - Guida alla programmazione (TORNIO)
Nota:
Attraverso le righe evolute NON è possibile programmare movimenti macchina.
Nota: Il calcolo di espressioni o l’assegnazione di un valore ad un parametro è possibile sia in riga evoluta che in
riga non evoluta, ad esempio le seguenti istruzioni sono equivalenti:
!HA=10!
oppure
HA10
Come equivalenti sono le istruzioni:
!HA=PAR[3]!
e
HA<PAR[3]>
Attenzione: come già detto, con una riga evoluta non è possibile programmare il moto di un asse.
Ad esempio, la programmazione di
!X=100!
Non produce alcun movimento della macchina, ma ha solo il significato di impostare il valore del parametro X al
valore 100.
Per programmare uno spostamento della macchina è necessario NON fare uso delle righe evolute.
55
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio:
Il programma arriva ad N10 e salta alla label N20:
…
N10 !GON20!
…
N20
…
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti:
Programmazione giusta:
…
N10 !GON20!
…
N20
…
Programmazione sbagliata:
N10 !GON20!
…
N20
…
…
…
N20 !GON40-N50!
N30
…
N40
…
N50
…
Il programma arriva ad N20, salta ad N40, esegue le istruzioni tra N40 e N50 e poi torna ad eseguire N30.
I salti con ritorno possono essere fatti all’interno di altri salti con ritorno fino ad una profondità di 10 livelli.
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti.
56
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio:
!IF HA > 10 ; GON20!
Salta ad N20 se HA è maggiore di 10.
La condizione può essere un’espressione:
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti.
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti.
57
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio
!IF HA > 10 ; GON20 ! IF HA >5 ; GON30 ! GON40!
Se avessimo scritto:
!IF HA>=0 ; HA=HA+1 ! HA=HA-1!
L’istruzione non sarebbe stata corretta perché:
Se HA è maggiore o uguale a zero, HA viene prima incrementato e poi decrementato di uno, dato che, come detto,
il carattere “!” non interrompe l’esecuzione di una riga.
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti.
58
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio:
N10
…
N50 !GOP10!
Il programma principale viene eseguito fino alla riga N50, poi l’esecuzione salta al programma CMOS numero 10.
Il programma principale viene eseguito fino alla riga N50, poi l’esecuzione passa al sottoprogramma 10,
che viene eseguito dalla riga N10 fino alla riga N100. L’istruzione G26 indica la fine del sottoprogramma,
quindi dal programma CMOS 10 si ritorna ad eseguire il programma chiamante dalla riga N60
59
CNC Z32 - Guida alla programmazione (TORNIO)
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti.
5.2.9 Salto a sottoprogrammi CMOS con due label (!GOP.. –N.. –N.. !)
E’ possibile saltare ad un programma CMOS eseguendolo a partire da una certa label.
Ad esempio:
N10
…
N50 !GOP10-N30-N70!
N60
…
Il programma principale viene eseguito fino alla riga N50, poi l’esecuzione passa al sottoprogramma 10,
che viene eseguito dalla riga N30 fino alla riga N70. Dopo l’esecuzione della riga N70, si ritorna ad
eseguire il programma chiamante dalla riga N60
Attenzione: Per poter utilizzare i numeri N.. come destinazione di un salto è necessario che il carattere N
sia il primo carattere presente nella riga senza spazi davanti.
60
CNC Z32 - Guida alla programmazione (TORNIO)
L’istruzione --IF indica la prima condizione che viene controllata. Se {condizione 1} è verificata, vengono eseguite i
blocchi da N10 ad N20 e poi l’esecuzione passa ad N70.
Se {condizione 1} non è verificata, viene controllata la condizione --ELSE IF. Se {condizione 2} è verificata,
vengono eseguiti i blocchi da N30 ad N40 e poi l’esecuzione passa ad N70.
Se non sono verificate né la condizione 1 né la condizione 2, l’esecuzione passa al blocco --ELSE e vengono
eseguiti i blocchi da N50 ad N60, poi l’esecuzione passa ad N70.
Sulle righe --IF, --ELSE IF, --ELSE e --END IF è possibile inserire un commento dopo il carattere “;”
In sintesi:
L’istruzione --IF è la prima condizione controllata.
I blocchi --ELSE IF sono le condizioni che vengono controllate se se le condizioni precedenti non sono vere. E’
possibile avere più di un blocco ELSE IF. In questo caso le condizioni vengono controllate in sequenza.
--IF {condizione 1}
… (eseguito se condizione 1 è vera)
--ELSE IF {condizione 2}
… (eseguito se condizione 1 è falsa e condizione 2 è vera)
--ELSE IF {condizione 3}
… (eseguito se condizione 1 è falsa, condizione 2 è falsa e condizione 3 è vera)
--ELSE
… (eseguito se condizione 1 è falsa, condizione 2 è falsa e condizione 3 è falsa)
--END IF
N70
L’istruzione --ELSE identifica le istruzioni che vengono eseguite se tutte le altre condizioni non sono vere.
L’istruzione --END IF indica la fine di un blocco IF.
61
CNC Z32 - Guida alla programmazione (TORNIO)
62
CNC Z32 - Guida alla programmazione (TORNIO)
Ad esempio:
--DO
N10
…
N100
--LOOP
--DO
N10
…
N100
--LOOP 10
N110
--DO
N10
…
N100
--LOOP IF HA < 10
N110
63
CNC Z32 - Guida alla programmazione (TORNIO)
5.4.3 Condizione di uscita a metà del blocco --DO --LOOP (--EXIT DO)
Si può specificare il blocco e la condizione di uscita tramite l’istruzione:
--EXIT DO IF {condizione}
L’istruzione --EXIT DO permette di uscire dalla struttura --DO --LOOP quando la condizione è vera.
Nell’esempio che segue, i blocchi da N10 ad N100 vengono ripetuti fino a che non si verifica la condizione di
uscita. Quando la condizione di uscita è verificata, l’uscita viene effettuata al blocco N50, quindi le istruzioni
comprese tra N50 e N100 non vengono eseguite e si passa all’esecuzione del blocco N110.
--DO
N10
…
N50 --EXIT DO IF HA > 10
…
N100
--LOOP
N110
Attenzione: E’ possibile utilizzare l’istruzione --EXIT DO anche senza la condizione IF scritta sulla
stessa riga di programma, ad esempio è possibile scrivere:
--DO
…
--IF HA>100
--EXIT DO
--END IF
…
--LOOP
64
CNC Z32 - Guida alla programmazione (TORNIO)
--DEFINE P10
…
{Listato del programma}
…
--END DEFINE
T1M6
F5000
--DEFINE P10
G1 X<X-0.1>
G1 Z-50
G26
--END DEFINE
G0 X100
G0 Z2
!GOP10!
G0 X99.9
G0 Z2
!GOP10!
G0X101
M2
Nell’esempio, le istruzioni di definizione del programma 10 non generano movimento, il programma CMOS numero
10 viene eseguito solo dopo il suo richiamo con la funzione !GOP10!
Attenzione: Nella definizione di un sottoprogramma CMOS con la funzione --DEFINE P.. è necessario
inserire l’istruzione di fine sottoprogramma G26.
Attenzione: L’istruzione --DEFINE P.. deve essere eseguita prima di richiamare (con l’istruzione !GOP..!) il
programma definito .
Attenzione: La definizione di un programma CMOS con l’istruzione --DEFINE P.. non è temporanea. Tale
programma rimane utilizzabile anche dopo lo spegnimento e successiva accensione del controllo.
65
CNC Z32 - Guida alla programmazione (TORNIO)
G0 X100
G0 Z2
!GOS20!
G0 X99.9
G0 Z2
!GOS20!
G0X101
M2
E’ possibile utilizzare fino a 64 subtemp contemporanee per processo.
Una singola subtemp non può contenere un programma superiore a 240 KB.
Il contenuto di tutte le subtemp definite non può superare lo spazio di 1MB.
Per richiamare una subtemp è possibile usare le istruzioni !GOS..!, !GOS..–N..! e!GOS..–N..–N..! Tali istruzioni
sono equivalenti alle corrispondenti istruzioni !GOP.. ! valide per i programmai CMOS.
E’ possibile utilizzare un subtemp come ciclo fisso con l’istruzione G27S.. Per la programmazione di una subtemp
come ciclo fisso, consultare la sezione relativa ai cicli fissi.
Attenzione: Nella definizione di una subtemp con la funzione --DEFINE S.. è necessario inserire l’istruzione
di fine sottoprogramma G26.
Attenzione: L’istruzione --DEFINE S.. deve essere eseguita prima di richiamare la subtemp definita con
l’istruzione !GOS..!
Attenzione: La definizione di una subemp con l’istruzione --DEFINE S.. è temporanea. Tale subtemp rimane
utilizzabile solo all’interno dell’esecuzione in corso. Al termine dell’esecuzione la subtemp viene
cancellata.
66
CNC Z32 - Guida alla programmazione (TORNIO)
Una volta attivato un ciclo fisso (con la funzione G881-G886), esso è eseguito automaticamente dopo ogni
posizionamento in G0 (RAPIDO) programmato. Eventuali movimenti in lavoro non fanno eseguire il ciclo fisso.
La programmazione delle G881-G886 è la seguente:
Passaggio di parametri:
Il passaggio di parametri è effettuabile programmando i parametri da passare sulla stesa riga di programma dove è
programmata la G881-G886. Nella riga di programma dove è presente una G881-G886 non è possibile
programmare parametri diversi da quelli accettati per la programmazione dei cicli fissi.
67
CNC Z32 - Guida alla programmazione (TORNIO)
N1 G0 Z10
N2 G881 Z-10 J3 E5
N3 G0 X50
…
G881 Z-40 J5 E10 (attiva il ciclo fisso)
G0 X100 (esegue la prima foratura)
G881 E20 (cambia la quota di svincolo finale)
G0 X150 (esegue il ciclo fisso con nuovo svincolo finale)
G880 (disattiva il ciclo fisso)
…
…
G881 Z-40 J5 E10 F1200 (attiva il ciclo fisso di foratura)
N1 G0 X100 (esegue il primo posizionamento)
X150 (secondo posizionamento)
N2 X200 (terzo posizionamento)
G886 Z-35 F400 (attiva il ciclo fisso di alesatura)
(NOTA! I parametri J ed E sono ancora quelli del ciclo precedente)
(ripete i posizionanti☺
!GON1-N2!
G880 (disattiva ciclo fisso)
…
Attenzione: Per una programmazione più chiara e comprensibile, e per evitare comportamenti non facilmente
comprensibili, si consiglia di azzerare tutti i parametri di chiamata dei cicli fissi con la funzione G880, ogni volta che
si cambia ciclo fisso. In questo modo è necessario riprogrammare tutti i valori necessari al ciclo. Ad esempio:
68
CNC Z32 - Guida alla programmazione (TORNIO)
…
G881 Z-40 J5 E10 F1200 (attiva il ciclo fisso di foratura)
N1 G0 X100 (esegue il primo posizionamento)
X150 (secondo posizionamento)
N2 X200 (terzo posizionamento)
G880 (tutti i parametri ciclo vengono azzerati)
G886 Z-35 J5 E10 F400 (attiva il ciclo fisso di alesatura)
(NOTA! Tutti i parametri DEVONO ESSERE RIPROGRAMMATI perché con la funzione
G880 sono stati tutti azzerati)
(ripete i posizionamenti:)
!GON1-N2!
G880 (disattiva ciclo fisso)
…
69
CNC Z32 - Guida alla programmazione (TORNIO)
feed F
Z (o X): quota di fondo foro
G0
E
J: quota di avvicinamento. E’ la quota di partenza della
lavorazione
J
E: quota di svincolo finale.
F: Avanzamento in lavoro
NT
Note: Nel caso nel caso di fori in direzione X, i valori X, J,
Z(X)
E vengono considerati valori diametrali oppure radiali in
funzione della modalità attiva al momento della
programmazione delle forature.
feed F
Z (o X): quota di fondo foro.
G0 E
F: Avanzamento in lavoro
Nota: Nel caso nel caso di fori in direzione X, i valori X, J, E, K e I vengono considerati valori
diametrali oppure radiali in funzione della modalità attiva al momento della programmazione delle
forature.
70
CNC Z32 - Guida alla programmazione (TORNIO)
feed F E
Z (o X): quota di fondo foro. NN
NQ
G0
J: quota di avvicinamento. E’ la quota di partenza della
lavorazione J
Z (X)
NM: minima profondità di passata
Nota: Per avere incrementi in profondità costanti, occorre programmare il valore I pari a 0.
NS: Distanza di sicurezza nei riposizionamenti in rapido nel foro. Se viene programmato un valore 0,
oppure non viene programmato il parametro NS, viene applicato di default un valore pari ad 1.
F: Avanzamento in lavoro
Nota: Nel caso nel caso di fori in direzione X, i valori X, J, E, K, I, NM, NQ, NS vengono considerati
valori diametrali oppure radiali in funzione della modalità attiva al momento della programmazione
delle forature.
71
CNC Z32 - Guida alla programmazione (TORNIO)
72
CNC Z32 - Guida alla programmazione (TORNIO)
Parametri di programmazione:
NX diametro iniziale della prima parete
X diametro finale del fondo gola
NZ quota Z iniziale della prima parete
Z quota Z finale della seconda parete
NI angolo della prima parete eseguita (programmare valore positivo). Se non programmato, si intende parete
verticale
NL angolo della seconda parete (programmare valore positivo). Se non programmato si intende parete
verticale
NA/NE smusso (NA) o raccordo (NE) sul primo punto della prima parete.
NB/NF smusso (NB) o raccordo (NF) sul fondo gola della prima parete
NC/NG smusso (NC) o raccordo (NG) sul fondo gola della seconda parete
ND/NH smusso (ND) o raccordo (NH) sull’ultimo punto della seconda parete
NU sovrametallo in Z
NV sovrametallo in X (valore radiale in mm)
K asportazione per passata. Se non programmato viene preso il 75% del valore J (larghezza del tagliente)
J Larghezza dell’utensile (in caso di utensile sferico, occorre programmare J = 2*R)
I tipo di lavorazione
NN numero di ripetizioni della lavorazione
E passo tra una lavorazione e la successiva
Z
Z
X
X NZ Z
NA NE ND NH
NC NG X
NB NF NL NX
NI
NL NI NC NG
NB NF
ND NH NA NE
NX
Z NZ X
Gola esterna con incremento di passata in Gola interna con incremento di passata in
direzione Z- direzione Z+
73
CNC Z32 - Guida alla programmazione (TORNIO)
La gola è formata da tre tratti. La prima parete, il fondo gola e la seconda parete.
- La prima parete inizia dalle quote NZ, NX ed ha inclinazione NI (gradi) rispetto alla parete verticale.
- Il fondo gola è eseguito al dimetro programmato con il valore X
- La seconda parete termina alla quota programmato con il valore Z ed ha inclinazione NL (gradi) rispetto alla
parete verticale.
- Per effettuare l’incremento di passata in direzione Z-, programmare NZ a con quota Z maggiore della
quota programmata con Z (come nella figura sottostante)
- Per effettuare l’incremento di passata in direzione Z+, programmare NZ a con quota Z minore della
quota programmata con Z
- La gola è una gola esterna se NX è ad un diametro maggiore della quota programmata con X.
- La gola è una gola interna se NX è ad un diametro minore della quota programmata con X.
La figura sottostante riporta la programmazione nei quattro casi fondamentali di gole esterne ed interne con
incrementi verso sinistra e verso destra.
Seconda parete
Seconda parete Prima parete
X,Z Prima parete X,Z
NL NI NI NL
Z Z
X X
NL NI NI NL
Prima parete
X,Z X,Z
Seconda parete Prima parete
Seconda parete
NX, NZ NX, NZ
Z Z
Direzione di passata Direzione di passata
74
CNC Z32 - Guida alla programmazione (TORNIO)
Tramite i parametri NA, NB, NC, ND, NE, NF, NG, NH è possibile definire raccordi e smussi nel profilo della gola.
I parametri NA, NB, NC, ND sono usati per definire gli smussi
I parametri NE, NF, NG, NH sono usati per definire i raccordi
Gli smussi e i raccordi sono definiti a partire dal primo della prima parete (punto NX, NZ) in successione uno dopo
l’altro.
X X
NX, NZ NX, NZ
NF NH NB NC ND
NE NG NA
Seconda parete Seconda parete
Prima parete Prima parete
X,Z X,Z
NI NL NI NL
Z Z
NX, NZ
1 2
Seconda parete
Prima parete
X,Z
75
CNC Z32 - Guida alla programmazione (TORNIO)
La macro di lavorazione delle gole può essere usata con utensili sferici o con utensili troncatori.
• Nel caso di utensili sferici, il raggio utensile deve essere programmato come di consueto con il valore R,
espresso direttamente in tabella utensile, oppure scritto come parametro nel part-program. I parametro J
va impostato pari alla larghezza complessiva dell’utensile (quindi J=2*R)
• Nel caso di utensili col fondo piatto, la larghezza utensile va specificata con il parametro J.
J J
Per la corretta esecuzione della lavorazione, è necessario conoscere qual è il punto di azzeramento dell’utensile,
ovvero, qual è l’orientamento dell’utensile.
Prima di richiamare la macro delle gole, è necessario impostare la funzione G150KA… Con il corretto orientamento
della punta utensile.
Z Z
5 6 7 3 2 1
X
76
CNC Z32 - Guida alla programmazione (TORNIO)
Tramite i parametri NN ed E è possibile definire quante gole effettuare e a che distanza queste devono essere
spaziate tra di loro.
Il parametro NN rappresenta il numero di ripetizioni, il parametro E rappresenta la distanza tra una lavorazione e la
successiva.
La ripetizione della lavorazione si intende lungo l’asse Z.
Esempio: X
100
Z
-120 -100 -80 -60 -40 -20
OZ1 OX1
T7M6
G96 S… MS… M3
G95 F…
G0 X110
Z-20
G901 Z-40 X50 NX100 NZ-20 NE10 NH10 NN3 E40
M2
77
CNC Z32 - Guida alla programmazione (TORNIO)
OZ1 OX1
100 T1M6
G96 S… MS… M3
G95 F…
G0 X110
Z-20
50
G901 Z-40 X50 NX100 NZ-20
M2
Z
-40 -20
OZ1 OX1
T1M6
G96 S… MS… M3
G95 F…
G0 X110
Z-20
G901 Z-40 X50 NX100 NZ-20 NE10 NH10 NV.1 NU0.1
M2
100
R10 R10
50
Z
-40 -20
78
CNC Z32 - Guida alla programmazione (TORNIO)
Esempio: Gola esterna con due raccordi, sovrametalli di sgrossatura, parete inclinata e lavorazione I3:
OZ1 OX1
T1M6
G96 S… MS… M3
G95 F…
G0 X110
Z-20
G901 Z-60 X50 NX100 NZ-20 NE10 NH10 NL30 NV.1 NU0.1 I3
M2
100
R10 R10
50
30°
Z
-60 -20
79
CNC Z32 - Guida alla programmazione (TORNIO)
Parametri di programmazione:
NX diametro iniziale della prima parete
X diametro finale della seconda parete
NZ quota Z iniziale della prima parete
Z quota Z del fondo gola
NI angolo della prima parete eseguita (programmare valore positivo). Se non programmato, si intende
parete verticale
NL angolo della seconda parete (programmare valore positivo). Se non programmato si intende parete
verticale
NA/NE smusso (NA) o raccordo (NE) sul primo punto della prima parete.
NB/NF smusso (NB) o raccordo (NF) sul fondo gola della prima parete
NC/NG smusso (NC) o raccordo (NG) sul fondo gola della seconda parete
ND/NH smusso (ND) o raccordo (NH) sull’ultimo punto della seconda parete
NU sovrametallo in Z
NV sovrametallo in X (valore radiale in mm)
K asportazione per passata. Se non programmato viene preso il 75% del valore J (larghezza del
tagliente)
J Larghezza dell’utensile (in caso di utensile sferico, occorre programmare J = 2*R)
I tipo di lavorazione
NN numero di ripetizioni della lavorazione
E passo tra una lavorazione e la successiva
NA NE NX
NI
NB NF
Z
Z NZ
NC NG
X
ND NH
NL
80
CNC Z32 - Guida alla programmazione (TORNIO)
La gola è formata da tre tratti. La prima parete, il fondo gola e la seconda parete.
- La prima parete inizia dalle quote NZ, NX ed ha inclinazione NI (gradi) rispetto alla parete verticale.
- Il fondo gola è eseguito al dimetro programmato con il valore X
- La seconda parete termina alla quota programmato con il valore Z ed ha inclinazione NL (gradi) rispetto alla
parete verticale.
- Per effettuare l’incremento di passata in direzione Z-, programmare NZ a con quota Z maggiore della
quota programmata con Z (come nella figura sottostante)
- Per effettuare l’incremento di passata in direzione Z+, programmare NZ a con quota Z minore della
quota programmata con Z
- La gola è una gola esterna se NX è ad un diametro maggiore della quota programmata con X.
- La gola è una gola interna se NX è ad un diametro minore della quota programmata con X.
La figura sottostante riporta la programmazione nei quattro casi fondamentali di gole esterne ed interne con
incrementi verso sinistra e verso destra.
X X
X,Z
NX, NZ
NL NL
Seconda parete Prima parete
X X
X,Z
NX, NZ
NL NI
Seconda parete Incremento di passata Seconda parete
Direzione di passata
Prima parete Prima parete
NI NL
NX, NZ X,Z
Z Z
81
CNC Z32 - Guida alla programmazione (TORNIO)
Tramite i parametri NA, NB, NC, ND, NE, NF, NG, NH è possibile definire raccordi e smussi nel profilo della gola.
I parametri NA, NB, NC, ND sono usati per definire gli smussi
I parametri NE, NF, NG, NH sono usati per definire i raccordi
Gli smussi e i raccordi sono definiti a partire dal primo della prima parete (punto NX, NZ) in successione uno dopo
l’altro.
X X
NA
NE NX, NZ
NX, NZ NI
NI Prima parete
Prima parete
NF
NF
NG NG
Seconda parete Seconda parete
NL NL
X,Z X,Z
NH Z
NH
Z
X,Z
Seconda parete
1
2
Prima parete
NX, NZ
Z
82
CNC Z32 - Guida alla programmazione (TORNIO)
La macro di lavorazione delle gole può essere usata con utensili sferici o con utensili troncatori.
• Nel caso di utensili sferici, il raggio utensile deve essere programmato come di consueto con il valore R,
espresso direttamente in tabella utensile, oppure scritto come parametro nel part-program.
• Nel caso di utensili col fondo piatto, la larghezza utensile va specificata con il parametro J. Tale parametro
può essere salvato direttamente in tabella utensile.
R
J
J
Per la corretta esecuzione della lavorazione, è necessario conoscere qual è il punto di azzeramento dell’utensile,
ovvero, qual è l’orientamento dell’utensile.
Prima di richiamare la macro delle gole, è necessario impostare la funzione G150KA… Con il corretto orientamento
della punta utensile.
3 1 5 7
Z Z
4 8 4 8
5 7 3 1
X
83
CNC Z32 - Guida alla programmazione (TORNIO)
Tramite i parametri NN ed E è possibile definire quante gole effettuare e a che distanza queste devono essere
spaziate tra di loro.
Il parametro NN rappresenta il numero di ripetizioni, il parametro E rappresenta la distanza tra una lavorazione e la
successiva.
La ripetizione della lavorazione si intende lungo l’asse Z.
Esempio: X
R5
120
100
R5 OZ1 OX1
80 T7M6
G96 S… MS… M3
G95 F…
60 G0 X110
Z-20
R5 G902 Z-18 X40 NX20 NZ0 NE5 NH5 NN3 E40
M2
40
20
R5
-18 Z
84
CNC Z32 - Guida alla programmazione (TORNIO)
6.4 G903: Macro di sgrossatura di aree trapezie con passate lungo l’asse Z.
Tramite questa macro è possibile sgrossare aree trapezie con passate lungo l’asse Z.
NX, NZ
X,Z
NL NI
Z
Parametri:
NX diametro iniziale della prima parete
X diametro finale del fondo dell’area da sgrossare
NZ quota Z iniziale della prima parete
Z quota Z finale dell’area da sgrossare
NI lunghezza della prima parete inclinata (NI0 oppure non programmato si intende parete verticale)
NL lunghezza della seconda parete inclinata (NL0 oppure non programmato si intende parete
verticale)
K numero di passate di sgrossatura
I tipo di lavorazione:
I0 Ingresso in lavoro Uscita in lavoro
I1 Ingresso in rapido Uscita in lavoro
I2 Ingresso in lavoro Uscita in rapido
I3 Ingresso in rapido Uscita in rapido
J Abilita correzione raggio
J0 Correzione raggio non abilitata
J1 Correzione raggio abilitata
E Sovrametallo vettoriale (sia in X che in Z)
85
CNC Z32 - Guida alla programmazione (TORNIO)
A seconda di come vengono programmati i parametri NX, NZ, X e Z, la lavorazione può essere esterna, interna, da
sinistra a destra o da destra verso sinistra.
In generale:
Le passate di sgrossatura vengono eseguite nel senso dalla quota NZ alla quota Z
Gli approfondimenti di passata vengono eseguiti nel senso dalla quota NX alla quota X
Lo schema seguente rappresenta le varie possibilità:
X X
NX, NZ NX, NZ
X,Z X,Z
NL NI NI NL
Z Z
X NL NI X NL NI
X,Z
X,Z
NX, NZ NX, NZ
Z Z
Correzione raggio:
Nel caso di correzione raggio attiva (J1), l’area da sgrossare viene modificata per effetto del raggio utensile, come
mostrato nella figura seguente:
86
CNC Z32 - Guida alla programmazione (TORNIO)
6.5 G904: Macro di sgrossatura di aree trapezie con passate lungo l’asse X.
Tramite questa macro è possibile sgrossare aree trapezie con passate lungo l’asse X.
X
X, Z
NL
NI
NX, NZ
Z
Parametri:
NX diametro iniziale della prima parete
X diametro finale dell’area da sgrossare
NZ quota Z iniziale della prima parete
Z quota Z finale dell’area da sgrossare
NI lunghezza della prima parete inclinata (NI0 oppure non programmato si intende parete verticale)
NL lunghezza della seconda parete inclinata (NL0 oppure non programmato si intende parete
verticale)
K numero di passate di sgrossatura
I tipo di lavorazione:
I0 Ingresso in lavoro Uscita in lavoro
I1 Ingresso in rapido Uscita in lavoro
I2 Ingresso in lavoro Uscita in rapido
I3 Ingresso in rapido Uscita in rapido
J Abilita correzione raggio
J0 Correzione raggio non abilitata
J1 Correzione raggio abilitata
E Sovrametallo vettoriale (sia in X che in Z)
87
CNC Z32 - Guida alla programmazione (TORNIO)
A seconda di come vengono programmati i parametri NX, NZ, X e Z, la lavorazione può essere esterna, interna, da
sinistra a destra o da destra verso sinistra.
In generale:
Le passate di sgrossatura vengono eseguite nel senso dalla quota NX alla quota X
Gli approfondimenti di passata vengono eseguiti nel senso dalla quota NZ alla quota Z
Lo schema seguente rappresenta le varie possibilità:
X X
X,Z NX, NZ
NL NI
NI NL X,Z
NX, NZ
Z Z
X X
X,Z NX, NZ
NL NI
NI NL
NX, NZ
Z X,Z Z
Nel caso di correzione raggio attiva (J1), l’area da sgrossare viene modificata per effetto del raggio utensile, come
mostrato nella figura seguente:
88
CNC Z32 - Guida alla programmazione (TORNIO)
6.6 Filettatura
G33 X… Z… K…
Esempio:
Singola passata filettatura cilindrica:
X
OX1 OZ1
T2M6
G95 S400 M3
G0 X50 Z5
G33 Z-40 K1
50
G0 X60
M2
Z
-40
89
CNC Z32 - Guida alla programmazione (TORNIO)
Dopo la programmazione della funzione G33, tutti i movimenti successivi vengono eseguiti in filettatura. I
movimenti possono essere sia tratti lineari che tratti circolari. Durante l’esecuzione dei movimenti in filettatura il
passo K specifica l’avanzamento che l’utensile compie, sulla traiettoria, ad ogni giro del mandrino.
La fine dei movimenti di filettatura deve essere specificata con un movimento in rapido (G0).
La definizione del profilo da filettare può essere fatta utilizzando gli elementi geometrici descritti precedentemente,
quali elementi conici, raccordi, etc.
Esempio:
Filettatura cilindro-conica:
Attenzione: Se si desidera mantenere costante il passo lungo l’asse Z, occorre ricalcolare il passo secondo la
formula:
K = {Passo sull’asse Z} / cos(angolo conicità)
Nell’esempio il passo lungo Z è pari a 2mm, l’angolo di conicità è di 30 gradi, quindi il passo K sulla parte
conica è pari a:
K = 2/cos(30) = 2.309
OX1 OZ1
30°
T2M6
G95 S400 M3
50
G0 X50 Z5
G33 Z-20 K2
Z-40 QF150 K2.309
G0 X80
Z M2
-40 -20
E’ importate tenere in considerazione il fatto che all’inizio di ogni movimento di filettatura è necessario un tratto “in
aria” nel quale il moto degli assi interessati alla filettatura viene sincronizzato con il moto del mandrino.
Piniz
Il moto di filettatura deve partire in aria per con uno spazio sufficiente per permettere la corretta sincronizzazione
del moto.
Lo spazio di rincorsa in aria dipende dal tipo di lavorazione che si desidera effettuare e dalla dinamica della
macchina. Per lavorazioni di filettatura tipiche, può essere considerato come valore indicativo uno spazio di
rincorsa pari a tre volte il passo della filettatura da eseguire.
90
CNC Z32 - Guida alla programmazione (TORNIO)
Il termine “filettatura a passo variabile” indica una filettatura il cui passo non è costante ma varia con continuità
secondo una prestabilita entità di variazione.
La filettatura a passo variabile viene programmata mediante due diverse funzioni G:
G34 K.. I.. filettatura a passo crescente
G35 K.. I.. filettatura a passo decrescente
Tutto quanto è riportato nel manuale riguardo alla filettatura a passo fisso (G33) resta valido anche per la filettatura
a passo variabile (G34 e G35).
K = passo (mm o pollici) iniziale della filettatura. Parametro che può essere impostato nel blocco di G34/G35
oppure in blocchi precedenti.
Attenzione: se il parametro K viene riprogrammato nei blocchi successivi, con G34/G35 sempre attiva,
si ha una brusca variazione di passo.
I = incremento del passo espresso in mm/giro o pollici/giro. Parametro che si può programmare solo nella riga del
blocco G34/G35. Questo parametro è sempre positivo e se viene programmato negativo viene comunque
preso come valore assoluto.
Con G34 esprime il numero di mm/giro o pollici/giro di cui il passo K aumenta
Con G35 il numero di mm/giro o pollici/giro di cui il passo K diminuisce.
Attenzione: se in conseguenza al decremento di K si arriva ad un passo <=0 viene dato l’allarme (in
tempo reale) CN1F13.
Movimenti di filettatura con passo fisso o variabile possono essere eseguiti in sequenza: il passo di filettatura
varierà con continuità o rimarrà costante o avrà una discontinuità a seconda della funzione di filettatura
programmata e dei parametri programmati.
91
CNC Z32 - Guida alla programmazione (TORNIO)
G905 X.. NZ.. K.. Z.. E.. NS.. (J..) (NF..) (I..) (NG..) (NU..)
I parametri tra parentesi possono essere omessi, ma devono comunque risultare uguali a zero al momento della
programmazione della macro M63.
92
CNC Z32 - Guida alla programmazione (TORNIO)
Filetto custom
La filettatura custom (generica) è una filettatura con incremento di passata radiala. A differenza della filettatura a
pane quadro (per la quale l’altezza del dente è pari al passo), con la filettatura custom è possibile definire la
profondità del filetto con il parametro (NU) che definisce la “sfondatura”.
3. Ciclo di filettatura
Dopo il posizionamento in “aria” a carico del programmatore, la macro di filettatura G905 esegue le seguenti
operazioni:
Calcola gli incrementi, radiale ed assiale, e posiziona l’utensile secondo la funzione preparatoria attiva prima della
M63, potrà essere eseguito:
un tratto di retta se attivo G1 o G0
un raccordo circolare se attiva G2/G3
Filetta a “scivolo”, come indicato nella figura precedente. La profondità di passata viene calcolata mantenendo
costante la sezione del truciolo.
Per evitare sollecitazioni gravose sull’utensile, la prima e la seconda passata vengono eseguite dimezzando la
profondità di passata che risulterebbe dal calcolo.
Esce dal filetto con un arco di raccordo, in lavoro, per staccarsi dell’entità definita nel parametro J (mm), dalla
superficie del pezzo.
Ritorna in rapido, parallelamente al pezzo, alla stessa quota Z del punto iniziale
Calcola e raggiunge il nuovo punto incrementato in rapido
Ripete dal punto 2 al punto 6 per eseguire le passate di sgrossatura programmate
Ripete l’ultimo movimento eseguito senza incrementi per le passate di lisciatura (finitura) programmate.
93
CNC Z32 - Guida alla programmazione (TORNIO)
In filettature a più principi l’utensile si allontana dal pezzo assialmente ed esegue tutti i principi prima di fare la
passata successiva.
La filettatura termina con un raccordo di raggio uguale alla distanza di ritorno tra utensile e pezzo, definita nel
parametro J. Poiché la decelerazione degli assi non è infinita tale distanza dovrà essere tale da consentirne
l’arresto.
Il punto finale programmato non viene mai superato.
X
J/2
J
X
1 2 3
Z
Z
5. Filettature cilindriche
E’ possibile eseguire filettature esterne od interne, dalla parte delle X positive o negativa. La figura mostra i modi di
programmazione possibili.
X
2 1
50
M24 x3
M40 x3
3
Z
4
100
Filetto 1
.........
G0 X45 Z5
G905 X40 NZ5 Z-103 K3 E100 J3 NS5 NF1
........
Filetto 2
94
CNC Z32 - Guida alla programmazione (TORNIO)
.........
G0 X45 Z-103
G905 X40 NZ-103 Z5 K3 E100 J3 NS5 NF1
.....
Filetto 3
......
G0 X20 Z-53
G905 X24 NZ-53 Z5 K3 E200 J2.5 NS7 NF1
......
Filetto 4
......
G0 X-20 Z5
G905 X-24 NZ5 Z-53 K3 E200 J2.5 NS7 NF1
......
6. Filettature coniche
E’ possibile eseguire filettature coniche sia esterne che interne.
Il parametro X è riferito al diametro nominale che corrisponde alla NZ in aria.
Il parametro NG si calcola con la formula:
Xfinale − Xiniziale 1
NG = ⋅ ⋅100
2 ∆Z
Dove:
Xiniziale è il diametro nominale iniziale
Xfinale è il diametro nominale finale
∆Z è la lunghezza (sempre positiva) del tratto in Z che va da Xiniziale a Xfinale
95
CNC Z32 - Guida alla programmazione (TORNIO)
Esempi:
X
1
X80
X60
X40
X30 2
Z
-100 -50 5
1) Caso di filettatura esterna con un diametro iniziale X=60, un diametro finale X=80 e le coordinate in Z di inizio
filettatura e fine filettatura rispettivamente NZ=5 e Z= -100. Filetta partendo dal diametro minimo verso il diametro
massimo. In tale caso si avrà una conicità percentuale positiva uguale a:
80 − 60 1
NG = ⋅ ⋅100 = 9.524
2 105
Dunque la programmazione sarebbe ad esempio:
G0 X60 Z10
G905 X60 NZ5 Z-100 NG9.524 E100 J2.5 NS7 NF1 K1.25
2) Caso di filettatura interna con un diametro iniziale X=30, un diametro finale X=40 e le coordinate in Z di inizio
filettatura e fine filettatura rispettivamente NZ=-50 e Z=5. Filetta partendo dal diametro massimo verso il diametro
minimo. In tale caso si avrà una conicità percentuale positiva uguale a:
40 − 30 1
NG = ⋅ ⋅100 = 9.091
2 55
Dunque la programmazione sarebbe ad esempio:
G0 X25 Z-50
G905 X30 NZ-50 Z5 NG9.091 E200 J2.5 NS7 NF1 K1.25
96
CNC Z32 - Guida alla programmazione (TORNIO)
G906 X.. Z.. NZ.. NX.. K.. E.. NS.. (J..) (NF..) (I..) (NG..) (NU..)
X
3
2
1
X
Z
Z
97
CNC Z32 - Guida alla programmazione (TORNIO)
1. Parametri in ingresso
Il formato da programmare comprende:
G907 NX.. NY.. NG.. K.. (NE..) (NL..) (NJ..) (NI..) (NS..) (NR..) (NV..) (NW..)
(NU..) (I..) (NF..)
98
CNC Z32 - Guida alla programmazione (TORNIO)
NW Modifica entità della prima passata del valore contenuto in NW. Può essere positivo o negativo per
aumentare o diminuire la prima passata. Se non programmato oppure 0 non modifica entità prima
passata.
NU Quando diverso da zero non esegue il contorno finale ma esce in rapido dal punto finale ultima passata
fino all’intersezione col profilo, con direzione data dall’angolo NU (angolo riferito al primo asse del piano,
asse Z).
I Se I=1 abilita ritorno su passata precedente. In questo caso non viene eseguita l’uscita a 30 gradi ma
contorna fino alla passata precedente e ritorna in rapido.
NF Contiene la FEED di avanzamento per la passata di sgrossatura. Se non impostato oppure uguale a zero è
la F programmata. I movimenti saranno eseguiti pertanto con feed NF per quanto riguarda le passate di
sgrossatura e con la feed nominale impostata nel part-program per quanto riguarda i movimento in
contornitura sul profilo.
Metodologia di programmazione
La macro di sgrossatura prevede che venga definito il profilo da sgrossare tra due label N che identificano l’inizio e
la fine del profilo da sgrossare.
Il numero N di inizio profilo viene passato alla macro con il parametro NX
Il numero N di fine profilo viene passato alla macro con il parametro NY
E’ possibile definire il profilo da sgrossare in un punto qualsiasi del part-program, anche dopo l’istruzione di fine
programma M2.
Ad esempio:
…
… In questo caso, il profilo da sgrossare è
G907 NX10 NY20 … … … definito dopo l’M2.
In questo caso, dopo l’esecuzione della
M2 macro di sgrossatura G907 il part-
program termina (istruzione M2)
N10
…
… profilo da sgrossare
…
…
N20
…
… In questo caso, il profilo da sgrossare è
G907 NX10 NY20 … … …
definito prima dell’M2.
T…M6 In questo caso, dopo l’esecuzione della
macro di sgrossatura G907 il part-
N10 program prosegue.
…
… profilo da sgrossare Nel caso a lato, dopo la sgrossatura
… viene effettuato un cambio utensile e
… l’esecuzione del profilo.
N20
M2
99
CNC Z32 - Guida alla programmazione (TORNIO)
Il profilo da sgrossare deve essere definito partendo dal grezzo (con tratti in G0) e continuando con il finito. La
figura che segue mostra due esempi di profilo.
Ritorno rapido
X
Ritorno a 30 gradi
Passata di sgrossatura
A
C
F
D E Z
100
CNC Z32 - Guida alla programmazione (TORNIO)
- il profilo programmato (grezzo + finito) devono costituire un’area chiusa, ovvero il primo punto del
grezzo deve coincidere con l’ultimo punto del finito
- Il profilo va definito in senso orario oppure antiorario, in funzione della direzione di passata e
dell’incremento di passata. La profondità di passata (K) deve essere definita positiva oppure negativa in
funzione della lavorazione che si desidera eseguire.
Nella figura che segue sono schematizzati gli otto profili (4 orari e 4 antiorari) che riassumono le varie combinazioni
possibili con passate parallele agli assi:
K>0 K<0
NG90 NG90
NG0 NG180
K<0 K>0
G42 G41 G41 G42
X X
Z Z
Le passate possono anche essere non parallele agli assi. In questo caso il valore di NG ed il segno di K va scelto
in accordo con la seguente figura:
G41 G42
K<0 K>0 G42 G41
K>0 K<0
NG45 NG135 NG-135 NG-45 NG-135 NG-45
NG-45 NG-135
NG45 NG135
101
CNC Z32 - Guida alla programmazione (TORNIO)
(Sgrossatura esterna : angolo passate NG180 , incremento di passate lungo l ' asse X- )
(profondita’ di passata K positivo , profilo grezzo e finito definiti in senso)
(orario , utensile a destra del profilo finito G42 )
102
CNC Z32 - Guida alla programmazione (TORNIO)
Tramite la programmazione del parametro I è possibile definire il comportamento della macro a fine passata.
Programmando I0 (che equivale a non programmare il parametro I), alla fine di ogni passata viene eseguita
un’uscita a 30 gradi, come mostrato in figura:
3
2
J
1 4
La distanza tra la passata di ritorno e la passata è programmabile con il parametro J. Se programmato J0 (oppure
J non programmato), la distanza tra la passata ed il ritorno equivale a metà della profondità di passata.
Programmando I1, a fine passata viene contornato il profilo finito fino a tornare sulla passata precedente.
3
2
7 1 4
6
103
CNC Z32 - Guida alla programmazione (TORNIO)
K
NI
K
NL
NJ
NL
Esempio: Z
OX1OZ1
T…M6 (ut. Sgrossatura)
G96 S… MS… M3
G95 F…
G150KA1
104
CNC Z32 - Guida alla programmazione (TORNIO)
Scavalcamento
Il ciclo di sgrossatura prevede la possibilità di sgrossare profili anche non monotoni.
Ad esempio:
OX1OZ1
T…M6 (ut. Sgrossatura)
G96 S… MS… M3
G95 F…
G150KA1
M2
N10
G0 X150 Z-100
Z1
X50
G41
X50Z0
X80Z-20RR10
Z-40
G3 I-60 J80 Z-80X80
G1 Z-100
G40
G0 X150 Z-100
N20
105
CNC Z32 - Guida alla programmazione (TORNIO)
Tramite il parametro NU è possibile non effettuare la contornitura finale che normalmente viene effettuata.
Programmando un valore diverso da zero nel parametro NU, alla fine dell’ultima passata di sgrossatura, al posto
della contornitura finale, viene effettuato un movimento in rapido con direzione data dal valore NU.
Il parametro NU rappresenta l’angolo di uscita dell’ultimo movimento, e va scelto in funzione del profilo e della
lavorazione eseguita. L’uscita viene eseguita fino a tornare sul grezzo definito.
Per capire il significato del parametro NU, è possibile fare riferimento ai due esempi sottostanti:
Esempio con uscita finale a 120 gradi. Si nota a fine lavorazione l’uscita a 120 gradi che porta l’utensile sul profilo
superiore del grezzo.
OX1OZ1
T…M6 (ut. Sgrossatura)
G96 S… MS… M3
G95 F…
G150KA1
G907 NX10 NY20 NG180 K4 NU120
M2
N10
G0 X150 Z-100
Z1
X50
G41
X50Z0
X80Z-20
G1 Z-100 X100
G40
G0 X150 Z-100
N20
Esempio con uscita finale a 0.1 gradi. A fine lavorazione non si nota nessun particolare movimento di uscita.
L’utensile già si trova infatti sul profilo che definisce il grezzo, e nella direzione richiesta, non esiste nessun altro
punto che l’utensile possa raggiungere.
OX1OZ1
T…M6 (ut. Sgrossatura)
G96 S… MS… M3
G95 F…
G150KA1
G907 NX10 NY20 NG180 K4 NU0.1
M2
N10
G0 X150 Z-100
Z1
X50
G41
X50Z0
X80Z-20
G1 Z-100 X100
G40
G0 X150 Z-100
N20
ATTENZIONE: Per effettuare un’uscita in direzione Z+ è necessario comunque programmare un valore NU diverso
da 0. In questi casi è possibile programmare un angolo molto piccolo, come nell’esempio precedente.
106
CNC Z32 - Guida alla programmazione (TORNIO)
OX1OZ1
T…M6 (ut. Sgrossatura)
G96 S… MS… M3
G95 F…
G150KA1
G907 NX10 NY20 NG-90 K-3 HF3
M2
N10 G0 X40 Z0
G0 X100
G41
G1 Z0 X102
G1 Z-30
X90
G1 Z-35 X85 RR2
X70
G2 I-35 J40 Z-20 X40
G1 Z0
G40
N20 G0 Z0 X40
Notare che la prima passata inizia su un punto del profilo (G1) quindi il trasferimento sulla prima passata porta
l’utensile in rapido dal punto attuale fino al profilo e poi prosegue in lavoro, scorrendo sul profilo in senso uguale
alla definizione del profilo stesso, fino ad inizio prima passata.
107
CNC Z32 - Guida alla programmazione (TORNIO)
Sovrametallo in sgrossatura
E’ possibile fare uso della funzione G150 con specifica del sovrametallo per la definizione del profilo da
sgrossare.
Ad esempio:
OX1OZ1
T…M6 (ut. Sgrossatura)
G96 S… MS… M3
G95 F…
G150KA1 I1.5 (sovrametallo di 1.5mm)
(macro di sgrossatura, senza contornitura finale NU1)
G0X130Z10
G907 NX10 NY20 NG180 K2 NU1
108
CNC Z32 - Guida alla programmazione (TORNIO)
7. Assi polari
Tramite questa prestazione è possibile lavorare un profilo qualsiasi programmato in un piano cartesiano, su una
macchina di tipo polare, caratterizzata da un asse lineare ed un asse rotativo.
Con questa prestazione è possibile fresare pezzi di tornitura sulla superficie di sfacciatura.
Per l’attivazione della prestazione, consultare il costruttore della macchina. Normalmente vengono previste una
funzione M di attivazione della prestazione e di una funzione M di disattivazione.
Una volta attivata la prestazione, la programmazione viene effettuata su una nuova coppia di assi, definita dal
costruttore della macchina.
Nella figura sottostante, la coppia di assi fisici è la coppia X-C (X è l’asse diametrale, C è l’asse rotativo), la
coppia di assi cartesiani è la coppia V-W.
A seconda delle implementazioni gli assi possono avere nomi diversi.
X X
V V
Z W
C C
Seguendo i nomi assi della figura precedente, una volta attivata la prestazione, è possibile programmare
movimenti nel piano V-W con una normale programmazione cartesiana. I movimenti programmati verranno
trasformati nei corrispondenti movimenti degli assi fisici X-C.
Nota: Una volta attivata la prestazione “assi polari” deve normalmente essere ridefinito il piano di contornatura.
Nella configurazione normale, una macchina tornio ha come piano di contornatura il piano Z-X. Quando vengono
attivati gli assi polari, il piano di lavoro deve essere impostato sulla superficie di sfacciatura del pezzo.
Seguendo i nomi asse mostrati nella figura precedente, dopo l’attivazione della prestazione assi polari, deve
essere impostato il piano di lavoro:
G25VWZ
In questo modo, il piano V-W è il piano dove sono permesse interpolazioni circolari. Z è invece l’asse ortogonale al
piano di lavoro.
Attenzione! In funzione della modalità di attivazione della prestazione è possibile che l’impostazione del nuovo
piano di lavoro sia direttamente eseguita con il comando di attivazione degli assi polari. Consultare il costruttore
per ulteriori dettagli.
Attenzione! Con la prestazione assi polari attiva, la programmazione della macchina diventa equivalente alla
programmazione di una macchina fresatrice a tre assi.
Per eseguire profili in correzione raggio, occorre pertanto che l’utensile venga azzerato in centro.
Per questo motivo non può essere fatto uso della programmazione della funzione G150.
109
CNC Z32 - Guida alla programmazione (TORNIO)
Con la prestazione assi polari attiva, il centro fresa non può trovarsi o eseguire movimenti che passino entro un
cerchio di 5mm intorno al centro di rotazione degli assi.
5mm
7.2 Esempio
OX1 OZ1
W T…M6
M… (attivazione degli assi polari)
M… (attivazione ut. Motorizzato)
R5 S… M3
G25VWZ
G0 Z5 W30 V0
F200
G1 Z-1
40 V F1500
G41 W20 V0 QF0
V20RR-5
W-20RR-5
V-20RR-5
W20RR-5
40 V0
G40 W30 V0
G0Z5
M2
110