Navigation

  • Page 1

    Il linguaggio G-code RS274 Manuale di Programmazionewww.twintec.itRS274/NGC manuale di programmazione R 1.0 06/2010

  • Page 2

    SOMMARIO 4, 1 4, INTRODUZION 4,E 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, ...

  • Page 3

    16,3.4.1 16, Movimento 16, lineare 16, rapido 16, – 16, G0 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, ...

  • Page 4

    1 Introduzione1.1 PremessaIl presente documento è stato realizzato traducendo liberamente parti del documento RS274/NGC versione 3 del Intelligent System Division National Institute of Standards and Technologies. Al fine di permettere al lettore di lingua italiana un maggiore approfondimento su...

  • Page 5

    2.1.4 RaffreddamentoUn centro di lavoro ha componenti per provvedere alla nebulizzazione di un refrigerante e/o al flussaggio del refrigerante. 2.1.5 Sistema di alimentazioneUn centro di lavoro ha un sistema di alimentazione mobile costituito da due diversi pallet sui quali è possibile fissare i...

  • Page 6

    impossibile mantenere velocità costante perché è richiesta una accelerazione e decelerazione all’inizio e alla fine del moto. E’ tuttavia possibile controllare gli assi in modo che in qualsiasi momento ogni asse abbia completato la stessa frazione del moto richiesto degli gli altri assi. Q...

  • Page 7

    2.2.11 Piano selezionatoEsiste sempre un “piano selezionato”, che deve essere XY o YZ o XZ del centro di lavoro. L’asse Z è, ovviamente, perpendicolare all’asse XY, l’asse X al YZ e l’asse Y al piano XZ.2.2.12 Magazzino utensiliUn utensile o zero viene assegnato in ogni posto del mag...

  • Page 8

    POCKETFMSTLODIAMETERCOMMENT112.012210.2551.50.25Endmill10102.4-0.3For testing2121173.74001/2” spot drill3232247.61508.5 mm drill....………Tabella 1www.twintec.itRS274/NGC manuale di programmazione R 1.0 06/2010

  • Page 9

    3 Il linguaggio RS2743.1 ParametriIl linguaggio RS274/NGC comprende un array di 5400 parametri numerici, molti dei quali hanno un uso specifico. I parametri sono permanenti e devono rimanere con il loro valore anche se il centro di lavoro o macchina vengono spenti. Per questa ragione i parametri ...

  • Page 10

    L’utente può selezionare uno dei nove sistemi usando G54, G55, G56, G57, G58, G59, G59.1, G59.2 o G59.3. Non è possibile selezionare il sistema di coordinate assolute direttamente (un sistema deve essere sempre selezionato).Si può dare un offset al sistema di coordinate corrente con G92 o G9...

  • Page 11

    LetteraSignificatoAAsse A della macchinaBAsse B della macchinaC Asse C della macchinaDNumero di compensazione raggio dell’utensileFVelocità di avanzamentoGFunzione Generale (vedi Tabella 5)HIndice dell’offset lunghezza utensileIOffset dell’asse X per gli archioffset X in G87 cicli di forat...

  • Page 12

    Il valore di un parametro è il carattere cancelletto # seguito da un numero reale. Il numero reale deve risultare in un intero da 1 a 5399. L’intero è il numero del parametro e il valore del parametro sarà il numero memorizzato nel parametro stesso.Il carattere # ha precedenza sulle altre op...

  • Page 13

    3.3.8 Commenti e messaggiCaratteri stampabili e spazi inclusi tra parentesi sono commenti. Una parentesi tonda aperta inizia sempre un commento. Il commento finisce alla prima parentesi tonda chiusa. Quando una parentesi aperta è digitata in una linea, una corrispondente parentesi chiusa deve es...

  • Page 14

    I gruppi modali per G code sono:Gruppo 1= {G0, G1, G2, G3, G38.2, G80, G81, G82, G83, G84, G85, G86, G87, G88, G89} movimentoGruppo 2 = {G17, G18, G19} selezione del pianoGruppo 3 = {G90, G91} modo distanzaGruppo 5 = {G93, G94} modo di avanzamentoGruppo 6 = {G20, G21} unitàGruppo 7 = {G40, G41, ...

  • Page 15

    G CodeSignificatoG0G1G2G3G4G10G17G18G19G20G21G28G30G38.2G40G41G42G43G49G53G54G55G56G57G58G59G59.1G59.2G59.3G61G61.1G64G80G81G82G83G84G85G86G87G88G89G90G91G92G92.1G92.2G92.3G93G94G98G99Posizionamento rapidoInterpolazione lineareInterpolazione circolare/elica (orario)Interpolazione circolare/elica ...

  • Page 16

    3.4.1 Movimento lineare rapido – G0Per i movimenti lineari rapidi, programmate G0 X… Y… Z… A… B… C…, dove tutte le parole assi sono opzionali, eccezione fatta che almeno uno deve essere usato. Il comando G0 è opzionale se il modo di moto corrente è G0. Questo produrrà un moviment...

  • Page 17

    Non è buona pratica programmare archi con il formato raggio che sono prossimi ad un cerchio completo o prossimi ad archi di 180 gradi (semicerchi) perché un piccolo cambiamento nella posizione del punto finale produrrà grandi cambiamenti nella posizione del centro del cerchio (e così del punt...

  • Page 18

    Per impostare i valori delle coordinate per un sistema di coordinate, programmate G10 L2 P… X… Y… Z… A… B… C…, dove P è un numero nel campo tra 1 a 9 (corrispondente a G54 fino a G59.3) e tutte le parole di asse opzionali. Le coordinate di origine del sistema di coordinate specific...

  • Page 19

    nell’elettromandrino sebbene non è richiesto. Un valore zero per la parola D è corretto; il raggio sarà allora zero.E’ un errore se:•Il numero D non è un intero, è negativo o è maggiore del numero massimo di utensili•Il piano XY non è attivo•Viene attivata la compensazione raggi...

  • Page 20

    •Parole di asse sono programmate quando G80 è attivo, ad eccezione del gruppo modale 0 per comandi che usano le parole di asse.3.4.16 Cicli (canned cycles) – G81 a G89I cicli G81 a G89 sono stati implementati come descritto in questa sezione. Due esempi sono dati con la descrizione di G81 in...

  • Page 21

    3.4.17 Movimenti preliminari e intermediAll’inizio dell’esecuzione di un comando di ciclo, con il piano XY selezionato, se la posizione corrente di Z è inferiore alla posizione R, l’asse Z è mosso in rapido alla posizione R. Questo accade solo una volta indipendentemente dal valore di L.I...

  • Page 22

    La terza parte consiste in tre movimenti. La posizione X è impostata a 1300 (900+400) e la posizione Y è impostata a 1700 (1200 +500)1. un movimento rapido parallelo al piano XY fino a (1300, 1700, 480)2. un movimento di avanzamento dell’asse Z fino a (1300, 1700, 420)3. un movimento rapido...

  • Page 23

    l’unità di misura corrente è il millimetro e la velocità di avanzamento è stata impostata con il comando F150, la velocità di rotazione deve essere impostata con il comando S300, in quanto 150 X 2= 300.Se l’override di velocità e di rotazione sono abilitati e non sono impostati al 100%,...

  • Page 24

    9. Movimento rapido parallelo al piano XY fino al punto indicato da I e J10. Movimento rapido dell’asse Z fino a Clear Z.11. Movimento rapido parallelo al piano XY fino alla posizione XY.12. Riavvio dell’elettromandrino nella direzione in cui stava girando prima.Quando si programma questo cic...

  • Page 25

    Quando G92 viene eseguito, l’origine del sistema di coordinate corrente si muove. Per fare questo, gli offset di origine vengono calcolati in modo che le coordinate del punto corrente risultino uguali ai valori specificati nella riga G92. In aggiunta, i parametri 5211 fino a 5216 sono impostati...

  • Page 26

    3.5 Codici input MI codici M del linguaggio RS274 sono elencati nella Tabella 7.Codice MSignificatoM0 Stop programmaM1 Stop programma opzionaleM2 Fine ProgrammaM3 Avvia elettromandrino orarioM4 Avvia elettromandrino antiorarioM5 Arresta elettromandrinoM6 Cambio utensileM7 Nebulizzatore ONM8 Raffr...

  • Page 27

    E’ possibile utilizzare M3 o M4 se la velocità è programmata a zero. Se questo avviene (oppure se è abilitato l’override ed è impostato a zero), l’elettromandrino non inizierà a girare. Se, successivamente, la velocità viene impostata ad un valore maggiore di zero (o l’override vie...

  • Page 28

    non impostato al 100%, la velocità sarà diversa da quella programmata. E’ possibile programmare S0; l’elettromandrino non girerà se questo avviene. E’ un errore se:•Il numero di S è negativoCome descritto in sezione 22, 3.4.21, se un codice ciclo G84 (filettatura) è attivo e l’over...

  • Page 29

    APPENDICE A Compensazione raggio utensileLe funzioni di compensazione raggio utensile permettono al programmatore di specificare che l’utensile debba muoversi a sinistra o a destra di un percorso aperto o chiuso nel piano XY e composto da archi o cerchi o segmenti di linee rette.La compensazion...

  • Page 30

    Movimenti dell’asse Z possono avere luogo mentre il percorso viene eseguito sul piano XY. Porzioni del percorso possono essere evitate ritraendo l’asse Z sopra il pezzo, seguendo il contorno fino al prossimo punto dove la lavorazione deve essere eseguita, e riabbassando l’asse Z. Questi mov...

  • Page 31

    Quando il contorno è il bordo del materiale, il programma NC rappresenta questo contorno e cioè il bordo esterno del materiale.Per questo tipo di percorso, il valore per il diametro nella tabella utensili è il valore attuale del diametro dell’utensile. Il valore nella tabella deve essere pos...

  • Page 32

    N0010 G1 X1 Y5 (primo movimento precedente l’ingresso a C)N0020 G41 G1 Y4 (attiva la compensazione e f ail secondo movimento precedente l’ingresso a B)N0030 G3 X2 Y3 I1 (movimento di ingresso al punto A)N0040 G2 X3 Y2 J-1 (taglia lungo un arco sopra)N0050 G1 Y-1 (taglia lungo il lato destro)N...

  • Page 33

    Percorso programmatoPercorso attualeUt ensileFigura 4. Movimenti di ingresso semplici per compensazione raggio utensile.Percorso nominale del contorno.Quando il contorno è un percorso nominale (il percorso di un utensile con inclusa la compensazione raggio dell’utensile esatta), il percorso è...

  • Page 34

    Prima si prenda un punto A sul contorno dove sia conveniente raccordare un arco. Specificate un arco fuori dal contorno che inizi al punto B e finisca la punto A tangente al controno (e nella stessa direzione in cui è previsto il movimento). Il raggio dell’arco deve essere più grande della ...

  • Page 35

    2. Impossibile cambiare le unità durante la compensazione raggio utensile.3. Impossibile sondare durante la compensazione raggio utensile4. Impossibile attivare la compensazione raggio utensile al di fuori del piano XY5. Impossibile attivare la compensazione raggio utensile quando è già attiva...

  • Page 36

    Se l’utensile sta già coprendo la prossima posizione XY quando la compensazione raggio utensile è attiva, il messaggio di errore relativo verrà dato quando questa linea di codice verrà raggiunta. In questa situazione, l’utensile sta già tagliando del materiale che non dovrebbe tagliare. ...

  • Page 37

    Secondo, cos truis ce questo arcoche è il p erco rso d atoPunto correntePu nto centr alePr ogra mma to/ca lcolatoPunto de s tina zionePunt o fin ale progra mmatoPrim o co struisce quest o arcoausiliareFigura 8. Primo movimento in compensazione raggio utensile. Arco.La figura 8 mostra l’approcc...

x