PROGRAMMAZIONE EIA/ISO – Macchine Utensili CNC · Nel FANUC a cura di Massimo Reboldi 52 N45 …...

68
PROGRAMMAZIONE EIA/ISO – Macchine Utensili CNC A cura di Massimo Reboldi Versione 2.0 – 7/1/14 a cura di Massimo Reboldi

Transcript of PROGRAMMAZIONE EIA/ISO – Macchine Utensili CNC · Nel FANUC a cura di Massimo Reboldi 52 N45 …...

PROGRAMMAZIONE EIA/ISO – Macchine Utensili CNC A cura di Massimo Reboldi

Versione 2.0 – 7/1/14

a cura di Massimo Reboldi

La programmazione EIA/ISO

!  Introduzione

! Assi e Riferimenti

!  Linguaggio di programmazione !  Grammatica;

!  Lessico; !  Funzioni N, G, M, T;

a cura di Massimo Reboldi

2

Introduzione

!  Le MU a CNC sono programmabili;

!  Il programma contiene tutte le informazioni necessarie alla lavorazione: !  Geometriche (il percorso dell’utensile, il percorso della

tavola, la localizzazione dei fori, …);

!  Tecnologiche (avanzamenti, velocità rotazione mandrino, senso di rotazione …);

!  Il programma è letto, interpretato ed eseguito dall’Unità di Governo (dal PC)

a cura di Massimo Reboldi

3

Introduzione

!  Il linguaggio di programmazione costituisce lo standard internazionale per la programmazione di ogni CNC;

!  La struttura è rimasta inalterata col passare degli anni;

!  Tale linguaggio è definito EIA/ISO: !  EIA – Electronic Industries Association

!  ISO – International Standardiziation Organization

a cura di Massimo Reboldi

4

Introduzione

!  Il linguaggio EIA/ISO consente la gestione di tutte le funzioni della MU e il calcolo delle traiettorie elementari;

! Ogni costruttore di controlli numerici ha poi sviluppato parallelamente un linguaggio dedicato, ma su ogni MU CNC è possibile la programmazione EIA/ISO;

! Queste informazione vengono poi trasferite al PLC, che le tramuta in comandi per i servomotori della macchina;

a cura di Massimo Reboldi

5

Assi e riferimenti

a cura di Massimo Reboldi

6

Assi e riferimenti

!  Sistemi di coordinate

! Assi di traslazione e di rotazione;

! Riferimenti: !  Zero macchina;

!  Zero di riferimento;

!  Zero pezzo;

!  Zero utensile;

!  Zero innesto

a cura di Massimo Reboldi

7

Sistemi di coordinate

a cura di Massimo Reboldi

8

fresatrice tornio

Assi di rotazione

a cura di Massimo Reboldi

9

Assi di traslazione

a cura di Massimo Reboldi

10

“Zeri” nella fresatrice

a cura di Massimo Reboldi

11

“Zeri” nel tornio

a cura di Massimo Reboldi

12

“Zeri” nel tornio

a cura di Massimo Reboldi

13

Punto di Riferimento

!  Punto fisso su una macchina utensile al quale si può facilmente muovere l’utensile tramite la funzione di ritorno a tale punto. Solitamente in questo punto si esegue il cambio utensile

a cura di Massimo Reboldi

14

Zero Macchina – M

E’ scelta dal costruttore e non è modificabile;

a cura di Massimo Reboldi

15

Zero Pezzo – W

!  È un punto scelto dal programmatore;

!  Stabilisce l’origine da cui far muovere l’utensile;

!  È in funzione della quotatura

del disegno;

!  Permette di programmare

in maniera semplice;

a cura di Massimo Reboldi

16

Zero Pezzo – W

a cura di Massimo Reboldi

17

Zero Macchina e Zero Pezzo

!  Il programmatore fornisce la distanza relativa tra i due zeri (zero pezzo rispetto zero macchina);

!  La programmazione è riferita allo zero pezzo;

a cura di Massimo Reboldi

18

Zero Utensile – E

a cura di Massimo Reboldi

19

Simboli

a cura di Massimo Reboldi

20

Linguaggio di programmazione Grammatica – Lessico

a cura di Massimo Reboldi

21

Grammatica

!  La GRAMMATICA è l’insieme delle regole che permettono di rendere eseguibile una lavorazione elementare;

!  La programmazione EIA/ISO è di tipo alfanumerico (numeri e lettere);

!  Il programma di lavorazione composto da più operazioni sequenziali;

!  Ogni operazione viene scritta su una riga, chiamata blocco;

!  Il blocco è come una frase;

a cura di Massimo Reboldi

22

Grammatica

!  Ogni operazione è composta da più blocchi definiti dalla lettera N, a loro volta costituiti da insiemi di parole. Un blocco definisce in modo completo un ordine che la macchina utensile deve eseguire prima di passare al blocco successivo;

a cura di Massimo Reboldi

23

Grammatica

! Ogni parola è un’istruzione;

! Ogni parola di un blocco è formata da un carattere alfabetico detto “indirizzo” e da un numero che indica un valore o un codice di funzione

a cura di Massimo Reboldi

24

N3 G2 X10 Y45 Z-2 I15 K20 F200 S500

Grammatica

Esempio di Blocco:

a cura di Massimo Reboldi

25

N10 G1 X25 Y50 Z-5 F350 S2000 T19 M06

Numero di blocco

Informazioni geometriche

Informazioni tecnologiche

Lessico

!  Insieme dei vocaboli del linguaggio che comandano e controllano attraverso il CNC, la macchina utensile.

! A seconda degli indirizzi, si divide in: !  Movimento – A, B, C, U, V, W, X, Y, Z

!  Funzioni macchina – F, G, M, N, S, T

a cura di Massimo Reboldi

26

Lessico

! A seconda delle modalità di attivazione si dividono in: !  Modali – rimangono attive finché non vengono sostituite da

un’altra funzione corrispondente;

!  Temporanee – rimangono attive solo nel rispettivo blocco

a cura di Massimo Reboldi

27

FUNZIONI N-G-T-M

a cura di Massimo Reboldi

28

Funzione N

! Identifica un blocco;

! È in ordine crescente;

! È in ordine progressivo;

! È consigliabile non incrementare di una sola unità in quanto renderebbe complicato inserire nuovi blocchi;

a cura di Massimo Reboldi

29

N15 G1 X10 Y10 Z-3 N20 G1 X30 N35 … N40 … N45 …

Funzioni G

! Sono funzioni preparatorie perché dispongono il modo di esecuzione (della lavorazione) delle istruzioni successive;

! Definiscono gli 0 pezzo “W”;

! Definiscono le tipologie di movimento degli utensili;

! Definiscono le macro;

! …;

a cura di Massimo Reboldi

30

G54 – O pezzo W

! G54 – valori da inserire per cambiare le origini di lavorazione ! X(…); ! Y (…); ! Z (…);

a cura di Massimo Reboldi

31

G90 e G91 – Coordinate assolute e incrementali

! G90 – coordinate assolute Il posizionamento è eseguita facendo riferimento ogni volta al

punto di origine assoluta individuato dall’operatore (Zero Pezzo – W)

a cura di Massimo Reboldi

32

G90 e G91 – Coordinate assolute e incrementali

! G91 – coordinate relative Il posizionamento è eseguito facendo riferimento alla

coordinata precedente.

a cura di Massimo Reboldi

33

G90 e G91 – Coordinate assolute e incrementali

!  In tornitura:

!  Quote

assolute

DIAMTERALI

!  Quote

incrementali

RADIALI

a cura di Massimo Reboldi

34

G0 – posizionamento in rapido

!  Il posizionamento in rapido è il movimento che l’utensile deve compiere dalla posizione in cui si trova a quella opportuna per iniziare la lavorazione;

!  Il moto avviene in rapido (velocemente senza tener conto degli avanzamenti e velocità impostate dall’operatore);

! Occorre indicare le coordinate del punto finale;

a cura di Massimo Reboldi

35

G0 - posizionamento

a cura di Massimo Reboldi

36

Esempio: N50 G0 X30 Z3

G1 – interpolazione lineare

! Il moto avviene in velocità di lavorazione, impostata dall’operatore;

! Occorre indicare: A.  DOPO IL CAMBIO UTENSILE: Velocità rotazione

mandrino S - Velocità di avanzamento F – Senso rotazione del mandrino M3;

B.  DOPO L’AVVICINAMENTO: Coordinate punto finale;

a cura di Massimo Reboldi

37

G1 – interpolazione lineare

!  Esempio:

!  N05 G54; !  N10 T3 G43 H3 M6; !  N15 S1100 F90 M3; !  G0 X… Y… Z…; !  G1 X… Y… Z…; !  …;

a cura di Massimo Reboldi

38

G1 – interpolazione lineare

a cura di Massimo Reboldi

39

G2/G3 – interpolazione circolare

a cura di Massimo Reboldi

40

G2/G3 – interpolazione circolare

! Una conferenza è descritta secondo 3 modalità: 1.  Punto iniziale;

2.  Coordinate del centro (assolute o relative) o raggio;

3.  Punto finale o estensione angolare

a cura di Massimo Reboldi

41

G2/G3 – interpolazione circolare

!  Esempio 1: G2 X40 Y34 I0 J18 !  I valori di X ed Y rappresentano le coordinate finali del punto

da raggiungere (2);

!  I e J rappresentano le coordinate, rispettivamente X (I) e Y (J) del centro dell’arco relative al punto di partenza dell’arco (1) quando si lavora nel piano x,y (G17).

a cura di Massimo Reboldi

42

G2/G3 – interpolazione circolare

!  Esempio 2: G2 X40 Y33.31 R18 !  X e Y rappresentano le coordinate del punto finale;

!  R18 la misura del raggio;

a cura di Massimo Reboldi

43

Tool point

!  Sia in tornitura che in fresatura il percorso che dovrà compiere l’utensile è programmato rispetto ad un punto di riferimento, ma esso non sempre coincide con la quota da realizzare

a cura di Massimo Reboldi

44

Tool point

!  In alcune operazioni il tool point coincide con il profilo da realizzare: !  Tornitura longitudinale;

!  Intestatura;

!  Spianatura;

!  …

a cura di Massimo Reboldi

45

Compensazione Raggio Utensile

!  In altre operazioni occorre distinguere tra: !  Traiettoria dell’utensile;

!  Quota del disegno;

a cura di Massimo Reboldi

46

Compensazione Raggio Utensile

a cura di Massimo Reboldi

47

Compensazione RU in tornitura

!  Il programmatore dovrà prevedere: !  I punti reali del profilo come da disegno;

!  Il raggio di punta dell’utensile (pagina OFFSET);

!  Il tipo di azzeramento utilizzato dall’utensile;

!  La posizione in cui si troverà a lavorare l’utensile sul profilo, definita dalle funzioni G41 – G42;

a cura di Massimo Reboldi

48

Compensazione RU in fresatura

! G41 – LAVORAZIONE IN CONCORDANZA – l’utensile si trova a sinistra del pezzo considerando l’utensile in moto di avanzamento e la tavola ferma

! G42 – LAVORAZIONE IN DISCORDANZA – l’utensile si trova a destra del pezzo considerando l’utensile in moto di avanzamento e la tavola ferma

a cura di Massimo Reboldi

49

Compensazione RU in fresatura

! G41 o G42 sono da inserire nel blocco di avvicinamento rapido prima dell’inizio della lavorazione;

! G40 invece disabilita la compensazione raggio;

a cura di Massimo Reboldi

50

Compensazione RU in fresatura

a cura di Massimo Reboldi

51

Compensazione RU in fresatura

!  Nel FANUC

a cura di Massimo Reboldi

52

N45 … G42H12

Richiama una casella del presetting dove vi sarà un valore di correzione

Richiama il valore inserito come correzione raggio

Correzione

Istruzioni tecnologiche

!  Specificano le modalità di applicazione dell’istruzione G che caratterizza il blocco stesso: !  S – velocità rotazione mandrino

!  G96 – Velocità di taglio – Vt – [m/min];

!  G97 – Numero di giri – N – [giri/min]

!  F – Avanzamento

!  G94 – [mm/min];

!  G95 – [mm/giro];

a cura di Massimo Reboldi

53

Istruzioni tecnologiche

a cura di Massimo Reboldi

54

Istruzioni tecnologiche

!  In alcune circostanze la velocità di taglio deve essere mantenuta costante in quanto il Diametro non è costante:

!  sfacciatura/intestatura;

!  tornitura conica;

!  Si indica il valore V = velocità di taglio desiderata, oppure G96;

!  La velocità di rotazione del mandrino deve essere continuamente attualizzata dal CNC al diametro di tornitura corrente;

a cura di Massimo Reboldi

55

Istruzioni tecnologiche

!  Se è attivo G96 dunque, e il diametro varia, il CNC provvede automaticamente ad aumentare o diminuire il numero di giri N a seconda della formula:

! Conviene tuttavia prestabilire un Nmax e Nmin rispetto alle caratteristiche del motore;

a cura di Massimo Reboldi

56

Istruzione T

!  Istruzioni per la selezione dell’utensile;

!  L’istruzione contiene: !  Il numero di posizione dell’utensile;

!  Il numero di correzione: fa riferimento al blocco di dati che contiene le dimensioni di set-up (presetting);

a cura di Massimo Reboldi

57

Istruzione T – fresatura

!  Nel FANUC

a cura di Massimo Reboldi

58

N35 … T2G43H2 M6

Posizione utensile nel magazzino Richiama una casella del

presetting dove vi sarà un valore di correzione

Richiama il valore inserito come correzione lunghezza utensile

Correzione Comando per il cambio utensile

Istruzione T – tornitura

!  Nel FANUC

a cura di Massimo Reboldi

59

N35 … T0202

Posizione utensile nel magazzino Correzione

Richiama il valore inserito come correzione raggio

Istruzione T – fresatura

!  In fase di contornatura dovrò poi ricordarmi di inserire G41/G42 (a seconda del percorso) aggiunto al valore del raggio utensile;

!  Tale valore dovrò preventivamente inserirlo nella casella H11 (se utensili T1), H12 (se utensile T2) …

a cura di Massimo Reboldi

60

Setup utensile

a cura di Massimo Reboldi

61

Il CNC tiene conto della misura sul naso mandrino, nel punto “0 utensile”. Negli offset presetting va inserito la quota H e R

Es. Utensile = T5;

Scriverò in offset presetting l’altezza H in posizione 005, raggio R in posizione 015

NO Valore 1 … 2 … … … 5 Valore H …. … 15 Valore R

Istruzioni M

!  Sono funzioni ausiliarie e servono ad impartire comandi al controllo e alla macchina utensile: !  M00 – stop programma;

!  M03 – rotazione oraria mandrino;

!  M04 – rotazione antioraria mandrino;

!  M05 – arresto mandrino;

!  M06 – cambio utensile;

!  M08 – attiva lubrorefrigerante;

!  M09 – esclude lubrorefrigerante;

a cura di Massimo Reboldi

62

Istruzioni M

!  M72 – blocca contropunta;

!  M10 – blocca pezzo;

!  M11 – sblocca pezzo;

!  M30 – fine programma;

NB – le istruzioni M sono definite dal costruttore e modificabili dal PLC

a cura di Massimo Reboldi

63

Istruzioni M

!  Possono formare un blocco a sé stante o in unione con le istruzioni tipo G e tipo T;

!  Se le funzioni M vengono programmate in un blocco contenente movimenti degli assi, esse sono attive prima del movimento;

!  Posso essere contenute in un blocco fino a un massimo di tre istruzioni M;

a cura di Massimo Reboldi

64

Note conclusive

a cura di Massimo Reboldi

65

Sequenza in foratura

! N05 G54; (RICHIAMO W)

! N10 T1 G43 H1 M6; (CAMBIO UTENSILE)

! N20 S… F… M3; (VELOCITA’)

! N15 G0 X… Y… Z10; (AVVICINAMENTO)

! N25 G1 Z-…; (LAVORO – FORATURA)

! N30 G0 Z5; (USCITA DAL FORO)

! N35 X… Y…; (ALLONTANAMENTO)

a cura di Massimo Reboldi

66

Sequenza in fresatura

!  N05 G54 (RICHIAMO W); !  N10 T1 G43 H1 M6; (CAMBIO UTENSILE)

!  N15 S… F… M3; (DEFINIZIONE VELOCITA’)

!  N20 G0 X… Y… Z10; (AVVICINAMENTO – X, Y fuori dal pezzo)

!  N25 G1 Z-…; (ATTACCO in G1, in Z, fuori dal pezzo)

!  N30 X… Y…; (ATTACCO in G1, in X e Y)

!  N40 X… Y…; (LAVORO in G1 – contornatura del pezzo)

!  N45 X… Y…; (STACCO in G1 – esco di qualche mm dal pezzo)

!  N50 G0 X... Y… Z100; (ALLONTANAMENTO fuori dal pezzo)

a cura di Massimo Reboldi

67

Bibliografia

!  Tecnologia Meccanica B – Università degli Studi di Brescia – Facoltà di Ingegneria – Ing. Aldo Attanasio;

! Dipartimento di Meccanica e Aeronautica, Università La Sapienza, Roma;

! Dispense Prof. Ing. Giovanni Bottaini;

a cura di Massimo Reboldi

68