FANUC Serie 30*-MODELLO B FANUC Serie 31*-MODELLO B FANUC Serie 32*-MODELLO B Comune alla Serie T ed alla Serie M MANUALE DELL'OPERATORE B-64484IT/02 • Nessuna parte di questo manuale può essere riprodotta in qualsiasi forma. • Tutte le specifiche e le prestazioni sono soggette a variazione senza preavviso. I prodotti descritti in questo manuale sono regolamentati dalla “Foreign Exchange and Foreign Trade Law” giapponese. L'esportazione dal Giappone dei CNC Serie 30i-B, Serie 31i-B5 è soggetta ad un’apposita licenza rilasciata dal governo giapponese. Altri modelli citati in questo manuale possono essere soggetti a norme relative all'esportazione. La riesportazione in un paese terzo potrebbe essere soggetta ad una licenza rilasciata dal governo del paese dal quale il prodotto viene riesportato. La riesportazione del prodotto potrebbe essere ulteriormente regolamentata da specifiche norme del governo degli Stati Uniti. Nel caso si debbano esportare o riesportare questi prodotti, si suggerisce di contattare FANUC per una consulenza. I prodotti descritti in questo manuale vengono fabbricati sotto un rigoroso controllo di qualità. Tuttavia, se è presumibile che da un guasto del prodotto derivino un incidente o una perdita gravi, prestare molta attenzione alla sicurezza. In questo manuale abbiamo cercato, nel limite del possibile, di toccare tutti gli argomenti. Tuttavia, a causa del grande numero di possibilità, non è possibile descrivere tutto ciò che non deve o non può essere fatto. Pertanto, tutto ciò che questo manuale non dà specificamente come possibile deve essere considerato come ”impossibile”. NORME DI SICUREZZA B-64484IT/02 NORME DI SICUREZZA Questa sezione descrive le norme di sicurezza per l'uso delle unità CNC. E' essenziale che queste norme siano osservate dall'utilizzatore per assicurare la sicurezza del funzionamento delle macchine equipaggiate con unità CNC (tutte le descrizioni fornite in questa sezione assumono questa configurazione). Alcune norme si riferiscono a specifiche funzioni e pertanto possono non essere applicabili a certe unità CNC. Gli utilizzatori devono anche osservare le norme di sicurezza relative alla macchina, così come sono descritte nel corrispondente manuale predisposto dal costruttore della macchina utensile. Prima di far funzionare la macchina o di creare un programma che ne controlli il funzionamento, l'operatore deve avere piena familiarità con il contenuto di questo manuale e del corrispondente manuale fornito dal costruttore della macchina utensile. INDICE DEFINIZIONE DI PERICOLO, AVVERTENZA E NOTA ..................................................................... s-1 DIFFIDE E AVVERTENZE DI CARATTERE GENERALE .................................................................. s-2 DIFFIDE E AVVERTENZE RELATIVE ALLA PROGRAMMAZIONE ............................................. s-4 DIFFIDE E AVVERTENZE RELATIVE ALLE OPERAZIONI ............................................................. s-6 DIFFIDE RELATIVE ALLA MANUTENZIONE ORDINARIA ............................................................ s-8 DEFINIZIONE DI PERICOLO, AVVERTENZA E NOTA Questo manuale include le norme di sicurezza che devono essere osservate per proteggere l'utilizzatore e per evitare di danneggiare la macchina. Le norme sono suddivise in indicazioni di PERICOLO (Diffide) e Avvertenze in base al loro peso in termini di sicurezza. Le informazioni supplementari sono classificate come Note. Leggere attentamente le Diffide, le Avvertenze, e le Note prima di tentare di usare la macchina. PERICOLO Questa indicazione viene data quando esiste il pericolo di lesioni dell'operatore o di danneggiamenti della macchina se non viene seguita la procedura indicata. AVVERTENZA Questa indicazione viene data quando il mancato rispetto della procedura indicata può danneggiare la macchina. NOTA Le note sono usate per fornire informazioni supplementari, diverse dalle diffide e dalle avvertenze. • Leggere attentamente questo manuale e deporlo in un posto sicuro. s-1 NORME DI SICUREZZA B-64484IT/02 DIFFIDE E AVVERTENZE DI CARATTERE GENERALE 1 2 3 4 5 6 PERICOLO Non tentare mai di lavorare un pezzo senza aver prima verificato il funzionamento della macchina. Prima di iniziare una produzione, assicurarsi che la macchina operi correttamente attraverso una lavorazione di prova usando, per esempio, le funzioni blocco a blocco, regolazione della velocità di avanzamento o blocco macchina, o facendo lavorare la macchina senza aver montato né il pezzo né l'utensile. La mancata verifica del corretto funzionamento della macchina può dare luogo a comportamenti inattesi della macchina stessa, con la possibilità di danneggiare il pezzo o la macchina e di ferire l'operatore. Prima di avviare la macchina controllare attentamente i dati specificati. Il funzionamento della macchina sulla base di dati non corretti può dare luogo a comportamenti inattesi della macchina stessa, con la possibilità di danneggiare il pezzo o la macchina e di ferire l'operatore. Assicurarsi che gli avanzamenti specificati siano appropriati all'operazione da eseguire. Generalmente per ogni macchina esiste una specifica velocità massima di avanzamento. La velocità di avanzamento appropriata dipende dall'operazione che si intende eseguire. Consultare il manuale fornito insieme alla macchina per determinare la velocità massima di avanzamento ammessa. Se la macchina opera con una velocità di avanzamento non appropriata, essa può comportarsi in modo inatteso, con la possibilità di danneggiare il pezzo o la macchina e di ferire l'operatore. Se si usa una funzione di compensazione utensile, controllare attentamente l'entità e la direzione della compensazione. Il funzionamento della macchina sulla base di dati non corretti può dare luogo a comportamenti inattesi della macchina stessa, con la possibilità di danneggiare il pezzo o la macchina e di ferire l'operatore. I parametri del CNC e del PMC sono impostati in fabbrica. Normalmente non è necessario cambiarli. Quando, tuttavia, non esistono alternative alla modifica di un parametro, assicurarsi di averne compreso perfettamente la funzione prima di procedere a qualsiasi variazione. L'errata impostazione di un parametro può dare luogo a comportamenti inattesi della macchina, con la possibilità di danneggiare il pezzo o la macchina e di ferire l'operatore. Immediatamente dopo l'accensione, non toccare nessuno dei tasti del pannello MDI finché non compaiono la schermata posizione o la schermata allarmi. Alcuni tasti del pannello MDI sono dedicati alla manutenzione o ad altre operazioni speciali. Premere uno di questi tasti può mettere il CNC in uno stato diverso da quello normale. Avviare la macchina in questo stato può dar luogo ad un comportamento inatteso della medesima. s-2 NORME DI SICUREZZA B-64484IT/02 7 Il manuale dell'operatore e il manuale di programmazione forniti insieme al CNC forniscono una descrizione generale delle funzioni della macchina, comprese le funzioni opzionali. Notare che le funzioni opzionali variano da una macchina all'altra. Di conseguenza, alcune delle funzioni descritte nei manuali del CNC possono non essere disponibili su uno specifico modello. In caso di dubbio, controllare le specifiche della macchina. 8 Alcune funzioni possono essere state implementate su richiesta del costruttore della macchina utensile. Prima di usare una di queste funzioni, consultare il manuale predisposto dal costruttore della macchina utensile per i dettagli e le eventuali avvertenze relativi a tale funzione. AVVERTENZA Il display a cristalli liquidi è realizzato con una tecnologia di fabbricazione ad altissima precisione. Tuttavia, alcuni pixel potrebbero non accendersi o restare accesi. Questo fenomeno è una caratteristica comune degli LCD e non è un difetto. NOTA I programmi, i parametri, e le variabili macro sono registrati nella memoria non volatile del CNC. Normalmente questi dati non vengono persi allo spegnimento del CNC stesso. Tuttavia, essi possono essere cancellati inavvertitamente o può rendersi necessario cancellarli dalla memoria non volatile nell'ambito di una procedura di ripristino dopo un errore. Per proteggersi da tale situazione e garantire un rapido ripristino dei dati così cancellati, eseguire una copia di sicurezza di tutti i dati vitali e conservarla in un luogo sicuro. s-3 NORME DI SICUREZZA B-64484IT/02 DIFFIDE E AVVERTENZE RELATIVE ALLA PROGRAMMAZIONE Questa sezione fornisce le principali norme di sicurezza relative alla programmazione. Prima di iniziare a scrivere un programma leggere attentamente il manuale dell'operatore fornito insieme al CNC. E' necessario avere piena familiarità con il contenuto di questo manuale. 1 2 3 4 5 6 PERICOLO Impostazione del sistema di coordinate Se il sistema di coordinate non è impostato correttamente la può comportarsi in modo inaspettato nell'esecuzione di un programma peraltro corretto. Questo inatteso comportamento può danneggiare l'utensile, la macchina o il pezzo e può causare lesioni all'operatore. Posizionamento con interpolazione non lineare Quando si usa il posizionamento con interpolazione non lineare (posizionamento con movimento non lineare fra il punto iniziale e il punto finale), è necessario controllare attentamente il percorso utensile. Il posizionamento comporta movimenti rapidi. Se l'utensile entra in collisione con il pezzo, possono derivarne danni all'utensile, alla macchina o al pezzo e lesioni all'operatore. Funzioni che coinvolgono un asse rotativo Quando si usano l'interpolazione in coordinate polari o il controllo della direzione normale (perpendicolare), fare molta attenzione alla velocità dell'asse rotativo. Una programmazione non corretta può dar luogo ad una velocità di rotazione dell'asse troppo alta, in grado di provocare il distacco dal mandrino del pezzo o dell'utensile, se questi non sono sufficientemente bloccati. Un incidente di questo genere può facilmente danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Conversione pollici/millimetri La commutazione pollici/millimetri non cambia le unità di misura dei dati come lo spostamento dell'origine del pezzo, i parametri e la posizione corrente. Prima di avviare la macchina, quindi, è necessario determinare il tipo delle unità di misura utilizzate. L’esecuzione di qualsiasi operazione con dati non validi può danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Controllo della velocità di taglio costante Quando un asse soggetto al controllo della velocità di taglio costante si avvicina all'origine del sistema di coordinate del pezzo, la velocità del mandrino può aumentare eccessivamente. Quindi, è necessario specificare la velocità massima ammessa. Una specifica non corretta di questa velocità massima può danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Controllo della corsa Dopo l'accensione, eseguire un ritorno manuale al punto di riferimento come richiesto. Il controllo della corsa non è possibile prima dell'esecuzione del ritorno manuale al punto di riferimento. Se il controllo della corsa è disabilitato, non vengono segnalati allarmi nel caso in cui venga superato un fine corsa. Questo può danneggiare il pezzo, l'utensile o la macchina e ferire l'operator s-4 NORME DI SICUREZZA B-64484IT/02 7 8 9 10 11 12 PERICOLO Controllo di interferenza della torretta Il controllo di interferenza della torretta viene eseguito durante il funzionamento automatico, sulla base dei dati utensile specificati. Se questi dati non corrispondono all'utensile effettivamente utilizzato, il controllo di interferenza non può essere eseguito correttamente. Questo può danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Dopo l'accensione, o dopo aver selezionato manualmente una torretta, avviare sempre il funzionamento automatico e specificare il numero dell'utensile da utilizzare. Modo assoluto/incrementale Se un programma creato usando valori assoluti viene eseguito nel modo incrementale o viceversa, La macchina può comportarsi in modo inatteso. Selezione del piano Se per l'interpolazione circolare, l'interpolazione elicoidale o un ciclo fisso la specifica del piano non è corretta, la macchina può comportarsi in modo inatteso. Per i dettagli, fare riferimento alla descrizione delle varie funzioni. Salto al limite di coppia Prima di specificare un salto al limite di coppia, applicare il limite di coppia. Se viene specificato un salto al limite di coppia senza che sia stato effettivamente applicato il limite di coppia, una comando di movimento verrà eseguito senza eseguire il salto. Immagine speculare programmabile Notare che quando viene abilitata l'immagine speculare programmabile le operazioni programmate cambiano considerevolmente. Funzione di compensazione Se nel modo compensazione vengono specificati un comando basato sul sistema di coordinate della macchina o un comando di ritorno al punto di riferimento, la compensazione viene temporaneamente cancellata. Questo può provocare un comportamento inatteso della macchina. Prima di specificare uno di questi comandi, quindi, cancellare sempre il modo compensazione. s-5 NORME DI SICUREZZA B-64484IT/02 DIFFIDE E AVVERTENZE RELATIVE ALLE OPERAZIONI Questa sezione presenta le norme di sicurezza relativa alle operazioni della macchina. Prima di operare sulla macchina, leggere attentamente il manuale dell'operatore fornito insieme al CNC. E' necessario avere piena familiarità con il contenuto di questo manuale. 1 2 3 4 5 6 PERICOLO Funzionamento manuale Quando si eseguono operazioni manuali, determinare la posizione corrente dell'utensile e del pezzo e assicurarsi che l'entità, la direzione e la velocità di avanzamento dei movimenti siano state specificate correttamente. Un'operazione non corretta può danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Ritorno manuale al punto di riferimento Dopo l'accensione, eseguire il ritorno manuale al punto di riferimento come richiesto. Se la macchina viene fatta funzionare senza aver prima eseguito il ritorno manuale al punto di riferimento, essa può comportarsi in modo inatteso. Il controllo della corsa non è possibile prima dell'esecuzione del ritorno manuale al punto di riferimento. Un'operazione inattesa può danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Comando numerico manuale Quando si specifica un comando numerico manuale determinare la posizione corrente del pezzo e dell'utensile, assicurarsi che l'asse, la direzione e l'intero comando siano specificati correttamente e che tutti i valori introdotti siano validi. Il tentativo di eseguire un comando non valido può danneggiare il pezzo, l'utensile o la macchina e ferire l'operatore. Avanzamento manuale con volantino Nell'avanzamento manuale con volantino, la rotazione del volantino quando il fattore di scala applicato è grande, ad esempio 100, provoca un movimento rapido dell'utensile o della tavola. La mancanza di attenzione nell'eseguire questa operazione può causare danni al pezzo, all'utensile o alla macchina e può causare ferite all'operatore. Disabilitazione della regolazione Se durante la filettatura, la maschiatura o la maschiatura rigida la regolazione della velocità è disabilitata (in base al contenuto di una variabile macro), la velocità non può essere prevista, con possibili danni al pezzo, all'utensile o alla macchina e con possibili lesioni dell'operatore. Operazioni di preset/origine In linea di principio, non tentare mai un'operazione di preset/origine quando la macchina sta funzionando sotto il controllo di un programma. Altrimenti la macchina può comportarsi in modo inatteso, con possibili danni al pezzo, all'utensile o alla macchina e con possibili lesioni dell'operatore. s-6 NORME DI SICUREZZA B-64484IT/02 7 Spostamento del sistema di coordinate del pezzo Gli interventi manuali, il funzionamento nello stato di blocco macchina o l'applicazione dell'immagine speculare possono spostare il sistema di coordinate del pezzo. Prima di eseguire un programma pezzo, controllare attentamente il sistema di coordinate. Se il funzionamento automatico viene avviato senza tener conto di un eventuale spostamento del sistema di coordinate del pezzo, la macchina può comportarsi in modo inatteso, con possibili danni al pezzo, all'utensile o alla macchina e con possibili lesioni dell'operatore. 8 Pannello operatore soft e commutatori a menu Se si usano il pannello operatore software e i commutatori a menu, il pannello MDI permette di specificare operazioni non supportate dal pannello operatore, quali la commutazione del modo, la variazione delle regolazioni e l’ avanzamento in jog. Operando inavvertitamente sui tasti MDI è possibile causare un comportamento inatteso della macchina, con possibili danni a pezzo, utensile o macchina e con possibili lesioni dell'operatore. 9 Tasto RESET La pressione del tasto RESET ferma l'esecuzione del programma e ne consegue l'arresto degli assi. Tuttavia, il tasto RESET potrebbe non funzionare per diverse ragioni, ad es.:un problema sul pannello MDI. Quindi, se è necessario bloccare i motori, utilizzare, per sicurezza, il pulsante di arresto in emergenza invece del tasto RESET. 10 Intervento manuale Se durante il funzionamento della macchina sotto il controllo del programma viene eseguito un intervento manuale, alla ripartenza della macchina il percorso utensile può variare. Prima di riavviare la macchina dopo un intervento manuale, quindi, controllare la posizione del commutatore assoluto in manuale, l'impostazione dei parametri e lo stato del modo di comando assoluto/incrementale. 11 Feed hold, regolazione della velocità di avanzamento e blocco singolo Le funzioni feed hold, regolazione della velocità di avanzamento e blocco singolo possono essere disabilitate tramite la variabile macro di sistema #3004. Quando la macchina opera in queste condizioni fare molta attenzione. 12 Prova a vuoto Normalmente, la prova a vuoto si usa per verificare il funzionamento della macchina sotto il controllo di un programma. Durante una prova a vuoto, la macchina lavora alla velocità di avanzamento per la prova a vuoto, che è diversa dall'avanzamento programmato. La velocità di avanzamento per la prova a vuoto può essere maggiore di quella programmata. s-7 NORME DI SICUREZZA B-64484IT/02 PERICOLO 13 Compensazione raggio utensile nel modo MDI Mettere una particolare attenzione nella specifica del percorso utensile di un movimento comandato in MDI, perché in questo caso la compensazione raggio utensile non è applicata. Quando viene introdotto un comando in MDI interrompendo il funzionamento automatico nel modo compensazione raggio utensile, fare molta al percorso dell'utensile alla ripresa del funzionamento automatico. Per i dettagli fare riferimento alle corrispondenti sezioni del manuale. 14 Editazione del programma pezzo Se la macchina viene fermata e viene editato (modifica, inserimento o cancellazione di parole o blocchi) il programma pezzo in esecuzione, quando viene ripresa la lavorazione sotto il controllo del programma la macchina può comportarsi in modo inaspettato. In linea di principio, non modificare, inserire o cancellare i comandi contenuti nel programma in esecuzione. DIFFIDE RELATIVE ALLA MANUTENZIONE ORDINARIA PERICOLO 1 Sostituzione della batteria della memoria Per la sostituzione della batteria della memoria, il CNC deve essere acceso e nello stato di arresto in emergenza. Dato che questa operazione si effettua con l'alimentazione collegata e l'armadio elettrico aperto, essa deve essere eseguita esclusivamente da personale che abbia ricevuto un addestramento sui temi della sicurezza e della manutenzione ufficialmente accettato. Durante la sostituzione della batteria fare attenzione a non toccare i circuiti ad e protetti da un coperchio alta tensione (contrassegnati con il simbolo isolante). Toccare un circuito ad alta tensione scoperto comporta un rischio di scossa elettrica estremamente grave. NOTA Il CNC usa la batteria per preservare il contenuto della sua memoria, programmi, correzioni, parametri, ecc., anche quando l'alimentazione esterna non è applicata. In caso di caduta della tensione della batteria sul pannello dell'operatore o sul video del CNC compare un allarme di bassa tensione della batteria. Se compare questo allarme, sostituire la batteria entro una settimana, o il contenuto della memoria del CNC verrà perso. Per la descrizione dettagliata della procedura di sostituzione della batteria fare riferimento alla sezione “Metodo di sostituzione della batteria” del manuale dell'operatore (comune per le serie T e M). s-8 NORME DI SICUREZZA B-64484IT/02 PERICOLO 2 Sostituzione della batteria dell'encoder assoluto Per la sostituzione della batteria dell'encoder assoluto, il CNC deve essere acceso e nello stato di arresto in emergenza. Dato che questa operazione si effettua con l'alimentazione collegata e l'armadio elettrico aperto, essa deve essere eseguita esclusivamente da personale che abbia ricevuto un addestramento sui temi della sicurezza e della manutenzione ufficialmente accettato. Durante la sostituzione della batteria fare attenzione a non toccare i circuiti ad alta tensione (contrassegnati con il simbolo e protetti da un coperchio isolante). Toccare un circuito ad alta tensione scoperto comporta un rischio di scossa elettrica estremamente grave. NOTA L'encoder assoluto usa la batteria per preservare la posizione assoluta memorizzata. In caso di caduta della tensione della batteria sul pannello dell'operatore o sul video del CNC compare un allarme di bassa tensione della batteria. Se compare questo allarme, sostituire la batteria entro una settimana, o la posizione assoluta memorizzata dall'encoder verrà persa. Per la descrizione dettagliata della procedura per la sostituzione della batteria fare riferimento al manuale di manutenzione dei MOTORI ASSE GE Fanuc serie αi. PERICOLO 3 Sostituzione dei fusibili Prima di procedere alla sostituzione di un fusibile è necessario individuare e rimuovere la causa che ne ha provocato la bruciatura. Per questo motivo, questa operazione può essere eseguita esclusivamente da personale che abbia ricevuto un addestramento ufficialmente accettato sui temi della sicurezza e della manutenzione. Quando si sostituisce un fusibile con l'armadio elettrico aperto fare attenzione a non toccare i circuiti ad alta tensione (contrassegnati con il simbolo e protetti da un coperchio isolante). Toccare un circuito ad alta tensione scoperto comporta un rischio di scossa elettrica estremamente grave. s-9 INDICE GENERALE B-64484IT/02 INDICE GENERALE NORME DI SICUREZZA.............................................................................. s-1 DEFINIZIONE DI PERICOLO, AVVERTENZA E NOTA.......................................... s-1 DIFFIDE E AVVERTENZE DI CARATTERE GENERALE ....................................... s-2 DIFFIDE E AVVERTENZE RELATIVE ALLA PROGRAMMAZIONE....................... s-4 DIFFIDE E AVVERTENZE RELATIVE ALLE OPERAZIONI ................................... s-6 DIFFIDE RELATIVE ALLA MANUTENZIONE ORDINARIA .................................... s-8 I. INTRODUZIONE 1 INTRODUZIONE ..................................................................................... 3 1.1 1.2 AVVERTENZE RELATIVE ALLA LETTURA DEL MANUALE ....................... 7 AVVERTENZA RELATIVA A VARI TIPI DI DATI........................................... 7 II. PROGRAMMAZIONE 1 INTRODUZIONE ................................................................................... 11 1.1 1.2 1.3 MOVIMENTO DELL'UTENSILE LUNGO IL PROFILO DEL PEZZO INTERPOLAZIONE ..................................................................................... 11 AVANZAMENTO - FUNZIONE AVANZAMENTO ........................................ 13 DISEGNO DEL PEZZO E MOVIMENTO DELL'UTENSILE ......................... 14 1.3.1 1.3.2 1.3.3 1.4 1.5 1.6 1.7 1.8 2 VELOCITA' DI TAGLIO - FUNZIONE VELOCITA' DEL MANDRINO .......... 23 SELEZIONE DELL'UTENSILE DA USARE NELLE VARIE LAVORAZIONI - FUNZIONE UTENSILE ..................................................... 24 COMANDI PER LE FUNZIONI DELLA MACCHINA FUNZIONI AUSILIARIE ............................................................................... 25 CONFIGURAZIONE DEL PROGRAMMA ................................................... 26 AMPIEZZA DEL MOVIMENTO DELL'UTENSILE ZONA DI SICUREZZA ................................................................................. 28 ASSI CONTROLLATI ............................................................................ 29 2.1 2.2 2.3 2.4 3 Punto di riferimento (una posizione fissa sulla macchina) ..................................... 14 Sistema di coordinate del disegno del pezzo e sistema di coordinate specificato dal CNC - Sistema di coordinate .......................................................... 15 Programmazione dei movimenti dell'utensile (programmazione assoluta e incrementale) ....................................................................................................... 20 NUMERO DI ASSI CONTROLLATI ............................................................. 29 NOMENCLATURA DEGLI ASSI .................................................................. 30 SISTEMA DI INCREMENTI ......................................................................... 31 CORSA MASSIMA ...................................................................................... 32 FUNZIONI PREPARATORIE (CODICI G) ............................................. 33 3.1 3.2 ELENCO DEI CODICI G PER CENTRI DI LAVORO................................... 35 ELENCO DEI CODICI G PER TORNI ......................................................... 39 c-1 INDICE GENERALE 4 FUNZIONI DI INTERPOLAZIONE......................................................... 44 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 POSIZIONAMENTO (G00) .......................................................................... 45 POSIZIONAMENTO UNIDIREZIONALE (G60) ........................................... 46 INTERPOLAZIONE LINEARE (G01) ........................................................... 48 INTERPOLAZIONE CIRCOLARE (G02, G03) ............................................. 51 INTERPOLAZIONE ELICOIDALE (G02, G03) ............................................ 55 INTERPOLAZIONE ELICOIDALE B (G02, G03) ......................................... 56 INTERPOLAZIONE A SPIRALE, INTERPOLAZIONE CONICA (G02, G03) ................................................................................................... 57 INTERPOLAZIONE IN COORDINATE POLARI (G12.1, G13.1) ................ 64 INTERPOLAZIONE CILINDRICA (G07.1) ................................................... 72 4.9.1 4.9.2 4.10 4.11 4.12 4.13 4.14 4.22 4.23 4.24 Interpolazione cilindrica ......................................................................................... 72 Interpolazione cilindrica con specifica della distanza nel piano ............................ 75 CONTROLLO DEL PUNTO DI TAGLIO NELL'INTERPOLAZIONE CILINDRICA (G07.1) ................................................................................... 77 INTERPOLAZIONE ESPONENZIALE (G02.3, G03.3) ................................ 88 INTERPOLAZIONE RACCORDATA (G05.1) .............................................. 94 INTERPOLAZIONE NANOMETRICA RACCORDATA ................................ 99 INTERPOLAZIONE NURBS (G06.2) ......................................................... 108 4.14.1 4.15 4.16 4.17 4.18 4.19 4.20 4.21 5 B-64484IT/02 Funzioni addizionali dell'interpolazione NURBS ................................................ 112 INTERPOLAZIONE CON ASSE VIRTUALE (G07) ................................... 116 FILETTATURA A PASSO VARIABILE (G34) ............................................ 118 FILETTATURA CIRCOLARE (G35, G36) .................................................. 119 FUNZIONE DI SALTO (G31) ..................................................................... 123 SALTO MULTIPASSO (G31) ..................................................................... 125 SEGNALE DI SALTO AD ALTA VELOCITA' (G31) ................................... 126 MIGLIORAMENTO DELLA MEMORIZZAZIONE DELLA POSIZIONE DI SALTO .................................................................................................. 126 FUNZIONE DI SALTO CONTINUO AD ALTA VELOCITA' ........................ 127 SALTO AL LIMITE DI COPPIA .................................................................. 128 INTERPOLAZIONE CIRCOLARE NELLO SPAZIO ................................... 131 FUNZIONI DI AVANZAMENTO .......................................................... 135 5.1 5.2 5.3 5.4 INTRODUZIONE ....................................................................................... 135 POSIZIONAMENTO RAPIDO.................................................................... 136 AVANZAMENTO IN LAVORO ................................................................... 137 CONTROLLO DELLA VELOCITA' DI AVANZAMENTO ............................ 144 5.4.1 5.4.2 Arresto esatto (G09, G61), Modo taglio (G64), Modo maschiatura (G63) .......... 145 Regolazione automatica della velocità sugli spigoli............................................. 145 5.4.2.1 5.4.2.2 5.5 5.6 Regolazione automatica della velocità sugli spigoli interni (G62) ............... 145 Riduzione della velocità di avanzamento nell'interpolazione circolare all'interno........................................................................................ 147 COMANDO DI VELOCITA' SU UN CERCHIO VIRTUALE PER UN ASSE ROTATIVO ...................................................................................... 148 SOSTA ...................................................................................................... 152 c-2 INDICE GENERALE B-64484IT/02 6 PUNTO DI RIFERIMENTO .................................................................. 154 6.1 6.2 7 RITORNO AL PUNTO DI RIFERIMENTO ................................................. 154 RITORNO AL PUNTO DI RIFERIMENTO MOBILE (G30.1) ..................... 160 SISTEMA DI COORDINATE ............................................................... 162 7.1 7.2 SISTEMA DI COORDINATE DELLA MACCHINA ..................................... 163 SISTEMA DI COORDINATE DEL PEZZO ................................................. 166 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 7.2.7 7.3 7.4 7.5 8 SISTEMA DI COORDINATE LOCALI ........................................................ 178 SELEZIONE DEL PIANO .......................................................................... 179 FUNZIONE DI CONVERSIONE DEL PIANO ............................................ 180 VALORI DELLE COORDINATE E DIMENSIONI ................................ 186 8.1 8.2 8.3 8.4 8.5 9 Impostazione del sistema di coordinate del pezzo................................................ 166 Selezione del sistema di coordinate del pezzo...................................................... 168 Cambiamento del sistema di coordinate del pezzo ............................................... 169 Preset del sistema di coordinate del pezzo (G92.1) .............................................. 172 Sistemi di coordinate del pezzo addizionali (G54.1 o G54) ................................. 174 Impostazione automatica del sistema di coordinate ............................................. 176 Spostamento del sistema di coordinate del pezzo ................................................ 176 PROGRAMMAZIONE ASSOLUTA E INCREMENTALE ........................... 186 CONVERSIONE POLLICI/MILLIMETRI (G20, G21).................................. 188 PROGRAMMAZIONE DEL PUNTO DECIMALE ....................................... 191 PROGRAMMAZIONE DIAMETRALE E PROGRAMMAZIONE RADIALE ................................................................................................... 193 FUNZIONE DI COMMUTAZIONE FRA PROGRAMMAZIONE DIAMETRALE E RADIALE ........................................................................ 194 FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) ......................... 197 9.1 9.2 9.3 9.4 SPECIFICA DELLA VELOCITA' DEL MANDRINO CON UN CODICE ...... 197 SPECIFICA DIRETTA DELLA VELOCITA' DEL MANDRINO (COMANDO S-5 CIFRE) ........................................................................... 197 CONTROLLO DELLA VELOCITA' DI TAGLIO COSTANTE (G96, G97) ... 197 FUNZIONE DI POSIZIONAMENTO DEL MANDRINO .............................. 202 9.4.1 9.4.2 9.4.3 9.5 9.6 Orientamento del mandrino .................................................................................. 202 Posizionamento del mandrino .............................................................................. 203 Cancellazione del posizionamento del mandrino ................................................. 204 RILEVAZIONE DEGLI ERRORI DI VELOCITA' DEL MANDRINO ............ 207 CONTROLLO MANDRINO CON UN MOTORE ASSE .............................. 211 9.6.1 9.6.2 Controllo mandrino con un motore asse ............................................................... 211 Funzione di indexaggio mandrino ........................................................................ 212 10 FUNZIONE UTENSILE (FUNZIONE T) ............................................... 214 10.1 10.2 10.3 FUNZIONE DI SELEZIONE UTENSILE .................................................... 214 FUNZIONE GESTIONE UTENSILI ............................................................ 215 ESTENSIONE DELLA GESTIONE UTENSILI ........................................... 229 10.3.1 10.3.2 10.3.3 10.3.4 Personalizzazione della visualizzazione dei dati della gestione utensili .............. 229 Personalizzazione della visualizzazione di posizione mandrino/ posizione di attesa ................................................................................................ 234 Introduzione dei dati personalizzabili con il punto decimale ............................... 236 Protezione mediante il segnale KEY di vari dati utensili ..................................... 238 c-3 INDICE GENERALE 10.3.5 10.3.6 10.3.7 10.4 10.5 B-64484IT/02 Selezione del periodo di conteggio della vita utensile ......................................... 238 Schermata dei dati di ciascun utensile .................................................................. 239 Visualizzazione della vita utile complessiva degli utensili dello stesso tipo........ 239 SUPPORTO PER LA GESTIONE DI UTENSILI SOVRADIMENSIONATI ............................................................................ 240 GESTIONE VITA UTENSILI ...................................................................... 242 10.5.1 10.5.2 10.5.3 10.5.4 10.5.5 10.5.6 10.5.7 Dati della gestione vita utensili ............................................................................ 243 Registrazione, modifica e cancellazione dei dati della gestione vita utensili ....... 245 Comandi della gestione vita utensili in un programma pezzo .............................. 250 Conteggio vita utensile e selezione utensile ......................................................... 256 Codice M per la ripartenza del conteggio vita utensili ......................................... 259 Disabilitazione del conteggio vita ........................................................................ 261 Funzione di controllo del numero di utensili rimasti............................................ 261 11 FUNZIONI AUSILIARIE ...................................................................... 263 11.1 11.2 11.3 FUNZIONE AUSILIARIA (FUNZIONE M) .................................................. 263 PIU' CODICI M IN UN BLOCCO ................................................................ 264 GRUPPI DI CODICI M ............................................................................... 265 11.3.1 11.3.2 11.3.3 11.4 Impostazione di un numero di gruppo di codici M sulla schermata di impostazione ......................................................................................................... 265 Impostazione da programma di un numero di gruppo di codici M ..................... 267 Funzione di controllo dei gruppi di codici M ...................................................... 267 SECONDA FUNZIONE AUSILIARIA (CODICI B) ...................................... 268 12 GESTIONE DEI PROGRAMMI............................................................ 271 12.1 CARTELLE ................................................................................................ 271 12.1.1 12.1.2 12.1.3 12.2 FILE ........................................................................................................... 275 12.2.1 12.2.2 12.3 Configurazione delle cartelle ................................................................................ 271 Attributi delle cartelle ........................................................................................... 273 Cartelle di default ................................................................................................. 274 Nomi dei file .........................................................................................................275 Attributi dei file ....................................................................................................276 RELAZIONE CON LE FUNZIONI CONVENZIONALI ................................ 277 12.3.1 12.3.2 12.3.3 12.3.4 Relazione con le cartelle ....................................................................................... 277 Relazione con i nomi file...................................................................................... 278 Parametri correlati ................................................................................................ 280 Capacità della memoria programmi / Numero dei programmi registrabili........... 281 13 CONFIGURAZIONE DEL PROGRAMMA ........................................... 283 13.1 13.2 13.3 COMPONENTI DEL PROGRAMMA DIVERSE DALLA SEZIONE PROGRAMMA ........................................................................................... 284 CONFIGURAZIONE DELLA SEZIONE PROGRAMMA ............................ 287 SOTTOPROGRAMMI (M98, M99)............................................................. 294 14 FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE ............. 299 14.1 14.2 COPIA DELLA FIGURA (G72.1, G72.2) .................................................... 299 CONVERSIONE TRIDIMENSIONALE DEL SISTEMA DI COORDINATE ........................................................................................... 306 c-4 INDICE GENERALE B-64484IT/02 15 FUNZIONI DI COMPENSAZIONE....................................................... 317 15.1 COMPENSAZIONE LUNGHEZZA UTENSILE (G43, G44, G49).............. 317 15.1.1 15.1.2 15.2 15.3 15.4 15.5 15.6 Introduzione ......................................................................................................... 317 Comandi G53, G28, G30 e G30.1 nel modo compensazione lunghezza utensile ................................................................................................ 322 SCALA (G50, G51) .................................................................................... 324 IMMAGINE SPECULARE PROGRAMMABILE (G50.1, G51.1) ............... 331 CONTROLLO DELLA DIREZIONE NORMALE (G40.1,G41.1,G42.1) ...... 333 COMPENSAZIONE MONTAGGIO PEZZO ............................................... 338 CORREZIONE UTENSILE PER LE FUNZIONI DI FRESATURA E DI TORNITURA .............................................................................................. 377 16 MACROISTRUZIONI ........................................................................... 384 16.1 16.2 16.3 16.4 16.5 16.6 16.7 16.8 VARIABILI ................................................................................................. 384 VARIABILI DI SISTEMA ............................................................................ 390 LETTURA E SCRITTURA DI VARIABILI DI ALTRI CANALI ..................... 445 OPERAZIONI ARITMETICHE E LOGICHE ............................................... 449 SPECIFICA INDIRETTA DEGLI INDIRIZZI ASSE..................................... 456 LETTURA DEI PARAMETRI...................................................................... 458 FRASI MACRO E FRASI NC ..................................................................... 459 SALTI E RIPETIZIONI ............................................................................... 459 16.8.1 16.8.2 16.8.3 16.8.4 16.8.5 16.9 RICHIAMO DELLE MACRO ...................................................................... 466 16.9.1 16.9.2 16.9.3 16.9.4 16.9.5 16.9.6 16.9.7 16.9.8 16.9.9 16.9.10 16.9.11 16.9.12 16.9.13 16.9.14 16.9.15 16.10 16.11 16.12 Salto incondizionato (frase GOTO)...................................................................... 459 Frase GOTO con numeri di sequenza memorizzati .............................................. 460 Salto condizionato (Frase IF) ............................................................................... 461 Ripetizione (Frase While)..................................................................................... 462 Specifica della precisione per gli operatori relazionali ........................................ 464 Richiamo semplice (G65) ..................................................................................... 467 Richiamo modale: Richiamo dopo l'esecuzione di un comando di movimento (G66) ............................................................................................. 475 Richiamo modale: Richiamo ad ogni blocco (G66.1) .......................................... 478 Richiamo macro mediante un codice G ................................................................ 480 Richiamo macro mediante un codice G (con specifica del numero di codici G utilizzabili) ............................................................................................. 481 Richiamo macro mediante codici G con il punto decimale (con specifica del numero di codici G utilizzabili)............................................... 482 Richiamo macro mediante codici M ..................................................................... 483 Richiamo macro mediante un codice M (con specifica del numero di codici M utilizzabili) ............................................................................................ 485 Richiamo macro speciale mediante codici M ....................................................... 486 Richiamo sottoprogrammi mediante codici M ..................................................... 487 Richiamo sottoprogramma mediante un codice M (con specifica del numero di codici M utilizzabili) .............................................. 488 Richiamo sottoprogramma mediante codice T ..................................................... 489 Richiamo sottoprogramma mediante codice S ..................................................... 490 Richiamo sottoprogramma mediante il codice della seconda funzione ausiliaria ................................................................................................ 490 Richiamo sottoprogramma con uno specifico indirizzo ....................................... 491 ELABORAZIONE DELLE FRASI MACRO ................................................. 494 REGISTRAZIONE DEI PROGRAMMI MACRO ......................................... 496 CODICI E PAROLE RISERVATE UTILIZZATI NELLE MACRO ................ 497 c-5 INDICE GENERALE 16.13 16.14 16.15 B-64484IT/02 COMANDI DI EMISSIONE DEI DATI ........................................................ 498 LIMITAZIONI ............................................................................................. 501 INTERRUPT DELLE MACROISTRUZIONI ............................................... 503 16.15.1 Metodo di specifica .............................................................................................. 504 16.15.2 Descrizione della funzione di interrupt ................................................................ 505 17 MACRO IN TEMPO REALE ................................................................ 512 17.1 TIPI DI COMANDI MACRO IN TEMPO REALE ........................................ 515 17.1.1 17.2 Comando macro in tempo reale modale / Comando macro in tempo reale autocancellante ..................................................................................................... 515 VARIABILI ................................................................................................. 521 17.2.1 Variabili dedicate alle macro in tempo reale ........................................................ 521 17.2.1.1 17.2.1.2 17.2.2 Variabili delle macro istruzioni ............................................................................ 526 17.2.2.1 17.2.2.2 17.3 17.4 Variabili di sistema ....................................................................................... 526 Variabili locali .............................................................................................. 527 OPERAZIONI ARITMETICHE E LOGICHE ............................................... 528 CONTROLLO DEI COMANDI MACRO IN TEMPO REALE ...................... 529 17.4.1 17.4.2 17.4.3 17.4.4 17.5 17.6 17.7 17.8 17.9 Variabili di sistema ....................................................................................... 521 Variabili delle macro in tempo reale (variabili RTM) ................................. 525 Salto condizionato (Frase ZONCE )..................................................................... 530 Transizione della condizione (frase ZEDGE) ...................................................... 531 Ripetizione (frase ZWHILE) ................................................................................ 532 Gruppo di frasi (frase ZDO...ZEND) ................................................................... 533 RICHIAMO DELLE MACRO ...................................................................... 535 ALTRI ........................................................................................................ 537 COMANDI DI CONTROLLO ASSE ........................................................... 538 NOTE......................................................................................................... 549 LIMITAZIONI ............................................................................................. 551 18 INTRODUZIONE PARAMETRI DA PROGRAMMA (G10).................. 553 19 INTRODUZIONE DEI DATI DEGLI SCHEMI DI LAVORAZIONE ....... 558 19.1 19.2 19.3 19.4 INTRODUZIONE ....................................................................................... 558 SPIEGAZIONE .......................................................................................... 558 PROCEDURE ............................................................................................ 562 DEFINIZIONE DELLA SCHERMATA ........................................................ 565 19.4.1 19.4.2 19.4.3 Definizione del menu degli schemi di lavorazione .............................................. 566 Definizione della schermata della macro.............................................................. 568 Impostazione dei codici dei caratteri .................................................................... 571 20 FUNZIONI PER LA LAVORAZIONE AD ALTA VELOCITA' .............. 576 20.1 20.2 20.3 20.4 FUNZIONE I DI CONTORNATURA AI E FUNZIONE II DI CONTORNATURA AI (G05.1) ................................................................... 576 FUNZIONE DI SELEZIONE DELLE CONDIZIONI DI LAVORAZIONE ..... 591 REGOLAZIONE DEL LIVELLO DI QUALITA' DELLA LAVORAZIONE ..... 592 CONTROLLO JERK .................................................................................. 593 20.4.1 20.4.2 20.5 Controllo della velocità in base alla variazione dell'accelerazione di ciascun asse ...................................................................................................... 593 Accelerazione/decelerazione a campana prima dell'interpolazione con prelettura dei blocchi smorzata ...................................................................... 595 ACCELERAZIONE/DECELERAZIONE CON COPPIA OTTIMALE ........... 597 c-6 INDICE GENERALE B-64484IT/02 20.6 20.7 20.8 20.9 CICLO DI LAVORAZIONE AD ALTA VELOCITA ...................................... 608 ESECUZIONE AD ALTA VELOCITA' DEL PROGRAMMA IN FORMATO BINARIO ................................................................................. 609 ACCELERAZIONE/DECELERAZIONE OTTIMALE PER LA MASCHIATURA RIGIDA ........................................................................... 610 FUNZIONAMENTO MEDIANTE TABELLE DI COMANDI SEQUENZIALI ........................................................................................... 612 21 FUNZIONI DI CONTROLLO ASSI ...................................................... 638 21.1 CONTROLLO SINCRONO DEGLI ASSI ................................................... 638 21.1.1 21.1.2 21.1.3 21.1.4 21.1.5 21.1.6 21.1.7 21.2 21.3 21.4 TORNITURA POLIGONALE (G50.2, G51.2) ............................................. 651 CONTROLLO SINCRONO, COMPOSTO E SOVRAPPOSTO MEDIANTE COMANDI DEL PROGRAMMA (G50.4, G51.4, G50.5, G51.5, G50.6, AND G51.6) ................................... 656 ROLL-OVER DELL'ASSE ROTATIVO....................................................... 660 21.4.1 21.4.2 21.5 21.6 Roll-over dell'asse rotativo ................................................................................... 660 Controllo dell'asse rotativo ................................................................................... 661 CONTROLLO DELL'ASSE INCLINATO ARBITRARIO ............................. 662 RITIRO E RIPOSIZIONAMENTO DELL'UTENSILE .................................. 671 21.6.1 21.7 Configurazione degli assi per il controllo sincrono .............................................. 639 Compensazione dell'errore di sincronizzazione ................................................... 641 Instaurazione della sincronizzazione .................................................................... 642 Impostazione automatica per la corrispondenza delle posizioni di griglia ........... 645 Controllo dell'errore di sincronizzazione.............................................................. 645 Metodi di ripristino dopo un allarme generato dal controllo dell'errore di sincronizzazione ................................................................................................... 647 Allarme del controllo della coppia durante il funzionamento sincrono ............... 648 Miglioramento della compensazione utensile per il ritiro e riposizionamento dell'utensile ............................................................................. 673 ACCOPPIAMENTO ELETTRONICO ......................................................... 677 21.7.1 21.7.2 21.7.3 21.7.4 21.7.5 Accoppiamento elettronico ................................................................................... 677 Accoppiamento elettronico di mandrini ............................................................... 684 Fasatura automatica per l'accoppiamento elettronico ........................................... 691 Funzione di salto per l'asse EGB .......................................................................... 695 Accoppiamento elettronico per 2 coppie .............................................................. 697 21.7.5.1 21.7.5.2 21.7.5.3 21.7.5.4 21.7.5.5 21.7.5.6 21.7.6 21.7.7 21.8 21.9 Metodo di specifica (G80.5, G81.5) ............................................................. 697 Descrizione dei comandi compatibili con quelli di una dentatrice a creatore (G80, G81) ................................................................................... 700 Esempio di configurazione degli assi controllati .......................................... 703 Esempi........................................................................................................... 704 Campo di specifica del rapporto di sincronizzazione.................................... 707 Funzione di ritiro........................................................................................... 710 Controllo dell'asse U ............................................................................................ 711 Controllo dell'asse U per due coppie .................................................................... 712 CONTROLLO TANDEM ............................................................................ 713 CONTROLLO DELL'ASSE PIVOT............................................................. 713 22 FUNZIONI PER LA LAVORAZIONE A 5 ASSI ................................... 717 22.1 22.2 CONTROLLO DEL CENTRO UTENSILE .................................................. 717 CONTROLLO REGOLATO DEL CENTRO UTENSILE (SMOOTH TCP) AD ALTA VELOCITA' ..................................................... 769 22.2.1 Controllo regolato del centro utensile ad alta velocità ......................................... 769 c-7 INDICE GENERALE B-64484IT/02 22.2.1.1 22.2.1.2 22.2.2 Variazione della tolleranza nel modo controllo regolato del centro utensile ad alta velocità ........................................................................................ 784 22.2.2.1 22.2.2.2 22.2.3 22.3 22.4 22.5 22.6 22.6.3 Visualizzazione delle informazioni nel modo controllo regolato del centro utensile ad alta velocità ............................................................................. 789 Programmazione dei comandi nel piano di lavoro inclinato ................................ 813 Programmazione dei comandi nel piano di lavoro inclinato rispetto alla direzione dell'asse utensile............................................................................. 836 Specifica del piano di lavoro inclinato sulla schermata di guida ......................... 843 22.6.3.1 22.6.3.2 22.6.3.3 22.6.3.4 22.6.3.5 22.6.3.6 22.6.4 22.6.5 22.6.6 Controllo direzione asse utensile con mantenimento del centro utensile sul pezzo ............................................................................................................... 860 Controllo del secondo asse rotativo nel controllo della direzione dell'asse utensile quando il punto finale è una posizione singolare...................... 864 Programmazione dei comandi nel piano di lavoro inclinato nel modo compensazione lunghezza utensile ....................................................................... 865 Compensazione utensile su una macchina con rotazione dell'utensile ................. 877 22.8.1.1 22.8.1.2 22.8.1.3 22.8.2 22.8.3 22.8.4 22.8.5 22.8.6 Compensazione laterale dell'utensile ............................................................ 878 Compensazione del bordo di taglio ............................................................... 894 Controllo della posizione della punta dell'utensile (punto di taglio) ............ 899 Compensazione utensile su una macchina con rotazione della tavola ................ 902 Compensazione utensile su una macchina di tipo misto ...................................... 907 Controllo di interferenza e prevenzione delle interferenze .................................. 912 Limitazioni ...........................................................................................................915 22.8.5.1 22.8.5.2 22.8.5.3 22.10 Specifica del piano di lavoro inclinato mediante roll-pitch-yaw .................. 843 Specifica del piano di lavoro inclinato con tre punti..................................... 846 Specifica del piano di lavoro inclinato con due vettori ................................. 850 Specifica del piano di lavoro inclinato con gli angoli di proiezione ............. 853 Comando multiplo assoluto .......................................................................... 856 Comando multiplo incrementale ................................................................... 858 CONTROLLO DELL'ASSE DI ROTAZIONE INCLINATO .......................... 872 COMPENSAZIONE TRIDIMENSIONALE DELL'UTENSILE ..................... 875 22.8.1 22.9 Variazione della tolleranza nella compensazione assi rotativi (G43.4L1) ... 784 Variazione della tolleranza nel controllo regolato (G43.4P3)....................... 788 ESPANSIONE DEI COMANDI DI MOVIMENTO ASSE NEL CONTROLLO DEL CENTRO UTENSILE .................................................. 794 CONTROLLO ORIENTAMENTO UTENSILE ............................................ 796 PROGRAMMAZIONE DEL PUNTO DI TAGLIO ........................................ 806 PROGRAMMAZIONE DEI COMANDI NEL PIANO DI LAVORO INCLINATO ............................................................................................... 813 22.6.1 22.6.2 22.7 22.8 Compensazione assi rotativi (G43.4L1) ........................................................ 773 Controllo regolato (G43.4P3) ....................................................................... 779 Limitazioni comuni a tutte le configurazioni di macchina ............................ 915 Limitazioni per le macchina con rotazione dell'utensile ............................... 918 Limitazioni per le macchine con rotazione della tavola o di tipo misto ........ 919 Esempi .................................................................................................................. 922 ESPANSIONE DEL METODO DI IMPOSTAZIONE DEI PARAMETRI PER LA LAVORAZIONE A 5 ASSI ............................................................ 927 FUNZIONE DI SELEZIONE DELLA CONFIGURAZIONE DELLA MACCHINA................................................................................................ 930 22.10.1 22.10.2 22.10.3 22.10.4 Schermata di selezione della configurazione della macchina............................... 930 Commutazione della configurazione della macchina ........................................... 932 Impostazione dei dati della configurazione della macchina ................................. 934 Immissione/emissione dei dati della configurazione della macchina ................... 936 c-8 INDICE GENERALE B-64484IT/02 23 FUNZIONI PER SISTEMI A PIU' CANALI .......................................... 938 23.1 23.2 23.3 23.4 23.5 INTRODUZIONE ....................................................................................... 938 FUNZIONE DI ATTESA RECIPROCA FRA CANALI ................................. 939 MEMORIA CONDIVISA TRA I CANALI ..................................................... 944 CONDIVISIONE DEL MANDRINO TRA PIU' CANALI............................... 945 CONTROLLO SINCRONO/COMPOSTO/SOVRAPPOSTO ...................... 946 III. OPERATION 1 INTRODUZIONE ................................................................................. 951 1.1 1.2 1.3 1.4 OPERAZIONI MANUALI ............................................................................ 951 MOVIMENTO DELL'UTENSILE DA PROGRAMMA FUNZIONAMENTO AUTOMATICO........................................................... 953 FUNZIONAMENTO AUTOMATICO........................................................... 954 PROVA DEI PROGRAMMI ........................................................................ 955 1.4.1 1.4.2 1.5 1.6 1.7 EDITAZIONE DEL PROGRAMMA PEZZO ............................................... 957 VISUALIZZAZIONE E IMPOSTAZIONE DEI DATI .................................... 957 VISUALIZZAZIONE ................................................................................... 960 1.7.1 1.7.2 1.7.3 1.7.4 2 Visualizzazione programmi .................................................................................. 960 Visualizzazione della posizione corrente ............................................................. 961 Visualizzazione allarmi ........................................................................................ 962 Visualizzazione numero pezzi e ore di funzionamento ........................................ 962 UNITA' OPERATIVE ........................................................................... 963 2.1 ACCENSIONE/SPEGNIMENTO................................................................ 963 2.1.1 2.1.2 2.2 2.3 2.4 Pannello LCD da 8.4"........................................................................................... 964 Pannello LCD da 10.4" (Pannello LCD da 12.1"/15"/19") .................................. 965 Unità MDI standard (Tastiera ONG) .................................................................... 966 Unità MDI standard (Tastiera QWERTY ) .......................................................... 967 Unità MDI compatta (Tastiera ONG) ................................................................... 968 DESCRIZIONE DELL'UNITA' MDI ............................................................. 969 TASTI FUNZIONE E TASTI SOFTWARE ................................................. 972 2.4.1 2.4.2 2.4.3 2.5 Accensione ........................................................................................................... 963 Spegnimento ......................................................................................................... 964 UNITA' DI IMPOSTAZIONE E VISUALIZZAZIONE ................................... 964 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 3 Controllo con movimento della macchina ............................................................ 955 Visualizzazione della posizione a macchina ferma .............................................. 956 Sommario delle operazioni eseguite sulle varie schermate .................................. 972 Tasti funzione ....................................................................................................... 973 Tasti software ....................................................................................................... 974 UNITA' ESTERNE DI IMMISSIONE/EMISSIONE ..................................... 982 OPERAZIONI MANUALI ..................................................................... 984 3.1 3.2 3.3 3.4 3.5 3.6 RITORNO MANUALE AL PUNTO DI RIFERIMENTO ............................... 984 AVANZAMENTO IN JOG .......................................................................... 986 AVANZAMENTO INCREMENTALE .......................................................... 988 AVANZAMENTO MANUALE CON VOLANTINO....................................... 989 ASSOLUTO IN MANUALE ON E OFF ...................................................... 992 INTERPOLAZIONE LINEARE/CIRCOLARE IN MANUALE....................... 996 c-9 INDICE GENERALE 3.7 3.8 3.9 MASCHIATURA RIGIDA CON VOLANTINO ........................................... 1001 COMANDO NUMERICO IN MANUALE ................................................... 1004 AVANZAMENTO MANUALE NELLO SPAZIO ........................................ 1011 3.9.1 3.9.2 3.9.3 3.9.4 3.9.5 3.10 4 Movimento con volantino/in JOG/in avanzamento incrementale nella direzione dell'asse utensile......................................................................... 1013 Movimento con volantino/in JOG/in avanzamento incrementale nella direzione perpendicolare all'asse utensile .................................................. 1015 Rotazione punta utensile con volantino/in JOG/in avanzamento incrementale ....................................................................................................... 1019 Movimento con volantino/in JOG/in avanzamento incrementale in direzione verticale rispetto alla tavola ............................................................ 1021 Movimento con volantino/in JOG/in avanzamento incrementale in direzione orizzontale rispetto alla tavola ........................................................ 1023 INTERFACCIA PER RIGA CODIFICATA ................................................ 1027 3.10.1 3.10.2 3.10.3 3.10.4 3.10.5 3.10.6 3.10.7 3.11 B-64484IT/02 Procedura per la determinazione del punto di riferimento ................................. 1027 Ritorno al punto di riferimento ........................................................................... 1028 Encoder codificato .............................................................................................. 1029 Controllo sincrono degli assi .............................................................................. 1029 Controllo assi da PMC ....................................................................................... 1031 Controllo dell'asse inclinato ............................................................................... 1031 Note .................................................................................................................... 1031 RIGA CODIFICATA CON MARCHE DI RIFERIMENTO (SERIALE) ....... 1033 FUNZIONAMENTO AUTOMATICO .................................................. 1038 4.1 4.2 4.3 4.4 4.5 4.6 4.7 FUNZIONAMENTO DA MEMORIA ......................................................... 1039 FUNZIONAMENTO IN MDI ..................................................................... 1041 FUNZIONAMENTO IN DNC .................................................................... 1045 FUNZIONAMENTO PIANIFICATO .......................................................... 1047 RICHIAMO SOTTOPROGRAMMA DA UN'UNITA' ESTERNA (M198) ... 1050 RICHIAMO SOTTOPROGRAMMA DA UN'UNITA' ESTERNA UTILIZZANDO IL DATA SERVER DISONIBILE IN UN SISTEMA A PIU' CANALI ......................................................................................... 1054 INTERRUZIONE DEL VOLANTINO ........................................................ 1056 4.7.1 4.8 4.9 IMMAGINE SPECULARE ........................................................................ 1062 RIPARTENZA DEL PROGRAMMA ......................................................... 1064 4.9.1 4.10 Soppressione del movimento della ripartenza rapida del programma ................ 1102 Ripartenza rapida del programma per un ciclo di lavorazione ........................... 1106 RITIRO E RIPOSIZIONAMENTO DELL'UTENSILE ................................ 1114 4.11.1 4.11.2 4.11.3 4.11.4 4.11.5 4.11.6 4.12 4.13 Emissione delle funzioni ausiliarie nella funzione di ripartenza del programma .................................................................................................... 1080 RIPARTENZA RAPIDA DEL PROGRAMMA ........................................... 1084 4.10.1 4.10.2 4.11 Interruzione manuale nel modo conversione tridimensionale del sistema di coordinate .......................................................................................... 1061 Ritiro................................................................................................................... 1117 Allontanamento .................................................................................................. 1117 Ritorno ................................................................................................................1118 Riposizionamento ............................................................................................... 1118 Ritiro e riposizionamento dell'utensile durante la filettatura .............................. 1118 Procedura operativa per un ciclo fisso di foratura .............................................. 1121 INTERVENTO MANUALE E RITORNO .................................................. 1123 RITRACCIATURA.................................................................................... 1126 c-10 INDICE GENERALE B-64484IT/02 4.14 5 OPERAZIONI DI TEST ...................................................................... 1139 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10 5.11 6 ANNULLAMENTO DEL BLOCCO ATTIVO ............................................. 1136 BLOCCO MACCHINA E BLOCCO DELLE FUNZIONI AUSILIARIE ....... 1139 REGOLAZIONE DELLA VELOCITA' DI AVANZAMENTO ...................... 1141 REGOLAZIONE DELLA VELOCITA' IN RAPIDO .................................... 1142 REGOLAZIONE DURATA SOSTA/FUNZIONE AUSILIARIA .................. 1142 PROVA A VUOTO ................................................................................... 1144 BLOCCO SINGOLO ................................................................................ 1145 VERIFICA PROGRAMMA AD ALTA VELOCITA' .................................... 1146 RITRACCIATURA CON VOLANTINO ..................................................... 1148 CONTROLLO DELLE FUNZIONI AUSILIARIE NEL MOVIMENTO INVERSO PER LA RITRACCIATURA CON VOLANTINO ...................... 1160 RITRACCIATURA CON VOLANTINO PER PIU' CANALI ....................... 1161 ESTENSIONE DELLA RITRACCIATURA CON VOLANTINO ................. 1165 FUNZIONI DI SICUREZZA ................................................................ 1169 6.1 6.2 6.3 6.4 6.5 6.6 ARRESTO IN EMERGENZA ................................................................... 1169 SOVRACORSA ....................................................................................... 1170 CONTROLLO DELLE ZONE DI SICUREZZA ......................................... 1171 CONTROLLO DELLE ZONE DI SICUREZZA PRIMA DELL'ESECUZIONE DEL MOVIMENTO ................................................. 1174 FUNZIONE DI VARIAZIONE DELLE ZONE DI SICUREZZA .................. 1177 FUNZIONI DI PREVENZIONE DEGLI ERRORI OPERATIVI .................. 1178 6.6.1 Funzioni utilizzate durante l'impostazione dei dati ............................................ 1178 6.6.1.1 6.6.1.2 6.6.1.3 6.6.1.4 6.6.1.5 6.6.1.6 6.6.2 Funzioni utilizzate al momento dell'esecuzione di un programma ..................... 1183 6.6.2.1 6.6.2.2 6.6.2.3 6.6.2.4 6.6.2.5 6.6.2.6 6.6.3 Evidenziazione dei dati modali cambiati .................................................... 1183 Segnale di controllo dell'avvio .................................................................... 1184 Visualizzazione dello stato degli assi .......................................................... 1184 Conferma dell'avvio da un blocco intermedio ............................................ 1185 Controllo dei dati ........................................................................................ 1186 Controllo del valore incrementale massimo ................................................ 1187 Schermata di impostazione ................................................................................. 1188 6.6.3.1 6.6.3.2 6.6.3.3 6.6.3.4 6.6.3.5 7 Controllo del campo di validità dei dati introdotti ...................................... 1179 Conferma dell'introduzione di valori incrementali...................................... 1180 Inibizione dell'introduzione di valori assoluti mediante tasti software ....... 1181 Conferma della cancellazione di un programma ......................................... 1181 Conferma della cancellazione di tutti i dati ................................................. 1182 Conferma dell'aggiornamento dei dati durante le impostazioni .................. 1182 Schermata di impostazione dei controlli operativi ...................................... 1188 Schermata di impostazione del campo di validità delle correzioni utensili........................................................................................ 1190 Schermata di impostazione del campo di validità degli offset dello zero pezzo ................................................................................................... 1194 Schermata di impostazione del campo di validità delle correzioni utensile lungo l'asse Y ................................................................................. 1196 Schermata di impostazione dei campi di validità della traslazione origine ......................................................................................................... 1197 ALLARMI E FUNZIONI DI AUTODIAGNOSI .................................... 1199 7.1 7.2 VISUALIZZAZIONE DEGLI ALLARMI ..................................................... 1199 VISUALIZZAZIONE DELLA STORIA DEGLI ALLARMI ........................... 1201 c-11 INDICE GENERALE 7.3 7.4 CONTROLLO MEDIANTE LA SCHERMATA AUTODIAGNOSTICA ....... 1203 RITORNO DALLA SCHERMATA DEGLI ALLARMI ................................ 1204 7.4.1 7.4.2 8 B-64484IT/02 RITORNO DALLA SCHERMATA ALLARMI ............................................... 1204 Relazione con altre funzioni ............................................................................... 1205 IMMISSIONE/EMISSIONE DEI DATI ................................................ 1207 8.1 8.2 SOVRASCRITTURA DEI FILE SU MEMORY CARD/MEMORIA USB .... 1208 IMMISSIONE/EMISSIONE DA CIASCUNA SCHERMATA...................... 1211 8.2.1 Immissione ed emissione di un programma ....................................................... 1212 8.2.1.1 8.2.1.2 8.2.2 Immissione/emissione dei parametri .................................................................. 1215 8.2.2.1 8.2.2.2 8.2.3 8.2.6.2 8.2.6.3 Immissione dei dati del sistema di coordinate del pezzo ............................ 1239 Emissione dei dati del sistema di coordinate del pezzo .............................. 1240 Immissione/emissione dei dati della storia operativa ......................................... 1241 8.2.9.1 8.2.9.2 8.2.9.3 8.2.9.4 8.2.10 Immissione delle variabili comuni delle macroistruzioni ........................... 1236 Emissione delle variabili comuni delle macroistruzioni ............................. 1237 Immissione/emissione dei dati del sistema di coordinate del pezzo .................. 1239 8.2.8.1 8.2.8.2 8.2.9 Immissione dei dati della compensazione tridimensionale dell'errore di rotazione ................................................................................ 1231 Emissione dei dati della compensazione tridimensionale dell'errore di rotazione ................................................................................ 1233 Formato di immissione/emissione dei dati della compensazione tridimensionale dell'errore di rotazione ....................................................... 1234 Immissione/emissione delle variabili comuni delle macroistruzioni .................. 1236 8.2.7.1 8.2.7.2 8.2.8 Immissione dei dati della compensazione tridimensionale ......................... 1227 Emissione dei dati della compensazione tridimensionale ........................... 1228 Formato di immissione/emissione dei dati della compensazione tridimensionale ............................................................................................ 1229 Immissione/emissione dei dati della compensazione tridimensionale dell'errore di rotazione ........................................................................................ 1231 8.2.6.1 8.2.7 Immissione dei dati della compensazione passo vite .................................. 1223 Emissione dei dati della compensazione passo vite .................................... 1224 Formato di immissione/emissione dei dati della compensazione passo vite..................................................................................................... 1225 Immissione/emissione dei dati della compensazione tridimensionale ............... 1227 8.2.5.1 8.2.5.2 8.2.5.3 8.2.6 Immissione delle correzioni ........................................................................ 1218 Emissione delle correzioni .......................................................................... 1219 Immissione/emissione dei dati della compensazione passo vite ....................... 1223 8.2.4.1 8.2.4.2 8.2.4.3 8.2.5 Immissione dei parametri ............................................................................ 1215 Emissione dei parametri .............................................................................. 1217 Immissione/emissione delle correzioni .............................................................. 1218 8.2.3.1 8.2.3.2 8.2.4 Immissione di un programma...................................................................... 1212 Emissione di un programma........................................................................ 1214 Emissione dei dati della storia operativa ..................................................... 1241 Immissione dei dati di selezione dei segnali per la storia operativa............ 1242 Emissione dei dati di selezione dei segnali per la storia operativa ............. 1243 Formato di immissione/emissione dei dati di selezione dei segnali per la storia operativa...................................................................... 1244 Immissione/emissione dei dati della gestione utensili ........................................ 1245 8.2.10.1 8.2.10.2 8.2.10.3 8.2.10.4 8.2.10.5 8.2.10.6 8.2.10.7 8.2.10.8 Immissione dei dati della gestione utensili ................................................. 1245 Emissione dei dati della gestione utensili ................................................... 1247 Immissione dei dati del magazzino utensili ................................................ 1248 Emissione dei dati del magazzino utensili .................................................. 1250 Immissione dei nomi attribuiti agli stati della vita utensile ......................... 1251 Emissione dei nomi attribuiti agli stati della vita utensile ........................... 1252 Immissione dei nomi dei dati personalizzabili ............................................ 1253 Emissione dei nomi dei dati personalizzabili .............................................. 1254 c-12 INDICE GENERALE B-64484IT/02 8.2.10.9 8.2.10.10 8.2.10.11 8.2.10.12 8.2.10.13 8.2.10.14 8.2.10.15 8.2.10.16 8.2.11 Immissione/emissione dei valori della compensazione montaggio pezzo.......... 1263 8.2.11.1 8.2.11.2 8.2.11.3 8.2.12 8.3.10 8.3.11 9 Immissione/emissione di un programma ............................................................ 1272 Immissione/emissione dei parametri .................................................................. 1275 Immissione/emissione delle correzioni .............................................................. 1277 Immissione/emissione dei dati della compensazione passo vite ........................ 1278 Immissione/emissione delle variabili comuni delle macroistruzioni .................. 1280 Immissione/emissione dei dati del sistema di coordinate del pezzo ................... 1282 Immissione/emissione dei dati della storia operativa ......................................... 1284 Immissione/emissione dei dati della gestione utensili ........................................ 1284 Immissione/emissione di tutti i dati della gestione utensili contemporaneamente .......................................................................................... 1290 Immissione/emissione dei valori della compensazione montaggio pezzo.......... 1294 Formato dei file e messaggi di errore ................................................................. 1296 FUNZIONE ETHERNET INTEGRATA ..................................................... 1297 8.4.1 8.5 8.6 Immissione dei dati della gestione vita utensili........................................... 1267 Emissione dei dati della gestione vita utensili ............................................ 1268 IMMISSIONE/EMISSIONE DATI SULLA SCHERMATA TUTTO IN UNA........................................................................................ 1269 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.3.6 8.3.7 8.3.8 8.3.9 8.4 Immissione dei valori visualizzati nella schermata della compensazione montaggio pezzo ................................................................ 1263 Emissione dei valori visualizzati nella schermata della compensazione montaggio pezzo ................................................................ 1264 Formato di immissione/emissione dei valori degli errori di montaggio del pezzo ............................................................................... 1265 Immissione/emissione dei dati della gestione vita utensili ................................. 1267 8.2.12.1 8.2.12.2 8.3 Immissione dei dati personalizzabili della gestione utensili ....................... 1255 Emissione dei dati personalizzabili della gestione utensili ......................... 1256 Immissione dei nomi delle posizioni di attesa mandrino ............................ 1257 Emissione dei nomi delle posizioni di attesa mandrino .............................. 1258 Immissione della posizione del punto decimale dei dati personalizzabili ... 1259 Emissione della posizione del punto decimale dei dati personalizzabili ..... 1260 Immissione dei dati della geometria utensili ............................................... 1261 Emissione dei dati della geometria utensili ................................................. 1262 Funzione di trasferimento file FTP..................................................................... 1297 COPIA DELLO SCHERMO ..................................................................... 1303 FUNZIONE USB ...................................................................................... 1304 PROGRAMMAZIONE ....................................................................... 1305 9.1 9.2 9.3 PROGRAMMAZIONE MEDIANTE IL PANNELLO MDI ........................... 1306 INSERIMENTO AUTOMATICO DEI NUMERI DI SEQUENZA ................ 1307 PROGRAMMAZIONE IN AUTOAPPRENDIMENTO (PLAYBACK) ......... 1308 10 EDITAZIONE DEI PROGRAMMI PEZZO ......................................... 1311 10.1 10.2 ATTRIBUTO DI DISABILITAZIONE DELL'EDITAZIONE E ATTRIBUTO DI DISABILITAZIONE DELLA VISUALIZZAZIONE ............ 1312 INSERIMENTO, MODIFICA E CANCELLAZIONE PAROLE ................... 1313 10.2.1 10.2.2 10.2.3 10.2.4 10.2.5 Ricerca parole ..................................................................................................... 1314 Ritorno del cursore all'inizio del programma ..................................................... 1316 Inserimento di una parola ................................................................................... 1317 Modifica di una parola ....................................................................................... 1318 Cancellazione di una parola................................................................................ 1319 c-13 INDICE GENERALE 10.3 10.4 SOSTITUZIONE DI UNA PAROLA O DI UN INDIRIZZO ........................ 1320 CANCELLAZIONE BLOCCHI .................................................................. 1321 10.4.1 10.4.2 10.5 10.6 10.7 10.10 10.11 Cancellazione di un programma ......................................................................... 1326 Cancellazione di tutti i programmi ..................................................................... 1326 EDITAZIONE DELLE MACROISTRUZIONI ............................................ 1327 LIMITAZIONI DEL MOVIMENTO DEL CURSORE DURANTE LA MODIFICA DI UN PROGRAMMA ...................................................... 1328 FUNZIONE PASSWORD ........................................................................ 1329 EDITAZIONE PROGRAMMI PER CARATTERE ..................................... 1331 10.11.1 10.11.2 10.11.3 10.11.4 10.11.5 10.11.6 10.11.7 10.11.8 10.11.9 10.11.10 10.11.11 10.11.12 10.12 Cancellazione di un blocco................................................................................. 1321 Cancellazione di più blocchi .............................................................................. 1322 RICERCA DI UN PROGRAMMA ............................................................. 1323 RICERCA DEL NUMERO DI SEQUENZA............................................... 1325 CANCELLAZIONE DI PROGRAMMI ....................................................... 1326 10.7.1 10.7.2 10.8 10.9 B-64484IT/02 Tasti disponibili .................................................................................................. 1333 Modo di introduzione dei caratteri ..................................................................... 1334 Visualizzazione dei numeri di riga ..................................................................... 1334 Ricerca ................................................................................................................ 1334 Sostituzione ........................................................................................................ 1335 Inversione delle operazioni di editazione (Funzione "annulla")......................... 1335 Copia .................................................................................................................. 1336 Taglia .................................................................................................................. 1336 Incolla ................................................................................................................. 1336 Salvataggio ......................................................................................................... 1337 Creazione ............................................................................................................1337 Ricerca riga......................................................................................................... 1337 FUNZIONE DI COPIA DEL PROGRAMMA ............................................. 1338 10.12.1 Copia e spostamento di file fra unità .................................................................. 1339 10.13 10.14 10.15 CHIAVI E CRITTOGRAFIA DEI PROGRAMMI ....................................... 1343 EDITAZIONE SIMULTANEA DI PROGRAMMI DI PIU' CANALI ............. 1346 FUNZIONE PER L'EDITAZIONE MULTI-CANALE .................................. 1349 10.15.1 Introduzione ....................................................................................................... 1349 10.15.2 Dettagli ............................................................................................................... 1350 11 GESTIONE DEI PROGRAMMI.......................................................... 1355 11.1 SELEZIONE DELL'UNITA'....................................................................... 1356 11.1.1 11.1.2 11.1.3 11.2 11.3 11.4 11.5 11.6 11.7 11.8 11.9 11.10 11.11 11.12 Selezione di una memory card con program storage file come unità ................. 1356 Selezione di una cassetta FROM come unità ..................................................... 1360 Selezione di una memoria USB come unità ....................................................... 1361 CREAZIONE DI UNA CARTELLA ........................................................... 1363 RINOMINAZIONE DI UNA CARTELLA ................................................... 1363 CAMBIAMENTO DEGLI ATTRIBUTI DI UNA CARTELLA ...................... 1364 CANCELLAZIONE DI UNA CARTELLA .................................................. 1364 SELEZIONE DELLE CARTELLE DI DEFAULT ....................................... 1365 RINOMINAZIONE DI UN FILE................................................................. 1365 CANCELLAZIONE DI UN FILE................................................................ 1366 MODIFICA DEGLI ATTRIBUTI DI UN FILE ............................................. 1367 SELEZIONE DEL PROGRAMMA PRINCIPALE...................................... 1368 COMPATTAZIONE DI UN PROGRAMMA .............................................. 1368 FUNZIONE DI COPIA DEL PROGRAMMA ............................................. 1369 c-14 INDICE GENERALE B-64484IT/02 11.13 GESTIONE CARTELLE ........................................................................... 1371 11.13.1 Gestione programmi utilizzando le sottocartelle ................................................ 1372 11.13.2 Gestione programmi utilizzando solo le cartelle di canale ................................. 1373 11.13.3 Cartella per il richiamo di sottoprogrammi e macro ........................................... 1375 12 IMPOSTAZIONE E VISUALIZZAZIONE DEI DATI ........................... 1376 12.1 SCHERMATE VISUALIZZATE DAL TASTO FUNZIONE 12.1.1 12.1.2 12.1.3 12.1.4 12.1.5 12.1.6 12.1.7 12.1.8 12.1.9 12.1.10 12.1.11 12.1.12 12.1.13 12.1.14 12.1.15 12.1.16 12.2 SCHERMATE VISUALIZZATE DAL TASTO FUNZIONE 12.2.1 .................. 1394 Visualizzazione della posizione nel sistema di coordinate del pezzo................. 1395 Visualizzazione della posizione nel sistema di coordinate relative .................... 1396 Visualizzazione della posizione in tutti i sistemi di coordinate.......................... 1398 Preset del sistema di coordinate del pezzo ......................................................... 1400 Visualizzazione della velocità di avanzamento effettiva .................................... 1401 Visualizzazione del tempo di funzionamento e del numero di pezzi ................. 1403 Impostazione del punto di riferimento mobile ................................................... 1405 Visualizzazione del monitor operativo ............................................................... 1406 Visualizzazione dei movimenti manuali nello spazio (Coordinate della punta dell'utensile, numero di impulsi, entità dei movimenti asse) .................... 1408 Visualizzazione della posizione in tutti i sistemi di coordinate (unità di visualizzazione da 15/19-pollici) ......................................................... 1411 Preset del sistema di coordinate del pezzo (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1413 Visualizzazione della velocità di avanzamento effettiva (unità di visualizzazione da 15/19-pollici) ......................................................... 1414 Visualizzazione tempo di lavorazione e numero di pezzi (unità di visualizzazione da 15/19-pollici) ......................................................... 1416 Impostazione del punto di riferimento mobile (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1418 Visualizzazione del monitor operativo (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1419 Visualizzazione dei movimenti manuali nello spazio (Coordinate della punta dell'utensile, numero di impulsi, entità dei movimenti asse) (unità di visualizzazione da 15/19-pollici) ......................................................... 1421 .................. 1424 Visualizzazione del contenuto del programma ................................................... 1425 12.2.1.1 12.2.1.2 Visualizzazione del blocco eseguito ........................................................... 1425 Visualizzazione testo................................................................................... 1427 12.2.2 12.2.3 12.2.4 Editazione di un programma pezzo .................................................................... 1428 Schermata programma per il funzionamento in MDI ......................................... 1429 Schermata della lista programmi ........................................................................ 1430 12.2.5 12.2.6 12.2.7 12.2.8 12.2.9 Visualizzazione del blocco successivo ............................................................... 1435 Schermata di controllo del programma .............................................................. 1436 Editazione in background ................................................................................... 1437 Registrazione del tempo di lavorazione ............................................................. 1443 Schermate di guida alla specifica del piano di lavoro inclinato ......................... 1451 12.2.4.1 12.2.9.1 12.2.9.2 12.2.9.3 12.2.9.4 Suddivisione della schermata della lista programmi ................................... 1431 Schermata di selezione del tipo di specifica................................................ 1457 Schermata di impostazione dei dati del piano di lavoro inclinato ............... 1458 Descrizione della schermata di impostazione dei dati del piano di lavoro inclinato ....................................................................................... 1461 Limitazioni .................................................................................................. 1469 12.2.10 Visualizzazione del contenuto del programma (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1470 12.2.10.1 Visualizzazione del blocco eseguito ........................................................... 1470 c-15 INDICE GENERALE B-64484IT/02 12.2.11 Editazione di un programma pezzo (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1471 12.2.12 Schermata programma per il funzionamento in MDI (unità di visualizzazione da 15/19-pollici) ......................................................... 1472 12.2.13 Schermata della lista programmi (unità di visualizzazione da 15/19-pollici) .... 1473 12.2.13.1 Suddivisione della schermata della lista programmi ................................... 1474 12.2.14 Schermata del blocco successivo (unità di visualizzazione da 15/19-pollici) .... 1478 12.2.15 Schermata di controllo del programma (unità di visualizzazione da 15/19-pollici) ......................................................... 1479 12.2.16 Editazione in background (unità di visualizzazione da 15/19-pollici) ............... 1480 12.2.17 Registrazione del tempo di lavorazione (unità di visualizzazione da 15/19-pollici) ......................................................... 1486 12.2.18 Schermata di guida alla specifica del piano di lavoro inclinato (unità di visualizzazione da 15/19-pollici) ......................................................... 1494 12.2.18.1 Schermata di selezione del tipo di specifica................................................ 1500 12.2.18.2 Schermata di impostazione dei dati del piano di lavoro inclinato ............... 1501 12.2.18.3 Descrizione della schermata di impostazione dei dati del piano di lavoro inclinato ....................................................................................... 1504 12.2.18.4 Limitazioni .................................................................................................. 1512 12.3 SCHERMATE VISUALIZZATE DAL TASTO FUNZIONE 12.3.1 12.3.2 12.3.3 12.3.4 12.3.5 12.3.6 12.3.7 12.3.8 12.3.9 .................. 1513 Visualizzazione ed introduzione dei dati di impostazione ................................. 1514 Arresto al numero di sequenza specificato ......................................................... 1517 Visualizzazione e impostazione del tempo di funzionamento, del numero pezzi e dell'ora ................................................................................. 1518 Impostazione e visualizzazione degli offset dello zero pezzo ............................ 1521 Introduzione diretta dell'offset dello zero pezzo misurato.................................. 1522 Visualizzazione e impostazione delle variabili comuni delle macroistruzioni ... 1524 Visualizzazione e impostazione dei dati relativi alle macro in tempo reale ....... 1525 Visualizzazione e impostazione del pannello operatore software ...................... 1527 Impostazione e visualizzazione dei dati della gestione utensili.......................... 1530 12.3.9.1 12.3.9.2 12.3.9.3 12.3.9.4 12.3.9.5 Visualizzazione e impostazione dei dati sulla schermata magazzino utensili....................................................................................... 1530 Impostazione dei dati della gestione utensili............................................... 1531 Schermata dei dati di ciascun utensile ........................................................ 1537 Visualizzazione della vita utile complessiva degli utensili dello stesso tipo ........................................................................................... 1540 Schermata dei dati della geometria utensili................................................. 1543 12.3.10 Visualizzazione e cambiamento della lingua...................................................... 1548 12.3.11 Protezione dati ad otto livelli.............................................................................. 1550 12.3.11.1 12.3.11.2 12.3.11.3 12.3.11.4 Impostazione dei livelli operativi ................................................................ 1550 Modifica della password ............................................................................. 1551 Impostazione del livello di protezione ........................................................ 1553 Impostazione dei livelli di protezione di un programma............................. 1555 12.3.12 Selezione del livello di precisione ...................................................................... 1556 12.3.13 Selezione del livello di lavorazione .................................................................... 1558 12.3.13.1 Selezione del livello di smorzamento.......................................................... 1558 12.3.13.2 Selezione del livello di precisione............................................................... 1559 12.3.14 Selezione del livello di qualità della lavorazione ............................................... 1559 12.3.15 Visualizzazione e impostazione dei dati della gestione vita utensili .................. 1561 12.3.15.1 Gestione vita utensili (visualizzazione lista) ............................................... 1562 12.3.15.2 Gestione vita utensili (schermata di editazione gruppo) ............................. 1566 12.3.16 Visualizzazione e impostazione dei dati della compensazione montaggio pezzo................................................................................................. 1572 12.3.17 Visualizzazione e impostazione dati degli schemi di lavorazione...................... 1573 c-16 INDICE GENERALE B-64484IT/02 12.3.18 Visualizzazione e impostazione dei dati quando è abilitata la funzione correzioni utensile per fresatura e tornitura ......................................... 1575 12.3.19 Visualizzazione e introduzione dei dati di impostazione (unità di visualizzazione da 15/19-pollici) ......................................................... 1578 12.3.20 Arresto al numero di sequenza specificato (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1581 12.3.21 Visualizzazione e impostazione del tempo di funzionamento, del numero pezzi e dell'ora (unità di visualizzazione da 15/19-pollici) ............. 1582 12.3.22 Visualizzazione e impostazione degli offset dello zero pezzo (unità di visualizzazione da 15/19-pollici) ......................................................... 1585 12.3.23 Introduzione diretta dell'offset dello zero pezzo misurato (unità di visualizzazione da 15/19-pollici) ......................................................... 1586 12.3.24 Visualizzazione e impostazione delle variabili macro comuni (unità di visualizzazione da 15/19-pollici) ......................................................... 1588 12.3.25 Visualizzazione e impostazione dei dati delle macro in tempo reale (unità di visualizzazione da 15/19-pollici) ......................................................... 1589 12.3.26 Visualizzazione e impostazione del pannello software dell'operatore (unità di visualizzazione da 15/19-pollici) ......................................................... 1591 12.3.27 Visualizzazione e impostazione dei dati della gestione utensili (unità di visualizzazione da 15/19-pollici) ......................................................... 1594 12.3.27.1 Visualizzazione e impostazione dei dati sulla schermata magazzino utensili (unità di visualizzazione da 15-pollici) ....................................................... 1594 12.3.27.2 Visualizzazione e impostazione dei dati della gestione utensili (unità di visualizzazione da 15 pollici) ....................................................... 1595 12.3.27.3 Schermata dei dati di ciascun utensile (unità di visualizzazione da 15 pollici) ............................................................................................... 1601 12.3.27.4 Visualizzazione della vita utile complessiva degli utensili dello stesso tipo (unità di visualizzazione da 15 pollici)...................................... 1604 12.3.27.5 Schermata dei dati della geometria utensili (unità di visualizzazione da 15 pollici) ....................................................... 1608 12.3.28 Visualizzazione e cambiamento della lingua (unità di visualizzazione da 15/19-pollici) ......................................................... 1612 12.3.29 Protezione dati ad otto livelli (unità di visualizzazione da 15/19-pollici) .......... 1614 12.3.29.1 Impostazione dei livelli operativi (unità di visualizzazione da 15 pollici) ............................................................................................... 1614 12.3.29.2 Modifica della password (unità di visualizzazione da 15 pollici) ............... 1615 12.3.29.3 Impostazione dei livelli di protezione (unità di visualizzazione da 15 pollici) ............................................................................................... 1617 12.3.29.4 Impostazione dei livelli di protezione di un programma (unità di visualizzazione da 15 pollici) ....................................................... 1619 12.3.30 Selezione del livello di precisione (unità di visualizzazione da 15/19-pollici) ................................................................................................. 1620 12.3.31 Selezione del livello di lavorazione (unità di visualizzazione da 15/19 pollici) ................................................................................................. 1622 12.3.31.1 Selezione del livello di smorzamento.......................................................... 1622 12.3.31.2 Selezione del livello di precisione............................................................... 1623 12.3.32 Selezione del livello di qualità della lavorazione (unità di visualizzazione da 15/19 pollici).......................................................... 1623 12.3.33 Visualizzazione e impostazione dei dati della gestione vita utensili (unità di visualizzazione da 15/19-pollici) ......................................................... 1625 12.3.33.1 Gestione vita utensili (visualizzazione lista) (unità di visualizzazione da 15 pollici) ....................................................... 1626 12.3.33.2 Gestione vita utensili (schermata di editazione gruppo) (unità di visualizzazione da 15 pollici) ....................................................... 1630 c-17 INDICE GENERALE B-64484IT/02 12.3.34 Visualizzazione e impostazione dei dati della compensazione montaggio pezzo (unità di visualizzazione da 15/19 pollici) ............................................... 1636 12.3.35 Visualizzazione e impostazione dei dati degli schemi di lavorazione (unità di visualizzazione da 15/19 pollici).......................................................... 1637 12.3.36 Controllo di interferenza tridimensionale integrato............................................ 1640 12.3.36.1 12.3.36.2 12.3.36.3 12.3.36.4 12.3.36.5 12.3.36.6 12.3.36.7 12.3.36.8 12.3.36.9 12.3.36.10 12.3.36.11 12.3.36.12 12.3.36.13 12.3.36.14 12.3.36.15 12.3.36.16 12.3.36.17 Schermata del menu del monitor................................................................. 1641 Schermata del monitor utensile ................................................................... 1643 Schermata del monitor del porta utensile e degli altri oggetti ..................... 1645 Schermata del menu per l'impostazione delle figure ................................... 1646 Schermata di impostazione della figura degli oggetti ................................. 1647 Schermata di impostazione della figura del porta utensile .......................... 1651 Schermata di impostazione del parallelepipedo rettangolo ......................... 1656 Schermata di impostazione del cilindro ...................................................... 1658 Schermata di impostazione del piano .......................................................... 1659 Schermata della lista dei numeri di forma ................................................... 1660 Schermata di selezione della figura valida per il controllo di interferenza ............................................................................................. 1663 Schermata del menu per l'impostazione del movimento assi e schermata di impostazione del movimento assi ....................................... 1665 Schermate di impostazione ......................................................................... 1668 Schermata di impostazione dei nomi .......................................................... 1668 Schermata di impostazione della visualizzazione ....................................... 1670 Schermata di impostazione del sistema di coordinate per il disegno ......... 1671 Immissione/emissione dei dati del controllo di interferenza 3D ............... 1673 12.3.37 Visualizzazione e impostazione dei dati quando è abilitata la funzione correzioni utensile per fresatura e tornitura (unità di visualizzazione da 15/19 pollici)...... 1679 12.4 SCHERMATE VISUALIZZATE DAL TASTO FUNZIONE .................. 1682 12.4.1 12.4.2 12.4.3 Visualizzazione e impostazione dei parametri ................................................... 1683 Visualizzazione e impostazione dei dati della compensazione passo vite.......... 1685 Visualizzazione e impostazione dei dati della compensazione tridimensionale ................................................................................................... 1688 12.4.4 Visualizzazione e impostazione dei dati della compensazione tridimensionale dell'errore di rotazione .............................................................. 1691 12.4.5 Parametri degli assi............................................................................................. 1692 12.4.6 Messa a punto degli assi ..................................................................................... 1693 12.4.7 Impostazione del mandrino ................................................................................ 1694 12.4.8 Messa a punto del mandrino ............................................................................... 1695 12.4.9 Monitoraggio del mandrino ................................................................................ 1696 12.4.10 Impostazione dei colori ...................................................................................... 1697 12.4.11 Messa a punto dei parametri relativi alla lavorazione ........................................ 1699 12.4.11.1 Messa a punto dei parametri di lavorazione (contornatura AI) .................. 1699 12.4.11.2 Messa a punto dei parametri di lavorazione (interpolazione nanometrica raccordata) ..................................................... 1705 12.4.12 Visualizzazione del contenuto della memoria .................................................... 1707 12.4.13 Schermata di messa a punto dei parametri ......................................................... 1709 12.4.13.1 12.4.13.2 12.4.13.3 12.4.13.4 12.4.13.5 12.4.13.6 12.4.13.7 12.4.13.8 12.4.13.9 Visualizzazione del menu e selezione di una schermata di impostazione ... 1709 Schermata di messa a punto dei parametri (impostazione sistema) ........... 1712 Schermata di messa a punto dei parametri (impostazione assi) ................. 1713 Visualizzazione della schermata di impostazione degli azionamenti asse su FSSB ............................................................................................... 1714 Visualizzazione della schermata di impostazione degli azionamenti mandrino su FSSB ...................................................................................... 1715 Visualizzazione della schermata di impostazione degli assi su FSSB ....... 1716 Visualizzazione della schermata di impostazione del servosistema............ 1716 Schermata di messa a punto dei parametri (impostazione mandrini) ......... 1717 Schermata di messa a punto dei parametri (impostazioni miscellanee) ..... 1718 c-18 INDICE GENERALE B-64484IT/02 12.4.13.10 Visualizzazione della schermata di messa a punto degli assi ...................... 1718 12.4.13.11 Visualizzazione della schermata di messa a punto dei mandrini ............... 1719 12.4.13.12 Visualizzazione della schermata di messa a punto dei parametri di lavorazione .............................................................................................. 1719 12.4.14 12.4.15 12.4.16 12.4.17 12.4.18 12.4.19 12.4.20 12.4.21 12.4.22 12.4.23 12.4.24 12.4.25 12.4.26 12.4.27 Schermata della manutenzione periodica ........................................................... 1724 Schermata della configurazione del sistema ....................................................... 1731 Schermata del monitor del consumo energetico ................................................. 1734 Visualizzazione e impostazione dei parametri (unità di visualizzazione da 15/19 pollici).......................................................... 1737 Visualizzazione e impostazione dei dati della compensazione passo vite (unità di visualizzazione da 15/19 pollici).......................................................... 1739 Visualizzazione e impostazione dei dati della compensazione tridimensionale passo vite (unità di visualizzazione da 15/19 pollici) ............... 1742 Visualizzazione e impostazione dei dati della compensazione tridimensionale dell'errore di rotazione (unità di visualizzazione da 15/19 pollici) ................... 1745 Parametri degli assi (unità di visualizzazione da 15/19 pollici) ......................... 1746 Messa a punto degli assi (unità di visualizzazione da 15/19 pollici)................. 1747 Impostazione del mandrino (unità di visualizzazione da 15/19 pollici) ............ 1748 Messa a punto del mandrino (unità di visualizzazione da 15/19 pollici) .......... 1749 Monitoraggio del mandrino (unità di visualizzazione da 15/19 pollici) ........... 1750 Schermata di impostazione dei colori (unità di visualizzazione da 15/19 pollici) ................................................................................................. 1751 Messa a punto dei parametri di lavorazione (unità di visualizzazione da 15/19 pollici) ................................................................................................. 1753 12.4.27.1 Messa a punto dei parametri di lavorazione (contornatura AI) ................... 1753 12.4.27.2 Messa a punto dei parametri di lavorazione (interpolazione nanometrica raccordata) ..................................................... 1759 12.4.28 Visualizzazione del contenuto della memoria (unità di visualizzazione da 15/19 pollici).......................................................... 1761 12.4.29 Messa a punto dei parametri (unità di visualizzazione da 15/19 pollici) ........... 1763 12.4.29.1 Visualizzazione del menu e selezione di una schermata di impostazione (unità di visualizzazione da 15/19 pollici) ............................ 1763 12.4.29.2 Schermata di messa a punto dei parametri (impostazione sistema) (unità di visualizzazione da 15/19 pollici) .................................................. 1766 12.4.29.3 Schermata di messa a punto dei parametri (impostazione assi) (unità di visualizzazione da 15/19 pollici) .................................................. 1767 12.4.29.4 Visualizzazione e impostazione della schermata di impostazione degli azionamenti asse su FSSB (unità di visualizzazione da 15/19 pollici) ...... 1768 12.4.29.5 Visualizzazione e impostazione della schermata di impostazione degli azionamenti mandrino su FSSB (unità di visualizzazione da 15/19 pollici) .......................................................................................... 1769 12.4.29.6 Visualizzazione e impostazione della schermata di impostazione degli assi su FSSB (unità di visualizzazione da 15/19 pollici) .................. 1770 12.4.29.7 Visualizzazione della schermata di impostazione del servosistema (unità di visualizzazione da 15/19 pollici) .................................................. 1770 12.4.29.8 Schermata di messa a punto dei parametri (impostazione mandrini) (unità di visualizzazione da 15/19 pollici) .................................................. 1771 12.4.29.9 Schermata di messa a punto dei parametri (impostazioni miscellanee) (unità di visualizzazione da 15/19 pollici) .................................................. 1772 12.4.29.10 Visualizzazione della schermata di messa a punto del servosistema (unità di visualizzazione da 15/19 pollici) .................................................. 1772 12.4.29.11 Visualizzazione della schermata di messa a punto dei mandrini (unità di visualizzazione da 15/19 pollici) .................................................. 1773 12.4.29.12 Visualizzazione e impostazione della schermata di messa a punto dei parametri di lavorazione (unità di visualizzazione da 15/19 pollici) ... 1773 c-19 INDICE GENERALE B-64484IT/02 12.4.30 Schermata della manutenzione periodica (unità di visualizzazione da 15/19 pollici).......................................................... 1778 12.4.31 Schermata della configurazione del sistema (unità di visualizzazione da 15/19 pollici).......................................................... 1785 12.4.32 Schermata del monitor del consumo energetico (unità di visualizzazione da 15/19 pollici).......................................................... 1788 12.5 12.6 12.7 12.8 12.9 12.10 SCHERMATE VISUALIZZATE DAL TASTO FUNZIONE .................. 1790 COMMUTAZIONE FRA VISUALIZZAZIONE MULTI-CANALE E VISUALIZZAZIONE DI UN SOLO CANALE ............................................ 1790 VISUALIZZAZIONE DI CINQUE ASSI IN UNA SCHERNATA PER L'UNITA' DI VISUALIZZAZIONE DA 8.4 POLLICI ........................... 1794 VISUALIZZAZIONE INGRANDITA DEL NOME DEL CANALE ............... 1797 FUNZIONE DI CANCELLAZIONE DELLO SCHERMO E FUNZIONE DI CANCELLAZIONE AUTOMATICA DELLO SCHERMO ...................... 1800 SCHERMATA DELL'INDICATORE DI CARICO ...................................... 1801 12.10.1 Visualizzazione di 1 canale ................................................................................ 1801 12.10.2 Visualizzazione di 2 canali e visualizzazione di 3 canali ................................... 1803 12.11 VISUALIZZAZIONE DEL NUMERO/NOME DEL PROGRAMMA, DEL NUMERO DI SEQUENZA, DELLO STATO E DEI MESSAGGI DI AVVERTIMENTO PER LE OPERAZIONI DI IMPOSTAZIONE DEI DATI O DI IMMISSIONE/EMISSIONE .............................................. 1806 12.11.1 Visualizzazione del numero del programma, del nome del programma e del numero di sequenza ................................................................................... 1806 12.11.2 Visualizzazione dello stato e dei messaggi di avvertimento .............................. 1807 12.11.3 Visualizzazione del numero del programma, del nome del programma e del numero di sequenza (unità di visualizzazione da 15/19 pollici) ............... 1810 12.11.4 Visualizzazione del nome del programma.......................................................... 1811 12.11.5 Visualizzazione dello stato e dei messaggi di avvertimento (unità di visualizzazione da 15/19 pollici).......................................................... 1812 13 FUNZIONE GRAFICA ....................................................................... 1815 13.1 13.2 VISUALIZZAZIONE GRAFICA ................................................................ 1815 VISUALIZZAZIONE GRAFICA DINAMICA .............................................. 1827 13.2.1 Disegno del percorso utensile............................................................................. 1827 13.2.1.1 13.2.1.2 13.2.1.3 13.2.2 Animazione ........................................................................................................ 1840 13.2.2.1 13.2.2.2 13.2.3 13.2.4 13.2.5 13.2.6 Schermata PARAMETRI GRAFICI(GRAF DINAMICA) ........................ 1827 Schermata GRAFIC CORSA ...................................................................... 1832 Schermata GRAFICA LIN (POS UTENSILE)........................................... 1838 SCHERMATA PARAMETRI GRAFICI (GRAF DINAMICA) ............... 1840 Schermata ANIMAZIONE GRAFICA ....................................................... 1844 Impostazione da programma (G10) dei parametri per il disegno del grezzo...... 1851 Messaggi di avvertimento................................................................................... 1852 Note .................................................................................................................... 1853 Limitazioni ......................................................................................................... 1854 14 FUNZIONE TASTIERA MDI VIRTUALE ........................................... 1861 14.1 TASTIERA MDI VIRTUALE ..................................................................... 1861 14.1.1 Limitazioni ......................................................................................................... 1864 c-20 INDICE GENERALE B-64484IT/02 15 PROGRAMMAZIONE BASATA SU MODELLI................................. 1865 15.1 Programmazione basata su modelli......................................................... 1865 15.1.1 15.1.2 15.1.3 15.1.4 Dettagli ...............................................................................................................1865 Operazioni .......................................................................................................... 1869 Funzione di protezione ....................................................................................... 1874 Limitazioni ......................................................................................................... 1875 16 GESTIONE DI PROGRAMMI MULTI-CANALE ................................ 1876 16.1 GESTIONE DI PROGRAMMI MULTI-CANALE ....................................... 1876 16.1.1 Dettagli ...............................................................................................................1876 16.1.1.1 16.1.1.2 16.1.1.3 16.1.1.4 16.1.1.5 16.1.1.6 16.1.2 16.1.3 Cartella dei programmi multi-canale........................................................... 1877 Creazione dei programmi pezzo.................................................................. 1877 Editazione dei programmi multi-canale ...................................................... 1879 Selezione dei programmi pezzo .................................................................. 1879 Immissione/emissione di programmi multi-canale ..................................... 1880 Cambio del nome della cartella dei programmi multi-canale...................... 1883 Introduzione ed editazione di singoli programmi ............................................... 1884 Limitazioni ......................................................................................................... 1885 IV. MAINTENANCE 1 MANUTENZIONE ORDINARIA......................................................... 1889 1.1 1.2 1.3 AZIONI DA INTRAPRENDERE QUANDO SI VERIFICA UN PROBLEMA....................................................................................... 1890 SALVATAGGIO (BACKUP) DI VARI TIPI DI DATI .................................. 1891 METODO DI SOSTITUZIONE DELLE BATTERIE .................................. 1893 1.3.1 1.3.2 1.3.3 Sostituzione della batteria dell'unità di controllo ............................................... 1894 Batteria del PANEL i (3 VCC)........................................................................... 1897 Sostituzione della batteria degli encoder assoluti ............................................... 1898 1.3.3.1 1.3.3.2 1.3.3.3 1.3.3.4 Introduzione ................................................................................................ 1898 Sostituzione delle batterie ........................................................................... 1898 Sostituzione delle batterie in un alloggiamento separato ............................ 1899 Sostituzione delle batterie dell'azionamento assi ........................................ 1899 APPENDIX A PARAMETRI ..................................................................................... 1903 A.1 A.2 A.3 DESCRIZIONE DEI PARAMETRI ........................................................... 1903 TIPI DI DATI ............................................................................................ 2238 IMPOSTAZIONI STANDARD DEI PARAMETRI...................................... 2239 B CODICI DEI CARATTERI.................................................................. 2241 C ELENCO DELLE FUNZIONI E DEI FORMATI DI PROGRAMMAZIONE ....................................................................... 2244 D INTERVALLO DEI VALORI DEI COMANDI ..................................... 2256 c-21 INDICE GENERALE E NOMOGRAMMI ................................................................................. 2259 E.1 E.2 E.3 E.4 F G B-64484IT/02 LUNGHEZZA FILETTATURA NON CORRETTA .................................... 2259 CALCOLO SEMPLIFICATO DELLA LUNGHEZZA DELLA FILETTATURA ERRATA ......................................................................... 2261 PERCORSO DELL'UTENSILE SUGLI SPIGOLI ..................................... 2263 ERRORE NELLA DIREZIONE DEL RAGGIO DURANTE L'INTERPOLAZIONE CIRCOLARE ......................................................... 2266 STATO ALL’ACCENSIONE, CON CLEAR E CON RESET ............. 2267 TABELLA DI CORRISPONDENZA CARATTERI-CODICI ............... 2269 G.1 G.2 TABELLA DI CORRISPONDENZA CARATTERI-CODICI ....................... 2269 TABELLA DEI CODICI FANUC DEI CARATTERI DI DUE BYTE ............ 2270 H ALLARMI........................................................................................... 2276 I PC TOOL PER L'UTILIZZO DEL MEMORY CARD PROGRAM ...... 2347 I.1 PC TOOL PER L'UTILIZZO DEL MEMORY CARD PROGRAM ............. 2347 I.1.1 I.1.2 I.1.3 I.2 REGOLE PER LA SPECIFICA DEI NOMI ............................................... 2357 I.2.1 I.2.2 I.3 Caratteri utilizzabili nei file di programma ........................................................ 2358 MESSAGGI DI ERRORE E NOTE .......................................................... 2360 I.4.1 I.4.2 J Regole per la denominazione dei file di programma .......................................... 2357 Regole per la denominazione delle cartelle ........................................................ 2357 REGOLE PER L'UTILIZZO DEI CARATTERI NEI FILE DI PROGRAMMA .................................................................................... 2358 I.3.1 I.4 Note operative .................................................................................................... 2347 Funzioni del PC tool ........................................................................................... 2348 Spiegazione delle operazioni .............................................................................. 2348 Elenco dei messaggi di errore............................................................................. 2360 Note .................................................................................................................... 2360 STRUMENTO PER LA CONVERSIONE ISO/ASCII ......................... 2361 c-22 I. INTRODUZIONE INTRODUZIONE B-64484IT/02 1 1.INTRODUZIONE INTRODUZIONE Questo manuale è costituito dalle seguenti parti: Struttura del manuale I. INTRODUZIONE Descrive l'organizzazione in capitoli del manuale, i modelli per i quali esso è applicabile e i manuali correlati. Inoltre, l'introduzione fornisce alcune indicazioni per la lettura del manuale. II. PROGRAMMAZIONE Descrive le funzioni del CNC: formati di programmazione nel linguaggio CNC, caratteristiche e limiti. III. OPERAZIONI Descrive il funzionamento del sistema in manuale e in automatico, le procedure di immissione/emissione dei dati e le procedure di programmazione. IV. MANUTENZIONE Descrive le procedure per la manutenzione giornaliera e per la sostituzione delle batterie. APPENDICI Fornisce l'elenco dei parametri, gli intervalli di validità dei dati e l'elenco degli allarmi. NOTA 1 Questo manuale descrive le funzioni comuni ai sistemi per torni ed ai sistemi per centri di lavoro. Le funzioni specifiche di ciascun tipo di sistema sono descritte nei rispettivi manuali dell'operatore: B-64484-1 (Sistemi per torni) e B-64484-2 (Sistemi per centri di lavoro). 2 Alcune funzioni qui descritte possono non essere valide per alcuni prodotti. Per i dettagli, fare riferimento al manuale DESCRIZIONI (B-64482). 3 I parametri non menzionati nel testo non sono descritti in dettaglio. Tutti i parametri sono descritti nel manuale dei parametri (B-64490). I parametri si utilizzano per impostare le funzioni e le condizioni operative della macchina, oltre che per impostare preventivamente molti valori di uso frequente. Normalmente, il costruttore della macchina utensile imposta in fabbrica i parametri allo scopo di facilitare l'utilizzo della macchina. 4 Questo manuale descrive anche le funzioni opzionali. Rilevare dal manuale del costruttore della macchina utensile le opzioni incorporate nel sistema utilizzato. -3- 1.INTRODUZIONE INTRODUZIONE B-64484IT/02 Modelli applicabili Questo manuale descrive i modelli indicati nella sottostante tabella. Nel testo possono essere utilizzate le abbreviazioni indicate qui sotto. Nome del modello FANUC Serie 30i-B FANUC Serie 31i-B FANUC Serie 31i-B5 FANUC Serie 32i-B 30i –B 31i –B 31i –B5 32i –B Abbreviazione Serie 30i Serie 31i Serie 32i NOTA 1 Nelle spiegazioni possono essere utilizzate le seguenti diciture per indicare il tipo di sistema controllato da un canale: - Serie T: indica un sistema per torni - Serie M: indica un sistema per centri di lavoro 2 Se non è altrimenti indicato, ai modelli 31i-B, 31i-B5, e 32i-B viene fatto collettivamente riferimento come 30i. Tuttavia, questa convenzione non viene necessariamente osservata nei casi in cui è valida la sottostante nota 3. 3 Alcune delle funzioni descritte in questo manuale possono non essere valide per alcuni prodotti. Per i dettagli, fare riferimento al manuale DESCRIZIONI (B-64482). Simboli speciali Questo manuale usa i seguenti simboli: M - Indica una descrizione valida solo quando il tipo di sistema specificato con il parametro N. 0983 è la serie M (sistema per centri di lavoro). Nella descrizione generica di un metodo di lavorazione, il funzionamento di un sistema per centri di lavoro è identificata da frasi come "per la fresatura". T - Indica una descrizione valida solo quando il tipo di sistema specificato con il parametro N. 0983 è la serie T (sistema per torni). Nella descrizione generica di un metodo di lavorazione, il funzionamento di un sistema per torni è identificata da frasi come "per la tornitura". Indica la fine di una descrizione relativa ad un solo tipo di sistema. Quando una descrizione specifica di un sistema non è seguita da questo simbolo, si deve assumere che quella descrizione continui fino all'inizio dell'argomento successivo. In questo caso, l'argomento successivo è comune ai due tipi di sistemi. - IP Indica una combinazione di assi come X_ Y_ Z_ La parte sottolineata dopo ciascun indirizzo indica la posizione di un valore numerico corrispondente alla coordinata lungo l'asse corrispondente (utilizzato nella Parte II, PROGRAMMAZIONE). - ; Indica la fine di un blocco. Corrisponde al codice ISO LF o al codice EIA CR. -4- B-64484IT/02 INTRODUZIONE 1.INTRODUZIONE Manuali relativi ai CNC Serie 30i- MODELLO B Serie 31i- MODELLO B Serie 32i- MODELLO B La tabella che segue elenca i manuali relativi ai CNC Serie 30i-B, Serie 31i-B, Serie 32i-B. Questo manuale è indicato da un asterisco (*). Tabella 1 Manuali relativi ai CNC Titolo del manuale DESCRIZIONE MANUALE CONNESSIONI (HARDWARE) MANUALE CONNESSIONI (FUNZIONALITA') MANUALE DELL'OPERATORE (Comune ai sistemi per torni e per centri di lavoro) MANUALE DELL'OPERATORE (sistemi per torni) MANUALE DELL'OPERATORE (sistemi per centri di lavoro) MANUALE DI MANUTENZIONE MANUALE DEI PARAMETRI Programmazione MANUALE DI PROGRAMMAZIONE Macro Executor MANUALE DI PROGRAMMAZIONE Macro Compiler MANUALE DI PROGRAMMAZIONE C Language Executor PMC MANUALE DI PROGRAMMAZIONE PMC Rete MANUALE DI CONNESSIONE Scheda PROFIBUS-DP MANUALE DELL'OPERATORE Fast Ethernet / Fast Data Server MANUALE DI CONNESSIONE Scheda DeviceNet MANUALE DI CONNESSIONE Scheda FL-net MANUALE DI CONNESSIONE Scheda CC-Link Funzione di guida operativa MANUALE DELL'OPERATORE MANUAL GUIDE i (Comune alla Serie T ed alla Serie M) MANUALE DELL'OPERATORE MANUAL GUIDE i (Sistemi per centri di lavoro) MANUALE DELL'OPERATORE MANUAL GUIDE i (Guida alla predisposizione) Doppio controllo di sicurezza MANUALE DI CONNESSIONE Doppio controllo di sicurezza -5- Numero di specifica B-64482 B-64483 B-64483-1 B-64484 B-64484-1 B-64484-2 B-64485 B-64490 B-63943-2 B-66263 B-63943-3 B-64513 B-63993 B-64014 B-64043 B-64163 B-64463 B-63874 B-63874-2 B-63874-1 B-64483-2 * 1.INTRODUZIONE INTRODUZIONE B-64484IT/02 Manuali relativi ai SERVOMOTORI Serie αi/βi La sottostante tabella elenca i manuali relativi ai SERVOMOTORI Serie αi/βi. Tabella 2 Manuali relativi ai MOTORI Titolo del manuale MOTORI ASSE FANUC in CA Serie αi DESCRIZIONE MOTORI MANDRINO FANUC in CA Serie αi DESCRIZIONE MOTORI ASSE FANUC in CA Serie βi DESCRIZIONE MOTORI MANDRINO FANUC in CA Serie βi DESCRIZIONE AZIONAMENTI ASSE FANUC Serie αi DESCRIZIONE AZIONAMENTI ASSE FANUC Serie βi DESCRIZIONE MOTORI ASSE FANUC Serie αis MOTORI ASSE FANUC Serie αi MOTORI MANDRINO FANUC in CA Serie αi AZIONAMENTI ASSE FANUC Serie αi MANUALE DI MANUTENZIONE MOTORI ASSE FANUC Serie βis MOTORI MANDRINO FANUC in CA Serie βi AZIONAMENTI ASSE FANUC Serie βi MANUALE DI MANUTENZIONE MOTORI ASSE FANUC in CA Serie αi MOTORI ASSE FANUC in CA Serie βi MOTORI LINEARI FANUC Serie LiS MOTORI ASSE SINCRONI BUILT-IN FANUC Serie DiS MANUALE DEI PARAMETRI MOTORI MANDRINO FANUC in CA Serie αi/βi, MOTORI MANDRINO BUILT-IN Serie Bi MANUALE DEI PARAMETRI Numero di specifica B-65262 B-65272 B-65302 B-65312 B-65282 B-65322 B-65285 B-65325 B-65270 B-65280 Ai CNC descritti in questo manuale è possibile connettere i motori asse ed i motori mandrino indicati in questa tabella. I motori Serie αi SV, αi SP, αi PS, e βi SV, però, possono essere connessi solo alle versioni compatibili con 30 i-B. Nella Serie βi SVSP, non possono essere connessi. Questo manuale considera che siano utilizzati i MOTORI ASSE FANUC Serie αi. Per le informazioni relative ai motori asse e mandrino effettivamente utilizzati, riferirsi ai manuali corrispondenti. -6- B-64484IT/02 1.1 INTRODUZIONE 1.INTRODUZIONE AVVERTENZE RELATIVE ALLA LETTURA DEL MANUALE AVVERTENZA 1 Il funzionamento di una macchina utensile a controllo numerico non dipende soltanto dal CNC, ma dalla combinazione della macchina, del suo armadio elettrico, del servo sistema, del CNC, del pannello operatore, ecc. Descrivere il funzionamento e la programmazione di tutte le possibili combinazioni è praticamente impossibile. Questo manuale si occupa genericamente del funzionamento e della programmazione dal punto di vista del CNC. Per i dettagli relativi ad una specifica macchina utensile, fare riferimento al manuale preparato dal costruttore, che deve avere la precedenza su questo manuale. 2 Per facilitare l'accesso del lettore alle informazioni che gli sono necessarie, sul margine sinistro delle pagine sono riportati i titoli degli argomenti trattati. Utilizzando questi titoli, il lettore può trovare più facilmente l'argomento che gli interessa in una particolare circostanza. 3 In questo manuale, abbiamo cercato di descrivere tutte le varie funzioni di questi sistemi. Però, non possiamo descrivere tutto ciò che non deve essere fatto, né tutto ciò che non può essere fatto, dato l'elevatissimo numero di possibilità. Pertanto, le funzioni e le combinazioni di operazioni che non sono date specificamente come possibili in questo manuale devono essere considerate "impossibili" e non devono essere tentate. 1.2 AVVERTENZA RELATIVA A VARI TIPI DI DATI AVVERTENZA I programmi pezzo, i parametri, le correzioni, ecc. sono registrati nella memoria non volatile del CNC. Normalmente questi dati non vengono persi quando il sistema viene spento. E' però possibile che essi vengano cancellati in seguito a errori operativi o di funzionamento. Si raccomanda di eseguirne una copia di sicurezza, per poterli ripristinare rapidamente in caso di necessità. -7- II. PROGRAMMAZIONE 1 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 INTRODUZIONE Il Capitolo 1, "INTRODUZIONE", è costituito dalla seguente sezione: 1.1 1.2 1.3 1.4 1.5 MOVIMENTO DELL'UTENSILE LUNGO IL PROFILO DEL PEZZO - INTERPOLAZIONE .... 11 AVANZAMENTO - FUNZIONE AVANZAMENTO ...................................................................... 13 DISEGNO DEL PEZZO E MOVIMENTO DELL'UTENSILE ......................................................... 14 VELOCITA' DI TAGLIO - FUNZIONE VELOCITA' DEL MANDRINO ...................................... 23 SELEZIONE DELL'UTENSILE DA USARE NELLE VARIE LAVORAZIONI FUNZIONE UTENSILE ..................................................................................................................... 24 1.6 COMANDI PER LE FUNZIONI DELLA MACCHINA - FUNZIONI AUSILIARIE ..................... 25 1.7 CONFIGURAZIONE DEL PROGRAMMA...................................................................................... 26 1.8 AMPIEZZA DEL MOVIMENTO DELL'UTENSILE - ZONA DI SICUREZZA ............................ 28 1.1 MOVIMENTO DELL'UTENSILE LUNGO IL PROFILO DEL PEZZO - INTERPOLAZIONE L'utensile si muove sui tratti in linea retta e sugli archi che costituiscono il profilo del pezzo (Vedi il capitolo “FUNZIONI DI INTERPOLAZIONE”). Spiegazioni Il movimento dell'utensile in linea retta o lungo un arco si dice interpolazione. - Movimento rettilineo dell'utensile • Fresatura Utensile Programma G01X_Y_ ; X_ ; Pezzo • Tornitura X Utensile Pezzo Programma G01Z_ ; G01X_Z_ ; Z Fig. 1.1 (a) Movimento rettilineo dell'utensile - 11 - 1.INTRODUZIONE - • PROGRAMMAZIONE B-64484IT/02 Movimento dell'utensile lungo un arco Fresatura Programma G03 X_ Y_ R_ ; Utensile Pezzo • Tornitura X Programma G02 X_ Z_ R_ ; oppure G03 X_ Z_ R_ ; Pezzo Z Fig. 1.1 (b) Movimento dell'utensile lungo un arco Il termine interpolazione si riferisce ad un'operazione in cui l'utensile si muove lungo una linea retta o lungo un arco, come descritto sopra. I simboli dei comandi programmati, G01, G02, ..., si dicono funzioni preparatorie e specificano il tipo di interpolazione eseguito nell'unità di controllo. (a) Movimento rettilineo (b) Movimento lungo un arco G01 Y_ ; X_ Y_ ; G03X_ Y_ R_ ; CNC Asse X Interpolazione Movimento dell'utensile Asse Y a) Movimento rettilineo b) Movimento lungo un arco Fig. 1.1 (c) Funzione di interpolazione NOTA Benché in certe macchine possa essere il pezzo a muoversi, questo manuale assume che sia sempre l'utensile a muoversi rispetto al pezzo. - 12 - PROGRAMMAZIONE B-64484IT/02 1.2 1.INTRODUZIONE AVANZAMENTO - FUNZIONE AVANZAMENTO Il movimento dell'utensile ad una specifica velocità per la lavorazione del pezzo si dice avanzamento. • Fresatura (avanzamento al minuto) Utensile mm/min F Pezzo Tavola • Tornitura (avanzamento al giro) F Avanzamento al minuto (mm/giro) Fig. 1.2 (a) Funzione avanzamento Ad esempio, per fare avanzare l'utensile alla velocità di 150 mm/min (avanzamento al minuto) o di 150 mm/giro (avanzamento al giro), programmare: F150.0 La funzione che decide la velocità di avanzamento è la funzione avanzamento (Vedi il capitolo, “FUNZIONI DI AVANZAMENTO”). - 13 - 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 1.3 DISEGNO DEL PEZZO E MOVIMENTO DELL'UTENSILE 1.3.1 Punto di riferimento (una posizione fissa sulla macchina) Su una macchina a controllo numerico esiste una posizione fissa. Normalmente, il cambio dell'utensile e la programmazione dello zero assoluto, descritti più avanti, vengono eseguiti in questa posizione. Questa posizione si dice punto di riferimento. • Fresatura Punto di riferimento Utensile Pezzo Tavola • Tornitura Torretta Autocentrante Punto di riferimento Fig. 1.3.1 (a) Punto di riferimento Spiegazioni L'utensile può essere portato al punto di riferimento in due modi: 1. Ritorno manuale al punto di riferimento (Vedi la sezione, “RITORNO MANUALE AL PUNTO DI RIFERIMENTO”) Il ritorno al punto di riferimento viene comandato da un pulsante. 2. Ritorno automatico al punto di riferimento (Vedi la sezione, “RITORNO AL PUNTO DI RIFERIMENTO”) In genere, il ritorno manuale al punto di riferimento viene eseguito subito dopo l'accensione della macchina. Successivamente, per portare l'utensile sul punto di riferimento allo scopo di cambiare l'utensile, viene utilizzata la funzione automatica. - 14 - 1.3.2 • 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 Sistema di coordinate del disegno del pezzo e sistema di coordinate specificato dal CNC - Sistema di coordinate Fresatura Z Z Programma Y Y X Sistema di coordinate X CNC Disegno del pezzo Utensile Comando Utensile Z Y Pezzo X Macchina utensile • Tornitura X X Programma Z Z Sistema di coordinate Disegno del pezzo CNC Comando X Pezzo Z Macchina utensile Fig. 1.3.2 (a) Sistemi di coordinate - 15 - 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 Spiegazioni - Sistema di coordinate Esistono due tipi di sistemi di coordinate: (Vedi il capitolo, “SISTEMA DI COORDINATE”) 1. Sistema di coordinate del disegno del pezzo Il sistema di coordinate è scritto sul disegno del pezzo. Il programma viene scritto usando queste coordinate. 2. Sistema di coordinate specificato dal CNC Il sistema di coordinate viene generato sulla macchina utensile. Questo si ottiene programmando la distanza tra la posizione attuale dell'utensile e l'origine del sistema di coordinate da impostare. Y 230 300 Zero programma Posizione attuale dell'utensile Distanza dall'origine del sistema di coordinate da impostare X X Fig. 1.3.2 (b) Sistema di coordinate specificato dal CNC Il capitolo "SISTEMA DI COORDINATE" descrive vari metodi per l'impostazione da programma del sistema di coordinate specificato dal CNC. Quando il pezzo è montato sulla tavola, i due sistemi di coordinate giacciono come segue: - 16 - • 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 Fresatura Sistema di coordinate del disegno stabilito sul pezzo Sistema di coordinate specificato dal CNC stabilito sulla tavola Y Y Pezzo X X Tavola • Tornitura Sistema di coordinate specificato dal CNC stabilito sull'autocentrante Sistema di coordinate del disegno stabilito sul pezzo X X Z Pezzo Z Autocentrante Fig. 1.3.2 (c) Sistema di coordinate specificato dal CNC e sistema di coordinate del disegno L'utensile si muove nel sistema di coordinate specificato dal CNC in accordo con i comandi del programma generati facendo riferimento al sistema di coordinate del disegno del pezzo, e lavora quest'ultimo secondo la forma voluta dal disegno. Pertanto, per lavorare correttamente il pezzo secondo il disegno, i due sistemi di coordinate devono essere fatti coincidere. - 17 - 1.INTRODUZIONE - PROGRAMMAZIONE B-64484IT/02 Metodi per l'impostazione dei due sistemi di coordinate nella stessa posizione M Questo si ottiene tenendo conto della forma e del numero dei pezzi da lavorare, con i metodi descritti qui sotto. 1. Usando un piano e un punto standard del pezzo. Y Distanza fissa Punto standard del pezzo Distanza fissa Zero programma X Portare il centro dell'utensile sul punto standard e impostare il sistema di coordinate specificato dal CNC in questa posizione. 2. Montando il pezzo direttamente contro la maschera. Zero programma Maschera Portare il centro dell'utensile sul punto di riferimento e impostare il sistema di coordinate specificato dal CNC in questa posizione. (La maschera deve essere montata in una posizione predeterminata rispetto al punto di riferimento). 3. Montando un pallet portapezzo contro la maschera. Pallet Maschera Pezzo Comportarsi come nel precedente punto 2. - 18 - 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 T Su un tornio, le coordinate vengono, di solito, fissate come segue. 1 Quando lo zero è sul mandrino - Coordinate e quote sul disegno X Pezzo 60 40 Z 40 150 - Sistema di coordinate sul tornio specificato dal CNC X Autocentrante Pezzo Z Zero programma Quando il sistema di coordinate del disegno del pezzo e il sistema di coordinate specificato dal CNC coincidono, l'origine del programma può essere stabilita sul mandrino. 2. Quando lo zero è sulla facciata del pezzo. X - Coordinate e quote sul disegno 60 Pezzo 30 Z 30 80 100 - Sistema di coordinate sul tornio specificato dal CNC Autocentrante Pezzo X Z Zero programma Quando il sistema di coordinate del disegno del pezzo e il sistema di coordinate specificato dal CNC coincidono, l'origine del programma può essere stabilita sulla facciata del pezzo. - 19 - 1.INTRODUZIONE 1.3.3 PROGRAMMAZIONE B-64484IT/02 Programmazione dei movimenti dell'utensile (programmazione assoluta e incrementale) Spiegazioni I valori delle coordinate per i comandi di movimento dell'utensile possono essere specificati in modo assoluto o incrementale (Vedi la sezione, “PROGRAMMAZIONE ASSOLUTA E INCREMENTALE”). - Comando assoluto L'utensile si porta sul punto che giace alla distanza specificata rispetto all'origine del sistema di coordinate, cioè, nella posizione indicata dal valore delle coordinate. • Fresatura Z Utensile A Y X B(10.0,30.0,5.0) Comando di movimento dal punto A al punto B G90 X10.0 Y30.0 Z5.0 ; Coordinate del punto B • Tornitura Utensile A X Pezzo B Z φ30 70 110 Comando di movimento dal punto A al punto B X30.0Z70.0; Coordinate del punto B - 20 - - 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 Comando incrementale Specificare la distanza tra la nuova posizione dell'utensile e la posizione corrente. • Fresatura Z Utensile A X=40.0 Y Z=-10.0 X B Y-30.0 Comando di movimento dal punto A al punto B G91 X40.0 Y-30.0 Z-10.0 ; Distanza e direzione del movimento lungo ciascun asse • Tornitura Utensile A X -30.0 (valore del diametro) B Pezzo φ60 Z φ30 -40.0 Comando di movimento dal punto A al punto B U-30.0 W-40.0 Distanza e direzione del movimento lungo ciascun asse - 21 - 1.INTRODUZIONE - PROGRAMMAZIONE B-64484IT/02 Programmazione diametrale/programmazione radiale La quota X può essere data come diametro o come raggio. La scelta si esegue mediante il bit 3 (DIA) del parametro N. 1006. 1. Programmazione diametrale Nella programmazione diametrale, specificare come quota dell'asse X il diametro indicato sul disegno. X B A Pezzo Z φ30 φ40 60 80 Coordinate dei punti A e B 2. A(30.0, 80.0), B(40.0, 60.0) Programmazione radiale Nella programmazione radiale, specificare come quota dell'asse X la distanza dal centro del pezzo (il raggio). X B A 20 Pezzo 15 Z 60 80 Coordinate dei punti A e B A(15.0, 80.0), B(20.0, 60.0) - 22 - 1.4 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 VELOCITA' DI TAGLIO - FUNZIONE VELOCITA' DEL MANDRINO Spiegazioni La velocità dell'utensile rispetto al pezzo durante la lavorazione si dice velocità di taglio. Nel CNC, la velocità di taglio può essere espressa con la velocità del mandrino in giri/min. • Fresatura Utensile Diametro utensile φD mm Velocità mandrino min-1 V: Velocità di taglio m/min Pezzo <Supponiamo di dover lavorare un pezzo con una velocità di taglio di 80m/min usando un utensile con un diametro di 100mm.> La velocità del mandrino è approssimativamente 250 giri/min, che si ottiene da N=1000v/πD. Pertanto, nel programma pezzo deve essere specificato: S250; I comandi relativi alla velocità del mandrino costituiscono la funzione velocità mandrino (Vedi il capitolo, “FUNZIONE VELOCITA' MANDRINO (FUNZIONE S)”). • Tornitura Utensile Velocità di taglio v m/min Pezzo φD Velocità mandrino -1 N min <Supponiamo di dover lavorare con una velocità di taglio di 300 m/min un pezzo il cui diametro è 200 mm.> La velocità del mandrino, ottenuta da N=1000v/πD, è approssimativamente di 478 giri/min. Pertanto, nel programma pezzo deve essere specificato: S478 ; I comandi relativi alla velocità del mandrino costituiscono la funzione velocità mandrino (Vedi il capitolo, “FUNZIONE VELOCITA' MANDRINO (FUNZIONE S)”). La velocità di taglio v (m/min) può anche essere specificata direttamente con il valore della velocità. Anche nella lavorazione di conicità, quando il diametro del pezzo cambia costantemente, il CNC regola la velocità del mandrino in modo che la velocità di taglio rimanga costante. Questa funzione è il controllo della velocità di taglio costante (Vedi la sezione, “CONTROLLO DELLA VELOCITA' DI TAGLIO COSTANTE (G96, G97)”). - 23 - 1.INTRODUZIONE 1.5 PROGRAMMAZIONE B-64484IT/02 SELEZIONE DELL'UTENSILE DA USARE NELLE VARIE LAVORAZIONI - FUNZIONE UTENSILE Per l'esecuzione di forature, maschiature, alesature, fresature, sgrossature, semi-finiture, finiture, filettature, gole, ecc. è necessario selezionare l'utensile appropriato. Questo si ottiene assegnando a ciascun utensile un numero e specificando tale numero nel programma. Questo si ottiene assegnando a ciascun utensile un numero e specificando tale numero nel programma. Esempi M Numero utensile 01 Magazzino ATC 02 Fig. 1.5 (a) Utensili usati per varie lavorazioni <Supponiamo di aver assegnato ad una punta il numero 01> Se l'utensile viene caricato nella posizione 01 del magazzino utensili, l'utensile può essere selezionato specificando T01. Questa è la funzione utensile (Vedi il capitolo, “FUNZIONE UTENSILE (FUNZIONE T)”). T Numero utensile 01 06 05 02 03 Torretta 04 Fig. 1.5 (b) Utensili usati per varie lavorazioni <Supponiamo di aver assegnato ad uno sgrossatore il numero 01> Se l'utensile viene caricato nella posizione 01 della torretta, l'utensile può essere selezionato specificando T0101. Questa è la funzione utensile (Vedi il capitolo, “FUNZIONE UTENSILE (FUNZIONE T)”). - 24 - 1.6 1.INTRODUZIONE PROGRAMMAZIONE B-64484IT/02 COMANDI PER LE FUNZIONI DELLA MACCHINA FUNZIONI AUSILIARIE Durante la lavorazione, è necessario far ruotare il mandrino, aprire e chiudere l'autocentrante, attivare il refrigerante, ecc. A questo scopo, devono essere controllate le operazioni di avvio e arresto del motore del mandrino, di apertura e chiusura dell'autocentrante e della valvola del refrigerante, ecc. • Fresatura Utensile Rotazione mandrino Attivazione/disattivazione refrigerante Pezzo • Tornitura Attivazione/disattivazione refrigerante Apertura/chiusura autocentrante Pezzo Rotazione mandrino Fig. 1.6 (a) Funzioni ausiliarie La funzione che specifica le operazioni di attivazione/disattivazione dei dispositivi della macchina si dice funzione ausiliaria. In generale, questa funzione si specifica con un codice M (Vedi il capitolo, “FUNZIONI AUSILIARIE”). Ad esempio, quando viene specificato M03, inizia la rotazione in senso orario del mandrino, alla velocità programmata. - 25 - 1.INTRODUZIONE 1.7 PROGRAMMAZIONE B-64484IT/02 CONFIGURAZIONE DEL PROGRAMMA L'insieme dei comandi forniti al CNC per il controllo della macchina si dice programma. Specificando i comandi opportuni, si ottiene il movimento dell'utensile lungo linee rette o archi, si attiva e si disattiva il motore del mandrino, ecc. I comandi devono essere specificati nella sequenza in cui devono aver luogo le varie operazioni. Blocco Blocco Blocco Programma Sequenza delle operazioni Blocco : : : : Blocco Fig. 1.7 (a) Configurazione del programma Il gruppo di comandi di ciascun passo si dice blocco. Il programma consiste in un gruppo di blocchi per l'esecuzione di una serie di operazioni. Il numero che permette di distinguere ciascun blocco è il numero di sequenza; il numero che permette di distinguere ciascun programma è il numero programma (Vedi il capitolo, “CONFIGURAZIONE DEL PROGRAMMA”). Spiegazioni Il blocco e il programma hanno la seguente configurazione. - Blocco Un blocco Nxxxxx Numero di sequenza Gxx preparatorie Funzioni Xxxx.x Yxxx.x Mxx Sxx Txx ; Parole dimensionali Funzioni Funzioni Funzioni ausiliarie mandrino utensile Fine blocco Fig. 1.7 (b) Configurazione del blocco I blocchi iniziano con un numero di sequenza che specifica la sequenza delle operazioni e terminano con un codice di fine blocco. Questo manuale indica il codice di fine blocco con il carattere ; (LF in codice ISO e CR in codice EIA). Il significato delle parole dimensionali dipende dalle funzioni preparatorie. In questo manuale l'insieme delle parole dimensionali di un blocco viene rappresentato con IP_. - 26 - PROGRAMMAZIONE B-64484IT/02 - 1.INTRODUZIONE Programma ; Oxxxxx ; Numero programma Blocco Blocco Blocco : : : : : : M30 ; Fine programma Fig. 1.7 (c) Configurazione del programma Normalmente, all'inizio del programma, dopo il codice di fine blocco (;), è specificato il numero del programma, e alla fine del programma si trova un codice di fine del programma (M02, M30). - Programma principale e sottoprogrammi Quando la stessa lavorazione compare in vari punti di un programma, può venire predisposto un programma specifico per tale lavorazione, che si dice sottoprogramma. Il programma originale, per contro, si dice programma principale. Quando, durante l'esecuzione del programma principale, viene incontrato un comando di esecuzione di un sottoprogramma, vengono eseguiti i comandi contenuti nel sottoprogramma. Terminata l'esecuzione del sottoprogramma, il controllo ritorna al programma principale. Programma principale : : M98P1001 Sottoprogramma #1 O1001 : : : M99 M98P1002 : : Sottoprogramma #2 O1002 M98P1001 : : : M99 Fig. 1.7 (d) Esecuzione di un sottoprogramma - 27 - 1.INTRODUZIONE 1.8 PROGRAMMAZIONE B-64484IT/02 AMPIEZZA DEL MOVIMENTO DELL'UTENSILE - ZONA DI SICUREZZA Alle estremità di ciascun asse della macchina sono installati dei micro di fine corsa che impediscono all'utensile di uscire dalla zona prestabilita. La zona in cui l'utensile può muoversi è la sua corsa. Zero macchina Motore Micro di fine corsa Zona di sicurezza Oltre alla corsa stabilita per ciascun asse tramite gli interruttori di fine corsa, l'operatore può definire un'area nella quale l'utensile non può entrare. Questa funzione è detta controllo della zona di sicurezza (Vedi la sezione, “CONTROLLO DELLE ZONE DI SICUREZZA”). Motore Micro di fine corsa Zero macchina Specificare queste distanze. Gli utensili non possono entrare in quest'area. L'area è specificata da dati registrati in memoria o inclusi nel programma pezzo. - 28 - 2 2.ASSI CONTROLLATI PROGRAMMAZIONE B-64484IT/02 ASSI CONTROLLATI Il Capitolo 2, "ASSI CONTROLLATI", è costituito dalle seguenti sezioni: 2.1 2.2 2.3 2.4 2.1 NUMERO DI ASSI CONTROLLATI................................................................................................ 29 NOMENCLATURA DEGLI ASSI..................................................................................................... 30 SISTEMA DI INCREMENTI ............................................................................................................. 31 CORSA MASSIMA ............................................................................................................................ 32 NUMERO DI ASSI CONTROLLATI Spiegazioni Il numero degli assi controllati dal CNC dipende dal tipo di sistema di controllo e dal modello, come è indicato nella sottostante tabella. Serie 30i-B Assi controllati base Sistema per torni Sistema per centri di lavoro Estensione assi controllati (per canale) (compresi gli assi Cs e PMC) Estensione assi controllati (totale) (compresi gli assi Cs e PMC) Assi controllati simultaneamente base (per canale) Estensione assi controllati simultaneamente (totale / per canale) Assi controllati dal PMC (non disponibile su asse Cs) Designazione di assi mandrino (per canale) Designazione di assi mandrino (totale) Controllo contornatura Cs (per canale) Controllo contornatura Cs (totale) Serie 31i-B5 Serie 31i-B Serie 32i-B 2 assi 2 assi 2 assi 2 assi 3 assi 3 assi 3 assi 3 assi Max. 24 assi Max. 12 assi Max. 12 assi Max. 5 assi Max. 32 assi Max. 20 assi Max. 20 assi Max. 9 assi 2 assi 2 assi 2 assi 2 assi Max. 24 assi Max. 5 assi Max. 4 assi Max. 4 assi Max. 32 assi Max. 16 assi Max. 16 assi Max. 8 assi Max. 4 assi Max. 8 assi Max. 4 assi Max. 8 assi Max. 4 assi Max. 6 assi Max. 4 assi Max. 6 assi Max. 4 assi Max. 6 assi Max. 4 assi Max. 6 assi Max. 2 assi Max. 2 assi Max. 2 assi Max. 2 assi NOTA 1 Il numero massimo degli assi controllati utilizzabili dipende dalla configurazione delle opzioni. Vedere i dettagli sul manuale del costruttore della macchina utensile. 2 Il numero degli assi controllabili simultaneamente in manuale (avanzamento manuale, ritorno manuale al punto di riferimento, o movimento rapido in manuale) è 1 o 3, (1 quando il bit 0 (JAX) parametro N. 1002 è 0, 3 quando lo stesso bit è 1). - 29 - 2.ASSI CONTROLLATI 2.2 PROGRAMMAZIONE B-64484IT/02 NOMENCLATURA DEGLI ASSI Spiegazioni A ciascun asse di avanzamento di una macchina utensile viene assegnato un nome. A questi nomi ci si riferisce frequentemente come indirizzi asse. I nomi degli assi dipendono dalla macchina utensile. La nomenclatura degli assi è definita da standard, quali gli standard ISO. Nel caso di macchine complesse, un solo carattere è insufficiente per i nomi degli assi. Perciò, è possibile utilizzare fino a tre caratteri. Un asse può essere chiamato "X", "X1", o "XA1". I tre caratteri si dicono primo, secondo e terzo carattere del nome asse. Esempio) X A 1 3° carattere di nome asse 2° carattere di nome asse 1° carattere di nome asse NOTA 1 I nomi asse sono predeterminati in base alla macchina. Consultare il manuale fornito dal costruttore della macchina utensile. 2 Poiché gran parte delle macchine utilizza un solo carattere per ciascun indirizzo, nelle descrizioni di questo manuale vengono usati indirizzi a un carattere - 30 - PROGRAMMAZIONE B-64484IT/02 2.3 2.ASSI CONTROLLATI SISTEMA DI INCREMENTI Spiegazioni Il sistema di incrementi è costituito dall'incremento minimo di immissione e dall'incremento minimo di comando. L'incremento minimo di immissione è la più piccola unità di movimento che può essere programmata. L'incremento minimo di comando è l'unità minima del movimento dell'utensile. Ambedue gli incrementi si esprimono in millimetri, in pollici o in gradi. Sono disponibili cinque diversi sistemi di incremento, come indicato nella Tabella 2.3 (a). Il sistema di incrementi può essere impostato per ciascun asse, mediante i bit da 0 a 3 (ISA, ISC, ISD, or ISE) del parametro N. 1013. IS-C, IS-D, e IS-E sono opzioni. Sistema di incrementi IS-A IS-B IS-C IS-D IS-E Tabella 2.3 (a) Sistemi di incremento Incremento minimo di immissione Incremento minimo di comando 0.01 0.001 0.01 0.001 0.0001 0.001 0.0001 0.00001 0.0001 0.00001 0.000001 0.00001 0.000001 0.0000001 0.000001 mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi 0.01 0.001 0.01 0.001 0.0001 0.001 0.0001 0.00001 0.0001 0.00001 0.000001 0.00001 0.000001 0.0000001 0.000001 mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi L'incremento minimo di comando può essere metrico o in pollici a seconda della macchina utensile. Specificare il sistema metrico o il sistema in pollici con il bit 0 (INM) del parametro N. 0100. La selezione fra programmazione in millimetri e programmazione in pollici si esegue tramite codici G (G20 o G21) o tramite un dato di impostazione. Non è consentito l'uso combinato dei sistemi metrico e in pollici. Esistono funzioni che non possono essere usate tra assi con differenti unità di misura (interpolazione circolare, compensazione raggio utensile, ecc.). Per il sistema di incrementi adottato, consultare il manuale del costruttore della macchina utensile. NOTA 1 Le unità (mm o pollici) contenute nella tabella indicano un valore diametrale nel caso della programmazione diametrale (quando il bit 3 (DIA) del parametro N. 1006 è 1) o un valore radiale nel caso della programmazione radiale. 2 Alcuni sistemi di incrementi possono non essere disponibili a seconda del modello. Per i dettagli fare riferimento al manuale "DESCRIZIONE" (B-64482). - 31 - 2.ASSI CONTROLLATI 2.4 PROGRAMMAZIONE B-64484IT/02 CORSA MASSIMA Spiegazioni La tabella sottostante mostra la corsa massima controllata da questo CNC: Corsa massima = Incremento minimo di comando × 999999999 (99999999 per IS-A) Non possono essere specificati comandi che eccedano la corsa massima. Sistema di incrementi IS-A IS-B IS-C IS-D IS-E Tabella 2.4 (a) Corsa massima Incremento minimo di immissione 0.01 0.001 0.01 0.001 0.0001 0.001 0.0001 0.00001 0.0001 0.00001 0.000001 0.00001 0.000001 0.0000001 0.000001 mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi Corsa massima ±999999.99 ±99999.999 ±999999.99 ±999999.999 ±99999.9999 ±999999.999 ±99999.9999 ±9999.99999 ±99999.9999 ±9999.99999 ±999.999999 ±9999.99999 ±999.999999 ±99.9999999 ±999.999999 mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi mm pollici gradi NOTA 1 L'effettiva corsa massima dipende dalla macchina utensile. 2 Le unità (mm o pollici) contenute nella tabella indicano un valore diametrale nel caso della programmazione diametrale (quando il bit 3 (DIA) del parametro N. 1006 è 1) o un valore radiale nel caso della programmazione radiale. 3 Alcuni sistemi di incrementi possono non essere disponibili a seconda del modello. Per i dettagli fare riferimento al manuale "DESCRIZIONE" (B-64482). - 32 - PROGRAMMAZIONE B-64484IT/02 3 3.FUNZIONI PREPARATORIE (CODICI G) FUNZIONI PREPARATORIE (CODICI G) Il significato del comando di un blocco è determinato dal codice G specificato per quel blocco. I codici G si dividono nei seguenti due tipi. Tipo Codici G autocancellanti Codici G modali Significato Il codice G è attivo per il solo blocco in cui è stato programmato. Il codice G è attivo finché non viene programmato un altro codice G dello stesso gruppo. (Esempio) G01 e G00 sono codici G modali del gruppo 01. G01 X_ ; Z _; G01 è attivo in questo intervallo. X_ ; G00 Z_ ; G00 è attivo in questo intervallo. X_ ; G01 X_ ; : T Esistono tre sistemi di codici G per i torni: A, B, e C (Tabella 3.1(a)). Il sistema di codici G si seleziona con i bit 6 (GSB) e 7 (GSC) del parametro N. 3401. L'uso dei sistemi B o C di codici G richiede l'opzione corrispondente. In questo manuale, la programmazione viene normalmente descritta utilizzando il sistema A di codici G, salvo quando la funzione descritta richiede l'uso dei sistemi B o C, nel quale caso vengono utilizzati i codici G dei sistemi B o C. Spiegazioni 1. 2. 3. 4. 5. 6. 7. Se all'accensione o in caso di reset il CNC entra nello stato di clear (bit 6 (CLR) del parametro N. 3402), i codici G modali cambiano come segue. (1) Sono attivi i codici G contrassegnati da nella tabella. (2) Per G20 e G21, è attivo il codice che lo era prima dello spegnimento o del reset. (3) Il bit 7 (G23) del parametro N. 3402 permette di specificare se all'accensione è attivo G22 o G23. Il reset del CNC nello stato di clear, non influenza la selezione di G22 o G23. (4) E' possibile selezionare G00 o G01 mediante il bit 0 (G01) del parametro N. 3402. (5) E' possibile selezionare G90 o G91 mediante il parametro bit 3 (G91) del parametro N. 3402. Per un tornio, quando si usano i sistemi B o C, il codice attivo fra G90 e G91 è determinato dallo stato del bit 3 (G91) del parametro N. 3402. (6) Per un centro di lavoro, è possibile selezionare G17, G18, o G19 mediante i bit 1 (G18) e 2 (G19) del parametro N. 3401 I codici G del gruppo 00, eccetto G10 e G11, sono autocancellanti. Se viene specificato un codice G non incluso nell'elenco dei codici G, o un codice G opzionale in assenza dell'opzione relativa, si verifica l'allarme PS0010. Un blocco può contenere più codici G appartenenti a gruppi diversi. Se nel blocco sono specificati più codici G dello stesso gruppo, è valido quello specificato per ultimo. Se in un ciclo fisso di foratura viene specificato un codice G del gruppo 01, il ciclo fisso viene cancellato, come per G80. I codici G del gruppo 01 non sono influenzati dalla programmazione di un ciclo fisso di foratura. I codici G sono elencati per gruppo. Il gruppo cui appartiene G60 dipende dall'impostazione del bit 0 (MDL) del parametro N. 5431. (Quando il bit MDL è 0, è selezionato il gruppo 00. Quando il bit MDL è 1, è selezionato il gruppo 01.) - 33 - 3. FUNZIONI PREPARATORIE (CODICI G) PROGRAMMAZIONE B-64484IT/02 T 8. Con il sistema A di codici G la programmazione assoluta/incrementale non si specifica con i codici G (G90/G91), ma con gli indirizzi asse (X/U, Z/W, C/H, Y/V). Per i cicli fissi di foratura è disponibile solo il ritorno al livello iniziale. - 34 - PROGRAMMAZIONE B-64484IT/02 3.1 3.FUNZIONI PREPARATORIE (CODICI G) ELENCO DEI CODICI G PER CENTRI DI LAVORO M Tabella 3.1 (a) Elenco dei codici G Codice G Gruppo Funzione G00 Posizionamento (rapido) G01 Interpolazione lineare (avanzamento in lavoro) G02 Interpolazione circolare o elicoidale in senso orario G03 G02.1, G03.1 01 Interpolazione circolare o elicoidale in senso antiorario Filettatura circolare B in senso orario/antiorario G02.2, G03.2 Interpolazione involuta; in senso orario/antiorario G02.3, G03.3 Interpolazione esponenziale; in senso orario/antiorario G02.4, G03.4 Conversione tridimensionale del sistema di coordinate in senso orario/antiorario G04 Sosta G05 Contornatura AI (comando compatibile con la contornatura ad alta precisione) 00 G05.1 Contornatura AI / Interpolazione nanometrica raccordata/ Interpolazione raccordata G05.4 G06.2 Ciclo di lavorazione ad alta velocità, esecuzione ad alta velocità del programma in formato binario HRV3,4 on/off 01 G07 Interpolazione NURBS Interpolazione con asse virtuale G07.1 (G107) Interpolazione cilindrica G08 Contornatura AI (comando compatibile con il modo controllo avanzato con prelettura) G09 G10 00 Arresto esatto Introduzione dati da programma G10.6 Ritiro e riposizionamento dell'utensile G10.9 Commutazione diametro/raggio da programma G11 Cancella il modo introduzione dati da programma G12.1 Modo interpolazione in coordinate polari G13.1 G12.4 G13.4 G15 G16 21 00 17 Cancella il modo interpolazione in coordinate polari Lavorazione gole con movimento circolare continuo (in senso orario) Lavorazione gole con movimento circolare continuo (in senso antiorario) Cancella i comandi in coordinate polari Comandi in coordinate polari G17 Selezione piano XpYp Xp: Asse X o suo asse parallelo G17.1 Funzione di conversione del piano Yp: Asse Y o suo asse parallelo Selezione piano ZpXp Zp: Asse Z o suo asse parallelo G18 02 G19 G20 (G70) G21 (G71) G22 G23 G25 G26 Selezione piano YpZp 06 04 19 G27 Programmazione in pollici Programmazione in millimetri Attiva il controllo delle zone di sicurezza Disattiva il controllo delle zone di sicurezza Rilevazione fluttuazioni velocità mandrino off Rilevazione fluttuazioni velocità mandrino on Controllo del ritorno al punto di riferimento G28 Ritorno al punto di riferimento G28.2 Ritorno al punto di riferimento con disabilitazione del controllo di in-posizione G29 Movimento dal punto di riferimento G30 Ritorno al secondo, terzo o quarto punto di riferimento G30.1 G30.2 00 Ritorno al punto di riferimento mobile Ritorno al secondo, terzo o quarto punto di riferimento con disabilitazione del controllo di inposizione G31 Funzione di salto della lavorazione G31.8 Salto della lavorazione per asse EGB - 35 - 3. FUNZIONI PREPARATORIE (CODICI G) PROGRAMMAZIONE Tabella 3.1 (a) Elenco dei codici G Codice G Gruppo G33 G34 G35 Funzione Filettatura 01 Filettatura a passo variabile Filettatura circolare in senso orario G36 Filettatura circolare in senso antiorario G37 Misura automatica lunghezza utensile G38 00 G39 Compensazione raggio utensile : mantenimento del vettore Compensazione raggio utensile : interpolazione circolare sugli spigoli Compensazione raggio utensile : cancellazione G40 Compensazione tridimensionale dell'utensile: cancellazione Compensazione raggio utensile : sinistra G41 Compensazione tridimensionale dell'utensile: sinistra G41.2 Compensazione tridimensionale dell'utensile: sinistra (tipo 1) G41.3 Compensazione tridimensionale dell'utensile: compensazione del bordo di taglio Compensazione tridimensionale dell'utensile: sinistra (tipo 1) G41.4 G41.5 (comando compatibile con FS16i) Compensazione tridimensionale dell'utensile: sinistra (tipo 1) 07 G41.6 Compensazione tridimensionale dell'utensile: sinistra (tipo 2) Compensazione raggio utensile : destra G42 Compensazione tridimensionale dell'utensile: destra G42.2 Compensazione tridimensionale dell'utensile: destra (tipo 1) Compensazione tridimensionale dell'utensile: destra (tipo 1) G42.4 (comando compatibile con FS16i) Compensazione tridimensionale dell'utensile: destra (tipo 1) G42.5 (comando compatibile con FS16i) G42.6 Compensazione tridimensionale dell'utensile: destra (tipo 2) G40.1 G41.1 (comando compatibile con FS16i) Controllo della direzione normale cancellato 18 Controllo della direzione normale attivo : sinistra G42.1 Controllo della direzione normale attivo : destra G43 Compensazione lunghezza utensile, direzione + G44 Compensazione lunghezza utensile, direzione - G43.1 G43.3 08 G43.4 Compensazione lunghezza utensile nella direzione dell'asse utensile Compensazione lunghezza utensile su testa rotante con nutazione Controllo centro utensile (tipo 1) G43.5 Controllo centro utensile (tipo 2) G45 Correzione utensile : incremento G46 G47 00 G48 G49 (G49.1) G44.9 G49.9 G50 G51 G50.1 G51.1 G50.2 G51.2 Correzione utensile : decremento Correzione utensile : doppio incremento Correzione utensile : doppio decremento 08 27 11 22 31 Cancella la compensazione lunghezza utensile Compensazione unità mandrino Cancella la compensazione unità mandrino Cancella la scala Attiva la scala Cancella l'immagine speculare programmabile Attiva l'immagine speculare programmabile Cancella la tornitura poligonale Tornitura poligonale - 36 - B-64484IT/02 PROGRAMMAZIONE B-64484IT/02 3.FUNZIONI PREPARATORIE (CODICI G) Tabella 3.1 (a) Elenco dei codici G Codice G Gruppo Funzione G50.4 Cancella il controllo sincrono G50.5 Cancella il controllo composto G50.6 G51.4 00 G51.5 Cancella il controllo sovrapposto Inizia il controllo sincrono Inizia il controllo composto G51.6 Inizia il controllo sovrapposto G52 Impostazione del sistema di coordinate locali G53 G53.1 00 Selezione del sistema di coordinate della macchina Controllo direzione asse utensile G53.6 Controllo direzione asse utensile con mantenimento del centro utensile sul pezzo G54 (G54.1) Selezione del sistema di coordinate del pezzo 1 G55 Selezione del sistema di coordinate del pezzo 2 G56 G57 14 G58 Selezione del sistema di coordinate del pezzo 6 G54.4 33 G60 00 G61 G63 15 Posizionamento unidirezionale Regolazione automatica velocità sugli spigoli Modo maschiatura Modo taglio 00 G66 G66.1 Compensazione montaggio pezzo Modo arresto esatto G64 G65 Selezione del sistema di coordinate del pezzo 4 Selezione del sistema di coordinate del pezzo 5 G59 G62 Selezione del sistema di coordinate del pezzo 3 Richiamo macro Richiamo macro modale A 12 Richiamo macro modale B G67 Cancella richiamo macro modale A/B G68 Rotazione del sistema di coordinate o modo conversione tridimensionale delle coordinate ON G69 G68.2 Rotazione del sistema di coordinate o modo conversione tridimensionale delle coordinate OFF 16 G68.3 Programmazione dei comandi nel piano di lavoro inclinato Programmazione dei comandi nel piano di lavoro inclinato nella direzione dell'asse utensile G68.4 Programmazione dei comandi nel piano di lavoro inclinato (comando multiplo incrementale) G70.7 Ciclo di finitura G71.7 Ciclo di sgrossatura esterna G72.7 Ciclo di sgrossatura frontale G73.7 Ripetizione del profilo G74.7 00 G75.7 Ciclo di foratura frontale con ritiro intermedio dell'utensile Ciclo di foratura esterna/interna con ritiro intermedio dell'utensile G76.7 Ciclo di filettatura in più passate G72.1 Copia con rotazione G72.2 Copia con traslazione G73 Ciclo di foratura a tratti G74 09 Ciclo di maschiatura sinistrorsa G75 01 Ciclo di rettifica a tuffo G76 09 Barenatura fine G77 G78 Ciclo di rettifica a tuffo con misuratore 01 G79 G80 G80.4 G81.4 Ciclo di rettifica piana con avanzamento costante Ciclo di rettifica piana con avanzamento intermittente 09 34 Cancella il ciclo fisso Accoppiamento elettronico: fine sincronizzazione Accoppiamento elettronico: fine sincronizzazione Accoppiamento elettronico: inizio sincronizzazione - 37 - 3. FUNZIONI PREPARATORIE (CODICI G) PROGRAMMAZIONE Tabella 3.1 (a) Elenco dei codici G Codice G G80.5 G81.5 Gruppo 24 G81 09 G81.1 00 G82 Funzione Accoppiamento elettronico per 2 coppie: fine sincronizzazione Accoppiamento elettronico per 2 coppie: inizio sincronizzazione Ciclo di foratura / centratura Accoppiamento elettronico: inizio sincronizzazione Funzione di oscillazione Ciclo di foratura / svasatura G83 Ciclo di foratura a tratti G84 Ciclo di maschiatura G84.2 Ciclo di maschiatura rigida (formato FS15) G84.3 G85 09 Ciclo di maschiatura rigida sinistrorsa (Formato FS15) Ciclo di barenatura G86 Ciclo di barenatura G87 Ciclo di barenatura posteriore G88 Ciclo di barenatura G89 Ciclo di barenatura G90 G91 03 G91.1 G92 00 Avanzamento con l'inverso del tempo 05 G95 G97 G96.3 Avanzamento al minuto Avanzamento al giro 13 G96.1 G96.2 Impostazione del sistema di coordinate del pezzo o limitazione della velocità del mandrino Preset del sistema di coordinate del pezzo G93 G96 Programmazione incrementale Controllo del valore incrementale massimo specificabile G92.1 G94 Programmazione assoluta Controllo della velocità di taglio costante Cancella la velocità di taglio costante Indexaggio mandrino (con attesa del completamento) 00 Indexaggio mandrino (senza attesa del completamento) Controllo completamento indexaggio mandrino G96.4 Modo controllo velocità SV ON G98 Ciclo fisso : ritorno al livello iniziale G99 G107 G112 G113 G160 G161 10 00 21 20 Ciclo fisso : ritorno al livello del punto R Interpolazione cilindrica Modo interpolazione in coordinate polari Cancella il modo interpolazione in coordinate polari Rettifica lungo il profilo del pezzo OFF Rettifica lungo il profilo del pezzo ON - 38 - B-64484IT/02 PROGRAMMAZIONE B-64484IT/02 3.2 3.FUNZIONI PREPARATORIE (CODICI G) ELENCO DEI CODICI G PER TORNI T Tabella 3.2 (b) Elenco dei codici G Sistema di codici G Gruppo Funzione A B C G00 G00 G00 Posizionamento (rapido) G01 G01 G01 Interpolazione lineare (avanzamento in lavoro) G02 G02 G02 Interpolazione circolare o elicoidale in senso orario G03 G03 G03 G02.2 G02.2 G02.2 G02.3 G02.3 G02.3 G02.4 G02.4 G02.4 Conversione tridimensionale del sistema di coordinate in senso orario G03.2 G03.2 G03.2 Interpolazione involuta in senso antiorario G03.3 G03.3 G03.3 Interpolazione esponenziale in senso antiorario G03.4 G03.4 G03.4 Conversione tridimensionale del sistema di coordinate in senso antiorario G04 G04 G04 G05 G05 G05 Interpolazione circolare o elicoidale in senso antiorario 01 Interpolazione involuta in senso orario Interpolazione esponenziale in senso orario Sosta Controllo contornatura AI (comando compatibile con il controllo contornatura ad alta precisione), ciclo di lavorazione ad alta velocità con 00 G05.1 G05.1 G05.1 G05.4 G05.4 G05.4 G06.2 G06.2 G06.2 G07 G07 G07 G07.1 G07.1 G07.1 (G107) (G107) (G107) G08 G08 G08 G09 G09 G09 programma in codice binario Contornatura AI / Interpolazione nanometrica raccordata/ Interpolazione raccordata HRV3,4 on/off 01 Interpolazione NURBS Interpolazione con asse virtuale Interpolazione cilindrica Controllo avanzato con prelettura dei blocchi 00 Arresto esatto G10 G10 G10 G10.6 G10.6 G10.6 Introduzione dati da programma Ritiro e riposizionamento dell'utensile G10.9 G10.9 G10.9 Commutazione diametro/raggio da programma G11 G11 G11 G12.1 G12.1 G12.1 (G112) (G112) (G112) G13.1 G13.1 G13.1 (G113) (G113) (G113) G17 G17 G17 G17.1 G17.1 G17.1 G18 G18 G18 G19 G19 G19 Selezione piano YpZp G20 G20 G70 Programmazione in pollici G21 G21 G71 G22 G22 G22 G23 G23 G23 G25 G25 G25 G26 G26 G26 Cancella il modo introduzione dati da programma Modo interpolazione in coordinate polari 21 Cancella il modo interpolazione in coordinate polari Selezione piano XpYp 16 06 09 08 Funzione di conversione del piano Selezione piano ZpXp Programmazione in millimetri Attiva il controllo delle zone di sicurezza Disattiva il controllo delle zone di sicurezza Rilevazione fluttuazioni velocità mandrino off Rilevazione fluttuazioni velocità mandrino on - 39 - 3. FUNZIONI PREPARATORIE (CODICI G) PROGRAMMAZIONE B-64484IT/02 Tabella 3.2 (b) Elenco dei codici G Sistema di codici G Gruppo Funzione A B C G27 G27 G27 Controllo del ritorno al punto di riferimento G28 G28 G28 Ritorno al punto di riferimento G28.2 G28.2 G28.2 G29 G29 G29 Movimento dal punto di riferimento G30 G30 G30 Ritorno al secondo, terzo o quarto punto di riferimento G30.1 G30.1 G30.1 G30.2 G30.2 Ritorno al punto di riferimento con disabilitazione del controllo di in00 posizione Ritorno al punto di riferimento mobile Ritorno al secondo, terzo o quarto punto di riferimento con disabilitazione G30.2 00 del controllo di in-posizione G31 G31 G31 G31.8 G31.8 G31.8 Funzione di salto della lavorazione G32 G33 G33 Filettatura G34 G34 G34 Filettatura a passo variabile G35 G35 G35 Salto della lavorazione per asse EGB Filettatura circolare in senso orario Filettatura circolare antioraria (Quando il bit 3 (G36) del parametro N. G36 G36 G36 3405 è 1) o Correzione utensile automatica (asse X) (Quando il bit 3 (G36) del parametro N. 3405 è 0) Correzione utensile automatica (asse Z) (Quando il bit 3 (G36) del G37 G37 G37 G37.1 G37.1 G37.1 G37.2 G37.2 G37.2 G38 G38 G38 Compensazione raggio utensile : con mantenimento del vettore G39 G39 G39 Compensazione raggio utensile : interpolazione circolare sugli spigoli G40 G40 G40 Compensazione raggio utensile : cancellazione G41 G41 G41 Compensazione raggio utensile : sinistra G42 G42 G42 Compensazione raggio utensile : destra G41.2 G41.2 G41.2 G41.3 G41.3 G41.3 G41.4 G41.4 G41.4 G41.5 G41.5 G41.5 G41.6 G41.6 G41.6 G42.2 G42.2 G42.2 G42.4 G42.4 G42.4 G42.5 G42.5 G42.5 01 parametro N. 3405 è 0) Correzione utensile automatica (asse X) (Quando il bit 3 (G36) del parametro N. 3405 è 1) Correzione utensile automatica (asse Z) (Quando il bit 3 (G36) del parametro N. 3405 è 1) Compensazione tridimensionale dell'utensile: sinistra (tipo 1) Compensazione tridimensionale dell'utensile: (compensazione del bordo di taglio) Compensazione tridimensionale dell'utensile: sinistra (tipo 1) (comando compatibile con FS16i) 07 Compensazione tridimensionale dell'utensile: sinistra (tipo 1) (comando compatibile con FS16i) Compensazione tridimensionale dell'utensile: sinistra (tipo 2) Compensazione tridimensionale dell'utensile: destra (tipo 1) Compensazione tridimensionale dell'utensile: destra (tipo 1) (comando compatibile con FS16i) Compensazione tridimensionale dell'utensile: destra (tipo 1) (comando compatibile con FS16i) G42.6 G42.6 G42.6 Compensazione tridimensionale dell'utensile: destra (tipo 2) G40.1 G40.1 G40.1 Controllo della direzione normale cancellato G41.1 G41.1 G41.1 G42.1 G42.1 G42.1 19 Controllo della direzione normale a sinistra Controllo della direzione normale a destra - 40 - PROGRAMMAZIONE B-64484IT/02 3.FUNZIONI PREPARATORIE (CODICI G) Tabella 3.2 (b) Elenco dei codici G Sistema di codici G A B C G43 G43 G43 G44 G44 G44 G43.1 G43.1 G43.1 G43.4 G43.4 G43.4 G43.5 G43.5 G43.5 G43.7 G43.7 G43.7 (G44.7) (G44.7) (G44.7) G49 G49 G49 (G49.1) (G49.1) (G49.1) G50 G92 G92 G50.3 G92.1 G92.1 - G50 G50 - G51 G51 G50.1 G50.1 G50.1 G51.1 G51.1 G51.1 G50.2 G50.2 G50.2 (G250) (G250) (G250) Gruppo Funzione Compensazione lunghezza utensile + (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) Compensazione lunghezza utensile (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) Compensazione lunghezza utensile nella direzione dell'asse utensile (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) 23 Controllo del centro utensile (Tipo 1) (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) Controllo del centro utensile (Tipo 2) (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) Correzione utensile (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) Cancella la compensazione lunghezza utensile (il bit 3 (TCT) del parametro N. 5040 deve essere "1".) Impostazione del sistema di coordinate o limitazione della velocità del 00 mandrino Preset del sistema di coordinate del pezzo 18 22 Cancella la scala Attiva la scala Cancella l'immagine speculare programmabile Attiva l'immagine speculare programmabile Cancella la tornitura poligonale 20 G51.2 G51.2 G51.2 (G251) (G251) (G251) G50.4 G50.4 G50.4 G50.5 G50.5 G50.5 Cancella il controllo composto G50.6 G50.6 G50.6 Cancella il controllo sovrapposto G51.4 G51.4 G51.4 Inizia il controllo sincrono G51.5 G51.5 G51.5 G51.6 G51.6 G51.6 G52 G52 G52 Impostazione del sistema di coordinate locali G53 G53 G53 Selezione del sistema di coordinate della macchina G53.1 G53.1 G53.1 G53.6 G53.6 G53.6 G54 G54 G54 (G54.1) (G54.1) (G54.1) Tornitura poligonale Cancella il controllo sincrono Inizia il controllo composto 00 Inizia il controllo sovrapposto Controllo direzione asse utensile Controllo direzione asse utensile con mantenimento del centro utensile sul pezzo Selezione del sistema di coordinate del pezzo 1 G55 G55 G55 G56 G56 G56 G57 G57 G57 Selezione del sistema di coordinate del pezzo 4 G58 G58 G58 Selezione del sistema di coordinate del pezzo 5 G59 G59 G59 G54.4 G54.4 G54.4 26 00 G60 G60 G60 G61 G61 G61 G62 G62 G62 G63 G63 G63 G64 G64 G64 G65 G65 G65 Selezione del sistema di coordinate del pezzo 2 14 Selezione del sistema di coordinate del pezzo 3 Selezione del sistema di coordinate del pezzo 6 Compensazione montaggio pezzo Posizionamento unidirezionale Modo arresto esatto 15 Regolazione automatica velocità sugli spigoli Modo maschiatura Modo taglio 00 Richiamo macro - 41 - 3. FUNZIONI PREPARATORIE (CODICI G) PROGRAMMAZIONE B-64484IT/02 Tabella 3.2 (b) Elenco dei codici G Sistema di codici G A B C G66 G66 G66 G66.1 G66.1 G66.1 G67 G67 G67 G68 G68 G68 G68.1 G68.1 G68.1 G68.2 G68.2 G68.2 G68.3 G68.3 G68.3 G68.4 G68.4 G68.4 Gruppo Funzione Richiamo macro modale A 12 Richiamo macro modale B 04 Immagine speculare per doppia torretta o modo lavorazione bilanciata Cancella richiamo macro modale A/B Rotazione del sistema di coordinate / conversione tridimensionale del sistema di coordinate ON Programmazione dei comandi nel piano di lavoro inclinato 17 Programmazione dei comandi nel piano di lavoro inclinato nella direzione dell'asse utensile Programmazione dei comandi nel piano di lavoro inclinato (comando multiplo incrementale) Cancella la rotazione del sistema di coordinate o la conversione G69 G69 G69 04 G69.1 G69.1 G69.1 17 G70 G70 G72 Ciclo di finitura G71 G71 G73 Asportazione di materiale in tornitura G72 G72 G74 Asportazione di materiale in sfacciatura G73 G73 G75 G74 G74 G76 G75 G75 G77 G76 G76 G78 G72.1 G72.1 G72.1 G72.2 G72.2 G72.2 G71 G71 G72 G72 G72 G73 G73 G73 G74 G74 G74 G75 G80 G80 G80 G80.4 G80.4 G80.4 G81.4 G81.4 G81.4 G80.5 G80.5 G80.5 G81.5 G81.5 G81.5 G81 G81 G81 G82 G82 G82 G83 G83 G83 G83.1 G83.1 G83.1 tridimensionale del sistema di coordinate Rotazione del sistema di coordinate / conversione tridimensionale del sistema di coordinate OFF Ripetizione del profilo 00 Foratura frontale a tratti Ciclo di foratura sul diametro esterno/interno Ciclo di filettatura in più passate Copia con rotazione Copia con traslazione Ciclo di pendolazione senza misuratore 01 Ciclo di pendolazione con misuratore Ciclo multituffo senza misuratore Ciclo multituffo con misuratore 10 28 27 Cancella il ciclo fisso di foratura Accoppiamento elettronico: fine sincronizzazione Accoppiamento elettronico: fine sincronizzazione Accoppiamento elettronico: inizio sincronizzazione Accoppiamento elettronico per 2 coppie: fine sincronizzazione Accoppiamento elettronico per 2 coppie: inizio sincronizzazione Centratura (formato FS15-T) Accoppiamento elettronico: inizio sincronizzazione Ciclo di allargamento del foro (formato FS15-T) Ciclo di foratura frontale Ciclo di foratura a tratti ad alta velocità (formato FS15-T) G83.5 G83.5 G83.5 Ciclo di foratura a tratti ad alta velocità G83.6 G83.6 G83.6 Ciclo di foratura a tratti G84 G84 G84 G84.2 G84.2 G84.2 10 Ciclo di maschiatura frontale Ciclo di maschiatura rigida (formato FS15-T) G85 G85 G85 Ciclo di barenatura frontale G87 G87 G87 Ciclo di foratura laterale G87.5 G87.5 G87.5 G87.6 G87.6 G87.6 G88 G88 G88 Ciclo di maschiatura laterale G89 G89 G89 Ciclo di barenatura laterale Ciclo di foratura a tratti ad alta velocità Ciclo di foratura a tratti - 42 - PROGRAMMAZIONE B-64484IT/02 3.FUNZIONI PREPARATORIE (CODICI G) Tabella 3.2 (b) Elenco dei codici G Sistema di codici G A B C G90 G77 G20 G92 G78 G21 G94 G79 G24 G91.1 G91.1 G91.1 G96 G96 G96 G97 G97 G97 G96.1 G96.1 G96.1 G96.2 G96.2 G96.2 G96.3 G96.3 G96.3 G96.4 G96.4 G96.4 G93 G93 G93 G98 G94 G94 G99 G95 G95 - G90 G90 - G91 G91 - G98 G98 - G99 G99 Gruppo Funzione Ciclo di tornitura sul diametro esterno/interno 01 Ciclo di filettatura 00 Controllo del valore incrementale massimo specificabile Ciclo di sfacciatura 02 Controllo della velocità di taglio costante Cancella la velocità di taglio costante Indexaggio mandrino (con attesa del completamento) 00 Indexaggio mandrino (senza attesa del completamento) Controllo completamento indexaggio mandrino Modo controllo velocità SV ON Avanzamento con l'inverso del tempo 05 Avanzamento al minuto Avanzamento al giro 03 11 Programmazione assoluta Programmazione incrementale Ciclo fisso : ritorno al livello iniziale Ciclo fisso : ritorno al livello del punto R - 43 - 4.FUNZIONI DI INTERPOLAZIONE 4 PROGRAMMAZIONE B-64484IT/02 FUNZIONI DI INTERPOLAZIONE Le funzioni di interpolazione determinano il tipo di movimento degli assi (in altre parole, il movimento dell'utensile rispetto al pezzo o alla tavola). Il Capitolo 4, "FUNZIONI DI INTERPOLAZIONE", è costituito dalle seguenti sezioni: 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17 4.18 4.19 4.20 4.21 4.22 4.23 4.24 POSIZIONAMENTO (G00) ............................................................................................................... 45 POSIZIONAMENTO UNIDIREZIONALE (G60) ............................................................................ 46 INTERPOLAZIONE LINEARE (G01) .............................................................................................. 48 INTERPOLAZIONE CIRCOLARE (G02, G03)................................................................................ 51 INTERPOLAZIONE ELICOIDALE (G02, G03) .............................................................................. 55 INTERPOLAZIONE ELICOIDALE B (G02, G03) ........................................................................... 56 INTERPOLAZIONE A SPIRALE, INTERPOLAZIONE CONICA (G02, G03) .............................. 57 INTERPOLAZIONE IN COORDINATE POLARI (G12.1, G13.1) .................................................. 64 INTERPOLAZIONE CILINDRICA (G07.1) ..................................................................................... 72 CONTROLLO DEL PUNTO DI TAGLIO NELL'INTERPOLAZIONE CILINDRICA (G07.1) ..... 77 INTERPOLAZIONE ESPONENZIALE (G02.3, G03.3) ................................................................... 88 INTERPOLAZIONE RACCORDATA (G05.1)................................................................................. 94 INTERPOLAZIONE NANOMETRICA RACCORDATA ................................................................ 99 INTERPOLAZIONE NURBS (G06.2) ............................................................................................. 108 INTERPOLAZIONE CON ASSE VIRTUALE (G07) ..................................................................... 116 FILETTATURA A PASSO VARIABILE (G34) ............................................................................. 118 FILETTATURA CIRCOLARE (G35, G36) ..................................................................................... 119 FUNZIONE DI SALTO (G31) ......................................................................................................... 123 SALTO MULTIPASSO (G31) ......................................................................................................... 125 SEGNALE DI SALTO AD ALTA VELOCITA' (G31) ................................................................... 126 MIGLIORAMENTO DELLA MEMORIZZAZIONE DELLA POSIZIONE DI SALTO ............... 126 FUNZIONE DI SALTO CONTINUO AD ALTA VELOCITA' ...................................................... 127 SALTO AL LIMITE DI COPPIA..................................................................................................... 128 INTERPOLAZIONE CIRCOLARE NELLO SPAZIO .................................................................... 131 - 44 - PROGRAMMAZIONE B-64484IT/02 4.1 4.FUNZIONI DI INTERPOLAZIONE POSIZIONAMENTO (G00) Il comando G00 muove l'utensile in rapido, nel sistema di coordinate del pezzo, portandolo sulla posizione specificata con un comando assoluto o con un comando incrementale. In programmazione assoluta si specificano le coordinate del punto finale. In programmazione incrementale si specifica la distanza percorsa dall'utensile. Formato G00 IP_ ; IP_ : In programmazione assoluta, le coordinate del punto finale; in programmazione incrementale, la distanza percorsa dall'utensile. Spiegazioni Il tipo di percorso dell'utensile può essere scelto tra i seguenti, tramite il bit 1 (LRP) del parametro N. 1401. • Posizionamento senza interpolazione lineare Il posizionamento viene effettuato per ogni asse separatamente. Il percorso dell'utensile generalmente non è una linea retta. • Posizionamento con interpolazione lineare Il posizionamento viene effettuato ad una velocità che permette il tempo minimo di posizionamento senza superare la velocità in rapido di ciascun asse. Posizionamento con interpolazione lineare Punto finale Punto iniziale Posizionamento senza interpolazione lineare La velocità in rapido viene impostata indipendentemente per ciascun asse dal costruttore della macchina (parametro N. 1420). Nel posizionamento G00, l'utensile accelera fino alla velocità predeterminata all'inizio del blocco e decelera alla fine del blocco. Poi l'esecuzione procede con il blocco successivo, dopo aver confermato la condizione di in-posizione. "In-posizione" significa che la posizione programmata è stata effettivamente raggiunta, entro una certa tolleranza specificata dal costruttore della macchina (parametro N. 1826). Limitazioni La velocità in rapido non può essere specificata programmando un codice F. Anche se è specificato il posizionamento con interpolazione lineare, nei seguenti casi il posizionamento avviene senza interpolazione lineare. Di conseguenza, fare attenzione che l'utensile non urti il pezzo. • G28 che specifica il posizionamento fra il punto di riferimento e il punto intermedio • G53 - 45 - 4.FUNZIONI DI INTERPOLAZIONE 4.2 PROGRAMMAZIONE B-64484IT/02 POSIZIONAMENTO UNIDIREZIONALE (G60) Per ottenere un posizionamento accurato, senza gioco, è disponibile il posizionamento finale unidirezionale. Sovracorsa Punto iniziale Punto iniziale Arresto temporaneo Punto finale Formato G60 IP_ ; IP_ : In programmazione assoluta, le coordinate del punto finale; in programmazione incrementale, la distanza percorsa dall'utensile. Spiegazioni Sovracorsa e direzione di posizionamento si impostano con il parametro N. 5440. Quando la direzione comandata coincide con la direzione impostata dal parametro, l'utensile si arresta temporaneamente prima di raggiungere il punto finale. G60, che è un codice G autocancellante, può essere usato come codice G modale del gruppo 01 mettendo a 1 il bit 0 (MDL) del parametro N. 5431, eliminando così la necessità di specificarlo per tutti i blocchi. Le altre specifiche rimangono le stesse. Quando nel modo posizionamento unidirezionale viene specificato un codice G autocancellante, quest'ultimo codice G ha l'effetto di un codice G del gruppo 01. (Esempio) Uso di G60 come codice G autocancellante. G90; G60 X0Y0; Posizionamento unidirezionale G60 X100; G60 Y100; G04 X10; G00 X0Y0; Uso di G60 come codice G modale. Inizio modo posizionamento unidirezionale G90G60; X0Y0; Posizionamento unidirezionale X100; Y100; G04X10; Cancellazione modo posizionamento unidirezionale G00X0 Y0; - Modalità di esecuzione del posizionamento • Nel caso del posizionamento senza interpolazione lineare (bit 1 (LRP) del parametro N. 1401 = 0) Come si vede qui sotto (Fig. 4.2 (a)), il posizionamento unidirezionale viene eseguito indipendentemente lungo ciascun asse. - 46 - PROGRAMMAZIONE B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE X Entità della sovracorsa lungo l'asse Z Entità della sovracorsa lungo l'asse X Punto finale programmato Z Punto iniziale programmato Fig. 4.2 (a) • Nel caso del posizionamento con interpolazione lineare (bit 1 (LRP) del parametro N. 1401 = 1) Il posizionamento ha luogo con interpolazione lineare fino all'arresto dell'utensile prima o dopo il punto finale specificato. Quindi l'utensile si muove indipendentemente lungo ciascun asse viene posizionato fino a raggiungere il punto finale. X Entità della sovracorsa lungo l'asse Z Entità della sovracorsa lungo l'asse X Punto finale programmato Z Punto iniziale programmato Fig. 4.2 (b) Limitazioni • • • • • • • Il posizionamento unidirezionale non viene eseguito lungo un asse per il quale non è stata specificata la sovracorsa con il parametro N. 5440. Il posizionamento unidirezionale non viene eseguito lungo un asse per il quale l'entità del movimento è uguale a 0. Alla direzione impostata mediante il parametro corrispondente non viene applicata l'immagine speculare. Anche se è attivo il modo immagine speculare, la direzione del posizionamento unidirezionale non cambia. Se si utilizza il posizionamento con interpolazione lineare e lo stato dell'immagine speculare per un blocco di posizionamento unidirezionale letto in anticipo è diverso dallo stato dell'immagine speculare all'inizio dell'esecuzione del blocco si verifica un allarme. Quando si programma la commutazione dell'immagine speculare, disabilitare la lettura anticipata dei blocchi specificando un codice M che impedisce la bufferizzazione ed eseguire la commutazione quando non ci sono blocchi letti anticipatamente. Il posizionamento unidirezionale non può essere utilizzato nel modo interpolazione cilindrica (G07.1). Il posizionamento unidirezionale non può essere utilizzato nel modo interpolazione in coordinate polari (G12.1). Nello specificare il posizionamento unidirezionale su una macchina che utilizza il controllo dell'asse inclinato arbitrario, posizionare l'asse inclinato prima dell'asse cartesiano. Se l'ordine di specifica viene invertito o se lo stesso blocco specifica sia il posizionamento dell'asse inclinato sia quello dell'asse cartesiano, la direzione del posizionamento può risultare errata. Quando l'utensile viene posizionato sul punto di ripartenza dalla di ripartenza del programma, il posizionamento unidirezionale non viene eseguito. - 47 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 M • • Nei cicli fissi di foratura, non si ha avvicinamento unidirezionale per l'asse di foratura. Il posizionamento unidirezionale non si applica al movimento di allontanamento nei cicli fissi G76 e G87. • Il codice G che comanda il posizionamento unidirezionale è sempre G60, indipendente dal sistema A, B o C di codici G selezionato. Il posizionamento unidirezionale non può essere comandato nel modo ciclo multiplo ripetitivo (G70-G76). Nei cicli fissi di foratura (G83-G89) o di maschiatura (G84, G88) il posizionamento unidirezionale non viene eseguito per l'asse di foratura o di maschiatura, ma può essere utilizzato per gli assi di posizionamento . Il posizionamento unidirezionale non può essere comandato nel modo ciclo fisso (G90, G92, G94). Quando è attivo il modo posizionamento unidirezionale (G60), non è possibile comandare i seguenti codici G. G07.1, G12.1, G70-G76, G90-G94. T • • • • 4.3 INTERPOLAZIONE LINEARE (G01) L'utensile si muove in linea retta. Formato G01 IP_ F_ ; IP_ : In programmazione assoluta, le coordinate del punto finale; in programmazione incrementale, la distanza percorsa dall'utensile. F_ : Velocità dell'utensile (velocità di avanzamento) Spiegazioni L'utensile va sulla posizione specificata con un movimento rettilineo eseguito alla velocità di avanzamento specificata con il codice F Il codice F è modale e rimane valido finché non viene programmato un altro codice F. Pertanto non è necessario programmare la velocità di avanzamento in tutti i blocchi. La velocità di avanzamento specificata dal codice F è misurata lungo il percorso dell'utensile. Se non è mai stato specificato un codice F, la velocità è zero. La velocità di avanzamento su ciascun asse è la seguente: G01 αα ββ γγ ζζ Ff ; Velocità avanzamento asse α : Fα = Velocità avanzamento asse ζ : Fζ = L = α 2 + β 2 +γ 2 +ζ L β Velocità avanzamento asse β : Fβ = Velocità avanzamento asse γ : Fγ = α γ L L ζ L ×f ×f ×f ×f 2 - 48 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 La velocità di avanzamento di un asse rotativo si programma in gradi al minuto (le unità corrispondono alla posizione del punto decimale). Quando vengono interpolati linearmente l'asse lineare αβ (come X, Y, o Z) e l'asse rotativo b (come A, B, o C), la velocità di avanzamento è tale per cui la velocità di avanzamento tangenziale nel sistema di coordinate cartesiane α e β è la velocità comandata da F(mm/min). Per calcolare la velocità di avanzamento dell'asse β, viene prima determinato il tempo necessario per la distribuzione usando la suddetta formula e poi le unità della velocità di avanzamento dell'asse β vengono cambiate in gradi/min. Qui di seguito viene dato un esempio di calcolo. G91 G01 X20.0B40.0 F300.0 ; Se la programmazione è in millimetri, il comando di movimento di 40.0 gradi dell'asse C viene considerato come 40 mm e il tempo richiesto dalla distribuzione si calcola come segue: 20 2 + 40 2 300 0.14907(mm) La velocità di avanzamento dell'asse C è: 40 0.14907 268.3 deg/ min Nel controllo simultaneo di 3 assi, la velocità di avanzamento viene calcolata come nel controllo di 2 assi. Esempio - Interpolazione lineare • Fresatura (G91) G01X200.0Y100.0F200.0; Asse Y (Punto finale) 100.0 0 (Punto iniziale) Tornitura (Programmazione diametrale) G01X40.0Z20.1F20; (Programmazione assoluta) oppure G01U20.0W-25.9F20; (Programmazione incrementale) X 46.0 Punto Punto finale iniziale - 49 - φ20.0 20.1 φ40.0 • Asse X 200.0 Z 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE Velocità di avanzamento dell'asse rotativo G91G01C-90.0 F300.0 ;Velocità di avanzamento: 300 gradi/min (Punto iniziale) 90° (Punto finale) - 50 - Velocità di avanzamento = 300 gradi/min B-64484IT/02 4.4 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 INTERPOLAZIONE CIRCOLARE (G02, G03) L'utensile si muove lungo un arco di cerchio. Formato Arco nel piano XpYp G02 G17 Xp_Yp_ G03 Arco nel piano ZpXp G18 G02 I_ J_ R_ F_ ; I _ K _ F_ ; R_ Zp_Xp_ G03 Arco nel piano YpZp G02 G19 Yp_Zp_ G03 J_ K_ F_ ; R_ Comando Descrizione G17 G18 G19 G02 G03 Xp_ Yp_ Zp_ I_ J_ K_ R_ F_ Specifica di un arco nel piano XpYp Specifica di un arco nel piano ZpXp Specifica di un arco nel piano YpZp Interpolazione circolare : in senso orario (CW) Interpolazione circolare : in senso antiorario (CCW) Comando di movimento dell'asse X o di un suo asse parallelo (parametro N. 1022) Comando di movimento dell'asse Y o di un suo asse parallelo (parametro N. 1022) Comando di movimento dell'asse Z o di un suo asse parallelo (parametro N. 1022) Distanza con il segno dal punto iniziale al centro dell'arco lungo l'asse Xp Distanza con il segno dal punto iniziale al centro dell'arco lungo l'asse Yp Distanza con il segno dal punto iniziale al centro dell'arco lungo l'asse Zp Raggio dell'arco con il segno (valore radiale per la tornitura) Velocità di avanzamento lungo l'arco T NOTA Gli assi U, V e W possono essere utilizzati solo con i sistemi B e C di codici G. Spiegazioni - Senso dell'interpolazione circolare Il senso orario (G02) e il senso antiorario (G03) dell'interpolazione circolare nel piano XpYp (piano ZpXp o piano YpZp) è definito guardando il piano XpYp nella direzione da positivo a negativo dell'asse Zp (asse Yp o asse Xp), nel sistema di coordinate cartesiane Vedi la sottostante figura (Fig. 4.4 (a)). Y X Z G03 G02 G17 G03 G03 G02 X G18 Fig. 4.4 (a) - 51 - Z G02 G19 Y 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Comando di movimento Il punto finale dell'arco si specifica con gli indirizzi Xp, Yp o Zp e si esprime in valori assoluti o incrementali, a seconda dello stato G90/G91. Per i valori incrementali, si specificano le coordinate del punto finale visto dal punto iniziale. - Specifica del centro dell'arco Il centro dell'arco si specifica con gli indirizzi I, J e K, rispettivamente per gli assi Xp, Yp e Zp. I valori che seguono I, J o K sono le componenti di un vettore in cui il centro dell'arco è visto dal punto iniziale, e sono sempre specificati come valori incrementali, indipendentemente da G90/G91, come si vede qui sotto (Fig. 4.4 (b)). Il segno di I, J e K determina la direzione. Punto finale (x, y) Punto finale (z, x) Punto finale (y, z) x y x i Punto iniziale z z Punto iniziale k J Centro y Punto iniziale J i Centro k Centro Fig. 4.4 (b) I0, J0 e K0 possono essere omessi. Se la differenza fra il raggio al punto iniziale e il raggio al punto finale dell'interpolazione circolare supera il valore del parametro N. 3410 si verifica l'allarme PS0020. - Programmazione di un cerchio completo Se Xp, Yp e Zp sono tutti omessi (il punto finale coincide con il punto iniziale) e il centro è specificato con I, J e K, viene assunto un arco di 360 gradi (un cerchio completo). G02 I_ ; Programmazione di un cerchio completo - Raggio dell'arco Invece di specificare il centro dell'arco con I, J o K, può essere specificato, con l'indirizzo R, il raggio del cerchio cui l'arco appartiene. In questo caso, si considerano due tipi di archi: minori di 180 gradi e maggiori di 180 gradi. Per gli archi maggiori di 180 gradi, il raggio deve essere specificato come valore negativo. Se Xp, Yp e Zp sono tutti omessi (il punto finale coincide con il punto iniziale) e si usa R, risulta programmato un arco di 0 gradi. G02R_ ; (L'utensile non si muove.) Per l'arco <1> (minore di 180°) G91 G02 XP60.0 YP55.0 R50.0 F300.0 ; Per l'arco <2> (maggiore di 180°) G91 G02 XP60.0 YP55.0 R-50.0 F300.0 ; <2> r=50mm Punto finale <1> Punto iniziale Y r=50mm X - 52 - - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Velocità di avanzamento La velocità di avanzamento nell'interpolazione circolare è quella specificata dal codice F e la velocità lungo l'arco (la velocità tangenziale dell'arco) viene controllata in modo da mantenerla uguale alla velocità di avanzamento specificata. L'errore tra la velocità programmata e l'effettiva velocità di avanzamento è entro ±2%. La velocità di avanzamento viene misurata lungo l'arco dopo aver applicato la compensazione raggio utensile. Limitazioni - Programmazione simultanea di I, J, K e R Se I, J, K e R vengono specificati contemporaneamente, l'arco specificato con R ha la precedenza e I, J e K sono ignorati. - Specifica di un asse non appartenente al piano selezionato Se viene comandato un asse diverso da quelli che formano il piano specificato, viene visualizzato l'allarme PS0021. Ad esempio, Fresatura: Se l'asse U è specificato come parallelo all'asse X quando viene selezionato il piano XY Tornitura: Se l'asse U è specificato come parallelo all'asse X quando viene selezionato il piano ZX con i sistemi B e C di codici G - Specifica di un semicerchio con R Se un arco il cui angolo al centro è vicino a 180° viene programmato con R, il calcolo delle coordinate del centro può generare un errore. In questo caso, specificare il centro dell'arco con I, J e K. - Differenza fra il raggio al punto iniziale e il raggio al punto finale Se la differenza fra il raggio al punto iniziale e il raggio al punto finale dell'arco supera il valore specificato con il parametro N. 3410, si ha l'allarme PS0020. Se il punto finale non giace sull'arco, il risultato è una spirale, come si vede qui sotto. Punto finale γe γ(t) θ(t) Punto iniziale Raggio γs γe γ (t) = γ s + θ ( γ e − γ s) θ (t ) θ Centro γs Punto iniziale Punto finale Centro θ θ Il raggio dell'arco cambia linearmente con l'angolo al centro θ(t). L'interpolazione a spirale si esegue utilizzando un comando circolare che specifica un raggio per il punto iniziale ed un raggio diverso per il punto finale. Per utilizzare l'interpolazione a spirale, assegnare un valore elevato al parametro N. 3410 (limite dell'errore del raggio di un arco). - 53 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio M Asse Y 100 50 60 60 40 Asse X 0 90 200 120 140 Il percorso utensile della figura qui sopra si programma come segue: (1) In programmazione assoluta G92X200.0 Y40.0 Z0 ; G90 G03 X140.0 Y100.0 R60.0 F300. ; G02 X120.0 Y60.0 R50.0 ; oppure G92X200.0 Y40.0 Z0 ; G90 G03 X140.0 Y100.0I-60.0 F300. ; G02 X120.0 Y60.0I-50.0 ; (2) In programmazione incrementale G91 G03 X-60.0 Y60.0 R60.0 F300. ; G02 X-20.0 Y-40.0 R50.0 ; oppure G91 G03 X-60.0 Y60.0 I-60.0 F300. ; G02 X-20.0 Y-40.0 I-50.0 ; T Programmazione dell'interpolazione circolare (X, Z) G02X_Z_I_K_F_; Asse X G03X_Z_I_K_F_; Punto finale Centro dell'arco X G02X_Z_R_F_; Punto finale Asse X Asse X I K (Programmazione diametrale) Punto iniziale X I Asse Z (Programmazione assoluta) Punto finale Z Asse Z (Programmazione diametrale) X Z Punto iniziale Asse Z K (Programmazione assoluta) (Programmazione assoluta) X (Programmazione diametrale) G02X50.0Z30.0I25.0F0.3; oppure G02U20.0W-20.0I25.0F0.3; oppure G02X50.0Z30.0R25.0F0.3 oppure G02U20.0W-20.0R25.F0.3; R25.0 10.0 15.0 Centro dell'arco R (Programmazione diametrale) Punto iniziale Z φ50.0 - Z 30.0 50.0 - 54 - PROGRAMMAZIONE B-64484IT/02 4.5 4.FUNZIONI DI INTERPOLAZIONE INTERPOLAZIONE ELICOIDALE (G02, G03) L'interpolazione elicoidale si programma specificando fino a due altri assi che si muovo in sincronia con gli assi dell'interpolazione circolare. Formato Arco nel piano XpYp G02 G17 Xp_Yp_ G03 Arco nel piano ZpXp G02 G18 Zp_Xp_ G03 Arco nel piano YpZp G02 G19 Yp_Zp_ G03 I_ J_ R_ α_(β_)F_; K_ I_ R_ α_(β_)F_; J_ K_ R_ α_(β_)F_; α, β: Assi non appartenenti al piano dell'interpolazione circolare. Possono essere specificati fino a due altri assi Spiegazioni Come velocità di avanzamento possono essere specificate la velocità lungo l'arco specificato nel piano oppure la velocità lungo il percorso utensile, tenendo in considerazione anche l'asse lineare, a seconda dell'impostazione del bit 5 (HTG) del parametro N.1403. Quando HTG è 0, il comando F specifica la velocità di avanzamento lungo l'arco. Quindi, la velocità di avanzamento dell'asse lineare si calcola con la seguente formula: F× Lunghezza dell'asse lineare Lunghezza dell'arco Determinare la velocità di avanzamento in modo che la velocità dell'asse lineare non superi nessuno dei vari limiti. Z Percorso utensile Y X La velocità tangenziale all'arco determinato dai due assi dell'interpolazione circolare è la velocità di avanzamento specificata. Se HTG è 1, il comando F specifica la velocità di avanzamento lungo il percorso utensile, tenendo in considerazione anche l'asse lineare. Quindi, la velocità tangenziale lungo l'arco viene calcolata come segue: F× Lunghezza dell'arco 2 2 (Lunghezza dell'arco) + (Lunghezza dell'asse lineare) La velocità lungo l'asse lineare viene calcolata come segue: F× Lunghezza dell'asse lineare (Lunghezza dell'arco)2 + (Lunghezza dell'asse lineare)2 - 55 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Z Percorso utensile Y X E' specificata la velocità di avanzamento lungo il percorso utensile. Limitazioni • • La compensazione raggio utensile viene applicata soltanto all'arco. La correzione utensile e la compensazione lunghezza utensile non possono essere usate in un blocco nel quale è comandata l'interpolazione elicoidale. 4.6 INTERPOLAZIONE ELICOIDALE B (G02, G03) A differenza dell'interpolazione elicoidale, l'interpolazione elicoidale B può essere eseguita specificando il comando di interpolazione circolare insieme ad un massimo di quattro assi esterni al piano specificato. Per limitazioni e parametri, fare riferimento alla descrizione dell'interpolazione elicoidale. Formato Arco nel piano XpYp G02 G17 Xp_Yp_ G03 Arco nel piano ZpXp G02 G18 Zp_Xp_ G03 Arco nel piano YpZp G02 G19 Yp_Zp_ G03 I_ J_ R_ α_ β_ γ_ δ_ F_ ; K_ I_ R_ α_ β_ γ_ δ_ F_ ; J_ K_ R_ α_ β_ γ_ δ_ F_ ; α, β, γ, δ: Assi non appartenenti al piano dell'interpolazione circolare. E' possibile specificare fino a quattro assi. - 56 - PROGRAMMAZIONE B-64484IT/02 4.7 4.FUNZIONI DI INTERPOLAZIONE INTERPOLAZIONE A SPIRALE, INTERPOLAZIONE CONICA (G02, G03) L'interpolazione a spirale si abilita specificando il comando di interpolazione circolare insieme al numero di giri o all'incremento (decremento) al giro del raggio desiderati. L'interpolazione conica si abilita specificando il comando di interpolazione a spirale insieme al movimento di un asse aggiuntivo, e l'incremento (decremento) al giro desiderato della posizione lungo l'asse aggiuntivo. Formato - Interpolazione a spirale Piano XpYp G02 G17 X_Y_I_J_Q_L_F_; G03 Piano ZpXp G02 G18 Z_X_K_I_Q_L_F_; G03 Piano YpZp G02 G19 Y_Z_J_K_Q_L_F_; G03 X, Y, Z L Q I, J, K F : : : : Coordinate del punto finale Numero di giri (valore positivo senza punto decimale) (*1) Incremento o decremento del raggio al giro (*1, *2) Distanza con segno dal punto iniziale al centro (uguale alla distanza specificata per l'interpolazione circolare) : Velocità di avanzamento (*1) E' possibile omettere la specifica del numero di giri (L) o quella dell'incremento/decremento del raggio (Q). Se viene omesso L, il numero di giri viene calcolato automaticamente in base alla distanza fra la posizione corrente e il centro, alla posizione finale e all'incremento/decremento del raggio. Se viene omesso Q, il numero di giri viene calcolato automaticamente in base alla distanza fra la posizione corrente e il centro, alla posizione finale ed al numero di giri. Se sono programmati sia L sia Q, ma i loro valori si contraddicono, Q ha la precedenza. Generalmente se ne specifica soltanto uno, o Q o L. Il valore di L deve essere un numero intero positivo. Per specificare quattro giri più 90°, ad esempio, arrotondare il numero di giri a 5 e specificare L5. (*2) Per Q, il sistema di incrementi dipende dall'asse di riferimento. - 57 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Interpolazione conica Piano XpYp G17 G02 X_Y_I_J_Z_Q_L_F_; G03 Piano ZpXp G02 G18 Z_X_K_I_Y_Q_L_F_; G03 Piano YpZp G02 G19 Y_Z_J_K_X_Q_L_F_; G03 X, Y, Z : L : Q : I, J, K : Coordinate del punto finale Numero di giri (valore positivo senza punto decimale) (*1) Incremento o decremento del raggio al giro (*1, *2) Due di questi tre valori rappresentano un vettore con segno dal punto di partenza al centro. L'altro valore è un incremento o un decremento dell'altezza al giro della spirale per l'interpolazione conica. (*1) Quando è selezionato il piano XpYp: I e J rappresentano un vettore con segno dal punto di partenza al centro. K rappresenta l'incremento/decremento al giro della spirale. Quando è selezionato il piano ZpXp: K e I rappresentano un vettore con segno dal punto di partenza al centro. J rappresenta l'incremento/decremento al giro della spirale. Quando è selezionato il piano YpZp: J e K rappresentano un vettore con segno dal punto di partenza al centro. I rappresenta l'incremento/decremento al giro della spirale. F : Velocità di avanzamento (determinata tenendo in considerazione anche la velocità lungo l'asse lineare). (*1) Fra l'incremento/decremento dell'altezza (I, J o K), l'incremento/decremento del raggio (Q) e il numero di giri (L), è necessario programmarne uno soltanto. Gli altri due possono essere omessi. • Esempio di comando per il piano XpYp G02 G18 G03 X_ Y_ I_ J_ Z_ K_ Q_ L_ F_ ; Se sono programmati sia L sia Q, ma i loro valori si contraddicono, Q ha la precedenza. Se sono programmati sia L sia l'incremento/decremento dell'altezza, ma i loro valori si contraddicono, l'incremento/decremento dell'altezza ha la precedenza. Se sono programmati sia Q sia l'incremento/decremento dell'altezza, ma i loro valori si contraddicono, Q ha la precedenza. Il valore di L deve essere un numero intero positivo. Per specificare quattro giri più 90°, ad esempio, arrotondare il numero di giri a 5 e specificare L5. (*2) Per Q, il sistema di incrementi dipende dall'asse di riferimento. - 58 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Spiegazioni - Funzione dell'interpolazione a spirale L'interpolazione a spirale nel piano XY è definita come segue: (X − X 0 ) 2 + (Y − Y0 ) 2 = (R + Q' ) 2 X0 : Coordinata X del centro Y0 : Coordinata Y del centro R : Raggio all'inizio dell'interpolazione a spirale Q' : Variazione del raggio Quando il comando programmato viene assegnato a questa funzione, si ottiene la seguente espressione: θ (X − X S − I) 2 + (Y − YS − J) 2 = (R + (L'+ )Q) 2 360 Dove XS : Coordinata X del punto di partenza Coordinata Y del punto di partenza YS : I : Componente X del vettore dal punto di partenza al centro J : Componente Y del vettore dal punto di partenza al centro R : Raggio all'inizio dell'interpolazione a spirale Q : Incremento/decremento del raggio al giro della spirale L' : (Numero attuale di giri) - 1 θ : Angolo fra il punto di partenza e la posizione corrente (gradi) - Assi controllati Per l'interpolazione conica è possibile specificare due assi del piano e due assi addizionali, cioè, quattro assi in totale. Come asse addizionale può essere specificato un asse rotativo. - Scostamento fra i punti finali Se lo scostamento fra il punto finale programmato e il punto finale calcolato di una spirale supera il valore specificato nel parametro N. 3471 per ogni asse del piano selezionato, si verifica l'allarme PS5123. Se lo scostamento fra l'altezza programmata e l'altezza calcolata del punto finale di un cono supera il valore specificato nel parametro N. 3471, si verifica l'allarme PS5123. I dettagli sono illustrati nella sottostante figura (Fig. 4.7 (a)). - 59 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Y 100.0 X -30.0 α 20.0 -33.5 20.0 20.0 G90 G02 X0 Y-33.5 I0 J-100. Q-20. L4 F300; Le coordinate del punto finale programmato sono (0, -33.5), mentre quelle del punto finale calcolato sono (0, -30.0). Un errore maggiore della differenza (α: tolleranza) specificata con il parametro N. 3471. Se viene superata la tolleranza, si verifica l'allarme PS5123. Lo stesso vale per l'altezza dell'interpolazione conica. Fig. 4.7 (a) - Compensazione raggio utensile M E' possibile programmare il comando di interpolazione a spirale o di interpolazione conica nel modo compensazione raggio utensile. Questa compensazione si esegue nello stesso modo descritto in "Casi particolari" nella sezione "Movimento dell'utensile nel modo compensazione raggio utensile". Alla fine del blocco viene tracciato un cerchio virtuale, concentrico all'interpolazione a spirale. Il percorso utensile si ottiene eseguendo la compensazione raggio utensile lungo il cerchio virtuale e i blocchi dal precedente al susseguente l'interpolazione a spirale. Se sia il punto iniziale sia il punto finale sono al centro dell'interpolazione a spirale, il cerchio virtuale non può essere tracciato. Se lo si tenta, si verifica l'allarme PS5124. Cerchio virtuale Interpolazione a spirale programmata r r Dopo la compensazione raggio utensile Centro - 60 - Percorso centro utensile B-64484IT/02 - PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Velocità di avanzamento effettiva Durante l'interpolazione a spirale o conica viene mantenuta una velocità costante. Tuttavia, vicino al centro, la velocità angolare può aumentare a causa della riduzione del raggio della spirale. Ciò può essere evitato bloccando la velocità angolare quando il raggio della spirale raggiunge il valore del parametro N. 3472. Conseguentemente, la velocità di avanzamento effettiva diminuisce. Di seguito viene illustrato un esempio (Fig. 4.7 (b)). Velocità di avanzamento specificata: F100. Parametro 3472 (r) = 1.000 IS-B 1.5 r -0.5 Finchè il raggio della spirale è maggiore del valore specificato nel parametro N. 3472, la velocità di avanzamento effettiva è F100. Quando il raggio diminuisce, si riduce anche la velocità di avanzamento che, vicino al punto finale, diventa circa F65. Fig. 4.7 (b) - Decelerazione in base al tasso di accelerazione Questa funzione è abilitata durante l'interpolazione a spirale. La velocità di avanzamento diminuisce quando l'utensile si avvicina al centro della spirale. - Prova a vuoto Quando il segnale della prova a vuoto viene invertito da 0 a 1 o da 1 a 0 durante il movimento lungo un asse, il movimento viene accelerato o decelerato per raggiungere la velocità desiderata, senza prima ridurre la velocità a zero. Limitazioni - Raggio Nell'interpolazione a spirale o conica non è possibile utilizzare gli indirizzi "C", "R", ",C", o ",R". - Funzioni di avanzamento Non è possibile usare le funzioni di avanzamento al giro, inverso del tempo, comando F di una cifra, riduzione automatica della velocità sugli spigoli. - Ritracciatura Non è possibile ritracciare un programma con interpolazione a spirale o conica. - Interpolazione in coordinate polari, scala, controllo della direzione normale. In questi modi non è possibile specificare l'interpolazione a spirale o conica. - Funzioni opzionali Per utilizzare la funzione di interpolazione conica, è necessaria anche la funzione opzionale di interpolazione elicoidale. - 61 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio - Interpolazione a spirale Il percorso presentato qui sotto può essere programmato, in assoluto o in incrementale, come segue: 120 Asse Y 20. 20. 100 80 60 40 20 -120 -100 -80 -60 -40 –20 -20 20 40 60 80 100 120 Asse X -40 -60 -80 -100 -120 I valori caratteristici di questo percorso sono: • Punto iniziale • Punto finale (X, Y) • Distanza dal centro (I, J) • Incremento/decremento del raggio (Q) • Numero di giri (L) : : : : : (0, 100.0) (0, -30.0) (0, -100.0) -20.0 4 (1) Nel modo assoluto, questo percorso si programma come segue: G90 G02 X0 Y-30.0 I0 J-100.0 Q-20.0 L4 F300.0 ; (2) Nel modo incrementale questo percorso si programma come segue: G91 G02 X0 Y-130.0 I0 J-100.0 Q-20.0 L4 F300.0 ; (E' possibile omettere la specifica di Q o di L.) - Interpolazione conica Il percorso presentato qui sotto può essere programmato, in assoluto o in incrementale, come segue: - 62 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 +Z 25.0 25.0 (0,-37.5,62.5) 25.0 25.0 +Y 100.0 -100.0 +X I valori caratteristici di questo percorso sono: • Punto iniziale • Punto finale (X, Y, Z) • Distanza dal centro (I, J) • Incremento/decremento del raggio (Q) • Incremento/decremento dell'altezza (K) • Numero di giri (L) : : : : : : (0, 100.0, 0) (0, -37.5, 62.5) (0, -100.0) -25.0 25.0 3 (1) Nel modo assoluto, questo percorso si programma come segue: G90 G02 X0 Y-37.5 Z62.5 I0 J-100.0 K25.0 Q-25.0 L3 F300.0 ; (2) Nel modo incrementale questo percorso si programma come segue: G91 G02 X0 Y-137.5 Z62.5 I0 J-100.0 K25.0 Q-25.0 L3 F300.0 ; (E' possibile omettere la specifica di Q o di L.) - 63 - 4.FUNZIONI DI INTERPOLAZIONE 4.8 PROGRAMMAZIONE B-64484IT/02 INTERPOLAZIONE IN COORDINATE POLARI (G12.1, G13.1) Introduzione La funzione grazie alla quale la contornatura viene eseguita convertendo un comando programmato nel sistema di coordinate cartesiane in un movimento dell'asse lineare (movimento dell'utensile) e in un movimento dell'asse rotativo (rotazione del pezzo) è l'interpolazione in coordinate polari. Si tratta di una funzione utile per la lavorazione di un albero a camme. Formato G12.1; Attiva il modo interpolazione in coordinate polari (abilita l'interpolazione in coordinate polari) Comandare l'interpolazione lineare o circolare nel sistema di coordinate cartesiane formato dall'asse lineare e dall'asse rotativo (asse virtuale). G13.1; Cancella il modo interpolazione in coordinate polari (l'interpolazione in coordinate polari non è più eseguita). Specificare G12.1 e G13.1 in blocchi indipendenti Spiegazioni - Modo interpolazione in coordinate polari (G12.1) Gli assi dell'interpolazione in coordinate polari (asse lineare e asse rotativo) devono essere specificati in anticipo, con i parametri corrispondenti. La specifica di G12.1 pone il sistema nel modo interpolazione in coordinate polari e seleziona un piano (chiamato piano dell'interpolazione in coordinate polari) costituito da un asse lineare e da un asse virtuale che lo interseca ad angolo retto. L'asse lineare e l'asse virtuale sono detti primo e secondo asse del piano. L'interpolazione in coordinate polari viene eseguita in questo piano. Nel modo interpolazione in coordinate polari, le interpolazioni lineare e circolare possono essere specificate con programmazione assoluta o incrementale. E' eseguibile anche la compensazione raggio utensile. L'interpolazione in coordinate polari viene eseguita per il percorso ottenuto dopo la compensazione raggio utensile. La velocità tangenziale nel piano dell'interpolazione in coordinate polari (sistema di coordinate cartesiane) viene specificata come velocità di avanzamento, utilizzando F. - Cancellazione del modo interpolazione in coordinate polari (G13.1) La specifica di G13.1 cancella il modo interpolazione in coordinate polari. - Piano dell'interpolazione in coordinate polari G12.1 attiva il modo interpolazione in coordinate polari e seleziona il piano dell'interpolazione in coordinate polari. (Fig. 4.8 (a)). L'interpolazione in coordinate polari viene eseguita su questo piano. - 64 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Asse rotativo (asse virtuale) (unità: mm o pollici) Asse lineare (unità: mm o pollici) Origine del sistema di coordinate locali (comando G52) (Oppure origine del sistema di coordinate del pezzo) Fig. 4.8 (a) Piano dell'interpolazione in coordinate polari All'accensione o dopo un reset, è attivo G13.1 (cancella il modo interpolazione in coordinate polari). Gli assi (asse lineare e asse rotativo) per i quali verrà eseguita l'interpolazione in coordinate polari devono essere preventivamente impostati con i parametri N. 5460 e 5461. AVVERTENZA Il piano usato prima del comando G12.1 (il piano selezionato con G17, G18 o G19) è cancellato e viene ristabilito quando viene comandato G13.1. Quando il sistema viene resettato, il modo interpolazione in coordinate polari viene cancellato e viene ristabilito il piano specificato da G17, G18 o G19. - Entità del movimento e velocità di avanzamento nel modo interpolazione in coordinate polari • Le unità con cui sono espresse le coordinate dell'asse virtuale sono le stesse usate per l'asse lineare (mm/pollici). Nel modo interpolazione in coordinate polari i comandi vengono programmati come coordinate cartesiane nel piano dell'interpolazione in coordinate polari. Nei comandi, si usa come indirizzo del secondo asse del piano (l'asse virtuale) l'indirizzo dell'asse rotativo. L'uso della programmazione radiale/diametrale non dipende dalla specifica del primo asse del piano, ma si applica la specifica dell'asse rotativo. Immediatamente dopo G12.1, la coordinata dell'asse virtuale è 0: l'interpolazione in coordinate polari inizia assumendo un angolo di 0 gradi per la posizione dell'utensile. Esempio) Programmazione di X (asse lineare) in millimetri G12.1; G01 X10. F1000. ; ........ Effettua un movimento di 10 mm nel sistema di coordinate cartesiane. C20. ;............................. Effettua un movimento di 20 mm nel sistema di coordinate cartesiane. G13.1; Programmazione di X (asse lineare) in pollici G12.1; G01 X10. F1000. ; ....... Effettua un movimento di 10 pollici nel sistema di coordinate cartesiane. C20. ;............................. Effettua un movimento di 20 pollici nel sistema di coordinate cartesiane. G13.1; - 65 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 • L'unità di misura della velocità di avanzamento è mm/min o pollici/min. Specificare la velocità di avanzamento come velocità (relativa fra il pezzo e l'utensile) tangenziale al piano dell'interpolazione in coordinate polari (sistema di coordinate cartesiane), usando il codice F. - Codici G che possono essere specificati nel modo interpolazione in coordinate polari G01 ....................... Interpolazione lineare G02, G03 .............. Interpolazione circolare G02.2, G03.2 ........ Interpolazione involuta G04 ....................... Sosta, arresto esatto G40, G41, G42 ..... Compensazione raggio utensile (L'interpolazione in coordinate polari viene eseguita per il percorso compensato.) G65, G66, G67 ..... Comandi macro G90, G91 .............. Programmazione assoluta, programmazione incrementale G94, G95 .............. Avanzamento al minuto, avanzamento al giro - Interpolazione circolare nel modo interpolazione in coordinate polari Gli indirizzi I, J, K da usare quando si comanda l'interpolazione circolare nel modo interpolazione in coordinate polari dipendono da quale asse del sistema base di coordinate è il primo asse del piano dell'interpolazione in coordinate polari (asse lineare). • Quando l'asse lineare è l'asse X o è parallelo all'asse X, il piano considerato è il piano Xp-Yp e gli indirizzi da usare sono I e J. • Quando l'asse lineare è l'asse Y o è parallelo all'asse Y, il piano considerato è il piano Yp-Zp e gli indirizzi da usare sono J e K. • Quando l'asse lineare è l'asse Z o è parallelo all'asse Z, il piano considerato è il piano Zp-Xp e gli indirizzi da usare sono K e I. E' anche possibile specificare il raggio dell'arco con R. NOTA Su un tornio, gli assi U, V e W (paralleli agli assi base) possono essere usati solo con i sistemi B e C di codici G. - Movimento lungo gli assi non appartenenti al piano dell'interpolazione I comandi di movimento degli assi che non formano il piano dell'interpolazione in coordinate polari, vengono eseguiti indipendentemente da quest'ultima. - Visualizzazione della posizione corrente Sono visualizzate le coordinate effettive. Però, il movimento residuo di un blocco è visualizzato con riferimento al piano dell'interpolazione in coordinate polari (sistema di coordinate cartesiane). - Sistema di coordinate per l'interpolazione in coordinate polari Prima di comandare G12.1, occorre impostare un sistema di coordinate locali (o un sistema di coordinate del pezzo) con l'origine sul centro dell'asse rotativo. - Compensazione nella direzione dell'asse virtuale nel modo interpolazione in coordinate polari Se il primo asse del piano è spostato rispetto al centro dell'asse rotativo nella direzione dell'asse virtuale, in altre parole, se il centro dell'asse rotativo non si trova sull'asse X, viene utilizzata la funzione di compensazione nella direzione dell'asse virtuale nel modo interpolazione in coordinate polari. Con questa funzione, lo scostamento viene considerato nell'interpolazione in coordinate polari. L'entità dello scostamento si specifica nel parametro N. 5464. - 66 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Asse virtuale (asse C) Asse rotativo (X, C) Asse X Scostamento nella direzione dell'asse virtuale (P) Centro dell'asse rotativo (X, C) X C P - : : : : Punto nel piano X-C (Il centro dell'asse rotativo è considerato l'origine del piano X-C.) Coordinata X nel piano X-C Coordinata dell'asse virtuale nel piano X-C Scostamento nella direzione dell'asse virtuale (specificato nel parametro N. 5464) Traslazione del sistema di coordinate nel modo interpolazione in coordinate polari Nel modo interpolazione in coordinate polari, è possibile traslare il sistema di coordinate del pezzo. La funzione di visualizzazione della posizione corrente mostra la posizione nel sistema di coordinate del pezzo prima della traslazione. La funzione di traslazione del sistema di coordinate viene abilitata mediante il bit 2 (PLS) del parametro N.5450. La traslazione si effettua specificando la posizione del centro dell'asse rotativo C (A,B) nel piano dell'interpolazione X-C (Y-A, Z-B) rispetto all'origine del sistema di coordinate del pezzo, nel formato seguente. G12.1 X_ C_ ; (Interpolazione in coordinate polari per l'asse X e l'asse C) G12.1 Y_ A_ ; (Interpolazione in coordinate polari per l'asse Y e l'asse A) G12.1 Z_ B_ ; (Interpolazione in coordinate polari per l'asse Z e l'asse B) C G12.1 Xx Cc ; Centro dell'asse C c X Origine del sistema di coordinate del pezzo x - 67 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Limitazioni - Cambiamento del sistema di coordinate durante l'interpolazione in coordinate polari Quando è attivo il modo G12.1, il sistema di coordinate non deve essere cambiato (G92, G52, G53, reset delle coordinate relative, G54 - G59, ecc.). - Compensazione raggio utensile Il modo interpolazione in coordinate polari non può essere attivato o cancellato (G12.1, G13.1) nel modo compensazione raggio utensile (G41, G42). G12.1 e G13.1 devono essere specificati nel modo compensazione raggio utensile cancellata (G40). Il comando che cancella il modo compensazione raggio utensile (G40), deve specificare l'asse della coordinata polare per cancellare il vettore della compensazione. - Compensazione lunghezza utensile Specificare la compensazione lunghezza utensile prima di comandare G12.1 (cioè, nel modo interpolazione in coordinate polari non attiva). Non può essere comandata nel modo interpolazione in coordinate polari. Nel modo interpolazione in coordinate polari, non possono essere modificati i valori delle correzioni. - Correzioni utensile Le correzioni utensile devono essere specificate prima di stabilire il modo G12.1. In questo modo, le correzioni non possono essere modificate. - Ripartenza del programma Nel modo G12.1, non è possibile eseguire la ripartenza del programma. - Velocità di avanzamento dell'asse rotativo Il movimento programmato nel piano cartesiano viene convertito in un movimento dell'asse rotativo (asse C) e dell'asse lineare (asse X). La componente C della velocità aumenta avvicinandosi al centro del pezzo. Se la velocità di avanzamento massima dell'asse C (parametro N. 1430) risulta eccessiva, vengono attivate le funzioni di regolazione automatica della velocità di avanzamento e di limitazione automatica della velocità. Se viene superata la velocità di avanzamento massima dell'asse X, vengono attivate le funzioni di regolazione automatica della velocità di avanzamento e di limitazione automatica della velocità. - 68 - PROGRAMMAZIONE B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE PERICOLO 1 Consideriamo un movimento nel piano cartesiano alla velocità ∆X per unità di tempo programmata con l'indirizzo F. Nel sistema di coordinate cartesiane, per lo stesso movimento ∆X per unità di tempo, l'entità del movimento dell'asse C aumenta da θ1 a θ2 a θ3 via via che ci si avvicina al centro (L1 .. L2 .. L3). L'aumento dell'entità del movimento dell'asse C per unità di tempo significa che la componente C della velocità cresce quando ci si avvicina al centro del pezzo e può accadere che la conversione del movimento dell'utensile dal sistema di coordinate cartesiane ai movimenti dell'asse C e dell'asse X faccia sì che la componente C della velocità di avanzamento superi la velocità di avanzamento massima dell'asse C. ∆X θ1 θ2 θ3 L1 L2 L3 L: Distanza minima (in mm) fra il centro dell'utensile e il centro del pezzo R : Massima velocità di avanzamento (gradi/min) dell'asse C La formula che segue fornisce il limite della velocità che può essere specificata con il codice F nel modo interpolazione in coordinate polari. Se la velocità dell'asse C supera la velocità massima di avanzamento, essa viene limitata automaticamente dalla funzione di controllo della velocità nell'interpolazione in coordinate polari. F<L×R× π 180 (mm/min) 2 La seguente funzione non può essere utilizzata per l'asse rotativo dell'interpolazione in coordinate polari. • Funzione di indexaggio della tavola rotante - Controllo automatico della velocità nell'interpolazione in coordinate polari Se nel modo interpolazione in coordinate polari la componente di velocità dell'asse rotativo supera la velocità massima di avanzamento, la velocità di avanzamento viene controllata automaticamente. - Regolazione automatica Se la componente di velocità dell'asse rotativo supera la velocità accettabile (velocità massima di avanzamento moltiplicata per il coefficiente specificato nel parametro N. 5463), la velocità di avanzamento viene regolata automaticamente come indicato di seguito. Regolazione = (Velocità accettabile) ÷ (Componente di velocità dell'asse rotativo) × 100(%) - Limitazione automatica della velocità Se, dopo la regolazione automatica, la componente di velocità dell'asse rotativo eccede ancora la velocità massima di avanzamento, la velocità dell'asse rotativo viene ridotta automaticamente. Di conseguenza la componente di velocità dell'asse rotativo non supererà la velocità massima di avanzamento. La funzione di limitazione automatica della velocità è attiva solo quando il centro dell'utensile si trova molto vicino al centro dell'asse rotativo. - 69 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Asse C [Esempio] G90 G00 X10.0 C0. ; G12.1 ; G01 C0.1 F1000 ; X-10.0 : G13.1 ; D C -10. B A +10. Asse X Controllo automatico della velocità nell'interpolazione in coordinate polari Supponiamo che la velocità massima di avanzamento dell'asse rotativo sia 360 (3600 gradi/min) e che il coefficiente della regolazione automatica per l'interpolazione in coordinate polari (parametro N. 5463) sia 0 (90%). Eseguendo il programma sopra indicato, la funzione di regolazione automatica si attiva quando la coordinata X diventa 2.273 (punto A). La funzione di limitazione automatica della velocità si attiva quando la coordinata X diventa 0.524 (punto B). In questo esempio il valore minimo della regolazione automatica è pari al 3%. La funzione di limitazione automatica della velocità rimane attiva fino a quando la coordinata X diventa -0.524 (punto C). La funzione di regolazione automatica rimane attiva fino a quando la coordinata X diventa -2.273 (punto D). (Le coordinate suddette si riferiscono al sistema di coordinate cartesiane.) NOTA 1 Mentre è attiva la funzione di limitazione automatica della velocità, è possibile che la funzione di blocco macchina o interblocco non si attivi immediatamente. 2 Se si comanda un arresto in feed hold mentre è attiva la funzione di limitazione automatica della velocità, viene emesso il segnale di arresto del funzionamento automatico. Tuttavia, l'arresto potrebbe non verificarsi immediatamente. 3 La riduzione effettiva della velocità può eccedere di una piccola percentuale il valore stabilito. - 70 - B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE Esempio Esempio di programmazione dell'interpolazione in coordinate polari in un sistema di coordinate cartesiane formato dall'asse X (asse lineare) e da un asse virtuale Asse virtuale Asse C Percorso dopo la compensazione raggio utensile Percorso prima della compensazione raggio utensile N204 N203 N205 N202 N201 N200 Utensile N206 Asse X N208 N207 Asse Z O001; . N010 T0101 . N0100 G90 G00 X60.0 C0 Z ; N0200 G12.1; N0201 G42 G01 X20.0F ; N0202 C10.0; N0203 G03 X10.0 C20.0 R10.0; N0204 G01 X-20.0; N0205 C-10.0; N0206 G03 X-10.0 C-20.0 I10.0 J0; N0207 G01 X20.0; N0208 C0; N0209 G40 X60.0; N0210 G13.1; N0300 Z ; N0400 X C ; . N0900M30; Posizionamento sul punto iniziale Inizio dell'interpolazione in coordinate polari Programmazione della geometria del pezzo (programmazione in coordinate cartesiane nel piano asse X - asse virtuale) Cancellazione dell'interpolazione in coordinate polari - 71 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE 4.9 INTERPOLAZIONE CILINDRICA (G07.1) 4.9.1 Interpolazione cilindrica B-64484IT/02 Nel modo interpolazione cilindrica, il CNC converte l'entità del movimento comandato in gradi per l'asse rotativo in una distanza lineare lungo una circonferenza. Dopo questa conversione, possono essere eseguite l'interpolazione lineare e l'interpolazione circolare con l'altro asse. La funzione di interpolazione cilindrica consente di programmare considerando lo sviluppo nel piano della superficie laterale di un cilindro; pertanto, essa risulta particolarmente utile per programmare la scanalatura di camme cilindriche, ecc. Formato G07.1 IP r; Stabilisce il modo interpolazione cilindrica (abilita l'interpolazione cilindrica). : : : G07.1 IP 0; Cancella il modo interpolazione cilindrica IP : Indirizzo dell'asse rotativo r : Raggio del pezzo Specificare G07.1 IPr ; e G07.1 IP0; in blocchi indipendenti. Invece di G07.1 può essere usato G107. NOTA Il raggio del pezzo deve essere positivo. Se viene specificato un valore negativo si verifica l'allarme PS0175. Spiegazioni - Selezione del piano (G17, G18, G19) Per specificare un codice G per la selezione del piano, impostare l'asse rotativo nel parametro N 1022 come asse lineare coincidente o parallelo a uno dei tre assi base. Ad esempio, se l'asse rotativo C è assunto parallelo all'asse X, specificando G17 con indirizzi assi C e Y, viene selezionato il piano formato dagli assi C e Y (piano Xp-Yp). T NOTA Gli assi U, V e W possono essere utilizzati solo con i sistemi B e C di codici G. - Velocità di avanzamento Nel modo interpolazione cilindrica, si specifica la velocità di avanzamento lungo la circonferenza. - Interpolazione circolare (G02, G03) Nel modo interpolazione cilindrica è possibile comandare l'interpolazione circolare fra un asse rotativo e un asse lineare. Nei comandi, il raggio R si usa come descritto. Il raggio deve essere specificato in mm (per la programmazione in millimetri) o in pollici (per la programmazione in pollici) e non in gradi. - 72 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE <Esempio: Interpolazione circolare tra l'asse Z e l'asse C> Assegnare 5 (asse parallelo all'asse X) al parametro N. 1022 dell'asse C. In questo caso, il comando dell'interpolazione circolare sarà come segue: G18 Z_C_; G02 (G03) Z_C_R_; Il valore assegnato al parametro 1022 dell'asse C può essere "6" (asse parallelo all'asse Y). In questo caso, il comando dell'interpolazione circolare diventa il seguente: G19 C_Z_; G02 (G03) Z_C_R_; - Compensazione raggio utensile Per eseguire la compensazione raggio utensile nel modo interpolazione cilindrica, cancellare il modo compensazione prima di entrare nel modo interpolazione cilindrica. Poi attivare e cancellare la compensazione raggio utensile all'interno del modo interpolazione cilindrica. - Precisione dell'interpolazione cilindrica Nel modo interpolazione cilindrica, l'entità del movimento dell'asse rotativo, specificata in gradi, viene convertita internamente nella distanza lineare lungo la superficie esterna in modo da poter eseguire l'interpolazione lineare o circolare con l'altro asse. Dopo l'interpolazione, l'entità del movimento dell'asse rotativo viene riconvertita in gradi. Nella conversione, l'entità del movimento viene arrotondata all'incremento minimo di immissione. Quindi, se il raggio del cilindro è piccolo, l'entità effettiva del movimento può essere diversa da quella comandata. In questo caso, però, l'errore non si accumula. Nello stato di assoluto in manuale attivato, se un'operazione manuale viene eseguita quando è attivo il modo interpolazione cilindrica, può verificarsi un errore dovuto a quanto detto sopra. Entità del movimento = ⎡ MOVIM GIRO ⎡ ⎤⎤ 2 × 2πR × ⎢Valore programmato × ⎢ ⎥⎥ 2 × 2πR MOVIM GIRO ⎦ ⎦ ⎣ ⎣ MOVIM GIRO : Entità del movimento per giro dell'asse rotativo (360°) R : Raggio del pezzo [] : Arrotondato all'incremento minimo di immissione Limitazioni - Programmazione del raggio dell'arco Nel modo interpolazione cilindrica, non è possibile specificare il centro dell'arco con I, J o K. Specificare il raggio dell'arco con l'indirizzo R. - Posizionamento Nel modo interpolazione cilindrica non possono essere eseguiti posizionamenti (inclusi i movimenti in rapido eseguiti per comandi come G28, G53, G73, G74, G76, G80-G89). Dovendo eseguire un posizionamento, cancellare prima l'interpolazione cilindrica. L'interpolazione cilindrica (G07.1) non può essere comandata nel modo posizionamento (G00). - Attivazione del modo interpolazione cilindrica Nel modo interpolazione cilindrica, non è possibile comandare nuovamente lo stesso modo. Prima di comandare di nuovo il modo interpolazione cilindrica, cancellare il modo interpolazione cilindrica attivo. - Asse rotativo E' possibile selezionare un solo asse rotativo per l'interpolazione cilindrica. Di conseguenza, non è possibile specificare più di un asse rotativo nel comando G07.1. - 73 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Roll-over dell'asse rotativo Se viene specificato un asse rotativo per il quale, all'attivazione dell'interpolazione cilindrica, è abilitata la funzione di roll-over, questa viene automaticamente disabilitata nel modo interpolazione cilindrica. Dopo la cancellazione del modo interpolazione cilindrica, la funzione di roll-over viene ristabilita automaticamente. - Funzione di controllo dell'asse rotativo Se viene specificato un asse rotativo per il quale, all'attivazione dell'interpolazione cilindrica, è abilitata la funzione di controllo di più assi rotativi, questa viene automaticamente disabilitata nel modo interpolazione cilindrica. Dopo la cancellazione del modo interpolazione cilindrica, la funzione di controllo assi rotativi viene ristabilita automaticamente. - Compensazione raggio utensile Se il modo interpolazione cilindrica viene stabilito mentre è applicata la compensazione raggio utensile, l'interpolazione circolare non è eseguita correttamente. Specificare la compensazione nel modo interpolazione cilindrica. - Cicli fissi di foratura Nel modo interpolazione cilindrica non è possibile specificare i cicli fissi di foratura (G73, G74, e da G81 a G89 per la Serie M / da G80 a G89 per la Serie T). M - Impostazione dei sistemi di coordinate Nel modo interpolazione cilindrica, non può essere specificato il sistema di coordinate del pezzo (G92 e da G54 a G59) o il sistema di coordinate locali (G52). - Correzioni utensile Le correzioni utensile devono essere specificate prima di stabilire il modo interpolazione cilindrica. Nel modo interpolazione cilindrica le correzioni non possono essere cambiate. - Funzione di indexaggio della tavola rotante L'interpolazione cilindrica non può essere utilizzata quando è in uso la funzione di indexaggio della tavola rotante. - Asse parallelo L'asse di rotazione specificato per l'interpolazione cilindrica non deve essere un asse parallelo. T - Impostazione dei sistemi di coordinate Nel modo interpolazione cilindrica non è possibile specificare il sistema di coordinate del pezzo con G50. - Immagine speculare per doppia torretta Nel modo interpolazione cilindrica non è possibile specificare l'immagine speculare per doppia torretta (G68, G69). - 74 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio C Esempio di interpolazione cilindrica O0001 (INTERPOLAZIONE CILINDRICA); N01 G00 G90 Z100.0 C0 ; N02 G01 G91 G18 Z0 C0 ; N03 G07.1 C57299 ;* N04 G90 G01 G42 Z120.0 D01 F250. ; N05 C30.0 ; N06 G03 Z90.0 C60.0 R30.0 ; N07 G01 Z70.0 ; N08 G02 Z60.0 C70.0 R10.0 ; N09 G01 C150.0 ; N10 G02 Z70.0 C190.0 R75.0 ; N11 G01 Z110.0 C230.0 ; N12 G03 Z120.0 C270.0 R75.0 ; N13 G01 C360.0 ; N14 G40 Z100.0 ; N15 G07.1 C0 ; N16 M30 ; R Z (* E' anche possibile usare un comando con punto decimale.) Z mm 120 110 N05 N06 N11 90 N07 70 60 N08 0 4.9.2 N13 N12 30 60 70 N10 N09 190 150 230 270 C 360 gradi Interpolazione cilindrica con specifica della distanza nel piano Introduzione Normalmente, nei comandi di interpolazione cilindrica si specifica l'angolo dell'asse rotativo. Questa funzione permette, mediante impostazione parametrica, di specificare il movimento dell'asse rotativo mediante la distanza nel piano sviluppato. Formato G07.1 IP r; Attiva il modo interpolazione cilindrico (abilita l'interpolazione cilindrica) : G07.1 IP 0; Cancella il modo interpolazione cilindrica IP : Indirizzo dell'asse rotativo r : Raggio del pezzo Specificare G07.1 IPr ; e G07.1 IP0; in blocchi indipendenti. Invece di G07.1 può essere usato G107. - 75 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 NOTA Il raggio del pezzo deve essere positivo. Se viene specificato un valore negativo si verifica l'allarme PS0175. Spiegazioni Il bit 2 (DTO) del parametro N. 3454, permette di commutare il comando dell'asse rotativo nell'interpolazione cilindrica fra angolo dell'asse e distanza nel piano sviluppato. • Programmazione dell'angolo di rotazione (bit 2 (DTO) del parametro N. 3454=0) Il movimento dell'asse rotativo si specifica programmandone l'angolo di rotazione. Nel programma si specifica l'angolo di rotazione corrispondente al punto desiderato nel piano sviluppato. Di conseguenza, il comando si specifica in gradi. Specifica dell'angolo dell'asse rotativo • Programmazione della distanza nel piano sviluppato (bit 2 (DTO) del parametro N. 3454=1) Il movimento dell'asse rotativo si specifica programmando la distanza nel piano sviluppato. Di conseguenza, il comando si specifica in millimetri o in pollici, a seconda del sistema di misura selezionato. Specifica della distanza nel piano sviluppato Comando dell'asse rotativo Note NOTA 1 Per i dettagli relativi al funzionamento ed alle limitazioni, vedi la sottosezione "Interpolazione cilindrica". 2 Questa funzione è opzionale. - 76 - 4.10 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 CONTROLLO DEL PUNTO DI TAGLIO NELL'INTERPOLAZIONE CILINDRICA (G07.1) La funzione convenzionale di interpolazione cilindrica controlla il centro dell'utensile in modo che l'asse utensile si muova sempre lungo il percorso specificato sulla superficie cilindrica, orientato verso l'asse di rotazione del pezzo (asse del cilindro). La funzione di controllo del punto di taglio, invece, controlla l'utensile in modo che le tangenti all'utensile e alla figura lavorata passino sempre per il centro di rotazione del pezzo. In questo modo il lato di taglio del profilo è sempre perpendicolare all'asse del cilindro. Con questa funzione, la figura del profilo sul lato di taglio è sempre la stessa e non dipende dall'entità della compensazione utensile. Formato Questo comando si specifica nello stesso modo della funzione convenzionale di interpolazione cilindrica. G07.1 IPr ; Stabilisce il modo interpolazione circolare (abilitando l'interpolazione cilindrica) : G07.1 IP0 ; Cancella il modo interpolazione circolare IP : Indirizzo di un asse rotativo r : Raggio del cilindro intorno all'asse rotativo G07.1 IPr; e G07.1 IP0; devono essere specificati da soli in un blocco. E' possibile specificare anche G107. Spiegazioni - Confronto con l'interpolazione circolare convenzionale Come si vede nella Fig. 4.10 (a), il controllo è esercitato lungo l'asse di compensazione (l'asse Y) che è perpendicolare all'asse utensile e all'asse di rotazione del pezzo. Asse rotativo Asse rotativo Pezzo Utensile Asse Y Asse Y Centro dell'utensile Interpolazione cilindrica convenzionale Interpolazione cilindrica eseguita con questa funzione Fig. 4.10 (a) Confronto con l'interpolazione circolare convenzionale - 77 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Compensazione del punto di taglio (1) Compensazione del punto di taglio tra due blocchi Come si vede nella Fig. 4.10 (b), la compensazione del punto di taglio si ottiene con un movimento tra i blocchi N1 e N2. (a) Siano C1 e C2 le punte dei vettori normali a N1 e N2 da S1, che è l'intersezione del percorso del centro utensile dei blocchi N1 e N2. (b) L'utensile va su S1 in base al comando del blocco N1, poi si muove di V lungo l'asse C in π ×r conseguenza della compensazione del punto di taglio e, successivamente, di − V × 180 lungo l'asse Y. V : Componente dell'asse C di C1 - C2 C1 : Superficie di taglio del blocco N1 C2 : Superficie di taglio del blocco N2 Asse Z S1 C2 Percorso centro utensile C1 N1 V Percorso programmato N2 Asse Y Asse C sulla superficie cilindrica Fig. 4.10 (b) Compensazione del punto di taglio tra due blocchi (2) Compensazione del punto di taglio in un blocco di interpolazione circolare Come si vede nella Fig.4.10 (c), nel blocco N1 il movimento della compensazione del punto di taglio viene eseguito simultaneamente all'interpolazione circolare. (a) Sia C0 la punta del vettore normale a N1 da S0, che è la posizione del centro utensile all'inizio del blocco circolare N1. Sia C1 la punta del vettore similare sul punto finale del blocco. (b) Al movimento dell'utensile da S0 a S1, vengono sovrapposti un movimento dell'asse C corrispondente alla componente dell'asse C di (C1 - C2), V nella figura, e un movimento π × r lungo l'asse Y. corrispondente a − V × 180 Cioè, sono valide le seguenti espressioni. Al movimento lungo L indicato nella Fig.4.10 (c) si sovrappongono i seguenti movimenti lungo gli assi C e Y: ∆C = ∆V ∆Y = − π ( ∆V ) r 180 ∆V : Entità della compensazione del punto di taglio (∆V2 - ∆V1) per il movimento ∆L ∆V1 : Componente C del vettore normale a N1 dal centro utensile sul punto iniziale di ∆L ∆V2 : Componente C del vettore normale a N1 dal centro utensile sul punto finale di ∆L R : Raggio dell'arco - 78 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 V : Componente dell'asse C di C1 - C0 C0 : Superficie di taglio all'inizio del blocco N1 C1 : Superficie di taglio alla fine del blocco N1 Asse Z Percorso centro utensile S1 C0 C1 ∆L V ∆V2 ∆V1 R Percorso programmato N1 C0 S0 O Asse C sulla superficie cilindrica Asse Y Fig.4.10 (c) Compensazione del punto di taglio in un blocco di interpolazione circolare (3) Quando tra due blocchi non è applicata la compensazione del punto di taglio Quando, come si vede nella Fig.4.10 (d) e nella Fig.4.10 (e), l'entità della compensazione del punto di taglio (V nella Fig.4.10 (d) e nella Fig.4.10 (e)) è minore del valore del parametro N. 19534, viene eseguita una delle seguenti operazioni. (L'operazione eseguita dipende dall'impostazione del bit 6 (CYS) del parametro N. 19530. (a) Quando il bit 6 (CYS) del parametro N. 19530 è 1 La compensazione del punto di taglio non è applicata tra i blocchi N1 e N2, ma è applicata quando viene eseguito il blocco N2. V : Componente dell'asse C di C2 - C1 C1 : Superficie di taglio del blocco N1 C2 : Superficie di taglio alla fine del blocco N1 Asse Z Percorso centro utensile S1 C2 S2 C1 C2 N1 V N2 N3 Percorso programmato Asse Y Asse C sulla superficie cilindrica Fig.4.10 (d) Quando il bit 6 (CYS) del parametro N. 19530 è 1 (b) Quando il bit 6 (CYS) del parametro N. 19530 è 0 La compensazione del punto di taglio non è eseguita tra i blocchi N1 e N2. L'applicazione della compensazione del punto di taglio tra i blocchi N2 e N3 è determinata prendendo in considerazione l'entità della compensazione del punto di taglio tra i blocchi N2 e N3 (V1 nella Fig.4.10 (e)). - 79 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 V : Componente dell'asse C di C2 - C1 C1 : Superficie di taglio dei blocchi N1e N2 C2 : Superficie di taglio alla fine del blocco N3 Asse Z Percorso centro utensile V S1 C1 C2 S2 C1 N1 N2 N3 Percorso programmato Asse C sulla superficie cilindrica Asse Y Fig.4.10 (e) Quando il bit 6 (CYS) del parametro N. 19530 è 0 (b) Quando l'entità del movimento (L1) del blocco N2 è minore del valore specificato con il parametro N. 19535, come si vede nella Fig.4.10 (f), la compensazione del punto di taglio non è applicata tra i blocchi N1 e N2. Invece, il blocco N2 è eseguito con la compensazione del punto di taglio del blocco precedente. Se l'entità del movimento (L2) del blocco N3 è maggiore del valore specificato con il parametro N. 19535, la compensazione del punto di taglio è applicata tra i blocchi N2 e N3. V : Componente dell'asse C di C2 - C1 C1 : Superficie di taglio dei blocchi N1e N2 C2 : Superficie di taglio alla fine del blocco N3 Asse Z L1 V C2 C1 L2 C1 Percorso centro utensile N2 N1 N3 Percorso programmato Asse Y Asse C sulla superficie cilindrica Fig.4.10 (f) Quando l'entità del movimento (L1) del blocco N2 è minore del valore del parametro (d) Quando, come si vede nella Fig.4.10 (g), il diametro di un arco (R nella figura) è minore del valore del parametro N. 19535, la compensazione del punto di taglio non viene applicata simultaneamente all'interpolazione circolare. - 80 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Asse Z V : Compensazione del punto di taglio fra i blocchi N2 e N3 C1 : Superficie di taglio dei blocchi N1e N2 C2 : Superficie di taglio del blocco N3 L1 V S2 N2 S1 D C2 C1 N3 C1 Percorso centro utensile N1 Percorso programmato Asse Y Asse C sulla superficie cilindrica Fig.4.10 (g) Quando il diametro di un arco è minore del valore del parametro - Quando la compensazione del punto di taglio viene utilizzata insieme al controllo della direzione normale Quando la compensazione del punto di taglio viene utilizzata insieme al controllo della direzione normale, la compensazione fra i blocchi specificati non viene eseguita in base al metodo descritto sopra in "Compensazione del punto di taglio", ma contemporaneamente al movimento dell'asse (C) che controlla la direzione normale. Asse C Asse Z Asse Y Asse X Asse A Fig. 4.10 (h) Quando la compensazione del punto di taglio viene utilizzata insieme al controllo della direzione normale (1) Quando la direzione normale cambia fra i blocchi N1e N2, fra gli stessi viene eseguita anche la compensazione del punto di taglio. Come si vede nella Fig. 4.10 (i), la compensazione del punto di taglio descritta al punto (1) di "Compensazione del punto di taglio" viene eseguita contemporaneamente al movimento generato dal controllo della direzione normale fra i blocchi N1 e N2. - 81 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE Asse A sulla superficie cilindrica B-64484IT/02 V : Componente dell'asse A di C2 - C1 C1 : Superficie di taglio del blocco N1 C2 : Superficie di taglio del blocco N2 Utensile N2 C1 S0 Asse Y C2 N1 V Vettore della direzione normale (G41.1) Percorso centro utensile Percorso programmato Asse X Fig. 4.10 (i) Quando la direzione normale cambia fra i blocchi N1e N2 (2) Quando il controllo graduale della direzione normale cambiala medesima durante l'esecuzione di un blocco, la compensazione del punto di taglio viene eseguita contemporaneamente al movimento effettuato nel blocco. Quando l'asse che controlla la direzione normale ruota di θ1 contemporaneamente al movimento effettuato nei blocchi N1 - N2 come si vede nella Fig. 4.10 (j), la compensazione del punto di taglio determinata dal vettore V1 viene eseguita contemporaneamente al movimento in N2. V1 : Componente dell'asse A di C2 - C1 C1 : Superficie di taglio del blocco N1 Asse A sulla superficie cilindrica Utensile C2’ : Superficie di taglio alla fine del blocco N2 C2’ N3 S2 Vettore della direzione normale (G41.1) Percorso programmato N2 C1 Asse Y θ1 N1 C2 V1 S1 Percorso centro utensile (G42) Asse X Fig. 4.10 (j) Controllo graduale della direzione normale (3) Quando in un blocco, l'asse di controllo della direzione normale ha lo stesso orientamento del blocco precedente, la compensazione del punto di taglio non viene eseguita, ed è mantenuta la compensazione applicata nel blocco precedente. Come si vede nella Fig. 4.10 (k), se l'entità del movimento (L1) del blocco N2 è minore del valore specificato con il parametro N. 5483, per cui l'asse non ruota a S1 e l'entità del movimento (L2) del blocco N3 è maggiore del valore specificato con il parametro N. 5483, per cui l'asse ruota a S2, la compensazione del punto di taglio non viene eseguita a S1, ma viene applicata in base al vettore V2 a S2. - 82 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 V2 : Componente dell'asse A di C3 - C1' C1 : Superficie di taglio del blocco N1 C1’ : Superficie di taglio del blocco N2 L2 C3 : Superficie di taglio del blocco N3 Vettore S2 C1 = vettore S2 C1' Utensile Asse A sulla superficie cilindrica C1’ S2 N3 Percorso programmato N2 V2 C3 L1 C1 Asse Y V1 N1 C2 S1 Vettore della direzione normale (G41.1) Percorso centro utensile (G42) Asse X Fig. 4.10 (k) Quando la direzione normale è la stessa del blocco precedente - Velocità di avanzamento durante la compensazione del punto di taglio (1) Durante l'applicazione della compensazione del punto di taglio tra i blocchi, l'utensile si muove alla velocità di avanzamento specificata. (2) La relazione tra la velocità effettiva indicata e la velocità di avanzamento durante l'interpolazione circolare è descritta qui sotto. Indicazione della velocità effettiva La componente di velocità di ciascuna asse dopo la compensazione del punto di taglio in un dato momento durante l'interpolazione circolare è: Fz' = Fz : Componente di velocità dell'asse lineare Fc' = Fc + (Vce - Vcs) : Componente di velocità dell'asse rotativo Fy' = -(Vce - Vcs) πr : Componente di velocità dell'asse di compensazione 180 Fz : Componente di velocità dell'asse lineare dell'interpolazione cilindrica prima della compensazione del punto di taglio Fc : Componente di velocità dell'asse rotativo dell'interpolazione cilindrica prima della compensazione del punto di taglio Vcs: Componente dell'asse rotativo del vettore sul punto di contatto dell'utensile (Vs nella figura) al punto iniziale a un dato momento Vce: Componente dell'asse rotativo del vettore sul punto di contatto dell'utensile (Ve nella figura) al punto finale a un dato momento r : Raggio del cilindro dell'asse rotativo Di conseguenza, l'indicazione della velocità effettiva durante l'interpolazione circolare è maggiore del valore specificato quando |Fc’| > |Fc| (compensazione all'interno dell'arco). Al contrario, l'indicazione della velocità effettiva durante l'interpolazione circolare è minore del valore specificato quando |Fc’| < |Fc| (compensazione all'esterno dell'arco). - 83 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Asse Z Percorso programmato Fc’ Ve Percorso centro utensile Utensile Vce Fz = Fz’ Vs Vcs Fc Asse C Asse Y Fig.4.10 (l) Indicazione della velocità effettiva durante l'interpolazione circolare - Codici G utilizzabili (1) La compensazione del punto di taglio nell'interpolazione cilindrica può essere specificata in nei seguenti modi determinati dai codici G: G01, G02, G03 : Interpolazione lineare, interpolazione circolare G17, G18, G19 : Selezione del piano G22 : Controllo delle zone di sicurezza ON G64 : Modo taglio G90, G91 : Programmazione assoluta, programmazione incrementale G94 : Avanzamento al minuto (2) Nel modo compensazione del punto di taglio nell'interpolazione cilindrica possono essere specificati i seguenti codici G: G01, G02, G03 : Interpolazione lineare, interpolazione circolare G04 : Sosta G40, G41, G42 : Compensazione raggio utensile G40.1 - G42.1 : Controllo della direzione normale G64 : Modo taglio G65 - G67 : Richiamo macro G90, G91 : Programmazione assoluta, programmazione incrementale Parametri Per abilitare questa funzione, mettere a 1 il bit 5 (CYA) del parametro N. 19530. Limitazioni - Sovrataglio nella lavorazione all'interno di uno spigolo Teoricamente, quando l'area interna di uno spigolo viene lavorata con l'interpolazione lineare come si vede nella figura Fig.4.10 (m), questa funzione sovrataglia leggermente le pareti interne dello spigolo. Questo sovrataglio può essere evitato specificando un valore di R leggermente più grande del raggio dell'utensile allo spigolo. - 84 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Utensile Utensile Sovrataglio Fig.4.10 (m) Sovrataglio - Impostazione dell'incremento minimo di immissione per l'asse di compensazione (asse Y) Impostare lo stesso incremento minimo di immissione per l'asse di compensazione e per l'asse lineare dell'interpolazione cilindrica. - Specifica del raggio del pezzo Per l'asse lineare dell'interpolazione cilindrica, specificare il raggio del pezzo usando l'incremento minimo di immissione, senza punto decimale. - Impostazione dell'asse di riferimento (parametro N. 1031) Se i sistemi di incrementi dell'asse lineare e dell'asse rotativo utilizzati per l'interpolazione cilindrica sono diversi, specificare il numero dell'asse lineare dell'interpolazione cilindrica per impostarlo come asse di riferimento. - Funzione di roll-over dell'asse rotativo Quando l'asse rotativo dell'interpolazione cilindrica usa la funzione di roll-over, nel modo interpolazione cilindrica questa funzione è disabilitata. La funzione è nuovamente abilitata automaticamente quando viene rilasciato il modo interpolazione cilindrica. - Ripartenza del programma Durante la ripartenza del programma, G07.1 (modo interpolazione cilindrica) non può essere specificato. Se è specificato G07.1 si verifica l'allarme PS0175. Esempio - Esempio di compensazione del punto di taglio nell'interpolazione cilindrica Il sottostante esempio indica le relazioni posizionali tra il pezzo e l'utensile. O0001 (INTERPOLAZIONE CILINDRICA1) ; N01 G00 G90 Z100.0 C0 ; N02 G01 G91 G19 Z0 C0 ; N03 G07.1 C57299 ; N04 G01 G42 G90 Z120.0 D01 F250. ; ................ (1) N05 C20.0 ; ...................................................... (2) N06 G02 Z110.0 C60.0 R10.0 ; ............................ (3) N07 G01 Z100.0 ;.................................................. (4) N08 G03 Z60.0 C70.0 R40.0 ; .............................. (5) N09 G01 C100.0 ; : M30 ; - 85 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE Asse Z B-64484IT/02 Asse Z (mm) (1) Asse C sulla superficie cilindrica Utensile 120 (2) (3) (4) 90 80 70 60 Percorso programmato Percorso centro utensile 30 Utensile (5) 20 30 Fig. 4.10 (n) 60 70 Asse C sulla superficie cilindrica (gradi) Percorso del programma di esempio della compensazione del punto di taglio nell'interpolazione cilindrica Relazione posizionale tra il pezzo e l'utensile per (1) Relazione posizionale tra il pezzo e l'utensile per (2) Asse rotativo Asse rotativo Pezzo 0° 0° Superficie di taglio Utensile Asse Y 20° Asse Y Centro utensile Relazione posizionale tra il pezzo e l'utensile per (3) e (4) Asse rotativo Relazione posizionale tra il pezzo e l'utensile per (5) Pezzo Asse rotativo 20° 60° Asse Y Superficie di taglio Utensile 60°70° Asse Y Centro utensile Fig. 4.10 (o) Relazioni posizionali tra il pezzo e l'utensile per il programma di esempio Nei blocchi (3) e (4), la superficie di taglio nella direzione dell'asse rotativo è la stessa, anche se è cambiata la compensazione raggio utensile. - 86 - B-64484IT/02 - PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Esempio di specifica della compensazione del punto di taglio nell'interpolazione cilindrica contemporanea al controllo della direzione normale La compensazione raggio utensile N. 01 è pari a 30 mm. O0002(INTERPOLAZIONE CILINDRICA2) ; N01 G00 G90 X100.0 A0 ; N02 G01 G91 G17 X0 A0 ; N03 G07.1 C57299 ; N04 G01 G41 G42.1 G90 X120.0 D01 F250. ; N05 A20.0 ; N06 G03 X80.0 A60.0 R40.0 ; N07 G01 X70.0 ; N08 G02 X70.0 A70.0 R10.0 ; N09 G01 A150.0 ; N10 G02 X70.0 A190.0 R85.0 ; N11 G01 X110.0 A265.0 ; N12 G03 X120.0 A305.0 R85.0 ; N13 G01 A360.0 ; N14 G40 G40.1 X100.0 ; N15 G07.1 A0 ; N16 M30 ; Asse Z Asse C Asse Y Asse X Asse A Fig. 4.10 (p) Esempio di specifica contemporanea al controllo della direzione normale - 87 - 4.FUNZIONI DI INTERPOLAZIONE 4.11 PROGRAMMAZIONE B-64484IT/02 INTERPOLAZIONE ESPONENZIALE (G02.3, G03.3) L'interpolazione esponenziale cambia in modo esponenziale la rotazione del pezzo rispetto al movimento sull'asse rotativo ed esegue l'interpolazione lineare rispetto a un altro asse. Ciò permette l'esecuzione di gole coniche con lavorazione ad elica costante. Questa funzione è particolarmente adatta alla lavorazione di utensili quali i maschiatori e le frese. Z A β3 β2 β1 X Angolo dell'elica β1 = β2 = β3 Relazione tra l'asse X e l'asse A A (Asse rotativo) ∆A ∆X Fig. 4.11 (a) X (Asse lineare) Interpolazione esponenziale - 88 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Formato Rotazione positiva (ω = 0) G02. 3 X_ Y_ Z_ I_ J_ K_ R_ F_ Q_ ; Rotazione negativa (ω = 1) G03. 3 X_ Y_ Z_ I_ J_ K_ R_ F_ Q_ ; X_ Y_ Z_ I_ J_ K_ : : : : : : Punto finale programmato in assoluto o incrementale. Punto finale programmato in assoluto o incrementale. Punto finale programmato in assoluto o incrementale. Angolo I (da ±1 a ±89 gradi in unità di 0.001 gradi). Angolo J (da ±1 a ±89 gradi in unità di 0.001 gradi). Divisione dell'asse lineare nell'interpolazione esponenziale (ampiezza dell'intervallo). Le unità dipendono dall'asse di riferimento. Specificare un valore positivo. La specifica dell'ampiezza dell'intervallo dipende dal bit 0 (SPN) del parametro N. 5630. Se SPN è 0, viene assunto il valore del parametro N. 5643. Se SPN è 1, viene assunto il valore specificato con K. R_ : Valore della costante R nell'interpolazione esponenziale. (Vedere le spiegazioni che seguono.) F_ : Velocità di avanzamento iniziale. Il comando è lo stesso di un codice F normale. Specificare una velocità di avanzamento sintetizzata includendo l'asse rotativo. Q_ : Velocità di avanzamento al punto finale. Usare le stesse unità del comando F. Nel CNC, l'avanzamento dell'utensile viene interpolato tra la velocità di avanzamento iniziale (F) e la velocità di avanzamento finale (Q) in funzione dell'entità del movimento lungo l'asse lineare. Spiegazioni Z I B Z(0) J r A X U X r : U: X: I : B: J : Diametro lato sinistro Tolleranza sulla lunghezza Entità del movimento lungo l'asse lineare Angolo di inclinazione Angolo di inclinazione al fondo della gola Angolo dell'elica Fig. 4.11 (b) Lavorazione conica a elica costante Nella figura Fig. 4.11 (b) il valore assoluto lungo gli assi X, Z, o A si esprime come funzione dell'angolo di rotazione del pezzo θ, come X(θ), Z(θ) e A(θ). L'interpolazione lineare con l'asse X, viene eseguita per un asse diverso dagli assi X o A. Se X(θ) = 0, A(θ) = 0. - 89 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 La relazione si esprime come segue. θ r tan(B) − U * tan(I ) }* (e K − 1) * + Z (0) .............. (1) 2 tan(I ) θ r 1 X (θ ) = { − U * tan( I ) }* (e K − 1) * ........................ (2) tan( I ) 2 Z (θ ) = { A(θ ) = (−1) ω * 360 *θ 2π Dove K= tanJ tanI ω: Verso dell'elica (0: positivo, 1: negativo) Dalle espressioni (1) e (2) si ottiene: Z (θ ) = tan( B) * X (θ ) + Z (0) ............................................... (3) Dall'espressione (3), si ricava che la posizione dell'asse Z è determinata dall'angolo di inclinazione in fondo alla gola (B) e dalla posizione dell'asse X. Dall'espressione (1) e dalle espressioni di definizione dell'esponenziale (descritta più avanti), si determina quanto segue: R = r/2 − U * tan( I ) ........................................................... (4) Con l'espressione (4) si determina la costante R in base al diametro del lato sinistro (r), alla tolleranza sulla lunghezza (U) e all'angolo di inclinazione (I). L'angolo di inclinazione (I) e l'angolo dell'elica (J) sono dati dagli indirizzi I e J, rispettivamente. Il verso dell'elica si seleziona con G02.3/G03.3. - Espressioni di definizione dell'esponenziale Le espressioni di definizione dell'esponenziale per un asse lineare e un asse rotativo sono definite come segue: θ X (θ ) = R * (e K − 1) * 1 ................................................ (5) tan( I ) A(θ ) = (−1) ω * 360 * θ ..................................................... (6) 2π Dove, K= tan( J ) tan( I ) ω = 0/1 R, I, e J sono costanti, e θ rappresenta un angolo (in radianti). - Ampiezza dell'intervallo K Il movimento di un asse viene eseguito come interpolazione lineare in unità costituite dai valori ottenuti dividendo il movimento sull'asse X per l'ampiezza dell'intervallo (indirizzo K). Dall'espressione (5) si ottiene: θ ( X ) = K * ln( X * tan( I ) + 1) ............................................. (7) R Per un movimento da X1 a X2 dell'asse lineare, l'entità del movimento dell'asse rotativo si determina come segue: ∆θ = K *{ln( X 2 * tan( I ) X * tan( I ) + 1) − ln( 1 + 1)} R R - 90 - PROGRAMMAZIONE B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE Angolo di rotazione θ X2 X1 ∆θ X (Asse lineare) K Fig. 4.11 (c) - Ampiezza dell'intervallo K Asse rotativo θ Nell'interpolazione esponenziale, l'espressione (7) indica la relazione tra la coordinata X e l'angolo di rotazione θ intorno all'asse A. L'argomento di ln (logaritmo naturale) deve essere positivo, pertanto nell'espressione utilizzata come argomento nell'espressione (7) deve essere soddisfatta la condizione imposta dalla sottostante espressione (8). X * tan( I ) > −1 ................................................................ (8) R Se il valore di X*tan(I)/R diventa minore o uguale a -1, la posizione si sposta a destra del punto (A) nella Fig. 4.11 (d). Poiché la figura risultante non è lavorabile, si verifica l'allarme PS5062. Nell'interpolazione esponenziale i valori di X, Y, Z, e U vengono trattati come coordinate nel sistema di coordinate del pezzo. Se ad un valore positivo specificato in programmazione incrementale corrisponde una coordinata negativa, nel calcolo viene utilizzato il valore negativo della coordinata. X x U x*tan(I) I (A) R x*tan(I)/R > -1 r Origine del sistema di coordinate del pezzo Fig. 4.11 (d) Angolo di rotazione θ - 91 - x*tan(I)/R ≤ -1 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Angolo di inclinazione (I) La relazione tra il profilo da lavorare ed il segno di I è la seguente: • Se il cono cresce verso destra, I è positivo. • Se il cono decresce verso destra, I è negativo. Esempio) Y Y I>0 I<0 X X Y Y I>0 I<0 X Fig. 4.11 (e) - X Angolo di inclinazione (I) Angolo dell'elica (J) Il segno dell'angolo dell'elica (J) è come si vede qui sotto. Esempio) J>0 J>0 J X X J J<0 J<0 J J X Fig. 4.11 (f) Angolo dell'elica (J) - 92 - X PROGRAMMAZIONE B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE Esempio Z I = 3.0° Z(0) = 1.4 B = 2.0° r = 3.0 J = 45° Xs U = 5.0 X = 25.0 A Xe X Xs: Punto iniziale sull'asse X Xe: Punto finale sull'asse X N10 G90 G01 X5.0 Z1.575 ; N20 G02.3 X25.0 Z2.273 I3.0 J-45.0 K1.0 R1.238 F1000 Q1000 ; Il punto iniziale e il punto finale dell'asse Z e la costante R si ottengono dalle seguenti espressioni: Punto iniziale sull'asse Z = tan( B) * Xs + Z (0) Punto finale sull'asse Z = tan( B) * Xe + Z (0) R = r/2 − U * tan( I ) Limitazioni - Casi in cui viene eseguita l'interpolazione lineare Anche se sono attivi i modi G02.3 o G03.3, nei seguenti casi viene eseguita l'interpolazione lineare: • Quando è specificato un asse lineare diverso da quello stabilito con il parametro N. 5641, o l'entità del movimento lungo l'asse lineare è 0 • Quando è specificato un asse rotativo diverso da quello stabilito con il parametro N. 5642 • Quando la divisione dell'asse lineare (ampiezza dell'intervallo) è 0 - Compensazioni utensile Nei modi G02.3 o G03.3 non è possibile utilizzare le funzioni di compensazione (compensazione lunghezza utensile, compensazione raggio utensile, compensazione tridimensionale dell'utensile). AVVERTENZA La divisione dell'asse lineare utilizzato per l'interpolazione esponenziale (ampiezza dell'intervallo) influenza la precisione della figura. Tuttavia, se la divisione è troppo piccola, è possibile che la macchina si fermi durante l'interpolazione. La divisione ottimale dipende dalla macchina utilizzata. - 93 - 4.FUNZIONI DI INTERPOLAZIONE 4.12 PROGRAMMAZIONE B-64484IT/02 INTERPOLAZIONE RACCORDATA (G05.1) Un comando del programma può scegliere fra i seguenti due tipi di lavorazione: • Quando la precisione della figura è critica, come sugli spigoli, la lavorazione viene eseguita esattamente come è specificato dal programma pezzo. • Per le porzioni con un raggio di curvatura grande, dove deve essere creata una figura regolare, i punti lungo il profilo da lavorare sono interpolati con una curva regolare, calcolata in base alle linee del poligono specificato con i comandi del programma pezzo (interpolazione raccordata). In questo modo, è possibile eseguire lavorazioni ad alta velocità e ad alta precisione. Questa funzione necessita dell'opzione Contornatura AI. Formato G05.1Q2 Xp0 Yp0 Zp0 ; Modo interpolazione raccordata attivato : G05.1Q0 ; Modo interpolazione raccordata cancellato Xp Yp Zp : Asse X o suo asse parallelo : Asse Y o suo asse parallelo : Asse Z o suo asse parallelo NOTA 1 Specificare G05.1 da solo in un blocco. (Evitare la specifica di qualsiasi altro codice G nello stesso blocco.) 2 Specificare 0 per gli assi programmati nel blocco di attivazione del modo interpolazione raccordata. Gli assi specificati vengono assoggettati all'interpolazione raccordata, ma non si hanno movimenti neppure in programmazione assoluta. (Nel blocco G05.1Q2 non c'è movimento assi.) 3 Il modo interpolazione raccordata viene disattivato anche da un reset. Nel blocco G5.1 Q2 specificare gli assi soggetti all'interpolazione raccordata. Il comando di attivazione dell'interpolazione raccordata può specificare fino a tre assi, che possono essere esclusivamente i seguenti: • Assi base (X,Y,Z) • Assi paralleli ai tre assi base Per utilizzare la funzione di selezione delle condizioni di lavorazione, specificare G5.1 Q1 Rx prima dell'interpolazione raccordata. [Esempio] O0010 … (G5.1 Q1 R1;) G5.1 Q2 X0 Y0 Z0; Sw prima dell'interpolazione raccordata sono necessarie le seguenti funzioni, specificare G5.1. - Contornatura AI - Funzione di selezione delle condizioni di lavorazione … G5.1 Q0 ; … M30 ; Modo interpolazione raccordata cancellato Modo contornatura AI off - 94 - - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Utilizzo dell'interpolazione raccordata insieme alla compensazione lunghezza utensile Per utilizzare l'interpolazione raccordata insieme alla compensazione lunghezza utensile, abilitare la compensazione lunghezza utensile (G43, G44) prima dell'interpolazione raccordata (G5.1 Q2). Per cancellarle, cancellare l'interpolazione raccordata (G5.1 Q0) prima della compensazione lunghezza utensile (G49). [Esempio] O0010 … (G5.1 Q1 R1;) G43 H1 ; Se prima dell'interpolazione raccordata sono necessarie le seguenti funzioni, specificare G5.1. - Contornatura AI - Funzione di selezione delle condizioni di lavorazione G5.1 Q2 X0 Y0 Z0; … G5.1 Q0 ; G49 ; … M30 ; Compensazione lunghezza utensile Interpolazione raccordata L'interpolazione raccordata non può essere utilizzata insieme al controllo del centro utensile. Se si tenta di farlo, si verifica l'allarme PS5421. Spiegazioni - Caratteristiche dell'interpolazione raccordata Normalmente per lavorare un pezzo con superfici sculturate, come gli stampi usati nell'industria automobilistica e aeronautica, il programma pezzo approssima la superficie voluta con microsegmenti di retta. Come si vede nella sottostante figura (Fig. 4.12 (a)), una superficie sculturata viene normalmente approssimata usando segmenti di retta con una tolleranza di circa 10 µm. Ingrandito : Punto specificato 10µm Fig. 4.12 (a) Quando un programma pezzo approssima una curva sculturata con segmenti di retta, la lunghezza di questi segmenti varia fra le sezioni che hanno un raggio di curvatura piccolo e le sezioni che hanno un raggio di curvatura grande. I segmenti sono brevi nelle porzioni della curva con raggio di curvatura piccolo e sono più lunghi nelle porzioni con raggio di curvatura grande. Dato che l'interpolazione lineare effettua il movimento dell'utensile esattamente come programmato, la lavorazione segue con precisione l'andamento dei segmenti di approssimazione della curva sculturata. Di conseguenza, quando viene lavorata una curva sculturata il cui raggio di curvatura è grande e cambia solo gradualmente, gli spigoli formati dai segmenti restano visibili. Le irregolarità dovute alla precisione con cui viene seguito il percorso programmato sugli spigoli renderanno insoddisfacente il risultato ottenuto, quando sono richieste superfici lisce. - 95 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE Porzioni con raggio di curvatura piccolo Componenti di automobili Corti Profilo Esempio di pezzi lavorati Segmenti Superfici ottenute usando la funzione di contornatura ad alta precisione Regolari, anche se la lavorazione viene eseguita esattamente come specificato dal programma. B-64484IT/02 Porzioni con raggio di curvatura grande Componenti decorativi. Lunghi Se la lavorazione viene eseguita seguendo esattamente il percorso programmato, la superficie ottenuta può essere irregolare. Esempio di superficie irregolare (poligono) risultante da una lavorazione che segua esattamente il percorso programmato. Nel modo interpolazione raccordata il CNC determina automaticamente, in base ai comandi del programma, se è richiesta una figura precisa, ad esempio sugli spigoli, o una figura raccordata, nelle posizioni in cui il raggio di curvatura è grande. Se l'entità o la direzione del movimento specificato in un blocco sono molto diverse da quelle del blocco precedente, per tale blocco l'interpolazione raccordata non viene eseguita. Viene invece eseguita l'interpolazione lineare, esattamente come è specificato dal programma. In questo modo, la programmazione è molto semplice. (Esempio) Interpolazione per mezzo di raccordi N17 N16 N15 N1 N12 N13 N14 N11 N10 N2 N3 N5 N4 N6 N7 N8 N9 Interpolazione lineare Interpolazione per mezzo di raccordi Interpolazione lineare N17 N16 N1 N15 N14 N13 N12 N11 N2 N10 N3 N4 N5 N6 N7 N8 - N9 ON/OFF automatico della contornatura AI con l'interpolazione raccordata La programmazione di G05.1 Q2 abilita l'attivazione contemporanea dell'interpolazione raccordata e della contornatura AI. La regolazione automatica della velocità attuata dalla contornatura AI riduce gli impatti fra le parti meccaniche. La programmazione di G05.1 Q0 cancella contemporaneamente il modo interpolazione raccordata e il modo contornatura AI. - 96 - B-64484IT/02 - PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Condizioni per l'abilitazione dell'interpolazione raccordata L'interpolazione raccordata viene eseguita quando sono soddisfatte tutte le condizioni che seguono. Se una o più delle suddette condizioni non sono soddisfatte il blocco stesso viene eseguito senza applicare l'interpolazione raccordata, poi le stesse condizioni vengono verificate per il blocco successivo. (1) Il tratto di lavorazione specificato nel blocco è più breve di quello specificato con il parametro N. 8486. (2) Il tratto di lavorazione specificato nel blocco è più lungo di quello specificato con il parametro N. 8490. (3) La differenza angolare fra blocchi consecutivi è minore del valore specificato nel parametro N. 8487. (4) La lunghezza del tratto di lavorazione è diversa da 0. (5) I modi sono: G01 : Interpolazione lineare G13.1 : Interpolazione in coordinate polari cancellata G15 : Comando in coordinate polari cancellato G40 : Compensazione raggio utensile cancellata (eccetto la compensazione tridimensionale dell'utensile) G64 : Modo taglio G80 : Ciclo fisso cancellato G94 : Avanzamento al minuto (6) La lavorazione ha luogo solo lungo gli assi specificati nel blocco G05.1 Q2. (7) Il blocco viene giudicato adatto all'interpolazione raccordata eseguita con l'algoritmo interno del CNC. - Comandi che cancellano l'interpolazione raccordata (1) Funzioni ausiliarie e seconda funzione ausiliaria (2) M98, M99 : Richiamo sottoprogramma M198 : Richiamo di un sottoprogramma su memoria esterna - Controllo del modo interpolazione raccordata Il dato diagnostico N. 5000#0 indica se nel blocco attuale è abilitato il modo interpolazione raccordata. Se il modo interpolazione raccordata è abilitato, il bit "smoothing interpolation on" è 1. Esempio <Esempio di programmazione dell'interpolazione raccordata> N10 X-1000 . N11 X-1000 . N12 X-1000 G91 ; N13 X-1000 G05. 1 Q2 X0 Y0 Z0 ; N14 X-1000 N01 G01 X1000 Z-300 ; N15 X-1000 N02 X1000 Z-200 ; N16 X-1000 N03 X1000 Z-50 ; N17 X-1000 N04 X1000 Z50 ; G05. 1 Q0 ; N05 X1000 Z50 ; . N06 X1000 Z-25 ; . N07 X1000 Z-175 ; N08 X1000 Z-350 ; N09 Y1000 ; - 97 - Z350 ; Z175 ; Z25 ; Z- 50 ; Z- 50 ; Z50 ; Z200 ; Z300 ; 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE (Esempio) B-64484IT/02 Interpolazione per mezzo di raccordi N17 N16 N1 N15 N13 N14 N12 N11 N10 N2 N3 N5 N4 N6 N7 N8 Interpolazione per mezzo di raccordi N9 Interpolazione lineare Limitazioni Valgono le limitazioni della contornatura AI. Ad esse vanno aggiunte le seguenti. - Assi controllati L'interpolazione raccordata può essere specificata solo per gli assi X, Y e Z o per gli assi ad essi paralleli (fino a tre assi simultaneamente). - Codici G modali che possono essere attivi quando è specificata l'interpolazione raccordata L'interpolazione raccordata può essere specificata nei seguenti stati modali: Non deve essere specificata in stati modali diversi da questi. G13.1 G15 G40 G40.1 G49,G43,G44 G50 G50.1 G50.2 G54.2P0 G54.4P0 G64 G67 G69 G80 G94 G97 - : : : : : : : : : : : : : Modo interpolazione in coordinate polari cancellato Comando in coordinate polari cancellato Compensazione raggio utensile cancellata Controllo direzione normale cancellato Compensazione lunghezza utensile cancellata o attiva Scala cancellata Immagine speculare programmabile cancellata Tornitura poligonale cancellata Compensazione dinamica rotazione tavola cancellata Cancella la compensazione montaggio pezzo Modo taglio cancellato Richiamo macro modale cancellato Rotazione del sistema di coordinate / Conversione tridimensionale del sistema di coordinate cancellate : Ciclo fisso cancellato : Avanzamento al minuto : Velocità di taglio costante cancellata Operazioni non disponibili Nel modo interpolazione raccordata, non eseguire le seguenti operazioni. • Intervento manuale • Ritracciatura con volantino • Ripartenza del programma (esclusa la ripartenza del programma utilizzando il numero del blocco) • Ritiro e riposizionamento dell'utensile • Ritracciatura • Annullamento del blocco attivo • Interrupt delle macroistruzioni - 98 - PROGRAMMAZIONE B-64484IT/02 - 4.FUNZIONI DI INTERPOLAZIONE Funzioni che non possono essere utilizzate insieme all'interpolazione raccordata L'interpolazione raccordata non può essere utilizzata insieme alle seguenti funzioni. • Controllo assi paralleli • Controllo doppia tavola - Compensazione lunghezza utensile Specificare la compensazione lunghezza utensile prima dell'interpolazione raccordata. Non cambiare l'entità della compensazione nel modo interpolazione raccordata. 4.13 INTERPOLAZIONE NANOMETRICA RACCORDATA Introduzione Quando una superficie sculturata è approssimata con microsegmenti estremamente corti, la funzione di interpolazione nanometrica raccordata genera una curva regolare derivata dai segmenti programmati, eseguendo l'interpolazione necessaria. La funzione di interpolazione nanometrica raccordata genera una curva da una figura approssimata con segmenti entro una certa tolleranza. Se la distanza fra i punti di flesso o i punti programmati adiacenti non è costante, questa funzione è in grado di generare una curva più regolare rispetto alla funzione di interpolazione raccordata convenzionale. L'interpolazione della curva riduce l'errore di approssimazione dei segmenti e l'interpolazione nanometrica realizza una superficie di taglio più regolare. L'interpolazione della curva riduce l'errore di approssimazione dei segmenti e l'interpolazione nanometrica realizza una superficie di taglio più regolare. L'interpolazione nanometrica raccordata 2 permette di specificare i tre assi base (X, Y e Z) o li loro assi paralleli, oltre a due assi rotativi. Questo permette alla lavorazione a 5 assi (compresi gli assi rotativi) di ottenere superfici estremamente lisce e trova applicazione nella lavorazione di pezzi che richiedono la finitura a specchio delle superfici laterali dei pezzi. Questa funzione può anche essere utilizzata insieme al controllo del centro utensile (Tipo 1 (G43.4)). Ciò elimina la necessità di modificare un programma quando cambia la lunghezza utensile. Questa funzione necessita dell'opzione Contornatura AI. L'interpolazione nanometrica raccordata 2 necessita dell'opzione interpolazione nanometrica raccordata. Formato G5.1 Q3 Xp0 Yp0 Zp0 [α0] [β0] ; : Modo interpolazione nanometrica raccordata attivato G5.1 Q0 ; : Modo interpolazione nanometrica raccordata cancellato Xp : Yp : Zp : α, β : Asse X o suo asse parallelo Asse Y o suo asse parallelo Asse Z o suo asse parallelo Assi rotativi - 99 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 NOTA 1 Specificare G5.1 da solo in un blocco. (Evitare la specifica di qualsiasi altro codice G nello stesso blocco.) 2 Specificare 0 per gli assi programmati nel blocco di attivazione del modo interpolazione nanometrica raccordata. Gli assi specificati vengono assoggettati all'interpolazione nanometrica raccordata, ma non si hanno movimenti neppure in programmazione assoluta. (Nel blocco G05.1Q3 non c'è movimento assi.) 3 Il modo interpolazione nanometrica raccordata viene disattivato anche da un reset. Nel blocco G05.1 Q3 specificare gli assi soggetti all'interpolazione nanometrica raccordata. Il comando di attivazione dell'interpolazione nanometrica raccordata può specificare fino a tre assi, che possono essere esclusivamente i seguenti: • Assi base (X,Y,Z) • Assi paralleli ai tre assi base Per l'interpolazione nanometrica raccordata 2, è possibile specificare fino a due assi rotativi, in aggiunta ai precedenti. Per utilizzare la funzione di selezione delle condizioni di lavorazione, specificare G5.1 Q1 Rx prima dell'interpolazione nanometrica raccordata. Esempio O0010 … (G5.1 Q1 R1;) G5.1 Q3 X0 Y0 Z0; … G5.1 Q0 ; … M30 ; - Se prima dell'interpolazione nanometrica raccordata sono necessarie le seguenti funzioni, specificare G5.1. - Contornatura AI - Funzione di selezione delle condizioni di lavorazione Modo interpolazione nanometrica raccordata cancellato Modo contornatura AI off Utilizzo dell'interpolazione nanometrica raccordata 2 insieme al controllo del centro utensile Per eseguire l'interpolazione nanometrica raccordata 2 insieme al controllo del centro utensile (Tipo 1 (G43.4)), attivare il controllo del centro utensile (G43.4) prima dell'interpolazione nanometrica raccordata 2 (G05.1 Q3). Per cancellarli, cancellare l'interpolazione nanometrica raccordata 2 (G05.1 Q0) prima del controllo del centro utensile (G49). Esempio O0010 … G43.4 H1 P0; G5.1 Q3 X0 Y0 Z0 B0 C0; … G5.1 Q0 ; G49 ; … M30 ; Controllo del centro utensile interpolazione nanometrica raccordata 2 - 100 - - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Commutazione fra interpolazione nanometrica raccordata e interpolazione nanometrica raccordata 2 Durante l'interpolazione nanometrica raccordata, non può essere specificata l'interpolazione nanometrica raccordata 2. (Allo stesso modo, durante l'interpolazione nanometrica raccordata 2, non può essere specificata l'interpolazione nanometrica raccordata.) Per commutare fra interpolazione nanometrica raccordata e interpolazione nanometrica raccordata 2, specificare G5.1 Q0. Esempio: Commutazione da interpolazione nanometrica raccordata a interpolazione nanometrica raccordata 2 O0010 … G5.1 Q3 X0 Y0 Z0; Interpolazione nanometrica raccordata (per lavorazione a 3 assi) G5.1 Q0 ; G5.1 Q3 X0 Y0 Z0 A0 B0; Interpolazione nanometrica raccordata2 (per lavorazione a 5 assi) … G5.1 Q0 ; … M30 ; Spiegazioni Generalmente un programma approssima una superficie sculturata mediante microsegmenti con una tolleranza di circa 10 µm. Tolleranza Punto programmato Curva desiderata Fig. 4.13 (a) Molti punti programmati si trovano ai limiti della tolleranza. Inoltre i punti programmati hanno un errore di arrotondamento dovuto all'incremento minimo di immissione del CNC. La funzione di interpolazione nanometrica raccordata crea, tra ogni coppia di blocchi programmati consecutivi, una serie di punti che le permettono di realizzare una curva regolare a partire dai segmenti di approssimazione. La curva è ricavata dai punti aggiuntivi inseriti tra i blocchi contenuti nel buffer. Molti dei punti inseriti sono più vicini dei punti programmati alla curva desiderata. L'inserimento di punti aggiuntivi tra i blocchi bufferizzati consente così di generare una curva stabile. Poiché la posizione dei punti inseriti viene corretta utilizzando unità più piccole dell'incremento minimo di immissione del CNC allo scopo di mantenerla entro la tolleranza, l'effetto degli errori di arrotondamento si riduce. Per la curva ricavata dai punti inseriti corretti viene eseguita l'interpolazione nanometrica, ottenendo una superficie lavorata estremamente regolare. - 101 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Tolleranza Punto programmato Punto di intersezione Curva risultante Punto di intersezione corretto Fig. 4.13 (b) - Specifica della tolleranza La tolleranza per l'interpolazione nanometrica raccordata si specifica con il parametro N. 19581. I punti inseriti dalla funzione sono mantenuti all'interno di questa tolleranza e la curva viene determinata di conseguenza. Se il parametro N. 19581 è zero, la tolleranza diventa uguale all'entità minima di movimento determinata dal sistema di incrementi utilizzato. - Interpolazione nanometrica raccordata 2 L'interpolazione nanometrica raccordata 2 esegue l'interpolazione raccordata per i tre assi base (o per i loro assi paralleli) e per due assi rotativi, indipendentemente. Interpolazione nello spazio XYZ G5.1 Q3 X0 Y0 Z0 B0 C0; Z Y X_ Y_ Z_ B_ C_; X X_ Y_ Z_ B_ C_; … : Punto programmato Interpolazione nello spazio BC G5.1 Q0 ; C B : Punto programmato Fig. 4.13 (c) I punti di inserimento per gli assi rotativi vengono corretti in modo che la componente di ciascun asse della distanza fra un punto di inserimento e il punto di inserimento corretto per ambedue gli assi non ecceda la tolleranza impostata per ciascun asse con il parametro N. 19587. Il punto di inserimento deve essere corretto entro la tolleranza per ciascun asse. Curva risultante Tolleranza per l'asse C Punto di intersezione C Punto di intersezione corretto B Tolleranza per l'asse B Fig. 4.13 (d) - 102 - PROGRAMMAZIONE B-64484IT/02 - 4.FUNZIONI DI INTERPOLAZIONE Comportamento della funzione in base alla distanza tra due punti programmati adiacenti Se la distanza tra due punti programmati adiacenti (lunghezza di un blocco) è maggiore del valore specificato con il parametro N. 8486 o è minore del valore specificato con il parametro N. 8490, il modo interpolazione nanometrica raccordata viene cancellato all'inizio del blocco ed il blocco viene eseguito in interpolazione lineare. Quando viene presa una decisione sulla base della distanza fra due punti programmati adiacenti, vengono considerati solo i tre assi base (o i loro assi paralleli), e gli assi rotativi vengono esclusi. Nel blocco di cancellazione del modo interpolazione nanometrica raccordata per gli assi rotativi non viene eseguita l'interpolazione nanometrica raccordata. Se ambedue i suddetti parametri sono 0, la distanza tra due punti programmati adiacenti è ininfluente. - Comportamento della funzione sugli spigoli Se la differenza angolare (vedi la Fig. 4.13 (e)) tra due blocchi programmati adiacenti è maggiore del valore specificato con il parametro N. 8487, sullo spigolo viene cancellato il modo interpolazione nanometrica raccordata. Sullo spigolo, la decisione viene presa considerando solo i tre assi base (o i loro assi paralleli); gli assi rotativi non vengono considerati. Nel blocco di cancellazione del modo interpolazione nanometrica raccordata per gli assi rotativi non viene eseguita l'interpolazione nanometrica raccordata. θ1 : θ2 : Differenza angolare tra i blocchi N1 e N2 Differenza angolare tra i blocchi N2 e N3 θ2 N3 N2 N1 θ1 Fig. 4.13 (e) Se il valore del suddetto parametro è zero, la differenza angolare tra i blocchi che formano lo spigolo è ininfluente. E' possibile ignorare blocchi estremamente brevi dovuti a ragioni quali eventuali errori di calcolo del sistema CAM, senza interrompere la curva. A questo scopo, specificare con il parametro N. 19582 la distanza minima per la quale viene presa una decisione sulla base della differenza angolare. In tal modo, la differenza angolare diventa ininfluente per i blocchi la cui lunghezza è minore del limite specificato. Tuttavia, la scelta in base alla distanza tra due blocchi programmati adiacenti determinata dal valore del parametro N. 8490 ha la priorità rispetto a quella determinata dalla differenza angolare. Di conseguenza, il valore del parametro N. 19582 deve essere più grande di quello del parametro N. 8490. Se è specificato il parametro N. 19582, un blocco molto piccolo non viene considerato uno spigolo, ed è possibile eseguire una curva continua. Fig. 4.13 (f) - ON/OFF automatico della contornatura AI con l'interpolazione nanometrica raccordata La programmazione di G05.1 Q3 abilita l'attivazione contemporanea dell'interpolazione nanometrica raccordata e della contornatura AI. La regolazione automatica della velocità attuata dalla contornatura AI riduce gli impatti fra le parti meccaniche. La programmazione di G05.1 Q0 cancella contemporaneamente il modo interpolazione nanometrica raccordata e il modo contornatura AI. - 103 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Condizioni per l'abilitazione dell'interpolazione nanometrica raccordata L'interpolazione nanometrica raccordata è eseguibile quando sono soddisfatte le seguenti condizioni. In un blocco che non soddisfa tali condizioni, l'interpolazione nanometrica raccordata viene cancellata, e per il blocco successivo viene valutata la possibilità di ripristinarla. Nella descrizione che segue, "lunghezza del blocco" e "differenza angolare fra i blocchi" si riferiscono solo ai tre assi base (o agli assi ad essi paralleli), non agli assi rotativi. Tuttavia, se per un blocco viene cancellato il modo interpolazione nanometrica raccordata a causa di una di queste condizioni, l'interpolazione nanometrica non viene eseguita neppure sugli assi rotativi. (1) La lunghezza del blocco è minore del parametro N. 8486. (2) La lunghezza del blocco è maggiore del parametro N. 8490. (3) La differenza angolare fra blocchi consecutivi è minore del parametro N. 8487. (4) Il CNC è in uno dei seguenti modi: • Interpolazione lineare • Avanzamento al minuto • Compensazione raggio utensile cancellata • Ciclo fisso cancellato • Scala cancellata • Richiamo macro modale cancellato • Controllo della velocità di taglio costante cancellata • Modo taglio • Rotazione del sistema di coordinate/conversione tridimensionale del sistema di coordinate cancellate • Comando in coordinate polari cancellato • Controllo della direzione normale cancellato • Interpolazione in coordinate polari cancellata • Immagine speculare programmabile cancellata • Tornitura poligonale cancellata (5) Il blocco non contiene codici G autocancellanti. (6) Il blocco non sopprime la lettura anticipata dei blocchi (buffering). (7) Nel blocco sono specificati solo gli assi da assoggettare all'interpolazione nanometrica raccordata. - Verifica del modo interpolazione nanometrica raccordata Il dato diagnostico N. 5000 indica se nel blocco attuale è abilitato il modo interpolazione nanometrica raccordata. Se il modo interpolazione nanometrica raccordata è abilitato, il bit "smoothing on" è 1. - 104 - PROGRAMMAZIONE B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE Limitazioni - Codici G modali che possono essere attivi quando è specificata l'interpolazione nanometrica raccordata L'interpolazione nanometrica raccordata può essere specificata nei seguenti stati modali: Non deve essere specificata in stati modali diversi da questi. G13.1 G15 G40 G40.1 G49,G43,G44 G50 G50.1 G50.2 G54.2P0 G54.4P0 G64 G67 G69 G80 G94 G97 - : : : : : : : : : : : : : Modo interpolazione in coordinate polari cancellato Comando in coordinate polari cancellato Compensazione raggio utensile cancellata Controllo direzione normale cancellato Compensazione lunghezza utensile cancellata o attiva Scala cancellata Immagine speculare programmabile cancellata Tornitura poligonale cancellata Compensazione dinamica rotazione tavola cancellata Cancella la compensazione montaggio pezzo Modo taglio cancellato Richiamo macro modale cancellato Rotazione del sistema di coordinate / Conversione tridimensionale del sistema di coordinate cancellate : Ciclo fisso cancellato : Avanzamento al minuto : Velocità di taglio costante cancellata Funzionamento in blocco singolo Nel funzionamento in blocco singolo, l'arresto non avviene su un punto programmato, ma su uno dei punti corretti inseriti. Se un blocco non soddisfa le condizioni del modo interpolazione nanometrica raccordata, per quel blocco viene eseguito l'arresto in blocco singolo normale. - Compensazione lunghezza utensile La compensazione lunghezza utensile deve essere attivata prima di specificare l'interpolazione nanometrica raccordata. Non cambiare l'entità della compensazione nel modo interpolazione nanometrica raccordata. Se tra il comando che stabilisce il modo interpolazione nanometrica raccordata (G5.1 Q3) e quello che lo cancella (G5.1 Q0) vengono specificati G43, G44, o G49, si verifica l'allarme PS0343. - Compensazione raggio utensile Se la compensazione raggio utensile viene specificata nel modo interpolazione nanometrica raccordata, il modo interpolazione nanometrica raccordata viene cancellato. Poi, quando viene cancellata la compensazione raggio utensile (G40), viene presa una decisione riguardo all'esecuzione dell'interpolazione nanometrica raccordata a partire dal blocco successivo. Per la compensazione raggio utensile specificata nel modo interpolazione nanometrica raccordata l'attivazione e la cancellazione sono sempre di tipo C, indipendentemente dall'impostazione del parametro corrispondente. Evitare di specificare un comando della compensazione raggio utensile nel modo interpolazione nanometrica raccordata se non è assolutamente necessario. - Interrupt delle macroistruzioni Nel modo interpolazione nanometrica raccordata non è possibile utilizzare l'interrupt delle macroistruzioni. Se il modo interpolazione nanometrica raccordata viene specificato quando è abilitato l'interrupt delle macroistruzioni o se viene abilitato l'interrupt delle macroistruzioni nel modo interpolazione nanometrica raccordata, si verifica l'allarme PS0342. - 105 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Interventi manuali Nel modo interpolazione nanometrica raccordata non è possibile eseguire interventi manuali con il modo assoluto in manuale attivato. Se lo si tenta, al primo cycle start successivo all'intervento manuale si verifica l'allarme PS0340. - Compensazione dinamica rotazione tavola Prima di specificare il modo interpolazione nanometrica raccordata cancellare il comando della compensazione dinamica rotazione tavola (G54.2). Questi comandi non possono essere utilizzati nel modo interpolazione nanometrica raccordata. Se si tenta di utilizzarli, si verifica l'allarme PS0343. - Numero dei blocchi specificabili consecutivamente Nel modo interpolazione nanometrica raccordata è possibile specificare fino a 300 milioni di blocchi consecutivi. Se i blocchi specificati sono di più, si verifica l'allarme PS0341. Tuttavia, quando viene incontrato un blocco che non soddisfa le condizioni del modo interpolazione nanometrica raccordata, il modo viene cancellato ed il conteggio dei blocchi successivi riparte da 0. - Continuità del programma Nel modo interpolazione nanometrica raccordata l'interpolazione della curva viene eseguita per una serie di blocchi programmati, compresi quelli caricati nel buffer. Quindi, nel modo interpolazione nanometrica raccordata, i comandi del programma devono essere eseguiti con continuità. In alcuni casi, tra cui il seguente, la continuità di un programma può essere persa e la sua esecuzione può diventare discontinua. Nel modo interpolazione nanometrica raccordata viene eseguito un arresto in blocco singolo e viene eseguito un altro programma nel modo MDI. In questo caso, si verifica l'allarme PS0344. - Limitazioni imposte alla ripresa del funzionamento automatico (1) Ripartenza del programma Nel modo interpolazione nanometrica raccordata la curva viene interpolata utilizzando i punti corretti inseriti anziché i punti programmati. Di conseguenza, il funzionamento automatico non può essere riavviato da un punto programmato e quindi non è possibile ripartire specificando un numero di sequenza. Per riavviare un programma, specificare un numero di blocco utilizzando il contatore dei blocchi visualizzato sulla schermata programma. (2) Ritiro e riposizionamento dell'utensile Nel modo interpolazione nanometrica raccordata non è possibile ritirare o riposizionare l'utensile. (3) Ritracciatura Nel modo interpolazione nanometrica raccordata non è possibile ritracciare il programma. (4) Ritracciatura con volantino Nel modo interpolazione nanometrica raccordata non è possibile eseguire la ritracciatura con volantino. (5) Cancellazione del blocco attivo Nel modo interpolazione nanometrica raccordata la funzione di cancellazione del blocco attivo è temporaneamente disabilitata. - Funzioni che non possono essere utilizzate simultaneamente L'interpolazione nanometrica raccordata non può essere utilizzata insieme alle seguenti funzioni: • Controllo assi paralleli • Controllo doppia tavola - 106 - B-64484IT/02 - PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Visualizzazione grafica in background La funzione visualizzazione grafica in background disegna il percorso corrispondente all'interpolazione lineare. - Controllo del centro utensile L'interpolazione nanometrica raccordata 2 può essere utilizzata insieme al controllo del centro utensile (Tipo 1 (G43.4)). Però, se viene utilizzata insieme al controllo del centro utensile Tipo 2 (G43.5) o al controllo orientamento utensile, si verifica l'allarme PS5421, "COMANDO ILLEGALE IN G43.4/G43.5". Se si utilizza l'interpolazione nanometrica raccordata 2 nel modo controllo del centro utensile (tipo 1 (G43.4)), gli assi rotativi devono essere specificati come assi soggetti all'interpolazione nanometrica raccordata. Altrimenti, si verifica l'allarme PS5421, “COMANDO ILLEGALE IN G43.4/G43.5”. - 107 - 4.FUNZIONI DI INTERPOLAZIONE 4.14 PROGRAMMAZIONE B-64484IT/02 INTERPOLAZIONE NURBS (G06.2) Molti sistemi CAD (computer-aided design) utilizzati per la progettazione di stampi per l'industria automobilistica e aeronautica esprimono le superfici e le curve sculturate degli stampi attraverso B-spline razionali non uniformi (NURBS = non-uniform rational B-spline). Questa funzione del CNC permette di specificare direttamente una curva NURBS. Ciò elimina la necessità di approssimarla con micro segmenti di retta. I vantaggi che se ne ottengono sono: 1. Nessun errore dovuto all'approssimazione della curva NURBS 2. Riduzione delle dimensioni del programma pezzo 3. Nessuna interruzione fra microblocchi eseguiti ad alta velocità 4. Nessuna necessità di trasferimento dati ad alta velocità dall'host al CNC Quando si usa questa funzione, un sistema CAM (computer-aided machining) crea una curva NURBS in accordo con l'espressione NURBS generata dal sistema CAD, tenendo in considerazione la lunghezza, il diametro e altri elementi caratteristici dell'utensile. La curva NURBS viene programmata nel formato NC utilizzando questi tre parametri di definizione: punto di controllo, peso e nodo. CAD(Progettazione di uno stampo) Generazione di una superficie dello stampo (Superficie o curva NURBS) CAM (Creazione di un programma pezzo) Studio del metodo di lavorazione, ecc. File compensazioni utensile Programma pezzo con compensazioni utensile (Curva NURBS) Curva NURBS (punto di controllo, peso, nodo) Macchina utensile Unità CNC Fig. 4.14 (a) Programma pezzo per la lavorazione di uno stampo in base ad una curva NURBS L'interpolazione NURBS può essere eseguita per un massimo di cinque assi (compresi due assi rotativi). Quindi l'interpolazione NURBS può essere eseguita per i tre assi base (X, Y e Z) e per due assi rotativi allo stesso tempo. Questo permette alla lavorazione a 5 assi di ottenere superfici estremamente lisce e trova applicazione nella lavorazione di pezzi che richiedono la finitura a specchio delle superfici laterali dei pezzi. Questa funzione può anche essere utilizzata insieme al controllo del centro utensile (Tipo 1 (G43.4)). Ciò elimina la necessità di modificare un programma quando cambia la lunghezza utensile. - 108 - PROGRAMMAZIONE B-64484IT/02 4.FUNZIONI DI INTERPOLAZIONE Formato G06.2[P ] K X Y Z [α ] [β ][R ] [F ]; K X Y Z [α ] [β ][R ]; K X Y Z [α ] [β ][R ]; K X Y Z [α ] [β ][R ]; : K X Y Z [α ] [β ][R ]; K; : K; G01 . . . G06.2 P XYZ αβ R K F : : : : : : : Attivazione del modo interpolazione NURBS Rango della curva NURBS Punto controllato Punto controllato (assi rotativi) Peso Nodo Velocità di avanzamento Per eseguire l'interpolazione NURBS insieme al controllo del centro utensile (Tipo 1 (G43.4)), attivare il controllo del centro utensile (G43.4) prima dell'interpolazione NURBS(G06.2). Per cancellarli, terminare l'interpolazione NURBS (con un codice G del gruppo 01 diverso da G06.2) prima di cancellare il controllo del centro utensile (G49). Esempio: O0010 … G43.4 H1 P0; G06.2 K_ X_ Y_ Z_ B_ C_; … Controllo del centro utensile K_ G01 X_ Y_ Z_ B_ C_; G49 ; … M30 ; Interpolazione NURBS Spiegazioni - Il modo interpolazione NURBS Il modo interpolazione NURBS si seleziona programmando G06.2. G06.2 è un codice G modale del gruppo 01. Il modo interpolazione NURBS viene cancellato dai codici G del gruppo 01 diversi da G06.2 (G00, G01, G02, G03, ecc.). - 109 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Rango della NURBS Il rango della NURBS si specifica con l'indirizzo P. Se è specificato, il rango deve essere definito nel primo blocco. Se si omette la specifica del rango, per la NURBS viene assunto un rango di 4 (grado tre). Il campo dei valori validi per l'indirizzo P è 2 .. 4. I valori di P hanno il seguente significato: P2: NURBS di rango due (primo grado) P3: NURBS di rango tre (secondo grado) P4: NURBS di rango quattro (terzo grado) (assunto per default) Nell'espressione della curva NURBS indicata nella descrizione che segue, il rango è indicato da k. Ad esempio, una curva NURBS avente un rango di quattro è di terzo grado. La curva NURBS può essere espressa dalle costanti t3, t2, e t1. - Peso E' possibile definire il peso del punto di controllo programmato in un blocco. Se la specifica del peso è omessa, viene assunto un peso di 1.0. - Nodo Deve essere specificato un numero di nodi pari al numero dei punti di controllo più il valore del rango. Nei blocchi che specificano i punti di controllo, dal primo all'ultimo, devono essere specificati insieme un punto di controllo e un nodo. Dopo questi blocchi, ne devono essere programmati altri, tanti quanto è il valore del rango, contenenti solo un nodo. La curva NURBS programmata per l'interpolazione NURBS deve iniziare dal primo punto di controllo e finire sull'ultimo punto di controllo. I primi k nodi (k è il rango) devono avere lo stesso valore degli ultimi k nodi (nodi multipli). Se le coordinate assolute del punto di partenza dell'interpolazione NURBS non corrispondono alla posizione del primo punto di controllo, viene generato l'allarme PS5117. (Nel modo incrementale, programmare G06.2 X0 Y0 Z0 K_). - Curva NURBS Con queste variabili: k : Rango Pi : Punto controllato Wi : Peso Xi : Nodo (Xi < Xi+1) Vettore dei nodi [X0, X1, . . . , Xm] (m = n+ k) t : Parametro della spline, la funzione base della spline N può essere espressa con la formula ricorsiva di de Boor-Cox, come si vede qui sotto: N i ,1 ( t ) = N i , k (t ) = ⎧ 1( x i < t < 1 x i +1 ) ⎨ 0 (t < x , x i i +1 < t ) ⎩ (t − xi ) N i ,k −1 (t ) xi + k −1 − x i + ( x i + k − t ) N i +1,k −1 (t ) x i + k − xi +1 La curva NURBS P(t) interpolata può essere espressa come segue: n P( t ) = ∑N i =0 n i ,k ∑N i =0 (t)w i p i i ,k (t)w 1 (X0<t<Xm) - Reset Un reset eseguito durante l'interpolazione NURBS ha come risultato lo stato di clear. Il codice modale del gruppo 1 entra nello stato specificato con il bit 0 (G01) del parametro N. 3402. - 110 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Limitazioni - Assi controllati L'interpolazione NURBS può essere eseguita su un massimo di cinque assi (compresi due assi rotativi). Gli assi dell'interpolazione NURBS devono essere specificati nel primo blocco. Non è possibile specificare un altro asse prima dell'inizio di una nuova curva NURBS o prima della cancellazione del modo interpolazione NURBS. - Altri comandi nel modo interpolazione NURBS Nel modo interpolazione NURBS, non possono essere specificati comandi diversi da quelli dell'interpolazione NURBS (funzioni ausiliarie o altre). - Interventi manuali Se viene tentato un intervento manuale mentre è settato il modo assoluto in manuale, si verifica l'allarme PS5118. - Compensazione raggio utensile La compensazione raggio utensile non può essere eseguita simultaneamente. L'interpolazione NURBS può essere specificata solo dopo aver cancellato la compensazione raggio utensile. - Compensazione tridimensionale dell'utensile La compensazione tridimensionale dell'utensile non può essere eseguita simultaneamente. L'interpolazione NURBS può essere specificata solo dopo aver cancellato la compensazione tridimensionale dell'utensile. - Controllo del centro utensile Il controllo del centro utensile (Tipo 1 (G43.4)) può essere eseguito simultaneamente, ma il controllo del centro utensile (Tipo 2 (G43.5)) e il controllo orientamento utensile non possono esserlo. Se si tenta di eseguire simultaneamente il controllo del centro utensile (Tipo 2 (G43.5) o il controllo orientamento utensile e l'interpolazione NURBS, si verifica l'allarme PS5421. Esempio <Esempio di programmazione dell'interpolazione NURBS> G90; ... G06.2 K0. X0. Z0.; K0. X300. Z100.; K0. X700. Z100.; K0. X1300. Z-100.; K0.5 X1700. Z-100.; K0.5 X2000. Z0.; K1.0; K1.0; K1.0; K1.0; G01 Y0.5; G06.2 K0. X2000. Z0.; K0. X1700. Z-100.; K0. X1300. Z-100.; K0. X700. Z100.; K0.5 X300. Z100.; K0.5 X0. Z0.; K1.0; K1.0; K1.0; K1.0; G01 Y0.5; G06.2 ... ... G01 ... - 111 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Z Y 1000. X 2000. 4.14.1 Funzioni addizionali dell'interpolazione NURBS Per i CNC FANUC Serie 30i/31i, l'interpolazione NURBS fornisce le seguenti funzioni addizionali: - Controllo parametrico della velocità di avanzamento La velocità massima di avanzamento di ciascun segmento viene determinata in base alla velocità di avanzamento ed all'accelerazione specificate. Per una serie di segmenti, la velocità di avanzamento al punto iniziale ed al punto finale dei segmenti viene determinata come segue. Durante il movimento dal punto iniziale al punto finale la velocità di avanzamento cambia continuamente. Questa funzione può essere utilizzata per l'interpolazione NURBS quando il bit 5 (FDI) del parametro N. 8412 è 1. 1. Velocità al punto iniziale (1) All'inizio dell'interpolazione NURBS Se l'entità del movimento nel blocco precedente è 0, la velocità massima del primo segmento viene vista come velocità al punto iniziale. Se l'entità del movimento nel blocco precedente non è 0, viene vista come velocità al punto iniziale la minore fra la velocità specificata nel blocco precedente e la velocità massima del primo segmento. Blocco precedente: Il blocco che precede immediatamente quello che specifica l'interpolazione NURBS. (2) Secondo segmento e segmenti successivi La velocità al punto iniziale del segmento è la minore fra la velocità massima del segmento precedente e la velocità massima di questo segmento. 2. Velocità al punto finale (1) Tutti i segmenti salvo l'ultimo La velocità al punto finale del segmento è la minore fra la velocità massima di questo segmento e la velocità massima del segmento successivo. (2) Alla fine dell'interpolazione NURBS Se l'entità del movimento nel blocco successivo è 0, la velocità massima di questo segmento viene vista come velocità al punto finale. Se l'entità del movimento nel blocco successivo non è 0, viene vista come velocità al punto finale la minore fra la velocità specificata nel blocco successivo e la velocità massima di questo segmento. Dopo un arresto in blocco singolo, la velocità al punto iniziale dopo la ripartenza sarà la velocità massima del segmento in questione. Dopo un feed hold, la velocità alla ripartenza sarà uguale alla velocità in essere al momento del feed hold. Esempio - 112 - PROGRAMMAZIONE B-64484IT/02 1. Programma G90 G06.2 X0. Y0. K0. F2000 ; X10. Y10. K0. F1500 ; X20. Y20. K0. F1800 ; X30. Y30. K0. ; X40. Y40. K1. X50. Y50. K2. K3. K3. K3. K3. 2. Velocità specificata 4.FUNZIONI DI INTERPOLAZIONE Velocità 2000 1800 1500 Tempo 3. Controllo parametrico della velocità Velocità 2000 1800 1500 Tempo 4. A causa dell'aggiunta dell'accelerazione/decelerazione prima dell'interpolazione, la velocità di avanzamento in lavoro effettiva sarà quella mostrata qui sotto. Velocità 2000 1800 1500 Tempo NOTA Il metodo di accelerazione/decelerazione è l'accelerazione/decelerazione a campana. - Programmazione ad alta precisione dei nodi Se il bit 1 (HIK) del parametro N. 8412 è 1, è possibile programmare i nodi con un numero intero di al massimo 12 cifre con una parte decimale di al massimo 12 cifre. Questa funzione può essere utilizzata solo per i nodi (indirizzo K) programmati con il punto decimale durante l'interpolazione NURBS. - 113 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Se si utilizza pa programmazione ad alta precisione dei nodi, il formato dei comandi è il seguente. K (Numero di cifre A) . (Numero di cifre B) dove A + B deve essere al massimo 12. La stringa formata dall'indirizzo K, dalle cifre specificate e dal punto decimale deve essere al massimo di 14 caratteri. (Esempio) Validi K.999999999999 K1234.56789012 K999999999999. Non validi (causano l'allarme PS0012) K0.999999999999 K1234.567891230 K1234.567891234 K999999999999.0 - Comando semplificato di attivazione Se il bit 0 (EST) del parametro N. 8412 è 1, il primo punto di controllo può essere omesso il comando di controllo. Poiché per i nodi del primo e del secondo blocco viene specificato lo stesso valore, nel primo blocco è possibile omettere il comando del nodo. Con questa funzione, il formato di programmazione dell'interpolazione NURBS diventa: G06.2 [P ] [K K K K … K K … K ] [IP ] [R ] [F IP [R ]; IP [R ]; IP [R ]; IP ; [R ]; ]; ; G01… … G06.2 P IP R K F : : : : : : Modo interpolazione NURBS attivato Rango della curva NURBS Punto controllato Peso Nodo Velocità Le parole tra [ ] sono facoltative. - 114 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Se nel primo blocco viene omesso il comando del punto di controllo, viene vista come punto di controllo la posizione al momento dell'attivazione dell'interpolazione NURBS. Inoltre, vengono trattati come assi dell'interpolazione NURBS solo gli assi specificati per il punto di controllo del secondo blocco; quindi, nel secondo blocco, specificare tutti gli assi soggetti all'interpolazione NURBS. Se nel primo blocco viene omesso il comando del nodo, il nodo è lo stesso del secondo blocco. - 115 - 4.FUNZIONI DI INTERPOLAZIONE 4.15 PROGRAMMAZIONE B-64484IT/02 INTERPOLAZIONE CON ASSE VIRTUALE (G07) Definendo come asse virtuale uno degli assi in interpolazione circolare dell'interpolazione elicoidale, può essere eseguita l'interpolazione sinusoidale. Con la distribuzione impulsi dell'asse virtuale (uno degli assi dell'interpolazione circolare), può essere fatta variare sinusoidalmente la velocità dell'altro asse. Definendo come asse virtuale l'asse lungo (l'asse lungo il quale il movimento dell'utensile è maggiore), può essere eseguita una filettatura con passo frazionario. L'asse virtuale si definisce programmando G07. Formato G07 α0 ; Definizione dell'asse virtuale : G07 α1 ; Cancellazione dell'asse virtuale Dove α è uno qualsiasi degli assi controllati. Spiegazioni - Interpolazione sinusoidale Dopo un comando G07 α0 e finché non viene programmato G07 α1 l'asse a è utilizzato come asse virtuale. Supponiamo che l'interpolazione sinusoidale venga eseguita per un ciclo nel piano YZ. L'asse virtuale è in questo caso l'asse X. X2+Y2 = r2 (r è il raggio di un arco.) 2π Z) (l è la distanza percorsa lungo l'asse Z in un ciclo.) Y = rSIN ( 1 Y r π O π 2 2π Z 1 - Interblocco, limiti di corsa, decelerazione esterna L'interblocco, i limiti di corsa, e il comando di decelerazione dall'esterno sono validi anche per l'asse virtuale. - Interrupt del volantino Un interrupt causato dal volantino è valido anche per l'asse virtuale. Questo significa che il movimento corrispondente all'interrupt del volantino viene eseguito. - 116 - B-64484IT/02 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Limitazioni - Operazioni manuali L'interpolazione con asse virtuale può essere usata soltanto nel funzionamento automatico. Nel funzionamento manuale non è efficace e l'asse si muove. - Comando di movimento Specificare l'interpolazione con asse virtuale solo nel modo incrementale. - Rotazione delle coordinate L'interpolazione con asse virtuale non supporta la rotazione delle coordinate. Esempio - Interpolazione sinusoidale Y 10.0 Z 20.0 0 N001 G07 X0 ; N002 G91 G17 G03 X-20.0 Y0.0 I-10.0 Z20.0 F100 ; N003 G01 X10.0 ; N004 G07 X1 ; Nei blocchi N002 e N003, l'asse X è usato come asse virtuale. Il blocco N002 specifica un'interpolazione elicoidale nella quale l'asse Z è usato come asse lineare. Però, dato che l'asse X non si muove, l'asse Y si muove in interpolazione sinusoidale con l'asse Z. Nel blocco N003, dato che l'asse X non si muove, la macchina esegue una sosta fino al termine dell'interpolazione. - Variazione sinusoidale della velocità di avanzamento (Esempio di programmazione) G07Z0 ; L'asse Z viene definito come asse virtuale. G02X0Z0I10.0F4. ; La velocità dell'asse X varia sinusoidalmente. G07Z1 ; Viene cancellata la definizione di Z come asse virtuale. F 4.0 Xt - 117 - 4.FUNZIONI DI INTERPOLAZIONE 4.16 PROGRAMMAZIONE B-64484IT/02 FILETTATURA A PASSO VARIABILE (G34) Specificando un incremento o un decremento del passo al giro, si possono eseguire filettature a passo variabile. Fig. 4.16 (a) Filettatura a passo variabile Formato G34 IP_ F_ K_ Q_ ; IP_ F_ K_ Q_ : : : : Punto finale Passo nella direzione dell'asse longitudinale al punto iniziale Incremento o decremento del passo al giro del mandrino Spostamento angolare del punto di partenza della filettatura Spiegazioni Gli indirizzi diversi da K sono gli stessi della filettatura lineare o conica con G32. Il valore di K dipende dal sistema di incrementi dell'asse di riferimento, come indicato nella tabella 4.16 (a). Se il valore di K è fuori dall'intervallo indicato nella tabella 4.16 (a), o se fa sì che venga superato il passo massimo o che il passo diventi negativo, si verifica l'allarme PS0313. Tabella 4.16 (a) Sistema di incrementi dell'asse di riferimento IS-A IS-B IS-C IS-D IS-E Intervallo dei valori di K Input metrico (mm/giro) ±0.001 ±0.0001 ±0.00001 ±0.000001 ±0.0000001 - ±500.000 ±500.0000 ±50.00000 ±5.000000 ±0.5000000 Input in pollici (pollici/giro) ±0.00001 ±0.000001 ±0.0000001 ±0.00000001 ±0.000000001 - ±50.00000 ±50.000000 ±5.0000000 ±0.50000000 ±0.050000000 AVVERTENZA La funzione "ritiro durante il ciclo di filettatura" non è attiva per G34 Esempio Passo al punto iniziale: 8.0 mm Incremento del passo: 0.3 mm/giro G34 Z-72.0 F8.0 K0.3 ; - 118 - B-64484IT/02 4.17 PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE FILETTATURA CIRCOLARE (G35, G36) Con i comandi G35 e G36 è possibile eseguire una filettatura circolare avente il passo specificato nella direzione dell'asse principale. L L: Passo Fig. 4.17 (a) Filettatura circolare Formato Qui sotto viene fornito un esempio relativo al piano G18 (piano Z-X). Per il piano G17 (piano X-Y), sostituire gli indirizzi Z, X, K e I con X, Y, I, e J, rispettivamente. Per il piano G19 (piano Y-Z), sostituire gli indirizzi Z, X, K e I con Y, Z, J, e K, rispettivamente. M G35 G36 I _ K X_Z_ _ F_Q_; R_ G35 : Filettatura circolare in senso orario G36 : Filettatura circolare in senso antiorario X, Z : Punto finale dell'arco (come per G02, G03). I, K : Posizione del centro dell'arco rispetto al punto iniziale, in coordinate relative (come per G02, G03). R : Raggio dell'arco. F : Passo nella direzione dell'asse principale. Q : Spostamento angolare del punto di partenza della filettatura (da 0° a 360°, con incremento minimo di immissione di 0.001) (Il valore può essere programmato con il punto decimale.) - 119 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 T G35 I _ K _ F_Q_; R_ X(U)_ Z(W)_ G36 G35 : Filettatura circolare in senso orario G36 : Filettatura circolare in senso antiorario X(U), Z(W) : Punto finale dell'arco (come per G02, G03). I, K R F Q : Posizione del centro dell'arco rispetto al punto iniziale, in coordinate relative (come per G02, G03). : Raggio dell'arco. : Passo nella direzione dell'asse principale. : Spostamento angolare del punto di partenza della filettatura (da 0° a 360°, con incremento minimo di immissione di 0.001) (Il valore non può essere programmato con il punto decimale.) X F Punto iniziale Punto finale (Z, X) I R K Z Centro dell'arco Spiegazioni - Specifica del raggio dell'arco Se I, K e R vengono specificati insieme, è valido solo R. - Spostamento angolare Se si programma un angolo superiore a 360°, viene assunto un angolo di 360°. M - Specifica dello spostamento angolare Q Per specificare lo spostamento angolare Q, mettere a 1 il bit 0 (GQS) del parametro N. 3451. T - Compensazione automatica dell'utensile Il comando G36 è utilizzato per specificare le seguenti due funzioni: compensazione automatica dell'utensile lungo l'asse X e filettatura circolare antioraria. La funzione del comando G36 dipende dal bit 3 (G36) del parametro N. 3405. • Se il parametro G36 è 0, il comando G36 è utilizzato per la compensazione automatica dell'utensile lungo l'asse X. - 120 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 • Se il parametro G36 è 1, il comando G36 è utilizzato per la filettatura circolare antioraria. Per specificare la compensazione automatica dell'utensile lungo l'asse X è possibile usare il comando G37.1 e per specificare la compensazione automatica dell'utensile lungo l'asse Z è possibile usare il comando G37.2. (Metodo di specifica) G37.1 X_ G37.2 Z_ • Codici G quando il bit 3 del parametro N. 3405 è 1 Codice G G35 G36 G37 G37.1 G37.2 Gruppo di codici G 01 00 Funzione Filettatura circolare in senso orario Filettatura circolare in senso antiorario Compensazione automatica dell'utensile lungo l'asse Z Compensazione automatica dell'utensile lungo l'asse X Compensazione automatica dell'utensile lungo l'asse Z Limitazioni - Intervallo di specifica dell'arco L'arco specificato deve essere tale per cui l'asse principale dell'arco stesso sia sempre Z o sia sempre X, come si vede nella Fig. 4.17 (b)e nella Fig. 4.17 (c). Se l'arco include un punto nel quale l'asse principale passa da X a Z o viceversa, come si vede nella Fig. 4.17 (d), si ha l'allarme PS5058. X Punto finale Punto iniziale Z 45° Fig. 4.17 (b) Intervallo nel quale l'asse principale è Z X Punto iniziale 45° Z Punto finale Fig. 4.17 (c) Intervallo nel quale l'asse principale è X - 121 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 X Punto iniziale L'asse principale cambia in questo punto. Punto finale Z 45° Fig. 4.17 (d) Esempio di specifica di un arco che causa un allarme - Il punto finale non è sull'arco Se il punto finale non è sull'arco, la posizione del punto finale viene raggiunta con un movimento lineare. Poi viene eseguito un movimento lungo un altro asse per raggiungere il punto finale. Punto finale Punto finale r r Centro Centro Punto iniziale Punto iniziale Fig. 4.17 (e) Movimento quando il punto finale non è sull'arco - 122 - PROGRAMMAZIONE B-64484IT/02 4.18 4.FUNZIONI DI INTERPOLAZIONE FUNZIONE DI SALTO (G31) G31 comanda l'interpolazione lineare come G01. L'immissione di un segnale esterno di salto durante l'esecuzione di questo comando interrompe il resto del blocco e fa eseguire il blocco successivo. La funzione di salto si usa quando il punto finale non è noto a priori, ma è specificato da un segnale della macchina, come, per esempio, nella rettifica. Questa funzione si usa anche per misurare le dimensioni del pezzo. Formato G31 IP ; G31 : Codice G autocancellante (valido solo per il blocco che lo contiene) Spiegazioni Le macroistruzioni possono usare i valori delle coordinate del punto cui è pervenuto il segnale di salto in quanto essi vengono memorizzati come segue nelle variabili di sistema #100151 - #100182 delle macroistruzioni. Per i sistemi fino a 20 assi è possibile utilizzare anche le variabili di sistema compatibili con la Serie 16 (#5061 - #5080). #100151 (#5061): Coordinata del primo asse #100152 (#5062) : Coordinata del secondo asse : #100170 (#5080): Coordinata del ventesimo asse #100171 : #100172 : : #100182 : Coordinata del ventunesimo asse Coordinata del ventiduesimo asse Coordinata del trentaduesimo asse AVVERTENZA Per migliorare la precisione della posizione dell'utensile quando perviene il segnale di salto, la regolazione della velocità di avanzamento, la prova a vuoto e l'accelerazione/decelerazione automatica sono disabilitate per la funzione di salto programmata nel modo avanzamento al minuto. Queste funzioni possono essere abilitate mettendo a 1 il bit 7 (SKF) del parametro N. 6200. Nel modo avanzamento al giro, queste funzioni sono abilitate NOTA Se G31 viene specificato quando è attiva la compensazione raggio utensile, viene generato l'allarme PS0035. Prima di specificare il comando G31, cancellare la compensazione raggio utensile con G40. - 123 - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio - Il blocco successivo a G31 contiene un comando incrementale G31 G91 X100.0 F100; Y50.0; Segnale di salto ricevuto qui 50.0 Y 100.0 Movimento effettivo X Movimento senza segnale di salto Fig. 4.18 (a) - Il blocco successivo è in programmazione incrementale Il blocco successivo a G31 contiene un comando assoluto di un solo asse G31 G90 X200.0 F100; Y100.0; Y100.0 Segnale di salto ricevuto qui X200.0 Movimento effettivo Movimento senza segnale di salto Fig. 4.18 (b) - Il blocco successivo è un comando assoluto per un asse Il blocco successivo a G31 contiene un comando assoluto di due assi G31 G90 X200.0 F100; X300.0 Y100.0; Y Segnale di salto ricevuto qui 100 (300,100) Movimento effettivo Movimento senza segnale di salto X 100 Fig. 4.18 (c) 200 300 Il blocco successivo è un comando assoluto per due assi - 124 - PROGRAMMAZIONE B-64484IT/02 4.19 4.FUNZIONI DI INTERPOLAZIONE SALTO MULTIPASSO (G31) In un blocco contenente P1, P2, P3 o P4 dopo G31, la funzione di salto multipasso memorizza nelle variabili delle macroistruzioni le coordinate della posizione in cui si alza un segnale di salto (4 punti o 8 punti; 8 punti se si usa il segnale di salto ad alta velocità). Se un blocco di sosta (G04) contiene Q1, Q2, Q3 o Q4, la funzione di salto multipasso può interrompere la sosta quando si alza un segnale di salto (4 punti o 8 punti; 8 punti se si usa il segnale di salto ad alta velocità). Con la funzione di salto è possibile utilizzare il segnale emesso da un dispositivo di misura per saltare la lavorazione comandata dal programma. Nella rettifica a tuffo, ad esempio, è possibile eseguire automaticamente una serie di operazioni, dalla sgrossatura alla passata di spegnifiamma, alzando un segnale di salto al completamento di ciascuna operazione di sgrossatura, semifinitura, finitura o di spegnifiamma. Formato Comando di movimento G31 IP_ F_ P_ ; IP_ : Punto finale F_ : Velocità di avanzamento P_ : P1 - P4 Sosta G04X(U,P)_ (Q_ ); X(U,P)_ : Tempo di sosta Q_ : Q1 - Q4 Spiegazioni Il salto multipasso si comanda programmando P1, P2, P3 o P4 in un blocco G31. Per la spiegazione di come scegliere P1, P2, P3 o P4, consultare il manuale del costruttore della macchina utensile. La specifica di Q1, Q2, Q3 o Q4 in un blocco G04 (comando di sosta) permette di saltare la sosta allo stesso modo di G31. La sosta può essere saltata anche senza specificare Qn. Per la spiegazione di come scegliere Q1, Q2, Q3 o Q4, consultare il manuale del costruttore della macchina utensile. - Segnali di salto I parametri da 6202 a 6205 permettono di specificare se si usa un segnale di salto a 4 punti o a 8 punti (quando si usa il segnale di salto ad alta velocità). La specifica non è limitata alla corrispondenza uno a uno. E' possibile specificare che un segnale di salto corrisponde a due o più Pn o Qn (n = 1..4). Inoltre è possibile usare i bit 0 (DS1) e 7 (DS8) del parametro N. 6206 per specificare la sosta. AVVERTENZA Se non è specificato Qn e non sono impostati i bit 0 (DS1) e 7 (DS8) del parametro N. 6206, la sosta non viene saltata. - 125 - 4.FUNZIONI DI INTERPOLAZIONE 4.20 PROGRAMMAZIONE B-64484IT/02 SEGNALE DI SALTO AD ALTA VELOCITA' (G31) La funzione di salto opera in base ad un segnale di salto ad alta velocità (collegato direttamente al CNC; senza passare per il PMC), invece che con un segnale di salto normale. In questo caso, possono esistere fino a 8 segnali in ingresso. Il ritardo e l'errore dell'ingresso del segnale di salto variano da 0 a 2 msec dal lato NC (senza considerare quelli del lato PMC). Questa funzione mantiene il suddetto valore entro 0.1 msec, aumentando così la precisione della misura. Per i dettagli consultare il manuale del costruttore della macchina utensile. Formato G31 IP ; G31; Codice G autocancellante (valido solo per il blocco che lo contiene) 4.21 MIGLIORAMENTO DELLA MEMORIZZAZIONE DELLA POSIZIONE DI SALTO Introduzione Mettendo a 1 il bit 7 (SKM) del parametro N. 6007, nelle variabili #100151 - #100200 (#5061 - #5080), che memorizzano la posizione di salto durante l'esecuzione di G31 (comando di salto della lavorazione), è ora possibile leggere la posizione di salto nel sistema di coordinate del pezzo valido al momento del salto, anche se dopo il comando G31 è stato eseguito un comando di selezione/impostazione del sistema di coordinate del pezzo. Mettendo a 0 il bit 7 (SKM) del parametro N. 6007, se dopo il comando G31 è stato eseguito un comando di selezione/impostazione del sistema di coordinate del pezzo, è possibile leggere la posizione di salto nel sistema di coordinate del pezzo valido al momento della lettura, come prima. Variabile macro Quando il bit 7 (SKM) del parametro N. 6007 è 1, le seguenti variabili contengono la posizione al momento del salto, anche se dopo il comando G31 è stato eseguito un comando di selezione/impostazione del sistema di coordinate del pezzo. Numero della variabile #5061 - #5080 Nome della variabile Attributo [#_ABSKP[n]] R [#_SKPDTC[n]] R #100151 - #100200 #5421 - #5440 #100701 - #100750 Descrizione Posizione di salto (sistema di coordinate del pezzo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Posizione di salto (sistema di coordinate del pezzo, unità di retroazione) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) - 126 - 4.22 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 FUNZIONE DI SALTO CONTINUO AD ALTA VELOCITA' Introduzione La funzione di salto continuo ad alta velocità si utilizza per leggere le coordinate assolute mediante i segnali di salto ad alta velocità HDI0 - HDI7. Quando, durante l'esecuzione di un blocco G31P90, perviene un segnale di salto ad alta velocità, le coordinate assolute vengono memorizzate nelle variabili macro #5061 #5080. Per un sistema con più di 20 assi, vengono utilizzate le variabili #100151 - #100182. Quando perviene il segnale, il movimento degli assi non si ferma, così è possibile leggere le coordinate di più punti. Mediante il bit 5 (CSE) del parametro N. 6201, è possibile abilitare sia il fronte di salita sia il fronte di discesa dei segnali ad alta velocità. Per i dettagli, consultare il manuale fornito dal costruttore della macchina utensile. Formato G31 P90 IP ; G31; Codice G autocancellante (valido solo per il blocco che lo contiene) Spiegazioni - Variabili delle macro istruzioni Se perviene un segnale di salto ad alta velocità durante l'esecuzione di un blocco G31P90, le coordinate assolute vengono memorizzate nelle variabili macro #5061 - #5080. Per un sistema con più di 20 assi, vengono utilizzate le variabili #100151 - #100182. Queste variabili vengono aggiornate non appena l'asse raggiunge una nuova posizione di salto. E' pertanto necessario specificare una velocità di avanzamento tale per cui l'asse raggiunga la nuova posizione di salto in un tempo sufficiente alla lettura delle variabili da parte del software applicativo. Sistemi con non più di 20 assi #5061 Coordinate del primo asse #5062 Coordinate del secondo asse #5063 Coordinate del terzo asse : #5079 Coordinate del diciannovesimo asse #5080 Coordinate del ventesimo asse - Sistemi con più di 20 assi #100151 Coordinate del primo asse #100152 Coordinate del secondo asse #100153 Coordinate del terzo asse : #100181 Coordinate del trentunesimo asse #100182 Coordinate del trentaduesimo asse Segnale di salto ad alta velocità Questa funzione lavora solo con un segnale di salto ad alta velocità. Selezionare il segnale con i bit da 0 a 7 (9S1 - 9S8) del parametro N. 6208. - Fine del blocco Un blocco G31P90 termina quando l'asse raggiunge il punto finale. Limitazioni La funzione di salto continuo ad alta velocità (G31P90) deve essere programmata per un solo asse. Se vengono specificati due o più assi, si verifica l'allarme PS5068. - 127 - 4.FUNZIONI DI INTERPOLAZIONE 4.23 PROGRAMMAZIONE B-64484IT/02 SALTO AL LIMITE DI COPPIA Introduzione Se viene limitata la coppia del motore asse*1, un comando di movimento successivo a G31 P99 (o a G31 P98) può generare lo stesso tipo di avanzamento in lavoro specificato da G01 (interpolazione lineare). Se, durante questo movimento la coppia del motore asse raggiunge la coppia limite (coppia limite del motore moltiplicata per il coefficiente di regolazione) a causa della pressione applicata o per qualche altra ragione, o se perviene un segnale di salto (compreso un segnale di salto ad alta velocità), viene cancellato il movimento residuo e viene eseguito il blocco successivo. (D'ora in poi l'operazione consistente nella cancellazione del movimento residuo e nell'esecuzione del blocco successivo viene detta salto della lavorazione.) Il limite di coppia del motore può essere regolato nei seguenti due modi: (1) Esecuzione di un comando di limitazione della coppia nella finestra del PMC (2) Programmazione dell'indirizzo Q nello stesso blocco contenente il comando G31P99 (o G31P98). *1 : La coppia limite del motore viene impostata automaticamente a un valore conforme al tipo di motore. Formato G31 P98 Q_ α_ F_ G31 P99 Q_ α_ F_ G31 : Comando di salto (codice G autocancellante) P98 : Esegue l'operazione di salto se la coppia del motore raggiunge il limite. P99 : Esegue l'operazione di salto se la coppia del motore raggiunge il limite o se perviene un segnale di salto. Q : Regolazione del limite di coppia Campo di validità: 1 - 254 (%) 0 - 255 corrisponde a 0% - 100%. Il comando Q è facoltativo. Se lo si omette, specificare preventivamente il comando di limitazione della coppia nella finestra del PMC. Se il comando Q viene omesso e non è stata impostata preventivamente la limitazione della coppia, si verifica l'allarme PS0035. Se viene specificato un valore fuori dal campo di validità, si verifica l'allarme PS0366. Il valore di regolazione è valido solo per il blocco nel quale viene specificato. Alla fine dell'operazione di salto, il valore di regolazione ritorna a quello assunto immediatamente prima del comando G31. α : Un indirizzo asse F : Velocità di avanzamento - Condizioni per l'esecuzione dell'operazione di salto Condizione Viene raggiunto il limite di coppia. Viene ricevuto un segnale di salto. Comando G31P98 Viene eseguita l'operazione di salto. L'operazione di salto non viene eseguita. - 128 - G31P99 Viene eseguita l'operazione di salto. Viene eseguita l'operazione di salto. - 4.FUNZIONI DI INTERPOLAZIONE PROGRAMMAZIONE B-64484IT/02 Operazioni eseguite durante il salto al limite di coppia (Esempio) N1 G31 P99 Q50 Z400.0 F100.0 ; N2 G01 X300.0 F500.0 ; X A : Posizione di arresto della macchina B : Posizione del CNC quando viene raggiunto il limite di coppia C : Posizione finale del blocco N1 300.0 N2 200.0 Entità dell'errore 100.0 N1 A 100.0 200.0 B 300.0 C 400.0 Z Nel salto al limite di coppia, l'asse specificato viene spinto contro un fermo o un altro elemento. Quando il motore raggiunge il limite di coppia specificato, viene eseguita l'operazione di salto. Dato che l'operazione di salto è determinata dal raggiungimento del limite di coppia del motore, A differenza della funzione di salto normale, non è necessario utilizzare un sensore, o un atro dispositivo, per generare il segnale di salto. (1) Al punto A la macchina entra in contatto con l'oggetto da misurare e si ferma. In questo caso, poiché non è stato raggiunto il limite di coppia, non viene eseguita l'operazione di salto, l'esecuzione del comando di movimento continua e la posizione attuale del CNC viene aggiornata. (2) Poiché l'emissione degli impulsi del comando di movimento continua ma la macchina resta ferma, emerge una differenza (entità dell'errore) fra la posizione del CNC e quella della macchina; di conseguenza aumenta la coppia applicata al motore. (3) Quando viene raggiunto il limite di coppia, nella posizione di arresto della macchina (punto A) viene eseguita un'operazione di salto e viene eseguito il blocco N2. Assumendo che la posizione attuale del CNC al raggiungimento del limite di coppia fosse il punto B, l'entità dell'errore durante il salto al limite di coppia è uguale ad (A - B). - Comando del limite di coppia Se, quando viene programmato il salto al limite di coppia, manca la specifica del valore di regolazione (indirizzo Q o impostazione mediante la finestra del PMC), si verifica l'allarme PS0035. Se manca il comando che limita la coppia, il valore della regolazione è uguale a 0% o 100%. Se il blocco che specifica il salto al limite di coppia non contiene l'indirizzo Q (valore di regolazione), il limite di copia deve essere specificato come nel seguente esempio. (Esempio di programmazione) O0012 : Mxx (Limitazione della coppia attraverso la finestra del PMC) : G31 P99 X200. F100.(Comando di salto al limite di coppia) : G01 X100. F500.(Comando di movimento mentre il limite di coppia è ancora attivo) : Myy (Cancellazione del limite di coppia attraverso la finestra del PMC) : M30 - 129 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Limite dell'errore di posizione in presenza del comando di limitazione della coppia Durante l'esecuzione del comando di salto al limite di coppia, il controllo dell'errore di posizione non viene eseguito rispetto ai limiti imposti con i parametri N. 1828 e 1829. Questo controllo viene eseguito rispetto al limite specificato con il parametro N. 6287. Se l'errore di posizione eccede il limite, si verifica l'allarme SV0004 ed il movimento dell'asse termina immediatamente. - Variabili delle macro istruzioni Quando viene eseguito il comando di salto al limite di coppia, le variabili di sistema #5061 - #5080 (posizione del segnale di salto; per un sistema con più di 20 assi vengono utilizzate le variabili #100151 #100182) memorizzano le coordinate della posizione assunta alla fine del salto. In realtà, quando viene eseguita l'operazione di salto, esiste una differenza dovuta al ritardo del servo sistema fra la posizione della macchina e la posizione attuale del CNC. Questa differenza può essere determinata sulla base dell'errore di posizione dell'asse. Mediante il bit 2 (TSE) del parametro N. 6201, è possibile stabilire se la posizione del segnale di salto memorizzata nelle variabili di sistema deve o non deve essere compensata per l'errore di posizione del servosistema. Posizione durante l'operazione di salto Posizione attuale del CNC Posizione di macchina Errore Punto di arresto Origine delle coordinate Posizione compensata in base al ritardo Posizione senza considerare il ritardo NOTA 1 Con il comando di salto al limite di coppia specificare un solo asse. Se l'asse non viene specificato o se vengono specificati più assi, si verifica l'allarme PS0369. 2 Non specificare il comando di salto al limite di coppia nel modo conversione tridimensionale delle coordinate o per un asse parallelo. Altrimenti si verifica l'allarme PS0035. 3 Non specificare il comando di salto al limite di coppia nei modi G41 o G42. Altrimenti si verifica l'allarme PS0035. 4 Il segnale di limite di coppia raggiunto viene emesso indipendentemente dal comando di salto al limite di coppia. 5 Non specificare il comando di salto al limite di coppia per un asse sincronizzato mediante il controllo sincrono (come: controllo sincrono, controllo doppia tavola o accoppiamento elettronico) 6 Non specificare il comando di salto al limite di coppia in n blocco continuo. 7 Maggiore è la velocità del movimento, più grande sarà la differenza fra la posizione nella quale si verifica l'arresto e la posizione nella quale viene rilevato il salto. L'errore aumenta anche nel caso di una variazione della velocità durante il movimento. Non cambiare la velocità mediante una regolazione o altro. - 130 - PROGRAMMAZIONE B-64484IT/02 4.24 4.FUNZIONI DI INTERPOLAZIONE INTERPOLAZIONE CIRCOLARE NELLO SPAZIO Introduzione La specifica di un punto intermedio e del punto finale di un arco permette di eseguire l'interpolazione circolare in uno spazio tridimensionale. Formato Il formato del comando è il seguente: G02.4 XX1 YY1 ZZ1 αα1 ββ1 ; Primo blocco (punto intermedio dell'arco) XX2 YY2 ZZ2 αα2 ββ2 ; Secondo blocco (punto finale dell'arco) α,β: Assi qualsiasi diversi da quelli dell'interpolazione (fino a due assi) Specificabili se necessario. E' possibile utilizzare G03.4 invece di G02.4. G03.4 esegue le stesse operazioni di G02.4. Spiegazioni - Gruppo di codici G G02.4 e G03.4 sono codici G modali del gruppo 01. Essi dunque rimangono validi finché non viene programmato un altro codice G dello stesso gruppo. - Punto iniziale, punto intermedio, e punto finale Nello spazio tridimensionale, un arco è definito univocamente con il suo punto iniziale (posizione corrente) un punto intermedio e il punto finale, come si vede qui sotto. Per definire un arco di questo tipo sono necessari due blocchi. Il primo blocco specifica il percorso utensile dal punto iniziale al punto intermedio. Il secondo blocco specifica il percorso utensile dal punto intermedio al punto finale. X Punto intermedio (X1,Y1,Z1) Y Z Punto finale (X2,Y2,Z2) Punto iniziale Fig. 4.24 (a) Punto iniziale, punto intermedio e punto finale Se lo stato modale viene cambiato con un codice G del gruppo 01 prima di specificare il punto finale, l'arco non può essere ottenuto e viene indicato l'allarme PS5432. Durante il funzionamento in MDI, l'allarme PS5432 viene indicato se si applica un cycle start dopo aver definito solo il punto intermedio. - Movimento lungo gli assi diversi da quelli dell'interpolazione circolare nello spazio Oltre agli assi dell'interpolazione circolare nello spazio (X/Y/Z), possono essere contemporaneamente specificati altri due assi qualsiasi (α/β). Se α/β sono omessi nel primo blocco (specifica del punto intermedio) e sono specificati solo nel secondo blocco (specifica del punto finale), l'utensile si muove lungo gli assi α/β durante il movimento dal punto intermedio al punto finale dell'arco. Se α/β sono omessi nel secondo blocco (specifica del punto finale) e sono specificati solo nel primo blocco (specifica del punto intermedio), l'utensile si muove lungo gli assi α/β durante il movimento dal punto iniziale al punto intermedio. - 131 - 4.FUNZIONI DI INTERPOLAZIONE - PROGRAMMAZIONE B-64484IT/02 Programmazione incrementale In programmazione incrementale, nel primo blocco si specifica la posizione relativa del punto intermedio rispetto al punto iniziale e nel secondo blocco si specifica la posizione relativa del punto finale rispetto al punto intermedio. - Senso di rotazione Il senso di rotazione non può essere specificato. Il movimento è lo stesso sia per G02.4 sia per G03.4. - Blocco singolo Nel modo blocco singolo, cycle start provoca il movimento dal punto iniziale al punto finale. L'arresto in blocco singolo non è eseguito tra il primo (specifica del punto intermedio) e il secondo blocco (specifica del punto finale). - Punto iniziale quando sono specificate consecutivamente due o più interpolazioni circolari nello spazio Se sono specificate consecutivamente due interpolazioni circolari nello spazio, il punto finale della prima interpolazione è assunto come punto iniziale della seconda. - Comando di velocità Specificare la velocità tangenziale lungo l'arco nello spazio tridimensionale. Limitazioni - Casi in cui viene eseguita l'interpolazione lineare • Se il punto iniziale, il punto intermedio, e il punto finale sono sulla stessa linea, viene eseguita l'interpolazione lineare. Se il punto iniziale coincide con il punto intermedio, il punto intermedio coincide con il punto finale, o il punto finale coincide con il punto iniziale, viene eseguita l'interpolazione lineare fino al punto finale. Se il punto iniziale, il punto intermedio, e il punto finale sono sulla stessa linea e il punto finale giace tra il punto iniziale e il punto intermedio, l'utensile va in interpolazione lineare dal punto iniziale al punto intermedio e poi ritorna, sempre in interpolazione lineare, dal punto intermedio al punto finale. Così, l'utensile passa sempre per il punto specificato. • • Punto iniziale - Punto finale Punto intermedio Cerchi completi Non è possibile specificare un cerchio completo (arco di 360 gradi). (Questo corrisponde al caso, precedentemente descritto, in cui viene eseguita l'interpolazione lineare.) - Funzioni di compensazione Prima di usare questa funzione, cancellare le funzioni di compensazione del gruppo 07, quali la compensazione raggio utensile. - Assoluto in manuale Mentre è attiva questa funzione non è possibile eseguire interventi manuali con il commutatore assoluto in manuale nella posizione ON. Se questo avviene, quando l'operatore riparte compare l'allarme PS5433. - 132 - B-64484IT/02 - PROGRAMMAZIONE 4.FUNZIONI DI INTERPOLAZIONE Limitazione di funzioni Nel modo interpolazione circolare nello spazio, è possibile usare le seguenti funzioni, ma non ne può essere cambiata la condizione. • Conversione pollici/millimetri (Se la condizione viene cambiata con G20 o G21 si verifica un allarme.) • Immagine speculare (Lo stato del segnale non può essere cambiato.) • Avanzamento F1-cifra (La velocità di avanzamento non può essere cambiata con il generatore manuale di impulsi.) - Comandi che non possono essere specificati Nel modo interpolazione circolare nello spazio, non è possibile usare i seguenti comandi. Se vengono specificati si verifica un allarme. • Interpolazione esponenziale G02.3,G03.3 • Sosta G04 • Lavorazione ad alta velocità G05 (Esclusi G05P10000 e G05P0) • Contornatura AI G05.1Q1,G5.1Q0 • Interpolazione con asse virtuale G07 • Interpolazione cilindrica G07.1 • Controllo avanzato con prelettura dei blocchi G08 (Utilizzare la contornatura AI ad alta precisione.) • Interpolazione in coordinate polari G12.1, G13.1 • Comando in coordinate polari G15, G16 • Controllo del ritorno al punto di riferimento G27 • Ritorno al punto di riferimento G28 • Ritorno al secondo punto di riferimento G30 • Ritorno al terzo/quarto punto di riferimento G30 • Salto G31 • Filettatura G33 • Misura automatica della lunghezza utensile G37 • Compensazione tridimensionale della fresa G41 • Correzione utensile G45,G46,G47,G48 • Immagine speculare programmabile G50.1, G51.1 • Sistema di coordinate locali G52 • Sistema di coordinate della macchina G53 • Posizionamento unidirezionale G60 • Modo maschiatura G63 • Richiamo macro G65,G66,G67 (Il richiamo di sottoprogrammi è possibile.) • Copia della figura G72.1,G72.2 • Ciclo fisso G73-G79, G80, G81-G89, G98, G99 • Impostazione del sistema di coordinate del pezzo G92 • Preset del sistema di coordinate del pezzo G92.1 • Avanzamento al giro G95 • Controllo della velocità di taglio costante G96,G97 • Interpolazione NURBS G06.2 • Impostazione del sistema di coordinate del pezzo G54-G59, G54.1 • Conversione tridimensionale del sistema di coordinate G68 • Rotazione del sistema di coordinate G68 • Scala G50,G51 • Immagine speculare programmabile G50.1, G51.1 - 133 - 4.FUNZIONI DI INTERPOLAZIONE • • • PROGRAMMAZIONE • • • • • • Modo arresto esatto G61 Compensazione raggio utensile G38,G39,G40,G41,G42 Compensazione tridimensionale dell'utensile G40, G41.2, G41.3, G41.4, G42.4, G42.5, G42.6 Impostazione dati G10 Arresto esatto G09 Funzioni ausiliarie Seconda funzione ausiliaria Funzioni mandrino Funzioni utensile - Funzioni che non possono essere specificate B-64484IT/02 G41.5, G41.6, G42.2, Se si usa la seguente funzione nel modo interpolazione circolare nello spazio, compare un messaggio di avvertimento: • Intervento in MDI Se si usano le seguenti funzioni nel modo interpolazione circolare nello spazio, compare l'allarme PS5196: • Intervento manuale • Ritiro e riposizionamento dell'utensile Nel modo interpolazione circolare nello spazio non è possibile usare le seguenti funzioni: • Arresto al numero di sequenza specificato (Nel modo interpolazione circolare nello spazio, il programma non si ferma al blocco specificato.) • Indexaggio tavola rotante • Controllo dell'asse rotativo • Macro executor (Esecuzione delle macro) • Interruzione del volantino • Smussi e raccordi arbitrari - Altre limitazioni L'interpolazione circolare nello spazio non può essere usata insieme alla seguente funzione: • Controllo dell'asse inclinato arbitrario Possono esistere limitazioni occasionali derivanti dalla combinazione di più istruzioni NC. Riferirsi alla descrizione di ciascuna funzione. - 134 - PROGRAMMAZIONE B-64484IT/02 5 5.FUNZIONI DI AVANZAMENTO FUNZIONI DI AVANZAMENTO Il Capitolo 5, "FUNZIONI DI AVANZAMENTO", è costituito dalle seguenti sezioni: 5.1 5.2 5.3 5.4 5.5 5.6 5.1 INTRODUZIONE ............................................................................................................................. 135 RAPIDO ............................................................................................................................................ 136 AVANZAMENTO IN LAVORO ..................................................................................................... 137 CONTROLLO DELLA VELOCITA' DI AVANZAMENTO.......................................................... 144 COMANDO DI VELOCITA' SU UN CERCHIO VIRTUALE PER UN ASSE ROTATIVO ........ 148 SOSTA .............................................................................................................................................. 152 INTRODUZIONE Le funzioni di avanzamento controllano la velocità dell'utensile. Sono disponibili le seguenti due funzioni: - Funzioni di avanzamento 1. Rapido Quando viene specificato un comando di posizionamento (G00), l'utensile si muove alla velocità rapida stabilita per il CNC (parametro N. 1420). Avanzamento in lavoro L'utensile si muove alla velocità di avanzamento programmata. 2. - Regolazione La velocità dell'utensile può essere regolata, sia in rapido sia in lavoro, usando il selettore che si trova sul pannello dell'operatore. - Accelerazione e decelerazione automatiche Allo scopo di ottenere partenze e arresti graduali, all'inizio e alla fine dei movimenti dell'utensile vengono applicate automaticamente l'accelerazione e la decelerazione (Fig. 5.1 (a)) Velocità in rapido FR : Velocità in rapido TR : Costante di tempo per l'accelerazione/ decelerazione in rapido FR Tempo 0 0 TR TR Velocità di avanzamento FC : Velocità di avanzamento TC : Costante di tempo per l'accelerazione/ decelerazione in lavoro FC Tempo 0 TC TC Fig. 5.1 (a) Accelerazione e decelerazione automatiche (esempio) - 135 - 5.FUNZIONI DI AVANZAMENTO - PROGRAMMAZIONE B-64484IT/02 Percorso dell'utensile durante l'avanzamento in lavoro Se fra due blocchi consecutivi di avanzamento in lavoro cambia la direzione del movimento, può derivarne un arrotondamento dello spigolo dovuto alla relazione tra la costante di tempo e la velocità di avanzamento (Fig. 5.1 (b)). Y Percorso programmato Percorso utensile effettivo 0 X Fig. 5.1 (b) Esempio di percorso dell'utensile fra due blocchi In interpolazione circolare, si verifica un errore di raggio (Fig. 5.1 (c)). ∆r : Errore Y Percorso programmato Percorso utensile effettivo r 0 X Fig. 5.1 (c) Esempio di errore del raggio dell'interpolazione circolare L'arrotondamento dello spigolo nella Fig. 5.1 (b) e l'errore di raggio nella Fig. 5.1 (c) dipendono dalla velocità di avanzamento. Pertanto, se si vuole che l'utensile esegua il percorso programmato occorre controllare la velocità di avanzamento. 5.2 POSIZIONAMENTO RAPIDO Formato G00 IP_ ; G00 : Codice G (gruppo 01) per il posizionamento in rapido IP_ : Coordinate del punto finale Spiegazioni Il posizionamento in rapido si ottiene con il comando di posizionamento (G00). In rapido, il blocco successivo viene eseguito dopo che la velocità è scesa a 0 e la posizione programmata è stata raggiunta, con una tolleranza stabilita dal costruttore della macchina utensile (controllo in-posizione). Non è necessario programmare la velocità, dato che questa è impostata per ciascun asse tramite il parametro N. 1420. La velocità in rapido può essere regolata tramite il selettore che si trova sul pannello dell'operatore: F0, 25%, 50%, 100% F0 è una velocità fissa impostata con il parametro N. 1421. Per i dettagli consultare il manuale del costruttore della macchina utensile. - 136 - PROGRAMMAZIONE B-64484IT/02 5.3 5.FUNZIONI DI AVANZAMENTO AVANZAMENTO IN LAVORO Introduzione La velocità di avanzamento per l'interpolazione lineare (G01), l'interpolazione circolare (G02, G03), ecc. si programma come valore numerico dopo il codice F. Nell'avanzamento in lavoro, il blocco successivo è eseguito in modo da minimizzare la variazione della velocità di avanzamento. M Sono disponibili quattro modalità di specifica: 1. Avanzamento al minuto (G94) Dopo il codice F, specificare l'entità dell'avanzamento al giro del mandrino. 2. Avanzamento al giro (G95) Dopo il codice F, specificare l'entità dell'avanzamento al giro del mandrino. 3. Inverso del tempo (G93) Dopo il codice F, specificare l'inverso del tempo (FRN). 4. F-1 cifra Dopo il codice F specificare il numero di 1 cifra corrispondente alla velocità memorizzata nel CNC che si vuole comandare. T Sono disponibili due modalità di specifica: 1. Avanzamento al minuto (G98) Dopo il codice F, specificare l'entità dell'avanzamento al giro del mandrino. 2. Avanzamento al giro (G99) Dopo il codice F, specificare l'entità dell'avanzamento al giro del mandrino. 3. Inverso del tempo (G93) Dopo il codice F, specificare l'inverso del tempo (FRN). Formato M Avanzamento al minuto G94 ; Codice G (gruppo 05) per l'avanzamento al minuto F_ ; Velocità di avanzamento (mm/min o pollici/min) Avanzamento al giro G95 ; Codice G (gruppo 05) per l'avanzamento al giro F_ ; Velocità di avanzamento (mm/giro o pollici/giro) Inverso del tempo (G93) G93 ; Codice G (gruppo 05) per il comando della velocità di avanzamento con l'inverso del tempo F_ ; Velocità di avanzamento (1/min) F-1 cifra Fn ; n : Numero da 1 a 9 - 137 - 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 T Avanzamento al minuto G98 ; Codice G (gruppo 05) per l'avanzamento al minuto F_ ; Velocità di avanzamento (mm/min o pollici/min) Avanzamento al giro G99 ; Codice G (gruppo 05) per l'avanzamento al giro F_ ; Velocità di avanzamento (mm/giro o pollici/giro) Inverso del tempo (G93) G93 ; Codice G (gruppo 05) per il comando della velocità di avanzamento con l'inverso del tempo F_ ; Velocità di avanzamento (1/min) Spiegazioni - Controllo della velocità tangenziale L'avanzamento è controllato in modo che la velocità tangenziale sia sempre uguale alla velocità di avanzamento programmata. Y Y Punto finale Punto iniziale F F Punto iniziale Centro Punto finale X Fig. 5.3 (a) - X Interpolazione circolare Interpolazione lineare Velocità tangenziale (F) Avanzamento al minuto Nel modo avanzamento al minuto, la velocità di avanzamento dell'utensile al minuto viene direttamente programmata col codice F. Il codice G per l'avanzamento al minuto è modale. Dopo essere stato specificato, rimane valido finché non viene comandato un altro codice G dello stesso gruppo. M All'accensione è attivo il modo avanzamento al minuto. T All'accensione è attivo il modo avanzamento al giro. Alla velocità di avanzamento al minuto può essere applicata una regolazione da 0 a 254% (con incrementi di 1%) tramite il selettore che si trova sul pannello dell'operatore. Per i dettagli consultare il manuale del costruttore della macchina utensile. - 138 - PROGRAMMAZIONE B-64484IT/02 • 5.FUNZIONI DI AVANZAMENTO Fresatura Avanzamento al minuto (mm/min o pollici/min) Utensile Pezzo Tavola • Tornitura Avanzamento al minuto (mm/min o pollici/min) F Fig. 5.3 (b) Avanzamento al minuto AVVERTENZA Alcuni comandi, come la filettatura, inibiscono la regolazione della velocità di avanzamento. - Avanzamento al giro Nel modo avanzamento al giro, la velocità di avanzamento dell'utensile al giro del mandrino viene direttamente programmata col codice F. Il codice G per l'avanzamento al giro è modale. Dopo essere stato specificato, rimane valido finché non viene comandato un altro codice G dello stesso gruppo. Alla velocità di avanzamento al giro può essere applicata una regolazione da 0 a 254% (con incrementi di 1%) tramite il selettore che si trova sul pannello dell'operatore. Per i dettagli consultare il manuale del costruttore della macchina utensile. T Se il bit 0 (NPC) del parametro N. 1402 è 1, è possibile specificare l'avanzamento al giro anche se non è utilizzato un encoder. (Il CNC converte i comandi di avanzamento al giro in comandi di avanzamento al minuto.) • Fresatura F Avanzamento al giro (mm/giro o pollici/giro) - 139 - 5.FUNZIONI DI AVANZAMENTO • PROGRAMMAZIONE B-64484IT/02 Tornitura F Fig. 5.3 (c) Avanzamento al giro (mm/giro o pollici/giro) Avanzamento al giro AVVERTENZA Quando la velocità di rotazione del mandrino è bassa, la velocità di avanzamento non è uniforme. Il grado di non uniformità aumenta con il diminuire della velocità del mandrino. - Inverso del tempo Quando viene specificato G93, viene stabilito il modo programmazione della velocità di avanzamento con l'inverso del tempo (modo G93). L'inverso del tempo (FRN) si programma con il codice F. Come FRN può essere specificato un valore nell'intervallo 0.001..9999.999, indipendentemente dal fatto che la programmazione sia in pollici o in millimetri e che il sistema di incrementi sia IS-B o IS-C. Specifica del codice F F1 F1 (*1) F1.0 F9999999 F9999 (*1) F9999.999 FRN 0.001 1.000 1.000 9999.999 9999.000 9999.999 NOTA *1 Valore specificato nel formato a punto fisso quando il bit 0 (DPI) del parametro N. 3401 è 1 Il codice G93 è modale e appartiene al gruppo 05, che include anche il codice G per l'avanzamento al giro e il codice G per l'avanzamento al minuto. Se la velocità di avanzamento risultante dal valore programmato con F nel modo G93 eccede la velocità massima di avanzamento, la velocità stessa è limitata a tale massimo. Nel caso dell'interpolazione circolare, la velocità di avanzamento non è calcolata in base all'effettiva entità del movimento comandato nel blocco, ma in base al raggio dell'arco. Questo significa che il tempo di lavorazione effettiva sarà più lungo se il raggio dell'arco è più grande della distanza dell'arco e più breve se il raggio dell'arco è più piccolo. L'inverso del tempo può anche essere usato per programmare la velocità di avanzamento in un ciclo fisso. - 140 - PROGRAMMAZIONE B-64484IT/02 5.FUNZIONI DI AVANZAMENTO NOTA 1 Nel modo G93, il codice F non è trattato come codice modale e di conseguenza deve essere programmato in tutti i blocchi. Se non è specificato il codice F, si verifica l'allarme PS1202, “MANCA COMANDO F IN G93”. 2 Se viene specificato F0 nel modo avanzamento con l'inverso del tempo, si verifica l'allarme PS0011, "AVANZAMENTO ZERO (COMANDO)". 3 L'inverso del tempo non può essere usato quando è in atto il controllo asse da PMC. 4 Se la velocità di avanzamento calcolata è minore del limite inferiore, si verifica l'allarme PS0011, "AVANZAMENTO ZERO (COMANDO)". Esempio - Per l'interpolazione lineare (G01) FRN = 1 = velocità tempo(min) distanza Velocità: mm/min (programmazione in mm) pollici/min (programmazione in pollici) Distanza: mm (programmazione in mm) pollici (programmazione in pollici) - - - - - Per eseguire un blocco in 1 minuto 1 1 FRN = = =1 Specificare F1.0. tempo(min) 1(min) Per eseguire un blocco in 10 secondi 1 1 FRN = = = 6 Specificare F6.0. tempo(sec) / 60 10 / 60(sec) Per trovare il tempo di movimento corrispondente a F0.5. 1 1 Sono richiesti 2 minuti. TEMPO (min) = = =2 FRN 0.5 Per trovare il tempo di movimento corrispondente a F10.0 1 × 60 60 Sono richiesti 6 secondi. TEMPO (min) = = =6 FRN 10 Per l'interpolazione circolare (G02, G03) 1 velocità FRN = = tempo(min) raggio Velocità: Raggio dell'arco: mm/min pollici/min mm pollici (programmazione in mm) (programmazione in pollici) (programmazione in mm) (programmazione in pollici) NOTA Nel caso dell'interpolazione circolare, la velocità di avanzamento non è calcolata in base all'effettiva entità del movimento comandato nel blocco, ma in base al raggio dell'arco. - 141 - 5.FUNZIONI DI AVANZAMENTO - PROGRAMMAZIONE B-64484IT/02 Commutazione di un codice modale del gruppo 05 Normalmente, se un codice modale del gruppo 05 viene commutato mediante il comando di selezione dell'avanzamento ed il comando assi viene eseguito nel modo avanzamento in lavoro senza specificare la velocità di avanzamento (F), questa viene ereditata come dato modale. Se il bit 4 (MFC) del parametro N. 13450 è 1, la commutazione di un codice G modale del gruppo 05 cancella la velocità di avanzamento (F). Questo provoca l'allarme PS0011, "AVANZAMENTO ZERO (COMANDO)", nel blocco di taglio. Così è possibile evitare di eseguire una lavorazione con una velocità di avanzamento (F) non voluta, ereditata come dato modale. Esempio Eseguire il seguente programma dopo aver messo a 1 il bit 4 (MFC) del parametro N. 13450. Nel blocco di commutazione da G94 a G95 (N06) si verifica l'allarme PS0011. O0001 ; N01 G90 G00 X0 Y0 ; N02 M03 S100 ; N03 G91 G01 ; N04 G94 X10.0 F100.0 ; N05 Y10.0 ; N06 G95 X10.0 ; Si verifica l'allarme PS0011. N07 Y10.0; M30 ; NOTA 1 Nel modo G93, se il comando asse e il comando della velocità di avanzamento (F) non sono nello stesso blocco, si verifica l'allarme PS1202, "MANCA COMANDO F IN G93", indipendentemente dall'impostazione di questo parametro. 2 Se il codice G del gruppo 05 viene cancellato da un reset, bit 6 (CLR) del parametro N. 3402 = 1 e bit 5 (C05) del parametro N. 3406 = 0, in modo da commutare il codice G modale, la velocità di avanzamento (F) viene cancellata anche se il bit 7 (CFH) del parametro N. 3409 è 1. 3 Se il bit 7 (FC0) del parametro N. 1404 è 1, l'allarme PS0011 non viene dato ed il blocco viene eseguito con una velocità di avanzamento pari a 0 anche se viene utilizzato il comando di selezione dell'avanzamento per commutare il codice modale del gruppo 05 ed il comando asse viene eseguito nel modo avanzamento in lavoro senza la specifica della velocità di avanzamento (F). Nel modo G93, l'allarme PS1202 viene dato indipendentemente dall'impostazione del bit FC0. 4 Se viene commutato il codice G modale del gruppo 05 e viene eseguito un comando di movimento in lavoro senza specificare la velocità di avanzamento (F), ma l'entità del movimento programmato è 0, gli allarmi PS0011 o PS1202 non si verificano. 5 Se viene commutato il codice G modale del gruppo 05 e viene eseguito un comando di movimento in lavoro senza specificare la velocità di avanzamento (F), gli allarmi PS0011 e PS1202 vengono dati anche se con il parametro N. 1411 è impostata la velocità di avanzamento in lavoro per il funzionamento automatico. (Questo vale per la Serie M.) - 142 - B-64484IT/02 - PROGRAMMAZIONE 5.FUNZIONI DI AVANZAMENTO Codice F1 cifra della velocità di avanzamento M Programmando il codice F seguito da un numero di una cifra (da 1 a 9), è possibile comandare la velocità di avanzamento preimpostata tramite parametri (da 1451 a 1459) per il numero specificato. F0 specifica la velocità in rapido. La velocità di avanzamento corrispondente al numero specificato può essere variata ruotando il generatore manuale di impulsi dopo aver messo a ON il commutatore "variazione della velocità di avanzamento F1 cifra", che si trova sul pannello dell'operatore. L'aumento o la riduzione, ∆F, della velocità di avanzamento per grado del generatore manuale di impulsi sono dati da: F max ∆F = 100 X Fmax : Velocità massima di avanzamento per F1-F4 (parametro N. 1460), o velocità massima di avanzamento per F5-F9 (parametro N. 1461) X : Un valore compreso tra 1 e 127 (Parametro N. 1450) La velocità di avanzamento impostata, o modificata, non viene persa spegnendo il sistema. La velocità di avanzamento corrente viene visualizzata. - Limitazione della velocità di avanzamento Mediante il parametro N. 1430 è possibile specificare la massima velocità di avanzamento per ciascun asse. Se, in seguito all'interpolazione, la velocità di avanzamento lungo un asse eccede il massimo stabilito per quell'asse, la velocità di avanzamento è limitata a tale massimo. Riferimento L'intervallo dei valori specificabili per la velocità di avanzamento è fornito nell'appendice D. - 143 - 5.FUNZIONI DI AVANZAMENTO 5.4 PROGRAMMAZIONE B-64484IT/02 CONTROLLO DELLA VELOCITA' DI AVANZAMENTO La velocità di avanzamento può essere controllata come è indicato nella tabella Tabella 5.4 (a). Tabella 5.4 (a) Controllo della velocità di avanzamento Codice Validità del codice G Descrizione Nome della funzione G Arresto esatto G09 Modo arresto esatto G61 Modo taglio G64 Modo maschiatura Regolazio ne automatica velocità sugli spigoli Regolazione automatica della velocità sugli spigoli interni Riduzione della velocità di avanzamento nell'interpolazio ne circolare interna Questa funzione è valida solo per i blocchi nei quali è specificata. Una volta specificata rimane valida finché non vengono specificati G62, G63 o G64. Una volta specificata rimane valida finché non vengono specificati G61, G62 o G63. G63 Una volta specificata rimane valida finché non vengono specificati G61, G62 o G64. G62 Una volta specificata rimane valida finché non vengono specificati G61, G63 o G64. - Funzione valida nel modo compensazione raggio utensile, indipendentemente dal codice G. Alla fine del blocco l'utensile decelera e viene eseguito il controllo di in posizione. Poi viene eseguito il blocco successivo. Alla fine del blocco l'utensile decelera e viene eseguito il controllo di in posizione. Poi viene eseguito il blocco successivo. Alla fine del blocco, l'utensile non decelera e il blocco successivo viene eseguito immediatamente. Alla fine del blocco, l'utensile non decelera e il blocco successivo viene eseguito immediatamente. La regolazione della velocità di avanzamento e feed hold sono disabilitati. Quando l'utensile si muove lungo uno spigolo interno nel modo compensazione raggio utensile, la velocità di avanzamento viene regolata in modo da ridurre la quantità di materiale asportato per unità di tempo in modo da produrre una buona finitura della superficie. La velocità di avanzamento per la lavorazione interna in interpolazione circolare viene ridotta. NOTA 1 Lo scopo del controllo di in posizione è di controllare che la posizione comandata sia stata raggiunta, entro un certo intervallo (stabilito dal costruttore della macchina utensile tramite un parametro). Il controllo di in posizione non viene eseguito quando il bit 5 (NCI) del parametro N. 1601 è 1. 2 Angolo di uno spigolo interno θ: 2° < θ ≤ α ≤ 178° (α è un valore prestabilito) Pezzo θ Uten - 144 - PROGRAMMAZIONE B-64484IT/02 5.FUNZIONI DI AVANZAMENTO Formato Arresto esatto G09 IP_ ; Modo arresto esatto G61 ; Modo taglio G64 ; Modo maschiatura G63 ; Regolazione automatica della velocità sugli spigoli 5.4.1 G62 ; Arresto esatto (G09, G61), Modo taglio (G64), Modo maschiatura (G63) Spiegazioni Il percorso dell'utensile all'intersezione di due blocchi è diverso a seconda del modo arresto esatto, lavorazione normale o maschiatura (Fig. 5.4.1 (a)). Y Controllo in posizione (2) Percorso utensile nel modo arresto esatto (1) 0 Percorso utensile nel modo taglio e nel modo maschiatura X Fig. 5.4.1 (a) Esempi di percorso utensile all'intersezione dei blocchi (1) e (2) AVVERTENZA All'accensione o in caso di clear, è stabilito il modo taglio (G64). 5.4.2 Regolazione automatica della velocità sugli spigoli Quando è attiva la compensazione raggio utensile, il movimento dell'utensile viene automaticamente decelerato sugli spigoli interni e nell'interpolazione circolare interna. Questo riduce il carico sull'utensile e consente una lavorazione più precisa della superficie. 5.4.2.1 Regolazione automatica della velocità sugli spigoli interni (G62) Spiegazioni - Condizioni di applicazione della regolazione Quando viene specificato G62, se l'utensile lavora uno spigolo interno ed è applicata la compensazione raggio utensile, la velocità di avanzamento viene automaticamente ridotta ai due lati dello spigolo. Esistono quattro tipi di spigoli interni (Fig. 5.4.2 (a)). 2°≤θ≤θp≤178° nella Fig. 5.4.2 (a) è un valore impostato con il parametro N. 1711. Quando θ è approssimativamente uguale a θp, lo spigolo interno è determinato con un errore non superiore a 0.001°. - 145 - 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 :Utensile 1. Linea retta-linea retta : Percorso programmato 2. Linea retta-arco : Percorso del centro utensile θ θ 3. Arco-linea retta 4. Arco-arco θ θ Fig. 5.4.2 (a) Spigoli interni - Intervallo di regolazione Quando uno spigolo è considerato interno, la velocità di avanzamento viene ridotta prima e dopo l'intersezione dei due movimenti. Ls e Le sono distanze lineari fra il centro dell'utensile e il punto di intersezione (Fig. 5.4.2 (b), Fig. 5.4.2 (c), Fig. 5.4.2 (d)) lungo le quali viene applicata la regolazione. Ls e Le si impostano con i parametri N. 1713 e 1714. Percorso programmato a Le Ls b Percorso centro utensile La velocità di avanzamento viene regolata dal punto a al punto b. Fig. 5.4.2 (b) Applicazione della regolazione (linea retta - linea retta) Quando il percorso programmato è costituito da due archi, la regolazione viene applicata se i punti iniziale e finale sono nello stesso quadrante o in quadranti adiacenti (Fig. 5.4.2 (c)). Percorso programmato Percorso centro utensile La velocità di avanzamento viene regolata dal punto a al punto b. Fig. 5.4.2 (c) Applicazione della regolazione (arco - arco) La velocità di avanzamento lungo l'arco (2) è regolata dal punto a al punto b e dal punto c al punto d (Fig. 5.4.2 (d)). - 146 - 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 Percorso programmato a d Le Ls Le Ls b c (2) Percorso centro utensile Utensile Fig. 5.4.2 (d) Applicazione della regolazione (linea retta - arco, arco - linea retta) - Entità della regolazione L'entità della regolazione è stabilita dal parametro N. 1712 ed è valida anche per la prova a vuoto e per la specifica F-1 cifra. Nel modo avanzamento al minuto, la velocità di avanzamento effettiva è la seguente: F = (regolazione automatica ) × (regolazione) Limitazioni - Accelerazione/decelerazione prima dell'interpolazione Durante l'accelerazione/decelerazione prima dell'interpolazione la regolazione della velocità sugli spigoli è disabilitata. - Attivazione/G41, G42 Se lo spigolo è preceduto da un blocco di attivazione della compensazione raggio utensile o seguito da un blocco contenente G41 o G42, la regolazione della velocità sugli spigoli è disabilitata. - Entità della compensazione Se l'entità della compensazione raggio utensile è 0, questa funzione è disabilitata. 5.4.2.2 Riduzione della velocità di avanzamento nell'interpolazione circolare all'interno Nella lavorazione interna in interpolazione circolare, la velocità di avanzamento specificata con F è la velocità lungo il percorso programmato (Fig. 5.4.2 (e)). Funzione valida nel modo compensazione raggio utensile, indipendentemente dal codice G62. F= Rc Rp Rc : Percorso del centro utensile Rp : Raggio programmato Questa funzione è valida anche per la prova a vuoto e per la specifica F-1 cifra. - 147 - 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 Percorso programmato Percorso centro utensile Rc Rp Fig. 5.4.2 (e) Riduzione dell'avanzamento nell'interpolazione circolare interna Se Rc è molto più piccolo di Rp, Rc/Rp tende a zero e l'utensile si ferma. Il parametro N. 1710 permette di fissare un tasso minimo di decelerazione (MDR). Se Rc/Rp≤MDR, la velocità di avanzamento diventa (F×MDR). Se il parametro N. 1710 è 0, la percentuale minima di riduzione della velocità (MDR) è pari al 100%. AVVERTENZA Se l'interpolazione circolare interna viene eseguita insieme alla regolazione automatica della velocità sugli spigoli interni, la velocità di avanzamento dell'utensile diventa: Rc F× × (regolazione per spigoli interni) × (regolazione) Rp 5.5 COMANDO DI VELOCITA' SU UN CERCHIO VIRTUALE PER UN ASSE ROTATIVO Introduzione Questa funzione determina la distanza euclidea di un comando di movimento che comprende un asse rotativo assumendo per quest'ultimo un movimento pari all'angolo specificato lungo un cerchio di raggio virtuale (parametro N. 1465). Quindi assume che la velocità lungo la circonferenza virtuale sia la velocità di avanzamento dell'asse rotativo. Spiegazioni Velocità di avanzamento - Metodo convenzionale Nella determinazione dell'entità di un movimento nell'interpolazione lineare fra un asse lineare ed un asse rotativo il movimento angolare di 1 grado dell'asse rotativo viene interpolato come 1 mm (1 pollice per la programmazione in pollici). Y Comando di velocità Esempio di programma (gradi/min) N1G91G01X10.F10.; N2C10.F10.; C N2 N1 X - 148 - La velocità di avanzamento dell'asse rotativo è la velocità specificata con F. 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 Velocità dell'asse lineare (asse X) Velocità dell'asse rotativo (asse C) ∆X L ∆C FC = F × L FX = F × ( mm / min ) ( deg / min ) Entità del movimento L = ∆X 2 + ∆Y 2 + ∆Z 2 + ∆B 2 + ∆C 2 Durata del movimento T= - L F ( mm ) (min ) Comando di velocità lungo un cerchio virtuale per un asse rotativo Questa funzione calcola la distanza euclidea di un comando di movimento che comprende un asse rotativo assumendo per quest'ultimo un movimento pari all'angolo specificato lungo un cerchio di raggio virtuale (parametro N. 1465). Y Velocità specificata (mm/min) C Raggio del cerchio virtuale Velocità dell'asse lineare (asse X) Velocità dell'asse rotativo (asse C) La velocità del movimento lungo la circonferenza virtuale il cui raggio è specificato dal parametro viene considerata come velocità programmata. Impostando un raggio virtuale uguale a zero, è possibile escludere l'asse rotativo dal calcolo della velocità. N2 N1 X ∆X L′ ∆C FC = F × L′ FX = F × Esempio di programma N1G91G01X10.F10.; N2C10.; ( mm / min ) ( deg / min ) 2 Entità del movimento Durata del movimento ⎛ π × l B × ∆B ⎞ ⎛ π × lC × ∆C ⎞ L ′ = ∆X + ∆Y + ∆Z + ⎜ ⎟ ⎟ +⎜ 180 180 ⎝ ⎠ ⎝ ⎠ L′ T ′ = (min ) F 2 2 2 2 ( mm ) lB, lC : Raggio virtuale (parametro N. 1465) Così, la velocità del movimento lungo la circonferenza virtuale viene considerata come la velocità specificata. <Vedi l'esempio 1.> Con questa funzione, la velocità di avanzamento di un asse diventa L / L′ volte quella visualizzata sulla schermata del CNC a causa del diverso metodo di calcolo della distanza. In particolare la velocità dell'asse aumenta quando il valore assegnato al raggio virtuale è piccolo. Impostare il parametro del raggio virtuale con molta cura. La velocità di avanzamento in lavoro viene limitata in base al parametro N. 1430 (velocità massima di avanzamento) ed alla velocità reale dell'asse (il dato antecedente la conversione). Quindi, se il raggio virtuale (parametro N. 1465) è grande, è possibile comandare un avanzamento maggiore della velocità massima di avanzamento impostata, mentre se il raggio virtuale è piccolo, l'avanzamento è limitato alla velocità massima imposta. Questa funzione è valida anche per la prova a vuoto. - 149 - 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 Contornatura AI Alla velocità di avanzamento lungo la circonferenza virtuale viene applicato il controllo contornatura AI . Di conseguenza è possibile che il controllo della velocità di avanzamento della contornatura AI dia un risultato diverso da quello di questa funzione. Durante la contornatura AI la velocità di avanzamento è limitata dal parametro N. 1432. Se il parametro N. 8465 è diverso da 0, la velocità di avanzamento è limitata da tale parametro. Raggio virtuale di 0 mm Se il raggio virtuale è di 0 mm, il movimento dell'asse rotativo è anch'esso di 0 mm e la distanza euclidea viene calcolata come segue: L ′ = ∆X 2 + ∆Y 2 + ∆Z 2 Diventa quindi possibile escludere la componente di velocità lungo l'asse rotativo e considerare la velocità del movimento lungo l'asse lineare come la velocità specificata con F. <Vedi l'esempio 2.> Nel caso di un comando di movimento del solo asse rotativo, questo si muoverà alla sua velocità massima di avanzamento. Esempi Esempio 1 Quando viene programmato il seguente blocco (sistema di incrementi IS-B) G91 G01 C10. F10. ; (1) Per un raggio virtuale (parametro 1465) di 10 mm ( 10.000) il calcolo è il seguente: 2 2 ⎛ π × 10 ( mm ) × 10 ( deg ) ⎞ ⎛ π × l C × ∆B ⎞ ⎟⎟ = 1.7453292 ⋅ ⋅ ⋅ ( mm ) L′ = ⎜ ⎟ = ⎜⎜ 180 180 ⎝ ⎠ ⎝ ⎠ 10 ( deg ) = 57.2957795 ⋅ ⋅ ⋅( deg / min ) FC = 10 (mm / min ) × 1.7453292 ⋅ ⋅ ⋅( mm ) T′ = L ′ 1.7453292 ⋅ ⋅ ⋅( mm ) = = 0.17453292 ⋅ ⋅ ⋅ ( min ) = 10.4719755 ⋅ ⋅ ⋅ ( sec ) F 10 ( mm / min ) Quindi la durata del movimento è di circa 10.472(sec), e la velocità di rotazione è di circa 57.296(gradi/min). La figura 5.5(a) illustra la velocità di avanzamento dell'asse rotativo corrispondente ad un comando F di 10mm/min per un raggio virtuale di 10mm. (2) Per un raggio virtuale (parametro 1465) di 36 mm ( 36.000) il calcolo è il seguente: 2 ⎛ π × 36 ( mm ) × 10 ( deg ) ⎞ ⎛ π × l C × ∆B ⎞ ⎟⎟ = 6.28318530 ⋅ ⋅ ⋅ ( mm ) L′ = ⎜ ⎟ = ⎜⎜ 180 180 ⎠ ⎝ ⎠ ⎝ 10 ( deg ) FC = 10 (mm / min ) × = 15.9154943 ⋅ ⋅ ⋅( deg / min ) 6.28318530 ⋅ ⋅ ⋅( mm ) 2 T′ = L ′ 6.28318530 ⋅ ⋅ ⋅ ( mm ) = = 0.628318530 ⋅ ⋅ ⋅ ( min ) = 37.6991118 ⋅ ⋅ ⋅ ( sec ) 10 ( mm / min ) F Quindi la durata del movimento è di circa 37.700(sec), e la velocità di rotazione è di circa 15.915(gradi/min). La figura 5.5(a) illustra la velocità di avanzamento dell'asse rotativo corrispondente ad un comando F di 10.000mm/min per un raggio virtuale di 36.000mm. - 150 - PROGRAMMAZIONE B-64484IT/02 Velocità di rotazione per un raggio virtuale di 10mm Velocità di rotazione per un raggio virtuale di 36mm .......... (2) 5.FUNZIONI DI AVANZAMENTO Velocità specificata F=10mm/min 10 mm 36 mm Fig. 5.5 (a) Esempio 2 Per una macchina nella quale è possibile cambiare la direzione dell'utensile mediante un asse rotativo, come quella mostrata nella figura 5.5 (b), è possibile specificare la velocità del movimento al punto di riferimento con F abilitando questa funzione e mettendo a 0 il parametro del raggio virtuale (N. 1465). Punto di riferimento La velocità specificata (F) viene vista come la velocità del movimento al punto di riferimento. La companente di velocità dell'asse rotativo è esclusa. Fig. 5.5 (b) - 151 - 5.FUNZIONI DI AVANZAMENTO PROGRAMMAZIONE B-64484IT/02 Limitazioni Questa funzione è valida solo per l'interpolazione lineare (G01). Non è valida per le seguenti funzioni: • Avanzamento con l'inverso del tempo (G93) • Avanzamento al giro (G95) • Controllo della direzione normale • Ciclo di lavorazione ad alta velocità • Interpolazione cilindrica • Interpolazione in coordinate polari • Controllo del centro utensile • Controllo assi da PMC • Comando numerico in manuale Per questa funzione, in caso di utilizzo del controllo assi paralleli e del controllo doppia tavola, assegnare lo stesso valore al parametro del raggio virtuale (N. 1465) per l'asse master e per l'asse slave. NOTA 1 Questa funzione è attiva quando il bit 0 (ROTx) del parametro N. 1006 e il bit 0 (RFDx) del parametro N. 1408 sono a 1. 2 Il parametro N. 1465 (raggio virtuale utilizzato da questa funzione) può essere modificato mediante l'introduzione dati da programma (G10). 3 Quando è attiva questa funzione, se il raggio virtuale (parametro N. 1465) è uguale a 0 e viene programmato un movimento del solo asse rotativo, questo si muove alla velocità massima di avanzamento. 4 Impostare con grande attenzione il bit 0 (RFDx) del parametro N. 1408 ed il parametro N. 1465 per il raggio virtuale. In particolare, considerare che se il raggio virtuale è piccolo, con questa funzione il movimento asse è più veloce di quando essa non è utilizzata. 5 Quando si utilizzano il controllo sincrono degli assi e questa funzione, i valori dei parametri N. 1408 e 1465 devono essere gli stessi per l'asse master e per l'asse slave. 5.6 SOSTA Formato M G04 X_; o G04 P_; X_ : Durata della sosta in secondi o giri del mandrino (punto decimale ammesso) P_ : Durata della sosta in secondi o giri del mandrino (punto decimale non ammesso) T G04 X_; o G04 U_ ; o G04 P_; X_ : Durata della sosta in secondi o giri del mandrino (punto decimale ammesso) U_ : Durata della sosta in secondi o giri del mandrino (punto decimale ammesso) P_ : Durata della sosta in secondi o giri del mandrino (punto decimale non ammesso) - 152 - PROGRAMMAZIONE B-64484IT/02 5.FUNZIONI DI AVANZAMENTO Spiegazioni Quando viene specificata una sosta, l'esecuzione del blocco successivo è ritardata per il tempo specificato. (Sosta in secondi) Se il bit 1 (DWL) del parametro N. 3405 è 1, nel modo avanzamento al giro l'esecuzione del blocco successivo viene ritardata fino a quando il mandrino non ha compiuto il numero di giri specificato. (Sosta in numero di giri) Tabella 5.6 (a) Intervallo dei valori di comando del tempo di sosta (X o U) Sistema di incrementi Intervallo dei valori dei comandi Unità del tempo di sosta IS-A IS-B IS-C IS-D IS-E Tabella 5.6 (b) Sistema di incrementi da 0.01 a 999999.99 da 0.001 a 99999.999 da 0.0001 a 9999.9999 da 0.00001 a 999.99999 da 0.000001 a 99.999999 secondi o giri Intervallo dei valori di comando del tempo di sosta (P) Intervallo dei valori dei comandi Unità del tempo di sosta IS-A IS-B IS-C IS-D IS-E da 1 a 99999999 da 1 a 99999999 da 1 a 99999999 da 1 a 99999999 da 1 a 99999999 0.01 secondi o giri 0.001 secondi o giri 0.0001 secondi o giri 0.00001 secondi o giri 0.000001 secondi o giri Nel caso della sosta in secondi, l'unità di immissione del tempo di sosta specificato con P può essere fissata a 0.001 secondi, mettendo a 1 il bit 7 (DWT) del parametro N. 1015. NOTA 1 Se X, U, o P sono specificati senza punto decimale, le unità non dipendono dall'immissione in pollici o millimetri. In relazione alla presenza dell'asse X, è attivo il seguente sistema di incrementi: • Se l'asse X è presente E' attivo il sistema di incrementi dell'asse X. • Se l'asse X non è presente E' attivo il sistema di incrementi dell'asse di riferimento. 2 Quando viene specificato P, il bit 7 (IPR) del parametro N. 1004 diviene ininfluente. Durante l'esecuzione della sosta, il dato diagnostico N. 0002 è “1”. M E' possibile comandare una sosta anche per eseguire un arresto esatto nel modo taglio (modo G64). Se P e X vengono omessi, si verifica un arresto esatto. Visualizzazione diagnostica 2 Stato di esecuzione della sosta Durante l'esecuzione della sosta è visualizzato “1”. - 153 - 6.PUNTO DI RIFERIMENTO 6 PROGRAMMAZIONE B-64484IT/02 PUNTO DI RIFERIMENTO Su una macchina utensile a CNC è definita una posizione speciale nella quale, generalmente, viene eseguito il cambio utensile o viene stabilito il sistema di coordinate, come si vedrà più avanti. Questa posizione è detta punto di riferimento. Il Capitolo 6, "PUNTO DI RIFERIMENTO", è costituito dalle seguenti sezioni: 6.1 RITORNO AL PUNTO DI RIFERIMENTO ................................................................................... 154 6.2 RITORNO AL PUNTO DI RIFERIMENTO MOBILE (G30.1)...................................................... 160 6.1 RITORNO AL PUNTO DI RIFERIMENTO Introduzione - Punto di riferimento Il punto di riferimento è un punto fisso sulla macchina al quale l'utensile può essere portato facilmente con la funzione del ritorno al punto di riferimento. Ad esempio, il punto di riferimento è usato come posizione di cambio utensile automatico. Possono essere definiti fino a quattro punti di riferimento, specificandone le coordinate nel sistema di coordinate della macchina tramite parametri (da 1240 a 1243). Y Secondo punto di riferimento Terzo punto di riferimento Punto di riferimento Quarto punto di riferimento X Zero macchina Fig. 6.1 (a) - Zero macchina e punti di riferimento Ritorno automatico al punto di riferimento (G28) e movimento dal punto di riferimento (G29) Programmando G28, è possibile portare automaticamente l'utensile sul punto di riferimento passando per un punto intermedio lungo l'asse specificato. Al completamento del ritorno al punto di riferimento si accende la spia corrispondente. Programmando G29, è possibile portare automaticamente l'utensile dal punto di riferimento al punto specificato, passando per il punto intermedio lungo l'asse specificato. - 154 - 6.PUNTO DI RIFERIMENTO PROGRAMMAZIONE B-64484IT/02 Ritorno automatico al punto di riferimento (G28) A→B→R Movimento dal punto di riferimento (G29) R→B→C R (Punto di riferimento) B (Punto intermedio) C (Destinazione del movimento dal punto di riferimento) A (Posizione di partenza del ritorno al punto di riferimento) Fig. 6.1 (b) - Ritorno al punto di riferimento e movimento dal punto di riferimento Controllo del ritorno al punto di riferimento (G27) Il controllo del ritorno al punto di riferimento (G27) è la funzione che controlla se l'utensile è ritornato correttamente al punto di riferimento come specificato dal programma. Se l'utensile è ritornato correttamente al punto di riferimento lungo l'asse specificato, la spia dell'asse si accende. Se l'utensile non ha raggiunto il punto di riferimento, si verifica l'allarme PS0092, "ERRORE NELLA VERIFICA DEL RITORNO A ZERO (G27)". Se il comando non specifica un movimento, viene controllato se la posizione attuale è il punto di riferimento. - Ritorno al punto di riferimento con disabilitazione del controllo di in-posizione (G28.2, G30.2) Specificando G28.2 o G30.2 è possibile eseguire il ritorno al punto di riferimento disabilitando il controllo di in-posizione al punto intermedio e al punto di riferimento. Formato - Ritorno automatico al punto di riferimento e ritorno al secondo/terzo/quarto punto di riferimento senza il controllo di in-posizione G28 IP_; Ritorno al punto di riferimento G30 P2 IP_; Ritorno al secondo punto di riferimento (P2 può essere omesso.) G30 P3 IP_; Ritorno al terzo punto di riferimento G30 P4 IP_; Ritorno al quarto punto di riferimento G28.2 IP_; Ritorno al punto di riferimento G30.2 P2 IP_; Ritorno al secondo punto di riferimento (P2 può essere omesso.) G30.2 P3 IP_; Ritorno al terzo punto di riferimento G30.2 P4 IP_; Ritorno al quarto punto di riferimento IP : Specifica il punto intermedio nel sistema di coordinate assolute. (programmazione assoluta o incrementale) Non è necessario calcolare l'entità del movimento tra il punto intermedio e il punto di riferimento. - 155 - 6.PUNTO DI RIFERIMENTO - PROGRAMMAZIONE B-64484IT/02 Movimento dal punto di riferimento G29 IP_; IP : Specifica la destinazione del ritorno dal punto di riferimento nel sistema di coordinate assolute. (programmazione assoluta o incrementale) Il punto intermedio è determinato dal comando G28, G30 o G30.1 specificato immediatamente prima di questo comando. - Controllo del ritorno al punto di riferimento G27 IP_; IP : specifica la posizione del punto di riferimento nel sistema di coordinate assolute. (programmazione assoluta o incrementale) Spiegazioni - Ritorno automatico al punto di riferimento (G28) I posizionamenti sul punto intermedio e sul punto di riferimento sono eseguiti alla velocità in rapido specificata per ciascun asse. Quindi, per sicurezza, le funzioni di compensazione, come la compensazione raggio utensile e la compensazione lunghezza utensile, devono essere cancellate prima di eseguire questo comando. Le coordinate del punto intermedio vengono memorizzate dal CNC solo per gli assi specificati nel blocco G28. Per gli altri assi vengono usate le coordinate precedentemente specificate. (Esempio) N1 G28 X40.0 ; N2 G28 Y60.0 ; N3 G29 X10.0 Y20.0 ; - (L'utensile si muove verso il punto di riferimento lungo l'asse X e il punto intermedio (X40.0) viene memorizzato.) (L'utensile si muove verso il punto di riferimento lungo l'asse Y e il punto intermedio (Y60.0) viene memorizzato.) (L'utensile si muove verso la posizione comandata con G29, passando per il punto intermedio (X40.0 Y60.0), specificato in precedenza con G28, lungo l'asse X e l'asse Y.) Ritorno al secondo, terzo e quarto punto di riferimento (G30) Il ritorno al secondo, terzo o quarto punto di riferimento (G30) può essere eseguito dopo aver stabilito i punti di riferimento. Il comando G30 si usa generalmente quando la posizione del cambio utensile automatico (ATC) è diversa dal punto di riferimento. - Movimento dal punto di riferimento (G29) Questa funzione viene programmata dopo un ritorno al punto di riferimento eseguito con G28 o G30. In programmazione incrementale, i valori comandati rappresentano la distanza dal punto intermedio. L'utensile va sul punto intermedio specificato alla velocità stabilita con un parametro. Se, dopo che l'utensile è ritornato al punto di riferimento passando per il punto intermedio in seguito ad un comando G28, viene cambiato il sistema di coordinate del pezzo, anche il punto intermedio viene traslato nel nuovo sistema di coordinate. Se poi viene comandato G29, l'utensile va sulla posizione comandata passando per il punto intermedio traslato nel nuovo sistema di coordinate. Le stesse operazioni sono eseguite anche per i comandi G30 e G30.1. Se dopo l'accensione viene tentata l'esecuzione di un G29 (movimento dal punto di riferimento) senza aver dato un comando G28 (ritorno automatico al punto di riferimento), G30 (ritorno al secondo, terzo e quarto punto di riferimento), o G30.1 (ritorno al punto di riferimento mobile) si verifica l'allarme PS0305. - 156 - B-64484IT/02 - PROGRAMMAZIONE 6.PUNTO DI RIFERIMENTO Controllo del ritorno al punto di riferimento (G27) Il comando G27 posiziona l'utensile in rapido. Se l'utensile raggiunge il punto di riferimento, si accende la spia del ritorno al punto di riferimento. Se l'utensile ritorna al punto di riferimento lungo un solo asse, la spia dell'asse si accende. Se, dopo il posizionamento, l'utensile non ha raggiunto il punto di riferimento l'ungo l'asse specificato, si verifica l'allarme PS0092 "ERRORE NELLA VERIFICA DEL RITORNO A ZERO (G27)". Se il comando non specifica un movimento, viene controllato se la posizione attuale è il punto di riferimento. - Ritorno al punto di riferimento con disabilitazione del controllo di in-posizione (G28.2, G30.2) Specificando G28.2 o G30.2 è possibile eseguire il ritorno al punto di riferimento disabilitando il controllo di in-posizione al punto intermedio e al punto di riferimento. La disabilitazione del controllo di in-posizione riduce il tempo ciclo. Notare che, se il comando G28.2 causa il ritorno al punto di riferimento a bassa velocità, il controllo di in-posizione è disabilitato al punto intermedio, ma è abilitato a punto di riferimento. Salvo che per il controllo di in-posizione le operazioni eseguite e le limitazioni di G28.2 e G30.2 sono le stesse di G28 e G30. - Impostazione della velocità di avanzamento per il ritorno al punto di riferimento Dopo l'accensione, prima del primo ritorno al punto di riferimento, che stabilisce il sistema di coordinate della macchina, le velocità di avanzamento per il ritorno manuale e per il ritorno automatico al punto di riferimento e la velocità in rapido corrispondono alla velocità specificata per ciascun asse con il parametro N. 1428. La velocità di avanzamento per il ritorno manuale al punto di riferimento è quella indicata per ciascun asse dal parametro N. 1428 anche dopo che è stato stabilito il punto di riferimento. - 157 - 6.PUNTO DI RIFERIMENTO PROGRAMMAZIONE B-64484IT/02 NOTA 1 A questa velocità di avanzamento viene applicata la regolazione della velocità in rapido (F0, 25, 50, 100%), la cui impostazione è 100% 2 Dopo che è stato stabilito il punto di riferimento con il primo ritorno al punto di riferimento, la velocità di avanzamento per il ritorno automatico al punto di riferimento corrisponde alla normale velocità in rapido. 3 Se è specificato un valore nel parametro 1428, le velocità di avanzamento corrispondono alle impostazioni dei parametri indicati qui sotto. 1420: Velocità in rapido 1423: Velocità di avanzamento in jog 1424: Velocità rapida in manuale 1428: Velocità per il ritorno al punto di riferimento Quando il sistema di coordinate della macchina non è ancora stato stabilito Dopo che è stato stabilito il sistema di coordinate della macchina N. 1428 N.1420 N. 1428 N.1420 N. 1428 N.1423 (*2) N.1428 (*3) N.1424 Ritorno automatico al punto di riferimento (G28) Posizionamento rapido in automatico (G00) Ritorno manuale al punto di riferimento (*1) Velocità rapida in manuale Se l'impostazione del parametro N. 1428 è 0, le velocità di avanzamento corrispondono alle impostazioni dei parametri indicati qui sotto. Quando il sistema di coordinate della macchina non è ancora stato stabilito Dopo che è stato stabilito il sistema di coordinate della macchina N.1420 N.1420 N.1420 N.1420 N.1424 No.1424 (*3) N.1423 (*2) N.1424 Ritorno automatico al punto di riferimento (G28) Posizionamento rapido in automatico (G00) Ritorno manuale al punto di riferimento (*1) Velocità rapida in manuale *1 Utilizzando il bit 2 (JZR) del parametro N. 1401, la velocità del ritorno manuale al punto di riferimento può essere sempre impostata come velocità di avanzamento in jog. *2 Se il bit 0 (RPD) del parametro N. 1401 è 1, viene usata l'impostazione del N. 1424 (velocità rapida in manuale). Se l'impostazione del parametro N. 1424 (velocità rapida in manuale) è 0, viene utilizzato il parametro N. 1420 (velocità in rapido). *3 Se il ritorno al punto di riferimento senza camme viene eseguito in rapido, o se il ritorno manuale al punto di riferimento viene effettuato in rapido indipendentemente dalle camme di decelerazione dopo che è stato stabilito un punto di riferimento, viene usata una velocità per ciascuna di queste funzioni (impostazione del bit 1 (DLF) del parametro N. 1404). Limitazioni - Quando la macchina è in stato di blocco Quando è attivo il blocco macchina, la spia che indica il completamento del ritorno al punto di riferimento non si accende, anche quando l'utensile è ritornato automaticamente al punto di riferimento. In questo caso, non viene controllato se l'utensile ha raggiunto il punto di riferimento anche se è specificato il comando di controllo del ritorno al punto di riferimento. - 158 - B-64484IT/02 - PROGRAMMAZIONE 6.PUNTO DI RIFERIMENTO Quando viene eseguito un ritorno automatico al punto di riferimento (G28) senza aver stabilito un punto di riferimento Quando viene eseguito il ritorno automatico al punto di riferimento (G28) senza aver stabilito un punto di riferimento, il movimento dal punto intermedio in direzione del punto di riferimento è uguale a quello del ritorno manuale. (Questo movimento viene detto ritorno automatico al punto di riferimento a bassa velocità (G28).) In questo caso, la direzione dal punto intermedio è quella impostata per il ritorno al punto di riferimento con il parametro ZMIx (bit 5 del N.1006). Di conseguenza, il punto intermedio deve essere specificato in modo da consentire il ritorno al punto di riferimento. NOTA Quando viene eseguito il ritorno automatico al punto di riferimento (G28) dopo aver stabilito un punto di riferimento, il movimento dal punto intermedio al punto di riferimento viene effettuato in rapido. Questo movimento viene detto ritorno automatico al punto di riferimento ad alta velocità (G28). - Controllo del ritorno al punto di riferimento con le correzioni attive Se è stata specificata una correzione, alla posizione specificata dal comando G27 viene sommata l'entità della correzione. Di conseguenza, se la posizione ottenuta applicando la correzione non è il punto di riferimento, la spia del ritorno al punto di riferimento non si accende e si ha l'allarme. Normalmente, prima di specificare G27 cancellare le correzioni. - Accensione della spia quando la posizione programmata non coincide con il punto di riferimento Su una macchina in pollici programmata in millimetri, la spia del ritorno al punto di riferimento può accendersi anche se la posizione programmata è spostata di un incremento minimo di programmazione rispetto alla posizione del punto di riferimento. Questo perché l'incremento minimo di programmazione è più piccolo dell'incremento minimo di comando. - Ritorno automatico al punto di riferimento (G28) se per un asse rotativo (tipo A) si utilizza il roll over Se in un comando assoluto per il ritorno automatico al punto di riferimento (G28) di un asse rotativo, l'asse rotativo è di tipo A (bit 0 (ROT) del parametro N. 1006 = 1 e bit 1 (ROS) del parametro N. 1006 = 0) ed è utilizzato il roll over (bit 0 (ROA) del parametro N. 1008 = 1), il movimento dalla posizione attuale al punto intermedio segue l'impostazione del bit 1 (RAB) del parametro N. 1008, ed il movimento dal punto intermedio al punto di riferimento segue l'impostazione del bit 5 (ZMI) del parametro N. 1006. Se, però, il bit 6 (RRF) del parametro N. 1008 è 1, anche il movimento dal punto intermedio al punto di riferimento segue l'impostazione del bit 1 (RAB) del parametro N. 1008. - 159 - 6.PUNTO DI RIFERIMENTO PROGRAMMAZIONE B-64484IT/02 Esempio G28G90X1000.0Y500.0 ; (Movimento da A a B. L'utensile va al punto di riferimento passando per il punto intermedio B.) T1111 ; (Sul punto di riferimento viene eseguito il cambio utensile) G29X1300.0Y200.0 ; (Movimento da B a C. L'utensile va dal punto di riferimento R al punto C specificato con G29 passando per il punto intermedio B.) Y B (Punto intermedio) 500 C (Destinazione del movimento dal punto di riferimento) 300 200 A (Posizione di partenza del ritorno al punto di riferimento) 200 Fig. 6.1 (c) 6.2 R (Punto di riferimento) Ritorno automatico al punto di riferimento (G28) A→B→R Movimento dal punto di riferimento (G29) R→B→C 1000 1300 X Ritorno al punto di riferimento e movimento dal punto di riferimento RITORNO AL PUNTO DI RIFERIMENTO MOBILE (G30.1) Introduzione E' possibile eseguire il ritorno al punto di riferimento mobile. Il punto di riferimento mobile è una posizione della macchina utensile e serve come punto di riferimento per le sue operazioni. Il punto di riferimento mobile non è fisso, ma può essere spostato a seconda delle necessità. Formato G30.1 IP_; IP_ : Comando del punto intermedio per il ritorno al punto di riferimento mobile nel sistema di coordinate assolute. (programmazione assoluta o incrementale) Spiegazioni In generale, su un centro di lavoro o una fresatrice, gli utensili possono essere cambiati solo in specifiche posizioni. La posizione di cambio utensile può essere definita come secondo o terzo punto di riferimento. Usando G30, è facile portare l'utensile sulla posizione voluta. Su alcune macchine utensili, l'utensile può essere cambiato in qualsiasi posizione purché non vi sia interferenza con il pezzo. Su queste macchine, è opportuno eseguire il cambio utensile il più vicino possibile al pezzo, in modo da minimizzare il tempo di ciclo. A questo scopo, la posizione di cambio utensile deve variare a seconda della forma del pezzo. Questo può essere fatto facilmente, ricorrendo a questa funzione. Essa permette di memorizzare come punto di riferimento mobile la posizione più adatta per l'esecuzione del cambio utensile. Poi, il comando G30.1 provocherà il ritorno a tale posizione. Le coordinate di macchina del punto di riferimento mobile si registrano premendo il tasto software [SET FRP] sulla schermata della posizione corrente. Le coordinate del punto di riferimento mobile si registrano nel parametro N. 1244. - 160 - PROGRAMMAZIONE B-64484IT/02 6.PUNTO DI RIFERIMENTO Il blocco G30.1 prima posiziona in rapido l'utensile sul punto intermedio lungo gli assi specificati e poi muove l'utensile in rapido dal punto intermedio al punto di riferimento mobile. Prima di programmare G30.1, cancellare le funzioni di compensazione, come la compensazione raggio utensile e la compensazione lunghezza utensile. La posizione del punto di riferimento mobile non viene persa quando viene spenta l'alimentazione. Per il movimento dell'utensile dal punto di riferimento mobile, può essere usato il comando di movimento dal punto di riferimento (G29). Esempio G30.1 G90 X50.0 Y40.0 ; Y Punto intermedio (50,40) Punto di riferimento mobile Pezzo X - 161 - 7.SISTEMA DI COORDINATE 7 PROGRAMMAZIONE B-64484IT/02 SISTEMA DI COORDINATE Quando viene specificata una posizione da raggiungere, il CNC muove l'utensile, portandolo a tale posizione. La posizione da raggiungere viene fornita tramite i valori delle coordinate, in un sistema di coordinate. Le coordinate vengono espresse con una componente per ciascun asse. Se il sistema dispone di tre assi programmabili (X, Y e Z), il valore delle coordinate si esprime come segue: X_Y_Z_ Questo comando è detto parola dimensionale. • Fresatura (Posizione dell'utensile specificata da X40.0Y50.0Z25.0 ) Z 25.0 Y 50.0 40.0 X • Tornitura (Posizione dell'utensile specificata da X50.0 Z40.0) X 40.0 50.0 Z Zero point Le coordinate possono essere specificate in uno dei seguenti tre tipi di sistemi di coordinate: (1) Sistema di coordinate della macchina (2) Sistema di coordinate del pezzo (3) Sistema di coordinate locali Dato che il numero degli assi programmabili, vale a dire il numero delle componenti da specificare, varia da macchina a macchina, in questo manuale una parola delle dimensioni è rappresentata dal simbolo IP_. - 162 - PROGRAMMAZIONE B-64484IT/02 7.1 7.SISTEMA DI COORDINATE SISTEMA DI COORDINATE DELLA MACCHINA Lo zero macchina è una posizione standard della macchina, che viene normalmente stabilita dal costruttore della macchina in base alle caratteristiche della macchina stessa. Il sistema di coordinate della macchina è un sistema di coordinate che ha l'origine sullo zero macchina. Il sistema di coordinate della macchina viene stabilito quando, dopo l'accensione, viene eseguito il ritorno manuale al punto di riferimento (vedi la sezione, “RITORNO MANUALE AL PUNTO DI RIFERIMENTO”). Una volta stabilito, il sistema di coordinate della macchina non cambia fino allo spegnimento del sistema. Non sempre il punto di riferimento coincide con l'origine del sistema di coordinate della macchina. (Vedi "Impostazione del sistema di coordinate della macchina" più avanti.) Formato M (G90) G53 IP_ P1; IP_ P1 : Parola dimensionale assoluta : Abilita la funzione G53 ad alta velocità. (G90)G53.2 G01 IP_F_; IP_ F_ : Parola dimensionale assoluta : Velocità di avanzamento T G53 IP_ P1; IP_ P1 : Parola dimensionale assoluta : Abilita la funzione G53 ad alta velocità. G53.2 G01 IP_F_; IP_ F_ : Parola dimensionale assoluta : Velocità di avanzamento Spiegazioni - Selezione del sistema di coordinate della macchina (G53) Quando la posizione viene specificata usando le coordinate di macchina, l'utensile va in rapido su tale posizione. G53, il comando che seleziona il sistema di coordinate della macchina, è un codice G autocancellante; è cioè valido solo per il blocco nel quale è programmato. G53 deve essere specificato nel modo programmazione assoluta. Se è specificato nel modo incrementale, viene ignorato. Per portare l'utensile in una posizione specifica della macchina, ad esempio nella posizione di cambio utensile, programmare un movimento nel sistema di coordinate della macchina con G53. - Funzione G53 ad alta velocità Questa funzione abilita la sovrapposizione dei blocchi in rapido fra i blocchi che specificano la selezione delle coordinate di macchina (G53) ed i blocchi di posizionamento in rapido (G00), rendendo possibile l'esecuzione di un comando in rapido successivo (G00) al comando nel sistema di coordinate della macchina (G53) senza arresto con decelerazione alla fine di quest'ultimo. Quindi, il posizionamento ad alta velocità è disponibile anche quando si utilizza il comando di selezione delle coordinate di macchina (G53). La specifica di P1 in un blocco G53 abilita la funzione G53 ad alta velocità. - 163 - 7.SISTEMA DI COORDINATE - PROGRAMMAZIONE B-64484IT/02 Posizionamento nel sistema di coordinate della macchina alla velocità di avanzamento (G53.2) Il comando G53.2 permette di eseguire un posizionamento nel sistema di coordinate della macchina alla velocità di avanzamento. La velocità di avanzamento può essere utilizzata nel modo G01. Questa funzione è opzionale. G53.2 è un codice G autocancellante. Il comando G53.2 cancella temporaneamente le correzioni utensile, come G53. Le costanti di tempo sono quelle utilizzate normalmente. Sul punto finale del comando G53.2, l'asse decelera e si ferma, come per G53. Sono disponibili l'avanzamento al minuto, l'avanzamento al giro e l'avanzamento con l'inverso del tempo. Se un blocco contiene un codice G del gruppo 01 diverso da G00/G01 e il comando G53.2, si verifica l'allarme PS5372, “G MODALE IMPROPRIO (G53.2)”. Lo stesso allarme si verifica quando G53.2 viene programmato quando il codice G modale attivo del gruppo 01 è diverso da G00/G01. Limitazioni - Cancellazione delle compensazioni Prima di comandare G53, cancellare tutte le funzioni di compensazione, come la compensazione raggio utensile, la compensazione lunghezza utensile e le correzioni utensile. - Comando G53 immediatamente dopo l'accensione Dopo l'accensione, prima di programmare un comando G53 deve essere eseguito un ritorno al punto di riferimento, in modo da stabilire il sistema di coordinate della macchina. Se, però, la macchina è equipaggiata con trasduttori assoluti di posizione questa operazione non è necessaria. - Codici G nello stesso blocco M Non è possibile specificare i comandi G50/G51, G50.1/G51.1 e G68/G69 nel blocco contenente G53. T Non è possibile specificare i comandi G50/G51 (salvo che con il sistema A dei codici G), G50.1/G51.1 e G68.1/G69.1 nel blocco contenente G53. Note NOTA G53 è un codice G che disabilita il buffer. Riferimento - Impostazione del sistema di coordinate della macchina Quando dopo l'accensione viene eseguito il ritorno manuale al punto di riferimento, il sistema di coordinate della macchina viene stabilito in modo che il punto di riferimento sia alle coordinate α e β specificate con il parametro N. 1240. - 164 - PROGRAMMAZIONE B-64484IT/02 7.SISTEMA DI COORDINATE Sistema di coordinate della macchina Zero macchina β α Punto di riferimento Esempio (Posizionamento nel sistema di coordinate della macchina alla velocità di avanzamento ) N1 G90 G01 ; N2 G53.2 X50. Y100. F1000 ; N3 G53.2 X150. F500 ; Comando assoluto con velocità di avanzamento F1000 Comando assoluto con velocità di avanzamento F500 Asse Y Decelera e si ferma. 100 0 50 - 165 - 150 X axis 7.SISTEMA DI COORDINATE 7.2 PROGRAMMAZIONE B-64484IT/02 SISTEMA DI COORDINATE DEL PEZZO Introduzione Il sistema di coordinate utilizzato per la lavorazione di un pezzo si dice sistema di coordinate del pezzo. Il sistema di coordinate del pezzo deve essere preventivamente stabilito nel CNC (impostazione del sistema di coordinate del pezzo). Il programma pezzo seleziona un sistema di coordinate del pezzo (selezione del sistema di coordinate del pezzo). Il sistema di coordinate del pezzo stabilito può essere cambiato traslandone l'origine (cambiamento del sistema di coordinate del pezzo). 7.2.1 Impostazione del sistema di coordinate del pezzo Il sistema di coordinate del pezzo può essere impostato in tre modi: (1) Con il codice G di impostazione del sistema di coordinate del pezzo Il sistema di coordinate del pezzo viene stabilito specificando i valori delle coordinate dopo il codice G di impostazione del sistema di coordinate del pezzo. (2) Automaticamente Se il bit 0 (ZPR) del parametro N. 1201 è 1, il sistema di coordinate del pezzo viene impostato automaticamente al completamento del ritorno manuale al punto di riferimento. (Vedi la sezione, “RITORNO MANUALE AL PUNTO DI RIFERIMENTO”.) Tuttavia, se è in uso l'opzione sistema di coordinate del pezzo, questa funzione è disabilitata. (3) Con un codice G di selezione del sistema di coordinate del pezzo E' possibile presettare sei sistemi di coordinate del pezzo tramite l'unità MDI. Per selezionare il sistema di coordinate del pezzo è possibile usare i comandi da G54 a G59. (Vedi la sottosezione, “Visualizzazione e impostazione dell'offset dello zero pezzo”.) Se si usano comandi assoluti, stabilire il sistema si coordinate del pezzo in uno qualsiasi dei suddetti modi. Formato - Impostazione del sistema di coordinate del pezzo M (G90) G92 IP_ T G50 IP_ Spiegazioni Un certo punto dell'utensile, ad esempio la punta, diventa il punto IP del sistema di coordinate del pezzo. M Se l'impostazione del sistema di coordinate con G92 viene effettuata con la compensazione lunghezza utensile attiva, viene impostato un sistema di coordinate in cui la posizione designata è la posizione precedente all'effettuazione dell'offset. G92 cancella temporaneamente la compensazione raggio utensile. T Se IP_ è un comando incrementale, il sistema di coordinate è definito in modo che la posizione attuale dell'utensile coincida con il risultato ottenuto sommando i valori incrementali programmati alla posizione precedente dell'utensile. Se l'impostazione del sistema di coordinate con G50 viene effettuata con le correzioni utensile attive, viene impostato un sistema di coordinate in cui la posizione designata è la posizione precedente all'effettuazione dell'offset. - 166 - PROGRAMMAZIONE B-64484IT/02 7.SISTEMA DI COORDINATE Esempio M (Esempio 2) Impostazione del sistema di coordinate con G92 X600.0 Z1200.0; (Il punto base del portautensili è sul punto di partenza del programma) (Esempio 1) Impostazione del sistema di coordinate con G92 X25.2 Z23.0; (La punta dell'utensile è sul punto di partenza del programma) Z Z Punto base 1200.0 L'esecuzione di un comando assoluto porta il punto base sulla posizione programmata. Perché la punta dell'utensile vada sulla posizione programmata, la distanza tra la punta dell'utensile e il punto base viene compensata dalla correzione lunghezza utensile (vedi la sezione, “COMPENSAZIONE LUNGHEZZA UTENSILE (G43, G44, G49)”). 23.0 0 X 25.2 0 X 600.0 T (Esempio 1) Impostazione del sistema di coordinate con G50X128.7Z375.1; (Programmazione diametrale) (La punta dell'utensile è sul punto iniziale del programma.) X (Esempio 2) Impostazione del sistema di coordinate con G50X1200.0Z700.0; (Programmazione diametrale) (Il punto base della torretta è sul punto iniziale del programma.) X 700.0 Punto iniziale (punto base) φ128.7 φ1200.0 Punto iniziale 375.1 Z Z Origine AVVERTENZA L'impostazione del sistema di coordinate del pezzo dipende dal tipo di programmazione, diametrale o radiale. Note - Comando per l'impostazione del sistema di coordinate del pezzo nel modo compensazione lunghezza utensile L'esecuzione di un codice G per l'impostazione del sistema di coordinate del pezzo (G92 o, per il sistema A di codici G su un sistema per torni, G50) presettta un sistema di coordinate nel quale la posizione specificata sarà la posizione prima della compensazione. Però, questo codice G non può essere utilizzato in un blocco nel quale cambia il vettore della compensazione lunghezza utensile vectors vary. Ad esempio, non può essere utilizzato nei seguenti blocchi. - 167 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Esempio 1 Blocco contenente G43/G44 2 Blocco eseguito nei modi G43 o G44 contenente un codice H 3 Blocco eseguito nei modi G43 o G44 contenente G49 4 Blocco eseguito nei modi G43 o G44 nel quale i vettori di compensazione vengono cancellati da un codice G come G28 o G53 e poi ripristinati. Quando si esegue il preset del sistema di coordinate del pezzo con l'apposito codice G, non fermare l'esecuzione del programma per cambiare, ad esempio in MDI, la compensazione lunghezza utensile selezionata. 7.2.2 Selezione del sistema di coordinate del pezzo Il programmatore può scegliere il sistema di coordinate del pezzo come segue. (Per i dettagli sui metodi di impostazione, vedi la sottosezione “Impostazione del sistema di coordinate del pezzo”.) (1) Dopo che con il codice G, o con la funzione di impostazione automatica del sistema di coordinate del pezzo, è stato stabilito un sistema di coordinate del pezzo, i comandi assoluti lavorano in tale sistema di coordinate. (2) Scelta fra sei sistemi di coordinate del pezzo specificati mediante l'unità MDI Specificando uno dei codici G da G54 a G59, è possibile selezionare uno dei sistemi di coordinate del pezzo specificati. G54 : Selezione del sistema di coordinate del pezzo 1 G55 : Selezione del sistema di coordinate N. 2 G56 : Selezione del sistema di coordinate del pezzo 3 G57 : Selezione del sistema di coordinate N. 4 G58 : Selezione del sistema di coordinate del pezzo 5 G59 : Selezione del sistema di coordinate N. 6 I sistemi di coordinate del pezzo da 1 a 6 sono stabiliti con il primo ritorno al punto di riferimento dopo l'accensione. All'accensione è selezionato il sistema di coordinate G54. Quando il bit 2 (G92) del parametro N. 1202 è 1, l'esecuzione di G92 per l'impostazione del sistema di coordinate del pezzo provoca l'allarme PS0010. Questo per evitare la confusione dei sistemi di coordinate da parte del programmatore. AVVERTENZA L'impostazione del sistema di coordinate del pezzo dipende dal tipo di programmazione, diametrale o radiale Esempio G90 G55 G00 X40.0 Y100.0 ; Y Sistema di coordinate del pezzo N. 2 (G55) 100.0 In questo esempio, viene eseguito un posizionamento a (X=40.0, Y=100.0) nel sistema di coordinate del pezzo N. 2. 40. X Fig. 7.2.2 (a) - 168 - PROGRAMMAZIONE B-64484IT/02 7.2.3 7.SISTEMA DI COORDINATE Cambiamento del sistema di coordinate del pezzo I sei sistemi di coordinate del pezzo specificati con G54/G59 possono essere cambiati variando i valori dell'offset esterno dello zero pezzo o dell'offset dello zero pezzo. Questo può essere fatto in tre modi diversi. (1) Da MDI (vedi la sottosezione, “Visualizzazione e impostazione dell'offset dello zero pezzo”.) (2) Da programma (usando il codice G dell'introduzione dati da programma o il codice G di impostazione del sistema di coordinate del pezzo) (3) Tramite la funzione di immissione dati dall'esterno Il valore dell'offset esterno dello zero pezzo può essere variato tramite un segnale esterno. Consultare il manuale del costruttore della macchina utensile. Sistema di coordinate del pezzo N. 1 (G54) Sistema di coordinate del pezzo N. 2 (G55) ZOFS2 Sistema di coordinate del pezzo N. 3 (G56) ZOFS3 Sistema di coordinate del pezzo N. 4 (G57) ZOFS4 ZOFS1 ZOFS5 Sistema di coordinate del pezzo N. 5 (G58) EXOFS ZOFS6 Zero macchina EXOFS : Offset esterno dello zero pezzo ZOFS1 - ZOFS6 : Offset dello zero pezzo Sistema di coordinate del pezzo N. 6 (G59) Fig. 7.2.3 (a) Offset esterno dello zero pezzo e offset dello zero pezzo Formato - Cambiamento con il codice G dell'introduzione dati da programma G10 L2 Pp IP_; p=0 : Offset esterno dello zero pezzo p=1 - 6 : Offset dello zero pezzo corrispondente al sistema di coordinate del pezzo 1 - 6 IP_ : Per un comando assoluto, offset dello zero pezzo per ciascun asse. Per un comando incrementale, valore da sommare all'offset dello zero pezzo attualmente impostato per ciascun asse (il risultato della somma diventa il nuovo offset dello zero pezzo). - Cambiamento con il codice G di impostazione del sistema di coordinate del pezzo M G92 IP_ ; T G50 IP_ ; - 169 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Spiegazioni - Cambiamento con il codice G dell'introduzione dati da programma Con questo comando è possibile cambiare individualmente ciascun sistema di coordinate del pezzo. - Cambiamento con il codice G di impostazione del sistema di coordinate del pezzo Con questo comando, il sistema di coordinate del pezzo (selezionato con uno dei codici G54/G59) si sposta per formare un nuovo sistema di coordinate in cui la posizione attuale dell'utensile diventa il punto definito dalle coordinate IP_. Dato che la distanza di questo spostamento viene aggiunta a tutti gli offset dello zero pezzo, tutti i sistemi di coordinate subiscono lo stesso spostamento. AVVERTENZA Quando viene impostato un sistema di coordinate con G92 dopo aver specificato un offset esterno dello zero pezzo, il sistema di coordinate non è influenzato dall'offset esterno dello zero pezzo. Ad esempio, se viene programmato G92X100.0Z80.0; viene stabilito un sistema di coordinate in cui la posizione del punto di riferimento dell'utensile è X = 100.0 e Z = 80.0. T Se IP è un comando incrementale, il sistema di coordinate è definito in modo che la posizione attuale dell'utensile coincida con il risultato ottenuto sommando i valori incrementali programmati alla posizione precedente dell'utensile. (Spostamento del sistema di coordinate) Esempio M Y Y’ 100 160 60 Sistema di coordinate del pezzo G54 Posizione utensile A 100 100 200 X’ X Se quando l'utensile è a (200, 160) nel sistema di coordinate G54 viene programmato G92X100Y100, viene creato il sistema di coordinate 1 (X' - Y') traslato del vettore A. Nuovo sistema di coordinate del pezzo Sistema di coordinate del pezzo originale - 170 - PROGRAMMAZIONE B-64484IT/02 Sistema di coordinate del pezzo G54 Z' Sistema di coordinate del pezzo G55 1200.0 Z' Z 1200.0 Z 600.0 A X' X 600.0 B AA X C 7.SISTEMA DI COORDINATE Supponiamo che sia specificato il sistema di coordinate del pezzo G54. Se la relazione fra i sistemi di coordinate G54 e G55 è corretta, con il comando G92X600.0 Z1200.0; è possibile settare un sistema di coordinate G55 nel quale il punto di riferimento dell'utensile (punto nero nella figura) è a (600.0, 1200.0). G92X600.0Z1200.0; Supponiamo ora di aver caricato due pallet in due diverse posizioni. Se i sistemi di coordinate dei due pallet sono G54 e G55 e la loro relazione è corretta, il comando G92 specificato per un pallet provoca la stessa traslazione dei due sistemi di coordinate. X' Questo significa che è possibile lavorare due pezzi montati su due pallet con lo stesso programma, specificando semplicemente G54 o G55. X' - Z' ........... Nuovo sistema di coordinate del pezzo X - Z ............. Sistema di coordinate del pezzo originale A : Offset creato da G92 B : Offset dello zero pezzo per il sistema di coordinate G54 C : Offset dello zero pezzo per il sistema di coordinate G55 Esempio T X X' Sistema di coordinate del pezzo G54 160 60 A 100 100 Se quando l'utensile è a (200, 160) nel sistema di coordinate G54 viene programmato G50X100Z100, viene creato il sistema di coordinate 1 (X' - Z') traslato del vettore A. Posizione utensile 100 200 Z' Nuovo sistema di coordinate del pezzo Z Sistema di coordinate del pezzo originale - 171 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Sistema di coordinate del pezzo G54 X' Sistema di coordinate del pezzo G55 X' 600.0 X 1200.0 A 600.0 Z' X Z 1200.0 B A Z C X' - Z' ........... Nuovo sistema di coordinate del pezzo X - Z ............ Sistema di coordinate del pezzo originale A : Offset creato da G50 B : Offset dello zero pezzo per il sistema di coordinate G54 C : Offset dello zero pezzo per il sistema di coordinate G55 7.2.4 Z' Supponiamo che sia specificato il sistema di coordinate del pezzo G54. Se la relazione fra i sistemi di coordinate G54 e G55 è corretta, con il comando G50X600.0 Z1200.0; è possibile settare un sistema di coordinate G55 nel quale il punto di riferimento dell'utensile (punto nero nella figura) è a (600.0, 1200.0). G50X600.0Z1200.0; Supponiamo ora che i pezzi vengano caricati in due posizioni diverse e che a queste due posizioni corrispondano, rispettivamente, i sistemi di coordinate del pezzo G54 e G55. Se la relazione fra i sistemi di coordinate delle due posizioni è corretta, il comando G50 specificato per una posizione provoca la stessa traslazione dei due sistemi di coordinate. Questo significa che è possibile lavorare due pezzi caricati in due posizioni con lo stesso programma, specificando semplicemente G54 o G55. Preset del sistema di coordinate del pezzo (G92.1) Questa funzione presetta un sistema di coordinate del pezzo traslato con un intervento manuale rispetto al precedente sistema di coordinate. Il nuovo sistema di coordinate del pezzo è spostato rispetto allo zero macchina da un offset dello zero pezzo. Esistono due metodi di utilizzo della funzione di preset del sistema di coordinate del pezzo. Un metodo usa un comando del programma. L'altro metodo usa una operazione MDI sulla schermata della posizione assoluta, sulla schermata della posizione relativa o sulla schermata generale della posizione (vedi la sottosezione, “Preset del sistema di coordinate del pezzo”). Formato M G92.1 IP 0 ; IP 0 : Specifica gli indirizzi degli assi soggetti all'operazione di preset del sistema di coordinate del pezzo. Il comando non ha effetto per gli assi non specificati. T G50.3 IP0 ; (G92.1 IP 0; per i sistemi B o C di codici G) IP 0 : Specifica gli indirizzi degli assi soggetti all'operazione di preset del sistema di coordinate del pezzo. Il comando non ha effetto per gli assi non specificati. - 172 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Spiegazioni Quando nello stato di reset viene eseguito il ritorno manuale al punto di riferimento, viene presettato il sistema di coordinate del pezzo, che è spostato rispetto al sistema di coordinate della macchina dell'offset dello zero pezzo. Ad esempio, quando il ritorno manuale al punto di riferimento viene eseguito mentre è selezionato il sistema di coordinate del pezzo G54, viene automaticamente stabilito (presettato) il sistema di coordinate del pezzo la cui origine è separata dall'origine del sistema di coordinate della macchina di un'entità pari all'offset dello zero pezzo associato a G54, e la distanza tra l'origine del sistema di coordinate del pezzo e il punto di riferimento rappresenta la posizione corrente nel sistema di coordinate del pezzo. Sistema di coordinate del pezzo G54 Zero pezzo Offset dello zero pezzo G54 Punto di riferimento Zero macchina Ritorno manuale al punto di riferimento Se si usa un trasduttore di posizione assoluto, all'accensione viene automaticamente impostato (presettato) il sistema di coordinate del pezzo la cui origine è separata dallo zero macchina di una distanza pari all'offset dello zero pezzo associato a G54. La posizione della macchina viene letta dall'encoder assoluto e il valore ottenuto sottraendo l'offset dello zero pezzo associato a G54 dal valore letto è la posizione corrente nel sistema di coordinate del pezzo. Il sistema di coordinate del pezzo presettato in questo modo viene spostato dai comandi e dalle operazioni elencati di seguito. (a) Intervento manuale con il segnale assoluto in manuale spento. (b) Comando di movimento eseguito con la macchina in stato di blocco. (c) Movimento da interruzione del volantino. (d) Funzionamento con immagine speculare. (e) Spostamento del sistema di coordinate impostando il sistema di coordinate locali o il sistema di coordinate del pezzo Prendendo il caso (a) come esempio, il sistema di coordinate del pezzo viene spostato della distanza dell'intervento manuale. Sistema di coordinate del pezzo G54 prima dell'intervento manuale Offset dello zero pezzo Po WZo Entità del movimento durante l'intervento manuale Sistema di coordinate del pezzo G54 dopo l'intervento manuale Pn Zero macchina - WZn Tramite codice G (G92.1), o da MDI, è possibile ripristinare il sistema di coordinate del pezzo spostato dalla precedente operazione. Il bit 3 (PPD) del parametro N. 3104 specifica se oltre alle coordinate assolute sono presettate anche le coordinate relative (RELATIVE). Se non è selezionata l'opzione sistema di coordinate del pezzo (G54/G59), l'origine del sistema di coordinate del pezzo viene fatta coincidere con il punto di riferimento. - 173 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Limitazioni - Compensazione raggio utensile, compensazione lunghezza utensile, correzioni utensile Prima di usare la funzione di preset del sistema di coordinate del pezzo, cancellare la Compensazione raggio utensile, compensazione lunghezza utensile e correzioni utensile. Se questa funzione viene eseguita senza cancellare questi modi, i vettori di compensazione vengono cancellati. M - Compensazione lunghezza utensile Prima di usare la funzione di preset del sistema di coordinate del pezzo, cancellare la compensazione lunghezza utensile. Se questa funzione viene eseguita senza cancellare questi modi, i vettori di compensazione vengono cancellati. - Ripartenza del programma La funzione di preset del sistema di coordinate del pezzo non è eseguita durante la ripartenza del programma. - Modi proibiti Non usare la funzione di preset del sistema di coordinate del pezzo quando sono attivi i seguenti modi: scala, rotazione del sistema di coordinate, immagine speculare programmabile o copia della figura. 7.2.5 Sistemi di coordinate del pezzo addizionali (G54.1 o G54) Oltre ai 6 sistemi di coordinate del pezzo G54/G59 (sistemi di coordinate del pezzo standard), possono essere usati altri 48 o 300 sistemi di coordinate del pezzo (sistemi di coordinate del pezzo addizionali). Formato - Selezione di un sistema di coordinate del pezzo addizionale G54.1Pn ; oppure G54Pn ; Pn : Codice del sistema di coordinate del pezzo addizionale n : da 1 a 48 o da 1 a 300 - Impostazione dell'offset dello zero pezzo nei sistemi di coordinate del pezzo addizionali (G10) G10L20Pn IP_; Pn : Codice del sistema di coordinate addizionale da settare n : da 1 a 48 o da 1 a 300 IP_ : Indirizzi asse ed entità dell'offset dello zero pezzo - 174 - B-64484IT/02 PROGRAMMAZIONE 7.SISTEMA DI COORDINATE Spiegazioni - Selezione di un sistema di coordinate del pezzo addizionale Quando il codice P viene specificato con G54.1 (G54), viene selezionato il sistema di coordinate del pezzo addizionale specificato da P (da 1 a 48 o da 1 a 300). Una volta selezionato, il sistema di coordinate resta valido finché non viene selezionato un altro sistema di coordinate. All'accensione, è selezionato il sistema di coordinate del pezzo standard G54. G54.1 P1 ........... Sistema di coordinate del pezzo addizionale N. 1 G54.1 P2 ........... Sistema di coordinate del pezzo addizionale N. 2 : G54.1 P48 ......... Sistema di coordinate del pezzo addizionale N. 48 : G54.1 P300 ....... Sistema di coordinate del pezzo addizionale N. 300 Come per i sistemi di coordinate standard, relativamente all'offset dello zero pezzo dei sistemi di coordinate addizionali possono essere eseguite le seguenti operazioni: (1) Gli offset possono essere visualizzati e impostati mediante la schermata di impostazione del sistema di coordinate del pezzo. (2) Gli offset possono essere impostati da programma usando il comando G10 (vedi la sottosezione, “Cambiamento del sistema di coordinate del pezzo”). (3) Gli offset possono essere gestiti come variabili di sistema nelle macro istruzioni. (4) Gli offset possono essere immessi ed emessi come dati esterni. (5) Gli offset possono essere letti come dati modali del programma tramite la finestra PMC. - Impostazione dell'offset dello zero pezzo nei sistemi di coordinate del pezzo addizionali (G10) Nel caso di un comando assoluto, il valore specificato diventa il nuovo valore di offset. Nel caso di un comando incrementale, il valore specificato si somma algebricamente all'offset corrente. Limitazioni - Specifica dei codici P Dopo G54.1 (G54) deve essere specificato un codice P. G54.1 non è specificato il codice P, viene selezionato il sistema di coordinate addizionale N. 1 (come con G54.1 P1). Se per il codice P viene specificato un valore fuori dai limiti, si ha l'allarme PS0030. Un blocco G54.1 (G54) non può contenere codici P che non specifichino un sistema di coordinate del pezzo addizionale. Esempio 1) G54.1G04P1000; Esempio 2) G54.1M98P48; - 175 - 7.SISTEMA DI COORDINATE 7.2.6 PROGRAMMAZIONE B-64484IT/02 Impostazione automatica del sistema di coordinate Se il bit 0 (ZPR) del parametro N. 1201 (impostazione automatica del sistema di coordinate) è 1, il sistema di coordinate è determinato automaticamente quando viene eseguito il ritorno manuale al punto di riferimento. Se al parametro 1250 vengono assegnati α, β, e γ , il sistema di coordinate del pezzo viene stabilito in modo che il punto base sul portautensile o la punta dell'utensile di riferimento siano X = α, Y = β, e Z = γ al completamento del ritorno al punto di riferimento. Questo è come specificare il seguente comando per l'impostazione del sistema di coordinate: M G92XαYβZγ; T G50XαZγ; Se è selezionata l'opzione "sistema di coordinate del pezzo", questa funzione non è utilizzabile. T Se l'entità dello spostamento del sistema di coordinate del pezzo è diversa da 0, viene impostato un sistema di coordinate del pezzo spostato dello stesso valore. 7.2.7 Spostamento del sistema di coordinate del pezzo T Spiegazioni Se il sistema di coordinate impostato con il comando G50 o il sistema di coordinate impostato automaticamente non corrisponde al sistema di coordinate programmato, il sistema di coordinate impostato può essere spostato (vedi la sezione, “RITORNO MANUALE AL PUNTO DI RIFERIMENTO”). Registrare l'entità dello spostamento voluto nella memoria dello spostamento del sistema di coordinate del pezzo. X x X-Z : Sistema di coordinate usato per la programmazione x-z : Sistema di coordinate attuale, con spostamento 0 (sistema di coordinate che deve essere modificato mediante lo spostamento) O’ z Spostamento Z O Registrare l'entità dello spostamento da O' a O nella memoria dello spostamento del sistema di coordinate del pezzo. Fig. 7.2.7 (a) Spostamento del sistema di coordinate del pezzo - 176 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Formato - Cambiamento dell'entità dello spostamento del sistema di coordinate del pezzo G10 P0 IP_; IP : Specifica degli indirizzi asse e delle corrispondenti entità dello spostamento del sistema di coordinate del pezzo AVVERTENZA Un singolo blocco può contenere una combinazione di X, Y, Z, C, U, V, W, e H (nel sistema A di codici G). In questo caso, se sono specificati più comandi per lo stesso asse, è valido l'ultimo. Limitazioni - Entità dello spostamento e comando di impostazione del sistema di coordinate del pezzo La programmazione di un comando per l'impostazione del sistema di coordinate (G50 o G92) disabilita lo spostamento Esempio) Se viene programmato G50X100.0Z80.0; il sistema di coordinate viene impostato in modo che la posizione corrente dell'utensile sia X = 100.0, Z = 80.0, indipendentemente dall'entità dello spostamento. - Entità dello spostamento e impostazione del sistema di coordinate del pezzo Se, dopo aver specificato l'entità dello spostamento, viene eseguita l'impostazione del sistema di coordinate tramite il ritorno manuale al punto di riferimento, il sistema di coordinate è immediatamente spostato . - Valore radiale o diametrale dello spostamento del sistema di coordinate del pezzo L'entità dello spostamento del sistema di coordinate è radiale o diametrale a seconda del tipo di programmazione, radiale o diametrale, adottato. Esempio) Se la posizione attuale del punto di riferimento dell'utensile rispetto all'origine del sistema di coordinate del pezzo è X = 121.0 (diametro), Z = 69.0, ma dovrebbe essere X = 120.0, Z = 70.0, impostare i seguenti valori di spostamento: X=1.0, Z=-1.0 69.0 Punto iniziale = punto base φ121.0 X Z - 177 - 7.SISTEMA DI COORDINATE 7.3 PROGRAMMAZIONE B-64484IT/02 SISTEMA DI COORDINATE LOCALI Quando si programma, è talvolta conveniente disporre, all'interno del sistema di coordinate del pezzo, di un secondo sistema di coordinate. Tale sistema di coordinate è il sistema di coordinate locali. Formato G52 IP_; Specifica il sistema di coordinate locali : G52 IP 0 ; Cancella il sistema di coordinate locali IP_ : Origine del sistema di coordinate locali Spiegazioni Programmando G52 IP_;, è possibile impostare un sistema di coordinate locali in tutti i sistemi di coordinate del pezzo (G54 - G59). L'origine di ciascun sistema di coordinate locali è nella posizione IP di ciascun sistema di coordinate pezzo. Una volta stabilito il sistema di coordinate locali, i comandi di movimento si specificano in tale sistema di coordinate. Il sistema di coordinate locali può essere cambiato specificando, con G52, una nuova origine del sistema di coordinate locali nel sistema di coordinate del pezzo. Per cancellare il sistema di coordinate locali, tornando a specificare le coordinate nel sistema di coordinate del pezzo, far coincidere l'origine del sistema di coordinate locali con il sistema di coordinate del pezzo, programmando G52 IP 0. IP_ (Sistema di coordinate locali) (G54: Sistema di coordinate del pezzo 1) G55 G56 IP_ G57 G58 (Sistema di coordinate locali) (G59: Sistema di coordinate del pezzo 6) (Sistema di coordinate della macchina) Origine del sistema di coordinate della macchina Punto di riferimento Fig. 7.3 (a) Impostazione del sistema di coordinate locali AVVERTENZA 1 Quando ZCL (bit 2 del parametro N.1201) è 1 viene eseguito il ritorno manuale al punto di riferimento di un asse, l'origine del sistema di coordinate locali di quell'asse coincide con lo zero del sistema di coordinate del pezzo. Lo stesso è vero quando viene dato il seguente comando: G52α0; α: Asse che ritorna al punto di riferimento 2 L'impostazione del sistema di coordinate locali non cambia i sistemi di coordinate del pezzo e della macchina. - 178 - PROGRAMMAZIONE B-64484IT/02 7.SISTEMA DI COORDINATE AVVERTENZA 3 Il sistema di coordinate del pezzo viene o non viene cancellato da un reset in base all'impostazione di un parametro. Il sistema di coordinate locali viene cancellato quando il bit 6 (CLR) del parametro N. 3402 o il bit 3 (RLC) del parametro N. 1202 sono 1. Però, nel modo conversione tridimensionale delle coordinate, il sistema di coordinate locali non viene cancellato quando il bit 2 (D3R) del parametro N. 5400 è 1. 4 Se si imposta un sistema di coordinate del pezzo con G92 (G50 per il sistema A di codici G, nella serie T), il sistema di coordinate locali viene cancellato. Tuttavia, il sistema di coordinate locali di un asse non specificato nel blocco con G92 (G50 per il sistema A di codici G, nella serie T) non viene cancellato e rimane invariato. 5 G52 cancella temporaneamente la compensazione raggio utensile. 6 Immediatamente dopo G52 specificare un comando assoluto. 7.4 SELEZIONE DEL PIANO Il piano per l'interpolazione circolare, la compensazione raggio utensile o la foratura si seleziona con un codice G. La seguente tabella indica la relazione fra i codici G e i piani selezionati. Spiegazioni Codice G Tabella 7.4 (a) Piano selezionato G17 G18 G19 Piano XpYp Piano ZpXp Piano YpZp Selezione del piano tramite codici G Xp Yp Asse X o suo asse parallelo Asse Y o suo asse parallelo Zp Asse Z o suo asse parallelo Xp, Yp e Zp sono determinati dagli indirizzi asse specificati nei blocchi G17, G18, G19. Se in un blocco G17, G18 o G19 viene omesso un indirizzo asse, viene assunto l'asse base corrispondente. Il parametro N. 1022 permette di specificare che un asse opzionale è parallelo a uno degli assi base X, Y o Z. Se un blocco non contiene G17, G18 o G19, il piano resta invariato. Il comando di movimento è irrilevante rispetto alla selezione del piano. M All'accensione o dopo un reset del CNC è attivo G17 (piano XY), G18 (piano ZX) o G19 (piano YZ) a seconda dell'impostazione dei bit 1 (G18) e 2 (G19) del parametro N. 3402. T All'accensione è attivo G18 (piano ZX). Se il bit 0 (TPS) del parametro N. 3458 è 1, è possibile selezionare un piano modale impostando i bit 1 (G18) e 2 (G19) del parametro N. 3402. NOTA Gli assi U, V e W possono essere usati con i sistemi B e C di codici G. - 179 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Esempio Selezione del piano quando gli assi X e U sono paralleli: G17 X_Y_ ; Piano XY G17 U_Y_ ; Piano UY G18 X_Z_ ; Piano ZX X_ Y_ ; Il piano (piano ZX) non cambia. G17 ; Piano XY G18 ; Piano ZX G17 U_ ; Piano UY G18Y_ ; Piano ZX, l'asse Y si muove senza alcuna relazione con la selezione del piano. 7.5 FUNZIONE DI CONVERSIONE DEL PIANO Introduzione Questa funzione converte un programma pezzo creato nel piano G17 del sistema destrorso di coordinate cartesiane in un programma nel piano specificato dal comando G17.1Px, in modo da ottenere la stessa figura in uno dei piani indicati dalle frecce nella Fig.7.5 (a) Z G17.1P1(G17) G17.1P5 G17.1P4 Y G17.1P3 X G17.1P2 Fig.7.5 (a) Piani specificati da G17.1Px Formato G17.1 P_ ; P_ : P1 - P5 Specifica del piano G17.1P1 è lo stesso di G17. Spiegazioni La conversione della figura programmata nel piano G17 mostrata nella Fig.7.5 (b) viene eseguita come si vede in Fig.7.5 (c), Fig.7.5 (d), Fig.7.5 (e), Fig.7.5 (f) o Fig.7.5 (g). - 180 - B-64484IT/02 PROGRAMMAZIONE 7.SISTEMA DI COORDINATE Y X Z Piano G17 Fig.7.5 (b) G17 Il cerchio sull'origine indica che la direzione positiva dell'asse perpendicolare a questa pagina è la direzione che esce dalla pagina (in questo caso, l'asse Z è perpendicolare al piano XY). Y X Z Piano G17 Fig.7.5 (c) G17.1P1 Z X Y Piano G18 Fig.7.5 (d) G17.1P2 La croce sull'origine indica che la direzione negativa dell'asse perpendicolare a questa pagina è la direzione che esce dalla pagina (in questo caso, l'asse Y è perpendicolare al piano XZ). - 181 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Z Y X Piano G19 Fig.7.5 (e) G17.1P3 Z X Y Piano G18 Fig.7.5 (f) G17.1P4 Z Y X Piano G19 Fig.7.5 (g) - 182 - G17.1P5 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Questa funzione converte i comandi programmati nel piano G17 nei seguenti comandi: Tabella 7.5 (b) Comando G17.1P1 Comandi convertiti da questa funzione Conversione del piano G17.1P2 G17.1P3 G17.1P4 G17.1P5 X Y Z G02 G03 I X Y Z G02 G03 I X Z -Y G03 G02 I Y Z -X G02 G03 J -X Z Y G02 G03 -I -Y Z -X G03 G02 -J J K G41 G42 Compensazione lunghezza utensile Senso di rotazione delle coordinate Direzione dell'asse d foratura Piano J K G41 G42 + K -J G42 G41 - K I G41 G42 + K J G41 G42 + K -I G42 G41 - + - + + - + - + + - G17 G18 G19 G18 G19 Il dato modale visualizzato quando è attiva la funzione conversione del piano è il seguente. Tabella7.5 (c) Comando Dato modale visualizzato Dato visualizzato G17.1P1 G17.1P2 G17.1P3 G17.1P4 G17.1P5 G17 G17.1 G17.1 G17.1 G17.1 - 183 - 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Esempio Il programma pezzo creato nel piano G17 del sistema destrorso di coordinate cartesiane in modo da ottenere la stessa figura vista dalla direzione indicata dal comando G17.1P2. Y Y Z Y X G17 Z G54 Y X X Z X Y Sistema di coordinate della macchina -Z Sistema di coordinate della macchina X Y Y G17.1P2 G54 X -Z O1000 (PROGRAMMA PRINCIPALE) O2000 (SOTTOPROGRAMMA) N10 G91 G28 X0 Y0 Z0 N2010 G90 G00 Z0 N20 G54 N2020 G00 X0 Y0 N30 G17 N2030 G00 X30.0 Y20.0 N40 M98 P2000 N2040 G01 Z-50.0 F200 N50 G55 N2050 Y90.0 F500 N60 G17.1 P2 N2060 X60.0 Y70.0 N70 M98 P2000 N2070 G02 Y20.0 J-25.0 N80 G91 G28 X0 Y0 Z0 N2080 G01 X30.0 N90 M30 N2090 G00 Z0 N2100 M99 - 184 - X 7.SISTEMA DI COORDINATE PROGRAMMAZIONE B-64484IT/02 Limitazioni 1 2 3 4 La conversione del piano può essere eseguita solo per i comandi degli assi X, Y e Z. La conversione del piano non può essere eseguita per le operazioni manuali. La conversione del piano non può essere eseguita per i seguenti comandi che portano l'utensile in una specifica posizione, per i comandi relativi al sistema di coordinate della macchina, per i comandi di impostazione del sistema di coordinate. - Ritorno automatico al punto di riferimento (G28 e G30) - Ritorno al punto di riferimento mobile (G30.1) - Ritorno dal punto di riferimento (G29) - Selezione del sistema di coordinate della macchina (G53) - Controllo delle zone di sicurezza (G22) - Impostazione del sistema di coordinate (G54 - G59 e G92) - Preset del sistema di coordinate del pezzo (G92.1) - Impostazione delle correzioni (G10) La visualizzazione della posizione attuale indica le coordinate dopo la conversione del piano (Tabella7.5 (d)) Tabella7.5 (d) Comando X G90 G00 X0 Y0 Z0 G17.1 P3 G00 X10.0 Y20.0 G01 Z-50.0 F200 G02 X50.0 Y60.0 I40.0 5 6 7 8 Indicazione della posizione attuale Coordinate assolute Y 0.0 0.0 0.0 -50.0 -50.0 0.0 0.0 10.0 10.0 50.0 Z 0.0 0.0 20.0 20.0 60.0 La conversione del piano non può essere eseguita insieme alla funzione di commutazione assi. Specificare la conversione del piano dopo aver cancellato i seguenti modi. - Compensazione raggio utensile - Compensazione lunghezza utensile - Cicli fissi - Conversione tridimensionale delle coordinate - Rotazione delle coordinate - Scala - Immagine speculare programmabile La conversione del piano non può essere eseguita per i seguenti comandi che controllano un asse rotativo insieme agli assi X, Y o Z: - Interpolazione in coordinate polari - Interpolazione cilindrica - Controllo della direzione normale - Interpolazione esponenziale - Filettatura circolare B Se nel modo conversione del piano viene eseguito un comando G17, G18 o G19, la conversione viene disabilitata e viene selezionato il piano specificato dal comando. - 185 - 8. VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE 8 B-64484IT/02 VALORI DELLE COORDINATE E DIMENSIONI Il Capitolo 8, "VALORI DELLE COORDINATE E DIMENSIONI", è costituito dalle seguenti sezioni: 8.1 8.2 8.3 8.4 8.5 PROGRAMMAZIONE ASSOLUTA E INCREMENTALE ........................................................... 186 CONVERSIONE POLLICI/MILLIMETRI (G20, G21) .................................................................. 188 PROGRAMMAZIONE DEL PUNTO DECIMALE ........................................................................ 191 PROGRAMMAZIONE RADIALE E PROGRAMMAZIONE DIAMETRALE ............................. 193 COMMUTAZIONE DINAMICA FRA PROGRAMMAZIONE DIAMETRALE E RADIALE .... 194 8.1 PROGRAMMAZIONE ASSOLUTA E INCREMENTALE Il movimento degli assi può essere programmato con comandi assoluti o con comandi incrementali. In programmazione assoluta si specificano le coordinate del punto finale. In programmazione incrementale si specifica la distanza da percorrere. M La selezione tra programmazione assoluta e programmazione incrementale si esegue con G90 o G91, rispettivamente. T La specifica della programmazione assoluta e della programmazione incrementale dipende dal sistema di codici G utilizzato. Vedere le tabelle che seguono. Sistema di codici G A BoC Metodo di comando Indirizzo parola G90, G91 Formato M Programmazione assoluta G90 IP_ ; Programmazione incrementale G91 IP_ ; T - Sistema A di codici G Comando di movimento asse X Comando di movimento asse Z Comando di movimento asse Y Comando di movimento asse C - Programmazione assoluta Programmazione incrementale X Z Y C U W V H Sistemi B e C di codici G Programmazione assoluta G90 IP_ ; Programmazione incrementale G91 IP_ ; - 186 - PROGRAMMAZIONE B-64484IT/02 8.VALORI DELLE COORDINATE E DIMENSIONI Esempio M G90 X40.0 Y70.0 ; Programmazione assoluta G91 X-60.0 Y40.0 ; Programmazione incrementale Y Punto finale 70.0 30.0 Punto iniziale 40.0 X 100.0 T Movimento dell'utensile dal punto P al punto Q (con programmazione diametrale per l'asse X) Programmazione assoluta Programmazione incrementale X Sistema A di codici G Sistemi B e C di codici G X400.0 Z50.0 ; U200.0 W-400.0 ; G90 X400.0 Z50.0 ; G91 X200.0 Z-400.0 ; Q (400, 50) P (200, 450) φ400 φ200 Z 50 450 NOTA 1 I comandi assoluti e incrementali possono essere usati insieme in un blocco. Nell'esempio precedente, potrebbe essere specificato il seguente comando: X400.0 W-400.0 ; (Con il sistema A di codici G) 2 Quando in un blocco si specificano insieme X e U o Z e W, è valido quello specificato per ultimo. 3 Con il sistema A di codici G non è possibile specificare comandi incrementali per gli assi A e B. - 187 - 8. VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE 8.2 B-64484IT/02 CONVERSIONE POLLICI/MILLIMETRI (G20, G21) La programmazione in pollici o in millimetri può essere selezionata tramite codice G. Formato G20 ; G21 ; Programmazione in pollici Programmazione in millimetri Questo codice G deve essere specificato in un blocco indipendente prima di impostare il sistema di coordinate all'inizio del programma. Quando viene specificato il codice G per la conversione pollici/millimetri, le unità dei dati programmati sono commutate nell'incremento minimo di immissione del sistema di incrementi adottato (Vedi la sezione, “SISTEMA DI INCREMENTI”). Le unità dei dati programmati in gradi non cambiano. Dopo la conversione pollici/millimetri, cambiano le unità dei seguenti dati: • Velocità di avanzamento comandata con il codice F • Comandi di posizione • Offset dello zero pezzo • Valori delle correzioni utensile • Unità di scala per il generatore manuale di impulsi • Entità del movimento in avanzamento incrementale • Alcuni parametri All'accensione il CNC è nello stato in cui si trovava al momento del precedente spegnimento. PERICOLO G20 e G21 non devono essere commutati durante un programma. NOTA 1 Quando le unità di macchina e di programmazione sono diverse, l'errore massimo è pari alla metà dell'incremento minimo di comando. Questo errore non si accumula 2 La commutazione pollici/millimetri può essere eseguita anche in impostazione (vedi la sottosezione, “Visualizzazione ed introduzione dei dati di impostazione”). 3 Se non si utilizzano le funzioni selezionabili con il bit 2 (IRF) del parametro N. 14000 o con il bit 0 (NIM) del parametro N. 11222, eseguire sempre la conversione pollici/millimetri sul punto di riferimento (origine del sistema di coordinate della macchina). Esecuzione della conversione pollici/millimetri sul punto di riferimento (il parametro N. 1240 non è a 0) Normalmente, la conversione pollici/millimetri deve essere eseguita sull'origine del sistema di coordinate della macchina. Tuttavia, mettendo a 1 il bit 2 (IRF) del parametro N. 14000 si abilita l'esecuzione della conversione pollici/millimetri sul punto di riferimento (parametro N. 1240). Se si tenta di eseguire la conversione pollici/millimetri quando un asse per il quale è abilitata questa funzione non è sul punto di riferimento, si verifica l'allarme PS5362, “CONVERT INCH/MM AT REF-POS.”, che annulla il tentativo. Prima di specificare la conversione pollici/millimetri, portare l'asse che interessa sul punto d riferimento, ad esempio, con un comando G28. - 188 - B-64484IT/02 PROGRAMMAZIONE 8.VALORI DELLE COORDINATE E DIMENSIONI Inoltre se, con uno dei seguenti comandi od operazioni, il sistema di coordinate del pezzo è stato traslato rispetto al sistema di coordinate della macchina, il bit 1 (CIM) del parametro N. 11222 può essere utilizzato per scegliere tra l'indicazione dell'allarme PS1298 e la cancellazione dell'offset. • Intervento manuale eseguito con il segnale di assoluto in manuale OFF • Comando di movimento eseguito con la macchina in stato di blocco • Comando di movimento mediante un'interruzione con volantino • Funzionamento in immagine speculare • Spostamento del sistema di coordinate del pezzo causato dall'impostazione del sistema di coordinate locali (G52) o dall'impostazione del sistema di coordinate del pezzo (G92) Condizioni per la commutazione L'esecuzione della conversione pollici/millimetri in una posizione diversa dal punto di riferimento richiede che siano soddisfatte tutte le seguenti condizioni. Se una di esse non è soddisfatta, si verifica l'allarme PS1298, “CONVERSIONE POLLICI/MILLIMETRI ILLEGALE”. Per la sincronizzazione con accoppiamento elettronico di due gruppi o la sincronizzazione con accoppiamento elettronico, viene indicato l'allarme PS1595, “COMANDO ILLEGALE NEL MODO EGB”. • Posizionamento o interpolazione lineare • Modo interpolazione in coordinate polari cancellata • Comando in coordinate polari cancellato • Rilevazione errore di velocità mandrino off • Compensazione raggio utensile cancellata / Compensazione tridimensionale dell'utensile cancellata • Controllo della direzione normale cancellato • Compensazione lunghezza utensile cancellata • Scala cancellata • Immagine speculare programmabile cancellata • Tornitura poligonale cancellata • Richiamo macro modale A/B cancellato • Rotazione del sistema di coordinate o conversione tridimensionale del sistema di coordinate off • Immagine speculare per doppia torretta o lavorazione bilanciata cancellate (solo Serie T) • Ciclo fisso cancellato • Sincronizzazione con accoppiamento elettronico per due gruppi cancellata • Sincronizzazione con accoppiamento elettronico cancellata • Controllo velocità di taglio costante cancellato Inoltre, l'esecuzione della conversione pollici/millimetri in una posizione diversa dal punto di riferimento necessita delle seguenti opzioni. • Conversione pollici/millimetri • Sistema di coordinate del pezzo Limitazioni Quando si eseguono le seguenti operazioni, l'asse interessato deve essere nella posizione di riferimento (origine del sistema di coordinate della macchina). • Conversione pollici/millimetri basata sul bit 2 (INI) del parametro di impostazione N. 0 • Conversione pollici/millimetri basata sull'introduzione dati da programma (G10) • Conversione pollici/millimetri basata sulla variabile macro N. 3005 - 189 - 8. VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE B-64484IT/02 Esecuzione della conversione pollici/millimetri in posizioni diverse dal punto di riferimento Impostando il bit 0 (NIM) del parametro N. 11222 si abilita l'esecuzione della conversione pollici/millimetri anche in posizioni diverse dal punto di riferimento. Inoltre se, con uno dei seguenti comandi od operazioni, il sistema di coordinate del pezzo è stato traslato rispetto al sistema di coordinate della macchina, il bit 1 (CIM) del parametro N. 11222 può essere utilizzato per scegliere tra l'indicazione dell'allarme PS1298 e la cancellazione dell'offset. • Intervento manuale eseguito con il segnale di assoluto in manuale OFF • Comando di movimento eseguito con la macchina in stato di blocco • Comando di movimento mediante un'interruzione con volantino • Funzionamento in immagine speculare • Spostamento del sistema di coordinate del pezzo causato dall'impostazione del sistema di coordinate locali (G52) o dall'impostazione del sistema di coordinate del pezzo (G92) Per un asse assoggettato ad uno dei seguenti controlli la conversione automatica del sistema di coordinate basata su questa funzione non viene eseguita. • Controllo assi da PMC • Controllo sincrono (per l'asse slave quando l'asse master è un asse del PMC) • Controllo sincrono flessibile (per l'asse slave quando l'asse master è un asse del PMC) • Funzione di oscillazione • Controllo mandrino con un motore asse • Controllo mandrino in contornatura Cs • Controllo sincrono asse/mandrino Condizioni per la commutazione L'esecuzione della conversione pollici/millimetri in una posizione diversa dal punto di riferimento richiede che siano soddisfatte tutte le seguenti condizioni. Se una di esse non è soddisfatta, si verifica l'allarme PS1298. Per la sincronizzazione con accoppiamento elettronico di due gruppi o la sincronizzazione con accoppiamento elettronico, viene indicato l'allarme PS1595. • Posizionamento o interpolazione lineare • Modo interpolazione in coordinate polari cancellata • Comando in coordinate polari cancellato • Rilevazione errore di velocità mandrino off • Compensazione raggio utensile cancellata / Compensazione tridimensionale dell'utensile cancellata • Controllo della direzione normale cancellato • Compensazione lunghezza utensile cancellata • Scala cancellata • Immagine speculare programmabile cancellata • Tornitura poligonale cancellata • Richiamo macro modale A/B cancellato • Rotazione del sistema di coordinate o conversione tridimensionale del sistema di coordinate off • Immagine speculare per doppia torretta o lavorazione bilanciata cancellate (solo Serie T) • Ciclo fisso cancellato • Sincronizzazione con accoppiamento elettronico per due gruppi cancellata • Sincronizzazione con accoppiamento elettronico cancellata • Controllo velocità di taglio costante cancellato - 190 - PROGRAMMAZIONE B-64484IT/02 8.VALORI DELLE COORDINATE E DIMENSIONI Inoltre, l'esecuzione della conversione pollici/millimetri in una posizione diversa dal punto di riferimento necessita delle seguenti opzioni. • Conversione pollici/millimetri • Sistema di coordinate del pezzo • Preset del sistema di coordinate del pezzo Limitazioni Quando si eseguono le seguenti operazioni, l'asse interessato deve essere nella posizione di riferimento (origine del sistema di coordinate della macchina). • Conversione pollici/millimetri basata sul bit 2 (INI) del parametro di impostazione N. 0 • Conversione pollici/millimetri basata sull'introduzione dati da programma (G10) • Conversione pollici/millimetri basata sulla variabile macro N. 3005 8.3 PROGRAMMAZIONE DEL PUNTO DECIMALE I valori numerici possono essere immessi con il punto decimale. Il punto decimale può essere usato nella specifica di distanze, tempi o velocità. I seguenti indirizzi accettano il punto decimale: M X, Y, Z, U, V, W, A, B, C, I, J, K, Q, R, F T X, Y, Z, U, V, W, A, B, C, I, J, K, R, F Spiegazioni Esistono due tipi di notazione con punto decimale: notazione tipo calcolatrice e notazione standard. Quando si usa l'introduzione con punto decimale tipo calcolatrice tascabile, un valore senza punto decimale è considerato specificato in millimetri, pollici, o gradi. Se si usa la notazione standard, lo stesso valore è considerato come specificato in incrementi minimi di immissione. La scelta tra la notazione standard e la notazione tipo calcolatrice si esegue con il bit 0 (DPI) del parametro N. 3401. I valori possono essere specificati con e senza il punto decimale. Esempio Comando del programma Programmazione del punto decimale tipo calcolatrice X1000 Comando senza punto decimale 1000mm Unità :mm X1000.0 Comando con punto decimale 1000mm Unità :mm Programmazione del punto decimale standard 1mm Unità : Incremento minimo di immissione (0.001mm) 1000mm Unità :mm AVVERTENZA In un blocco, prima dei valori numerici, deve essere specificato il codice G appropriato. - 191 - 8. VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE B-64484IT/02 NOTA 1 I valori al di sotto dell'incremento minimo di programmazione sono trattati come segue. Esempio 1) Quando i valori sono specificati direttamente per un indirizzo (nel caso di 1/1000mm IS-B) X1.2345 ; Trattato come X1.235 X-1.2345 ; Trattato come X-1.234 Esempio 2) Quando i valori sono specificati utilizzando una variabile macro (nel caso di 1/1000mm IS-B) #100=1.2345; X#100 ; Trattato come X1.235 #100=-1.2345; X#100 ; Trattato come X-1.234 2 Se vengono specificate più di 8 cifre si ha un allarme. Se viene programmato un valore con punto decimale, il numero di cifre viene controllato dopo che il valore immesso è stato convertito in un numero intero di incrementi minimi di immissione. Esempi: X1.23456789; Si ha l'allarme PS0003 “TROPPE CIFRE” perché sono specificate più di 8 cifre. X123456.7; Se l'incremento minimo di immissione è 0.001mm, il valore è convertito nel numero intero 123456700. Poiché l'intero ha più di 8 cifre, si ha l'allarme. - 192 - PROGRAMMAZIONE B-64484IT/02 8.4 8.VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE DIAMETRALE E PROGRAMMAZIONE RADIALE Siccome la sezione dei pezzi lavorati su un tornio è generalmente circolare, le dimensioni di un pezzo possono essere programmate in due modi: specificandone il diametro o specificandone il raggio. A B D1 D2 R2 R1 Asse X D1, D2 : Programmazione diametrale R1, R2 : Programmazione radiale Asse Z Se viene specificato il diametro del pezzo si parla di programmazione diametrale mentre se viene specificato il raggio del pezzo si parla di programmazione radiale. Spiegazioni - Note sulla programmazione diametrale/radiale per ciascun comando La scelta fra programmazione diametrale e programmazione radiale può essere specificata con il bit 3 (DIA) del parametro (N. 1006. Quando si usa la programmazione diametrale, considerare le condizioni elencate nella Tabella 8.4 (a). Tabella 8.4 (a) Voce Note sulla programmazione diametrale Note Comandi dell'asse X Comando incrementale Impostazione del sistema di coordinate (G50) Componenti delle correzioni utensili Parametri dei cicli fissi, come la profondità di taglio lungo l'asse X. (R) Raggio dell'interpolazione circolare (R, I, K, ecc.) Velocità di avanzamento Visualizzazione della posizione Specificati come diametri Specificati come diametri Nell'esempio qui sopra specificare D2 meno D1 per il movimento da B ad A. Specificare le coordinate con un valore diametrale Il bit 1 del parametro N. 5004 determina la scelta fra diametro e raggio Specificare un valore radiale Specificare un valore radiale Specificare la variazione del raggio/giro o la variazione del raggio/minuto Visualizzata con un valore diametrale - 193 - 8. VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE 8.5 B-64484IT/02 FUNZIONE DI COMMUTAZIONE FRA PROGRAMMAZIONE DIAMETRALE E RADIALE Introduzione Normalmente l'utilizzo di valori diametrali o di valori radiali per la specifica di un movimento asse è determinato unicamente dall'impostazione del bit 3 (DIAx) del parametro N. 1006. Invece questa funzione permette di commutare tra la programmazione diametrale e la programmazione radiale utilizzando un segnale o un codice G. Così diventa possibile specificare una quota, un programma, ecc. commutando tra specifica diametrale e specifica radiale per ciascun asse controllato. Spiegazioni - Selezione del metodo di commutazione diametrale/radiale Per la commutazione diametrale/radiale sono disponibili due metodi: 1) Segnale 2) Codice G Il metodo prescelto si seleziona con il bit 5 (PGD) del parametro N. 3400. - Metodo di commutazione mediante segnale La commutazione tra specifica diametrale e specifica radiale per un asse ha luogo quando il segnale di commutazione diametrale/radiale (segnali in ingresso da DI1 a DI8) corrispondente a quell'asse passa da 0 a 1. Se uno dei segnali in ingresso da DI1 a DI8 passa da 0 a 1 e per l'asse corrispondente è selezionata la programmazione radiale (bit 3 (DIAx) del parametro N. 1006 = 0) il metodo di specifica per quell'asse diventa la programmazione diametrale; se invece era selezionata la programmazione diametrale ( bit 3 (DIAx) del parametro N. 1006 = 1) il metodo di specifica diventa la programmazione radiale. Durante la commutazione, viene emesso il segnale di commutazione diametrale/radiale in corso (segnali in uscita da DM1 a DM8) corrispondente all'asse per il quale ha luogo la commutazione. Per riportare allo stato originale la specifica diametrale/radiale di un asse, rimettere a 0 il segnale di commutazione (da DI1 a DI8) corrispondente. NOTA 1 Se lo stato del segnale di commutazione diametrale/radiale viene gestito, ad esempio, con un codice M durante il funzionamento automatico, programmare la commutazione con il metodo descritto qui sotto, che consente di rispecchiare correttamente lo stato della commutazione nel blocco in esecuzione. Per la commutazione utilizzare un codice M non bufferizzato (parametro N. 3411 e successivi). Per il codice M prescelto, eseguire questa sequenza: - Esecuzione della commutazione Codice M → Segnale in ingresso ON → Controllo che il segnale in uscita sia ON → FIN - Cancellazione della commutazione Codice M → Segnale in ingresso OFF → Controllo che il segnale in uscita sia OFF → FIN Se durante il funzionamento automatico il segnale di commutazione diametrale/radiale non è trattato come è indicato qui sopra, si verifica l'allarme PS5320, “COMMUTAZ DIAMETRO/RAGGIO IMPOSS.”. 2 Se lo stato del segnale di commutazione diametrale/radiale cambia mentre è in esecuzione un movimento dell'asse soggetto alla commutazione si verifica l'allarme PS5320. - 194 - B-64484IT/02 - PROGRAMMAZIONE 8.VALORI DELLE COORDINATE E DIMENSIONI Metodo di commutazione mediante codice G (commutazione diametrale/radiale da programma) Il formato del codice G per la commutazione diametrale/radiale è il seguente: Formato G10.9 IP_ ; IP_ : Indirizzo dell'asse soggetto alla commutazione diametro/raggio e valore del comando Come valore del comando specificare 0 o 1. 0: Programmazione radiale 1: Programmazione diametrale NOTA 1 Specificare G10.9 in un blocco indipendente (non contenente altri codici). 2 Dopo un indirizzo asse, specificare il valore del comando senza utilizzare il punto decimale. - Esecuzione della commutazione A seconda del metodo di commutazione prescelto, la programmazione diametrale/radiale viene commutata internamente come segue: 1) Commutazione mediante segnale • Se il parametro DIAx = 0 (programmazione radiale) → I comandi vengono eseguiti in base alla programmazione radiale. • Se il parametro DIAx = 1 (programmazione diametrale) → I comandi vengono eseguiti in base alla programmazione diametrale. 2) Commutazione mediante codice G • Se il valore del comando è 0 (programmazione radiale) → I comandi vengono eseguiti in base alla programmazione radiale. • Se il valore del comando è 1 (programmazione diametrale) → I comandi vengono eseguiti in base alla programmazione diametrale. NOTA 1 Se si utilizza il metodo di commutazione mediante un segnale, quando lo stato di commutazione diametrale/radiale deve essere cancellato da un reset o da una commutazione del modo, è necessario agire sui segnali in ingresso. 2 La commutazione mediante codice G viene cancellata da un reset. AVVERTENZA Quando si passa dalla programmazione diametrale alla programmazione radiale, il movimento determinato da un comando diventa di entità doppia rispetto alla precedente programmazione diametrale. Pertanto, nel passare dalla programmazione diametrale alla programmazione radiale, garantire la sicurezza del funzionamento della macchina. - Selezione del sistema di coordinate della macchina Quando con la funzione corrispondente viene eseguita la commutazione diametro/raggio, le coordinate specificate da un comando di selezione del sistema di coordinate della macchina (G53) variano a seconda del valore del bit 7 (PDM) del parametro N. 11222. Se PDM è 0, si ha la commutazione diametro/raggio. Se PDM è 1, le coordinate variano a seconda del valore del bit 3 (DIAx) del parametro N. 1006. - 195 - 8. VALORI DELLE COORDINATE E DIMENSIONI PROGRAMMAZIONE B-64484IT/02 Limitazioni - Velocità di avanzamento La velocità di avanzamento è sempre specificata in base al raggio, indipendentemente dal modo di programmazione diametrale o radiale. - Dati non soggetti alla commutazione I seguenti dati seguono l'impostazione del parametro DIAx, pertanto non cambiano in seguito ad una commutazione diametro/raggio. • Parametri • Correzioni • Sistema di coordinate del pezzo • Visualizzazione in scala sulla schermata grafica NOTA Riguardo alle correzioni l'impostazione del 1 (ORC) del parametro N. 5004 e del bit 2 (ODI) del parametro N. 5004 ha la priorità - Dati e comandi soggetti alla commutazione I seguenti dati e comandi seguono la commutazione diametro/raggio eseguita in base al metodo di specifica prescelto: • Comandi di movimento programmati • Visualizzazione della posizione attuale • Preset del sistema di coordinate del pezzo • Movimento generato da un comando numerico in manuale (G00 o G01) - Uso con altre funzioni La commutazione diametro/raggio non può essere eseguita per un asse lungo il quale è in esecuzione un movimento determinato da una delle seguenti funzioni. Inoltre nessuna delle seguenti funzioni può essere eseguita quando è attiva la commutazione diametro/raggio. • Controllo sincrono/composto • Controllo sovrapposto • Controllo sincrono degli assi • Controllo assi da PMC - 196 - B-64484IT/02 9 PROGRAMMAZIONE 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) La velocità del mandrino può essere controllata specificando un valore numerico per l'indirizzo S. Il capitolo 9, "FUNZIONE VELOCITA' MANDRINO (FUNZIONE S)", è costituito dalle seguenti sezioni: 9.1 9.2 9.3 9.4 9.5 9.6 SPECIFICA DELLA VELOCITA' DEL MANDRINO CON UN CODICE ................................... 197 SPECIFICA DIRETTA DELLA VELOCITA' DEL MANDRINO (COMANDO S-5 CIFRE) ...... 197 CONTROLLO DELLA VELOCITA' DI TAGLIO COSTANTE (G96, G97)................................. 197 FUNZIONE DI POSIZIONAMENTO DEL MANDRINO .............................................................. 202 RILEVAZIONE DEGLI ERRORI DI VELOCITA' DEL MANDRINO ......................................... 207 CONTROLLO MANDRINO CON UN MOTORE ASSE ............................................................... 211 9.1 SPECIFICA DELLA VELOCITA' DEL MANDRINO CON UN CODICE Quando viene specificato un valore dopo l'indirizzo S, il segnale del codice e il segnale strobe vengono inviati alla macchina per il controllo della velocità di rotazione del mandrino. In un blocco può essere programmato un solo codice S. Per le modalità di programmazione, numero di cifre del codice S, ordine di esecuzione delle operazioni quando lo stesso blocco contiene un codice S e un comando di movimento, ecc., consultare il manuale del costruttore della macchina utensile. 9.2 SPECIFICA DIRETTA DELLA VELOCITA' DEL MANDRINO (COMANDO S-5 CIFRE) La velocità del mandrino può essere specificata direttamente con l'indirizzo S seguito da un numero di 5 cifre (giri/min). Le unità in cui viene espressa la velocità del mandrino possono essere diverse a seconda della scelta operata dal costruttore della macchina utensile. Per i dettagli consultare il manuale fornito dal costruttore stesso. 9.3 CONTROLLO DELLA VELOCITA' DI TAGLIO COSTANTE (G96, G97) La velocità di taglio (velocità relativa fra l'utensile e il pezzo) si specifica con il codice S. La velocità di rotazione del mandrino viene calcolata in modo che la velocità di taglio risultante venga mantenuta costante al variare della posizione dell'utensile. Formato - Attivazione della velocità di taglio costante G96Sxxxxx ; ↑ Velocità di taglio (m/min o piedi/min) Le unità usate per specificare la velocità di taglio possono essere diverse per una scelta del costruttore della macchina utensile. - 197 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) - PROGRAMMAZIONE B-64484IT/02 Cancellazione della velocità di taglio costante G97Sxxxxx ; ↑ Velocità del mandrino (min-1) Le unità usate per specificare la velocità di taglio possono essere diverse per una scelta del costruttore della macchina utensile. - Specifica dell'asse al quale si applica il controllo della velocità di taglio costante. G96Pα ; P0 : Asse specificato dal parametro N. 3770 P1 : Primo asse, P2 : Secondo asse, P3 : Terzo asse, P4 : Quarto asse P5 : Quinto asse, P6 : Sesto asse, P7 : Settimo asse, P8 : Ottavo asse NOTA Se è abilitato il controllo plurimandrino (selezione del mandrino con l'indirizzo P o espansione del nome mandrino), la specifica asse con l'indirizzo P è disabilitata. Per la specifica asse utilizzare il parametro N. 3770. - Velocità massima del mandrino G92 S_ ; Specificare la velocità massima del mandrino (giri/min) dopo il codice S. T G50 S_ ; Specificare la velocità massima del mandrino (giri/min) dopo il codice S. NOTA G50 è utilizzabile con il sistema A di codici G. Spiegazioni - Attivazione della velocità di taglio costante (G96) G96 (attivazione della velocità di taglio costante) è un codice G modale. Dopo un comando G96, il sistema entra nel modo velocità di taglio costante (modo G96) e i valori di S specificati sono interpretati come comandi della velocità di taglio. Un comando G96 deve specificare l'asse per il quale è eseguito il controllo della velocità di taglio costante. Il comando G97 cancella il modo G96. Nel modo G96, la velocità del mandrino (giri/min) è limitata al valore di S specificato nel blocco G92S_; o G50S_; (velocità massima del mandrino). All'accensione, la velocità massima del mandrino non è ancora stabilita e quindi la velocità del mandrino non è limitata. Nel modo G96, S (velocità di taglio) viene assunto come S=0 finché non viene comandato M03 (rotazione del mandrino in senso orario) o M04 (rotazione del mandrino in senso antiorario). - 198 - 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) PROGRAMMAZIONE B-64484IT/02 -1 Velocità del mandrino (min ) La velocità del mandrino (giri/min) è quasi uguale alla velocità di taglio (m/min) per un raggio di circa 160 mm. La velocità di taglio S è 600 m/min. Relazione fra il raggio del pezzo, la velocità del mandrino e la velocità di taglio Fig. 9.3 (a) - Raggio (mm) Relazione fra il raggio del pezzo, la velocità del mandrino e la velocità di taglio Impostazione del sistema di coordinate del pezzo per il controllo della velocità di taglio costante Per eseguire il controllo della velocità di taglio costante, occorre impostare il sistema di coordinate del pezzo in modo che il valore della coordinata al centro dell'asse di rotazione del pezzo, per esempio l'asse Z, (asse a cui si applica il controllo della velocità di taglio costante) sia zero. X Z 0 Fig. 9.3 (b) Esempio di sistema di coordinate del pezzo per il controllo della velocità di taglio costante - 199 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) - PROGRAMMAZIONE B-64484IT/02 Velocità di taglio specificata nel modo G96 Modo G96 Modo G97 Specificare la velocità di taglio in m/min (o piedi/min) Comando G97 Memorizzazione della velocità di taglio in m/min (o piedi/min) Specificato Comando di mandrino velocità Viene usata la velocità del mandrino (giri/min) specificata Non specificato La velocità di taglio (m/min o piedi/min) viene convertita in velocità del mandrino (giri/min) Comandi diversi da G96 Comando G96 Specificato Viene usata la superficie di taglio specificata Comando della velocità velocità Non specificato Viene usata la velocità di taglio precedentemente memorizzata piedi/min). Se non esiste, viene assunto 0. - Limitazione della velocità del mandrino Se la rotazione del mandrino alla velocità massima stabilita con il corrispondente parametro può causare problemi durante il controllo della velocità di taglio costante, specificare una limitazione ad hoc della velocità del mandrino (Serie M: G92S_;, Serie T: G50S_;) prima di attivare il controllo della velocità di taglio costante. E' possibile che, a causa di un errore di programmazione o di un errore operativo, ad esempio l'adozione di una procedura errata di esecuzione del programma pezzo, venga attivato il controllo della velocità di taglio costante senza che, dopo l'accensione, sia stato impostato il limite della velocità del mandrino. Per evitare questo problema è possibile mettere a 1 il bit 4 (CSA) del parametro N. 3712 per generare l'allarme PS5557, “MANCA CMD LIMIT MAX VEL MANDR”. Limitazioni - Velocità di taglio costante e filettatura Il controllo della velocità di taglio costante è attivo anche per la filettatura. Quindi, per la filettatura frontale e conica si raccomanda di cancellare il controllo della velocità di taglio costante con il comando G97, per evitare eventuali problemi di risposta del servo sistema alle variazioni di velocità del mandrino. - Velocità di taglio costante e movimenti in rapido (G00) In un blocco in rapido specificato da G00, la velocità di taglio non viene calcolata in base al variare della posizione dell'utensile, ma in base alla posizione finale del blocco, in quanto durante il rapido non c'è lavorazione del pezzo. - 200 - PROGRAMMAZIONE B-64484IT/02 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) Esempio T Valore radiale Percorso programmato X Percorso utensile compensato 1 2 N16 N16 N11 N15 N14 N15 4 3 N11 N14 700 675 600 500 400 375 300 200 φ600 φ400 100 Z 300 400 500 600 700 800 900 1000 1100 1300 1400 1500 1200 1475 1050 N8 G00 X1000.0Z1400.0 ; N9 T33; N11 X400.0Z1050.0; N12 G50S3000 ; (Specifica della velocità massima del mandrino) N13 G96S200 ; (Velocità di taglio 200 m/min) N14 G01 Z 700.0F1000 ; N15 X600.0Z 400.0; N16 Z_ ; Il CNC calcola la velocità del mandrino corrispondente alla velocità di taglio programmata in base alla coordinata X del percorso programmato (che non corrisponde al percorso compensato quando è attiva la compensazione). Nel soprastante esempio, la velocità del mandrino al punto finale del blocco N15 corrisponde ad una velocità di taglio di 200 m/min per un diametro di 600mm (posizione della punta dell'utensile e non del centro della torretta). Se la coordinata dell'asse X è negativa, il CNC usa il valore assoluto. - 201 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) 9.4 PROGRAMMAZIONE B-64484IT/02 FUNZIONE DI POSIZIONAMENTO DEL MANDRINO Introduzione Nelle operazioni di tornitura, il mandrino, accoppiato al motore mandrino, viene fatto ruotare ad una data velocità, facendo ruotare il pezzo montato sul mandrino per la lavorazione. Questo stato del mandrino è detto modo rotazione normale La funzione di posizionamento del mandrino muove il mandrino su un certo angolo, posizionando il pezzo in modo appropriato. Questo stato del mandrino è detto modo posizionamento. La funzione di posizionamento del mandrino è caratterizzata da questa sequenza operativa: 1. Selezione del modo posizionamento mandrino. Mettere il mandrino nel modo posizionamento e stabilire un punto di riferimento specificando il codice M definito a questo scopo mediante un parametro. (Orientamento mandrino) 2. Posizionamento del mandrino E' possibile posizionare il mandrino con uno dei due metodi seguenti: 1) Posizionamento con un angolo qualsiasi utilizzando un indirizzo asse 2) Posizionamento con un angolo semi-fisso utilizzando uno dei codici M definiti a questo scopo mediante parametri. 3. Selezione del modo rotazione normale Mettere il mandrino nel modo tornitura specificando il codice M definito a questo scopo mediante un parametro. L'incremento minimo di comando, l'incremento minimo di immissione e il valore massimo per l'asse di posizionamento del mandrino sono i seguenti: • Incremento minimo di comando 360 • =• 0.088 gradi (se il rapporto di accoppiamento fra mandrino ed encoder è 1:1) 4096 • • Incremento minimo di immissione 0.001 gradi (IS-B) Valore massimo ±999999.999 gradi 9.4.1 Orientamento del mandrino Quando il posizionamento del mandrino viene eseguito la prima volta dopo aver usato normalmente il motore del mandrino, o quando il posizionamento viene interrotto, è necessario eseguire l'orientamento del mandrino. L'orientamento permette di arrestare il mandrino a una posizione predeterminata. L'orientamento del mandrino è comandato dal codice M specificato con il parametro N. 4960. La direzione di orientamento può essere stabilita con un parametro. Per il mandrino seriale si imposta con il bit 4 (RETSV) del parametro N. 4000. Con la funzione "grid shift", è possibile spostare la posizione di orientamento nell'intervallo da 0 a 360 gradi per il mandrino seriale (parametro N. 4073). - Velocità di avanzamento durante l'orientamento La velocità di orientamento per il mandrino seriale si determina mediante l'impostazione di un parametro relativo al mandrino. L'arresto orientato del mandrino seriale avviene dopo alcuni giri del motore mandrino. - 202 - PROGRAMMAZIONE B-64484IT/02 - 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) Omissione dell'orientamento Il bit 2 (ISZ) del parametro N. 4950 permette di specificare l'omissione dell'orientamento quando esso non è necessario nel momento in cui viene stabilito il modo posizionamento mandrino (ad esempio, quando deve essere eseguito solo un movimento incrementale rispetto alla posizione corrente). Più specificamente, il codice M che seleziona il modo posizionamento mandrino si limita ad attivarlo ed il processo viene completato senza orientamento. - Punto di riferimento del programma La posizione finale dell'orientamento diventa il punto di riferimento del programma. Il punto di riferimento del programma può essere cambiato mediante l'impostazione del sistema di coordinate (G92 o G50) o l'impostazione automatica del sistema di coordinate (bit 0 (ZPR) del parametro N. 1201). Quando viene omesso l'orientamento, il punto di riferimento del programma non è definito ed il risultato del posizionamento mandrino con un comando assoluto è imprevedibile. 9.4.2 Posizionamento del mandrino Il mandrino può essere posizionato ad un angolo qualsiasi o ad un angolo semi-fisso. - Posizionamento ad un angolo semi-fisso Il comando viene dato con un codice M. I codici M utilizzabili sono 6: da Mα a M (α+5). Il valore α deve essere preventivamente impostato con il parametro N. 4962. Gli angoli di posizionamento corrispondenti a Mα .. M (α+5) sono elencati nella tabella seguente. Il valore β deve essere preventivamente impostato con il parametro N. 4963. Codice M (Es.) β = α + 5 Angolo di posizionamento (Es.) β = 30° Mα M (α + 1) M(α+2) M(α+3) M(α+4) M(α+5) β 2β 3β 4β 5β 6β 30° 60° 90° 120° 150° 180° Il numero dei codici M utilizzabili, valore γ nella sottostante tabella, può essere modificato con il parametro N. 4964, in questo caso, i codici M specificabili vanno da Mα a M (α + (γ - 1)) ed è possibile definire fino a 255 codici M, da Mα a M (α + (255 - 1)). Codice M (Es.) γ = 11 Angolo di posizionamento (Es.) β = 30° Mα M (α + 1) M(α+2) M(α+3) ... M (α + 11 - 1) β 2β 3β 4β ... 11β 30° 60° 90° 120° ... 330° Il senso di rotazione può essere specificato con IDM (bit 1 del parametro N. 4950). - Posizionamento ad un angolo qualsiasi Programmando un indirizzo asse seguito da un valore numerico con il segno è possibile specificare il posizionamento ad un angolo qualsiasi. L'indirizzo asse deve essere specificato nel modo G00. (Nella spiegazione che segue, si assume che l'indirizzo asse sia C.) (Esempio) C-45000 C180.000 Può essere programmato un valore numerico con punto decimale. Il valore deve essere specificato in gradi. (Esempio) C36.0=C36 gradi - 203 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) - PROGRAMMAZIONE B-64484IT/02 Comandi assoluti e comandi incrementali I comandi di posizionamento ad un angolo semi-fisso (mediante codice M) sono sempre incrementali. Il senso di rotazione si specifica con il bit 1 (IDM) del parametro N. 4950. I comandi di posizionamento ad un angolo qualsiasi possono essere assoluti o incrementali. Quando questi comandi sono assoluti e per l'asse rotativo è abilitata la funzione di roll-over (il bit 0 (ROA) del parametro N. 1008 è 1), è abilitato anche il posizionamento per il percorso più breve (il bit 1 (RAB) del parametro N. 1008 è 0). Punto di riferimento del programma 90° A 180° B Formato del comando Serie T con il sistema A di codici Serie T con i sistemi B o C di codici G e G Serie M Comando da A a Comando da A a Indirizzo Indirizzo usato e B nella figura qui B nella figura qui usato codice G sopra sopra Comando assoluto Specificare il punto finale con la sua distanza dal punto di riferimento del programma. C C180.0 ; G90, C G90 C180 .; Comando incrementale Specificare la distanza dal punto iniziale al punto finale. H H90.0 ; G91, C G91 C90 .; - Velocità di avanzamento durante il posizionamento La velocità di avanzamento durante il posizionamento corrisponde alla velocità in rapido specificata dal parametro N. 1420. A questa velocità può essere applicata una regolazione del 100%, 50%, 25%, e FO (parametro N. 1421). 9.4.3 Cancellazione del posizionamento del mandrino Per passare dal modo posizionamento mandrino al modo rotazione normale del mandrino, specificare il codice M impostato col parametro N. 4961. Il passaggio dal modo posizionamento al modo rotazione normale avviene anche nei seguenti casi: <1> Viene eseguito un reset (compreso l'arresto in emergenza) in seguito ad un allarme asse. <2> Viene eseguito un reset (compreso l'arresto in emergenza) in seguito ad un allarme mandrino. <3> L'orientamento viene interrotto da un reset, da un allarme, o da qualche altro evento. <4> Viene eseguito un reset (compreso l'arresto in emergenza) quando il bit 0 (IOR) del parametro N. 4950 è 1. - 204 - B-64484IT/02 PROGRAMMAZIONE 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) AVVERTENZA 1 Durante l'esecuzione delle sequenze relative al posizionamento del mandrino (selezione del modo posizionamento mandrino, posizionamento del mandrino e selezione del modo rotazione normale) il segnale di arresto del funzionamento automatico (*SP) non è valido. Questo significa che, anche se il segnale *SP va a 0, il funzionamento automatico non si arresta fino al completamento di queste sequenze. 2 Durante il posizionamento mandrino, la prova a vuoto ed il blocco macchina non sono validi. 3 Per i codici M della funzione di posizionamento del mandrino il blocco delle funzioni ausiliarie è disabilitato. 4 La funzione di controllo dell'asse Cs del mandrino seriale ed la funzione di posizionamento del mandrino non possono essere utilizzate simultaneamente. Se queste funzioni opzionali vengono specificate contemporaneamente, la funzione di posizionamento del mandrino ha la precedenza. 5 L'asse di posizionamento del mandrino è trattato come un asse controllato. Di conseguenza devono essere predisposti i segnali relativi agli assi controllati (come i segnali di sovracorsa). 6 Se si utilizzano sia la maschiatura rigida sia il posizionamento mandrino, non specificare mai la maschiatura rigida nel modo posizionamento mandrino o il posizionamento mandrino nel modo maschiatura rigida. NOTA 1 Il blocco nel quale è specificato uno dei codici M relativi al posizionamento del mandrino non deve contenere altri comandi. (Neppure un codice M relativo al posizionamento di un altro mandrino.) I codici M relativi al posizionamento del mandrino devono essere specificati da soli anche quando si utilizza la funzione "più codici M in un blocco". - 205 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) PROGRAMMAZIONE B-64484IT/02 NOTA 2 I codici M relativi al posizionamento del mandrino devono essere specificati da soli anche quando si utilizza la funzione "più codici M in un blocco". 3 Il blocco nel quale è specificato un comando di posizionamento del mandrino con indirizzo asse non deve contenere altri comandi. salvo i seguenti: G00, G90, G91, G92 (Serie T con i sistemi B o C di codici G, Serie M) G00, G50 (Serie T con il sistema A di codici G) 4 I codici M del posizionamento mandrino non devono essere bufferizzati. 5 Il posizionamento mandrino non può essere eseguito in manuale (jog, volantino, comando numerico in manuale, o altro) 6 Il posizionamento mandrino non può essere eseguito utilizzando un asse controllato dal PMC. 7 La ripartenza del programma e la ripartenza del blocco non possono essere eseguite per il posizionamento mandrino. Eseguire queste operazioni in MDI. 8 Per l'asse di posizionamento del mandrino, il controllo delle zone di sicurezza è disabilitato. 9 Per l'asse di posizionamento del mandrino, la funzione di sgancio dell'asse controllato è disabilitata. 10 Per l'asse di posizionamento del mandrino, la compensazione passo vite è disabilitata. 11 Se viene specificata l'omissione dell'orientamento mandrino, il segnale di completamento del ritorno al punto di riferimento non va a 1. 12 Nell'orientamento mandrino, i segnali di interblocco su tutti gli assi e di interblocco di uno specifico asse sono controllati solo all'inizio del blocco. Se uno di questi segnali perviene durante l'esecuzione del blocco viene ignorato. 13 La differenza tra l'entità specificata e l'entità effettiva del movimento viene mantenuta finché non viene cancellato il modo posizionamento mandrino. - 206 - PROGRAMMAZIONE B-64484IT/02 9.5 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) RILEVAZIONE DEGLI ERRORI DI VELOCITA' DEL MANDRINO Introduzione Con questa funzione, quando la velocità del mandrino si allontana dalla velocità comandata a causa delle condizioni di lavorazione, si ha un allarme di surriscaldamento (OH0704) e viene emesso il segnale di allarme della velocità del mandrino SPAL. Questa funzione è utile a prevenire grippaggi, ecc. G26 abilita la rilevazione degli errori di velocità del mandrino. G25 disabilita la rilevazione degli errori di velocità del mandrino. Formato - Rilevazione errori di velocità del mandrino on G26 Pp Qq Rr Ii; p : Tempo (in msec) fra l'emissione del comando di velocità del mandrino e l'inizio del controllo volto a determinare se la velocità reale del mandrino è così alta da poter generare un surriscaldamento. Se il mandrino raggiunge la velocità comandata prima che sia trascorso il tempo specificato, il controllo inizia in quel momento. q : Tolleranza (%) entro la quale si considera raggiunta la velocità comandata q= 1 − velocità del mandrino × 100 velocità programmata Quando la velocità del mandrino è in questo intervallo si considera raggiunta la velocità specificata, ed ha inizio questo controllo. r : Errore della velocità del mandrino (%) al quale il sistema riconosce la possibilità di un surriscaldamento r= 1 − velocità di surriscald amento × 100 velocità programmat a Se la differenza tra la velocità reale del mandrino e quella specificata supera il limite determinato da questa percentuale, la velocità del mandrino viene considerata tale da generare la possibilità di un surriscaldamento. i : Ampiezza dell'errore della velocità del mandrino (giri/min) oltre la quale il sistema riconosce la possibilità di un surriscaldamento. Se la differenza tra la velocità reale del mandrino e quella specificata è più ampia di questo limite, la velocità del mandrino viene considerata tale da generare la possibilità di un surriscaldamento. G26 abilita la funzione di rilevazione errori di velocità del mandrino. I valori standard di P, Q, R ed I si impostano con i seguenti parametri: N. 4914, N. 4911, N. 4912 e N. 4913, rispettivamente. La corrispondenza tra gli indirizzi ed i parametri è la seguente: Indirizzo Numero parametro Q R I P N.4911 N.4912 N.4913 N.4914 Se vengono omessi i comandi P, Q, R o I, questa funzione utilizza i valori assegnati ai parametri ad essi corrispondenti (N. 4914, 4911, 4912 o 4913). A questo scopo vengono utilizzati i parametri (N. 4914, 4911, 4912 e 4913) del mandrino sul quale è montato l'encoder selezionato al momento. - 207 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) - PROGRAMMAZIONE B-64484IT/02 Rilevazione errori di velocità del mandrino off G25; G25 disabilita la funzione di rilevazione errori di velocità del mandrino. G25 non cambia i valori dei parametri N. 4914, 4911, 4912 e 4913. All'accensione o dopo un reset (stato di clear (bit 6 (CLR) del parametro N. 3402 = 1)), la funzione di rilevazione degli errori di velocità del mandrino è disabilitata (G25). Relativamente allo stato di clear controllare anche l'impostazione del bit 3 (C19) del parametro N. 3408 per la Serie M o del bit 0 (C08) del parametro N. 3407 per la Serie T. Spiegazioni Questa funzione controlla se esiste una differenza tra la velocità reale del mandrino e quella specificata. Il più grande fra Si e Sr viene assunto come errore accettabile (Sm). Quando la differenza tra la velocità reale del mandrino e quella programmata (Sc) supera l'errore accettabile (Sm) viene indicato l'allarme OH0704. |Sc – Sa| > Sm Sc : Velocità mandrino specificata Sa : Velocità mandrino effettiva Si : Entità fissa, indipendente dalla velocità mandrino specificata, dell'errore accettabile (parametro N.4913) Sr : Entità dell'errore accettabile determinata moltiplicando Sc (velocità mandrino specificata) per r (percentuale costante). (r = parametro N.4912) Bit 0 (FLR) del parametro N. 4900= 0 Sr = Sc × Bit 0 (FLR) del parametro N. 4900= 1 r 100 Sr = Sc × r 1000 Sm: Il più grande tra Si e Sr. - Condizioni per l'inizio della rilevazione degli errori di velocità del mandrino Se varia la velocità mandrino specificata Sc, la rilevazione degli errori di velocità del mandrino inizia quando è soddisfatta una delle seguenti condizioni. Se il bit 7 (FDTs) del parametro N. 7900 è 1, la rilevazione degli errori di velocità del mandrino inizia quando è soddisfatta la condizione <2>. <1> La velocità del mandrino è nell'intervallo da (Sc - Sq) a (Sc + Sq) Sc : Velocità mandrino specificata Sq : Tolleranza entro la quale si assume che il mandrino abbia raggiunto la velocità programmata. (parametro N. 4911) Parametro FLR= 0 Parametro FLR= 1 q Sq = Sc × 100 Sq = Sc × q 1000 <2> Dopo la variazione della velocità specificata Sc è trascorso il tempo p specificato con il parametro N. 4914. - 208 - PROGRAMMAZIONE B-64484IT/02 - 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) Esempi di rilevazione degli errori di velocità del mandrino (Esempio 1) Quando l'allarme OH0704 si verifica dopo che è stata raggiunta la velocità del mandrino specificata Velocità del mandrino Sr Sq Si Sq Si Velocità specificata Sr P VERIF. NO VERIF. Velocità effettiva VERIF. Modo G26 Tempo Inizio del controllo Specifica di un'altra velocità Allarme (Esempio 2) Quando l'allarme OH0704 si verifica prima che venga raggiunta la velocità del mandrino specificata Velocità del mandrino Sr Sq Si Sq Si Velocità specificata Sr P VERIF. NO VERIF. VERIF. Modo G26 Specifica di un'altra velocità Inizio del Allarme controllo Velocità effettiva Tempo (Velocità specificata dal codice S-5 cifre) × (Regolazione della velocità del mandrino) Velocità effettiva : Velocità rilevata dall'encoder p : Tempo fra l'emissione del comando di velocità del mandrino e l'inizio del controllo Parametro N. 4914, indirizzo P Sq : (Velocità specificata) × (Tolleranza percentuale per l'inizio del controllo (q)) Parametro N. 4911, indirizzo Q Velocità specificata : Parametro FLR= 0 Parametro FLR= 1 q 100 q 1000 Sr : (Velocità specificata) × (Errore accettabile (r)) Parametro N. 4912, indirizzo R - 209 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) PROGRAMMAZIONE B-64484IT/02 Parametro FLR= 0 Parametro FLR= 1 r 100 r 1000 Si : Ampiezza dell'errore accettabile Parametro N. 4913, indirizzo I L'allarme OH0704 si ha quando la differenza fra la velocità comandata e la velocità effettiva eccede sia Sr che Si. - Relazione fra il controllo della velocità del mandrino e ciascun mandrino Mandrino Funzione Rilevazione errori di velocità del mandrino Primo mandrino Possibile Mandrino seriale Secondo Terzo mandrino mandrino Quarto mandrino Possibile(*1) Possibile(*1) Possibile(*1) NOTA 1 E' necessaria la funzione opzionale di controllo plurimandrino. 2 La funzione di rilevazione degli errori di velocità del mandrino è valida solo per un mandrino per volta; non può essere eseguita per due o più mandrini. La funzione di rilevazione degli errori di velocità del mandrino viene eseguita per il mandrino sul quale è montato l'encoder selezionato al momento. E' possibile selezionare un solo encoder. Non è possibile selezionare più encoder. Per le modalità di selezione dell'encoder riferirsi alla sezione relativa al controllo "plurimandrino"." * Segnali di selezione dell'encoder (PC2SLC, PC3SLC, PC4SLC) 3 Sono validi i parametri della funzione di rilevazione degli errori di velocità del mandrino (N. 4911, N. 4912, N. 4913, N. 4914) per il mandrino sul quale è montato l'encoder attualmente selezionato. - Mandrino per il quale viene eseguita la rilevazione degli errori di velocità Per il mandrino per il quale viene eseguita la rilevazione degli errori di velocità, fare riferimento al manuale fornito dal costruttore della macchina utensile. - 210 - PROGRAMMAZIONE B-64484IT/02 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) 9.6 CONTROLLO MANDRINO CON UN MOTORE ASSE 9.6.1 Controllo mandrino con un motore asse - Comando da programma Questa funzione fornisce il controllo di velocità SV, nel quale i comandi di velocità del mandrino (comandi S) sono validi per un asse rotativo con un motore asse ed il modo controllo posizione, nel quale è possibile eseguire il normale posizionamento. Per mettere un motore asse sotto il controllo di velocità, occorre attivare il modo controllo velocità SV (G96.4). Dopo l'attivazione del modo controllo velocità SV, I comandi S sono validi per il motore asse finché non vengono cancellati. Non è possibile specificare comandi di posizionamento mentre è attivo il modo controllo velocità SV. Prima di eseguire un posizionamento, cancellare il modo controllo velocità SV. Per cancellare il modo controllo velocità SV (attivando il modo controllo posizione), specificare un comando di indexaggio del mandrino, G96.1/G96.2. Nel modo controllo posizione, i comandi S non sono validi, come nello stato normale del servo asse. Tuttavia, il valore del comando S viene memorizzato. Quando verrà attivato il modo controllo velocità SV, inizierà la rotazione alla velocità già specificata. - Comando con un segnale Il modo controllo velocità SV può anche essere attivato/disattivato mediante il segnale del modo controllo velocità SV. Se il modo controllo velocità SV viene attivato con il segnale e viene successivamente disattivato con un comando del programma, per riattivarlo occorre alzare di nuovo il segnale o programmare G96.4. Lo stato del modo controllo velocità SV può essere controllato mediante il segnale modo controllo velocità SV in atto. Quando il segnale del modo controllo velocità SV viene messo OFF durante la rotazione, viene eseguito l'indexaggio mandrino. Quindi viene disattivato il modo controllo velocità SV. L'indexaggio mandrino viene eseguito con R0 (posizione assoluta 0). Formato G96.4 P_ ; Modo controllo velocità SV ON M03 (M04) S_ P_ ; Comando di rotazione S : Velocità del mandrino [min-1] (valore numerico di cinque cifre al massimo) P: Selezione del mandrino per il controllo plurimandrino Mediante G96.4 ed un comando di selezione mandrino P è possibile attivare il modo controllo velocità SV ON separatamente per ciascun asse. Allo stesso modo, mediante un comando di indexaggio mandrino (G96.1/G96.2) ed un comando di selezione mandrino P è possibile cancellare il modo controllo velocità SV, attivando il modo controllo posizione, separatamente per ciascun asse. “G96.4 P_ ;” deve essere specificato da solo in un blocco. E' però possibile programmare "G96.4 P_ S_ ;". - 211 - 9. FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) 9.6.2 PROGRAMMAZIONE B-64484IT/02 Funzione di indexaggio mandrino Formato G96.1 P_ R_ ; L'esecuzione del blocco successivo inizia dopo il completamento dell'indexaggio mandrino. G96.2 P_R_; L'esecuzione del blocco successivo inizia prima del completamento dell'indexaggio mandrino. G96.3 P_ ; L'esecuzione del blocco successivo inizia dopo la conferma del completamento dell'indexaggio mandrino. P : Selezione del mandrino per il controllo plurimandrino R :Angolo di arresto [gradi] (da 0 al (parametro N. 1260)) Per specificare l'indirizzo P, utilizzare il parametro N. 3781 (Codice P per la selezione di un mandrino nel controllo plurimandrino). Per attivare il modo controllo posizione senza eseguire l'indexaggio mandrino, farlo dopo aver cancellato il modo controllo velocità SV programmando un comando G96.1 senza specificare R quando il motore è fermo. Quando il motore sta girando, pa programmazione di un comando G96.1 (o G96.2) senza la specifica di R provoca l'arresto del motore, che si comporta come per R0. NOTA 1 Se si utilizza G96.2, programmare G96.3 prima di un altro comando di movimento del mandrino, per essere certi che il mandrino sia completamente fermo. 2 Programmare G96.1, G96.2 o G96.3 in un blocco indipendente. Comando di indexaggio del mandrino - Comando di movimento (1) Comando che attende il completamento dell'indexaggio Se viene programmato G96.1, il blocco successivo viene eseguito dopo il completamento dell'indexaggio mandrino. (2) Comando che non attende il completamento dell'indexaggio mandrino Se viene programmato G96.2, il blocco successivo viene eseguito prima del completamento dell'indexaggio mandrino. - Comando per il controllo del completamento del movimento G96.3 si utilizza per controllare se l'indexaggio mandrino è stato completato. Se l'indexaggio non è ancora stato completato, il blocco successivo ne attende il completamento. Se l'indexaggio è stato completato, il blocco successivo viene eseguito immediatamente. - Cancellazione del modo controllo velocità SV Se per eseguire l'indexaggio mandrino si utilizza G96.1, il modo controllo velocità SV viene cancellato al completamento dell'indexaggio. Se per eseguire l'indexaggio mandrino si utilizza G96.2, è poi possibile utilizzare G96.3 per controllare se l'indexaggio è stato completato e, se sì, cancellare il modo controllo velocità SV. G96.2 non seguito da G96.3 non cancella il modo controllo velocità SV neppure al completamento dell'indexaggio. Programmare la cancellazione del modo controllo velocità SV nel canale al quale appartiene l'asse interessato. - 212 - B-64484IT/02 - PROGRAMMAZIONE 9.FUNZIONE VELOCITA' MANDRINO (FUNZIONE S) Comando di indexaggio mandrino durante la rotazione del mandrino La programmazione di G96.1 o G96.2 specificando una posizione finale durante la rotazione del mandrino provoca l'arresto del mandrino nella posizione specificata. Esempio) M03 S1000; ................. Rotazione a S1000 G96.1 P1 R180. ; ......... Arresto del mandrino nella posizione di 180 gradi. - Velocità di indexaggio del mandrino L'indexaggio mandrino con G96.1 or G96.2 utilizza la velocità specificata a tale scopo. Questa velocità si imposta con il parametro N. 11012. Comando di indexaggio del mandrino (coordinata assoluta/coordinata di macchina) Il bit 0 (SIC) del parametro N. 11005 permette di selezionare il sistema di coordinate (assolute o di macchina) utilizzato per l'indexaggio mandrino. Esempio: Se la differenza fra la coordinata di macchina e la coordinata assoluta (coordinata di macchina coordinata assoluta) è uguale a 100.000: • Indexaggio mandrino mettendo OFF /da 1 a 0) il segnale del modo controllo velocità SV (Gn521) o programmando un codice G per l'indexaggio mandrino senza specificare R. 1. Se il bit 0 (SIC) del parametro N. 11005 è 0: L'indexaggio mandrino viene eseguito con una coordinata di macchina = 100.000 ed una coordinata assoluta = 0.000. 2. Se il bit 0 (SIC) del parametro N. 11005 è 1: L'indexaggio mandrino viene eseguito con una coordinata di macchina = 0.000 ed una coordinata assoluta = 260.000. • Indexaggio mandrino mediante codice G con specifica di R Se viene specificato R100.000: 1. Se il bit 0 (SIC) del parametro N. 11005 è 0: L'indexaggio mandrino viene eseguito con una coordinata di macchina = 200.000 ed una coordinata assoluta = 100.000. 2. Se il bit 0 (SIC) del parametro N. 11005 è 1: L'indexaggio mandrino viene eseguito con una coordinata di macchina = 100.000 ed una coordinata assoluta = 0.000. - 213 - 10.FUNZIONE UTENSILE (FUNZIONE T) 10 PROGRAMMAZIONE B-64484IT/02 FUNZIONE UTENSILE (FUNZIONE T) Il capitolo 10, "FUNZIONE UTENSILE (FUNZIONE T)", è costituito dalle seguenti sezioni: 10.1 10.2 10.3 10.4 10.5 FUNZIONE DI SELEZIONE UTENSILE ....................................................................................... 214 GESTIONE UTENSILI .................................................................................................................... 215 ESTENSIONE DELLA GESTIONE UTENSILI ............................................................................. 229 SUPPORTO PER LA GESTIONE DI UTENSILI SOVRADIMENSIONATI ............................... 240 GESTIONE VITA UTENSILI .......................................................................................................... 242 10.1 FUNZIONE DI SELEZIONE UTENSILE Quando viene specificato un valore numerico lungo fino ad 8 cifre per l'indirizzo T, vengono inviati alla macchina utensile un segnale del codice ed un segnale strobe. La macchina utilizza questi segnali per selezionare l'utensile specificato. In un blocco può essere comandato un codice T. Vedere sul manuale del costruttore della macchina il numero di cifre specificabili per l'indirizzo T e la corrispondenza tra i codici T e le operazioni della macchina. Quando nello stesso blocco vengono specificati un comando di movimento e un codice T, i comandi vengono eseguiti in uno dei due modi seguenti: (i) Esecuzione simultanea del movimento e della funzione T. (ii) Esecuzione della funzione T al completamento del comando di movimento. La scelta della sequenza dipende dal costruttore della macchina utensile. Vedere i dettagli sul manuale del costruttore. Spiegazioni T Il numero che segue il codice T indica l'utensile desiderato. Una parte del numero si usa anche come numero del correttore contenente l'entità della compensazione. In base al metodo di specifica ed all'impostazione dei parametri, l'utensile può essere selezionato come segue. Descrizione del codice T (Nota 1) Bit 1 (LGN) del parametro Bit 1 (LGN) del parametro N. 5002 = 0 N. 5002 = 1 T{{{{{{{ ↑ Selezione utensile { ↑ geometria utensile Correttore usura T{{{{{{ {{ ↑ ↑ Selezione utensile geometria utensile Correttore usura T{{{{{ ↑ Selezione utensile {{{ ↑ geometria utensile Correttore usura T{{{{{{{ ↑ { ↑ Selezione utensile Tool wear geometria utensile correttore correttore T{{{{{{ {{ ↑ ↑ Selezione utensile Tool wear geometria utensile correttore correttore T{{{{{ ↑ {{{ ↑ Selezione utensile Tool wear geometria utensile correttore correttore - 214 - Specifica del numero di correttore in base all'impostazione del parametro (Nota 2) Il numero del correttore usura utensile si specifica utilizzando la cifra meno significativa del codice T. Quando il parametro N. 5028 è 1 Il numero del correttore usura utensile si specifica utilizzando le due cifre meno significative del codice T. Quando il parametro N. 5028 è 2 Il numero del correttore usura utensile si specifica utilizzando le tre cifre meno significative del codice T. Quando il parametro N. 5028 è 3 PROGRAMMAZIONE B-64484IT/02 10.FUNZIONE UTENSILE (FUNZIONE T) NOTA 1 Il numero massimo di cifre del codice T può essere specificato nell'intervallo da 1 a 8 con il parametro N. 3032. 2 Se il parametro N. 5028 è 0, il numero delle cifre del codice T utilizzate per specificare il numero del correttore dipende dal numero dei correttori. Esempio) Quando sono disponibili i correttori da 1 a 9: La cifra meno significativa Quando sono disponibili i correttori da 10 a 99: Le due cifre meno significative Quando sono disponibili i correttori da 100 a 999: Le tre cifre meno significative Per la corrispondenza tra i codici T e gli utensili e per il numero di cifre da specificare, riferirsi al manuale del costruttore della macchina utensile. Esempio (T2+2) N1G00X1000Z1400; N2T0313; (Seleziona l'utensile N. 3 ed il correttore N. 13) N3X400Z1050; 10.2 FUNZIONE GESTIONE UTENSILI Introduzione La funzione gestione utensili amministra tutte le informazioni relative agli utensili, comprese le correzioni e la vita utensile. Spiegazioni Con il codice T si specifica un codice tipo utensile. Questo codice può essere definito liberamente dall'utilizzatore. In questo modo è possibile raggruppare gli utensili in base a varie condizioni quali la durata, l'entità delle compensazioni e le condizioni di taglio. Se ogni gruppo contiene un solo utensile, i codici tipo utensile sono equivalenti ai numeri utensile. Nella memoria del CNC (SRAM) viene riservata una specifica area per la registrazione dei dati di ciascun utensile. Quest'area contiene informazioni quali il codice tipo utensile, la vita dell'utensile, il suo stato (ad esempio: utensile rotto), i numeri dei correttori (H, D, G o W), la velocità del mandrino (S), la velocità di avanzamento (F), ed altri dati liberamente definibili in personalizzazione. Questi dati sono detti dati della gestione utensili. Una tabella di gestione dei magazzini utensili collega le informazioni sui magazzini ai dati della gestione utensili e viene utilizzata dal CNC per gestire le operazioni di cambio utensile. Inoltre, sono predisposte aree specifiche per la gestione degli utensili sul mandrino e di quelli nella posizione di attesa. Quando il codice T specifica un codice tipo utensile, viene cercato l'utensile con quel codice e la vita residua più breve, quindi vengono inviati al PMC il numero di magazzino ed il numero di tazza in cui si trova l'utensile. Successivamente, il ladder del PMC utilizza questi dati per abilitare il cambio utensile. Il CNC gestisce gli utensili utilizzando i dati della gestione utensile, la tabella di gestione dei magazzini utensili, che comprende la tabella di gestione del mandrino e la tabella della posizione di attesa. - 215 - 10.FUNZIONE UTENSILE (FUNZIONE T) - PROGRAMMAZIONE B-64484IT/02 Dati della gestione utensili I dati della gestione utensili sono le informazioni relative a ciascun utensile registrate con un numero dati della gestione utensili. Possono essere utilizzati i seguenti set di dati della gestione utensili: 64 set di dati della gestione utensili 240 set di dati della gestione utensili 1000 set di dati della gestione utensili 64 set in totale 240 set in totale 1000 set in totale NOTA Per il numero di set di dati della gestione utensili disponibili, riferirsi al manuale del costruttore della macchina utensile. - Descrizione dei dati Per ciascun utensile è possibile registrare i seguenti dati. • Codice tipo utensile (codice T) Voce Lunghezza Campo dei valori • Descrizione 4byte 0,da 1 a 99999999 Contatore vita utensile Voce Lunghezza Unità Campo dei valori Descrizione 4byte Se è specificato il numero di impieghi: Impieghi Se è specificato il tempo: Secondi Se è specificato il numero di impieghi: da 0 a 99999999 impieghi Se è specificato il tempo: da 0 a 3599999 s (999 ore 59 minuti 59 secondi) Funziona come un contatore in incremento, vale a dire che indica il numero di impieghi o il tempo cumulativi. La vita utensile residua è [vita utensile massima meno contatore vita utensile]. • Vita utensile massima Voce Lunghezza Unità Campo dei valori • Descrizione 4byte Se è specificato il numero di impieghi: Impieghi Se è specificato il tempo: Secondi Se è specificato il numero di impieghi: da 0 a 99999999 impieghi Se è specificato il tempo: da 0 a 3599999 s (999 ore 59 minuti 59 secondi) Livello di segnalazione Voce Lunghezza Unità Campo dei valori Descrizione 4byte Se è specificato il numero di impieghi: Impieghi Se è specificato il tempo: Secondi Se è specificato il numero di impieghi: da 0 a 99999999 impieghi Se è specificato il tempo: da 0 a 3599999 s (999 ore 59 minuti 59 secondi) Se viene impostato un valore diverso da 0, quando la vita utensile residua (vita utensile massima meno contatore vita utensile) raggiunge tale valore viene emesso il segnale di notifica della fine vita utensile TLCHB <F064.3>, oppure TLCHBx <F329.4 - 7>. - 216 - PROGRAMMAZIONE B-64484IT/02 • 10.FUNZIONE UTENSILE (FUNZIONE T) Stato vita utensile Voce Lunghezza Significato Descrizione 1byte 0: Gestione vita utensile non eseguita 1: Utensile non ancora utilizzato 2: Vita residua > 0 3: Vita terminata 4: Utensile rotto (da saltare) La macchina (il PMC) determina la rottura dell'utensile e registra l'informazione corrispondente attraverso la finestra. La gestione utensili del CNC vede un utensile rotto come equivalente ad un utensile la cui vita è terminata. • Informazioni sull'utensile Voce Lunghezza #0 RGS Descrizione 1 byte (indicatori) 0: I dati della gestione utensile non sono validi. (-) 1: I dati della gestione utensile sono validi. (R) 0: Conteggio del numero di impieghi (C) 1: Conteggio del tempo (T) 0: Utensile normale (N) 1: Utensile sovradimensionato (B) 0: Dati accessibili (U) 1: Dati non accessibili (L) Quando lo stato della vita utensile indica che non è eseguita la gestione utensile: 0: Questo utensile non è cercato. (-). 1: Questo utensile è cercato. (S) Riservati #1 TIM #2 BDT #3 LOC #4 SEN #5 - #7 Quando il bit RGS è 0, è come se i dati di gestione dell'utensile non fossero registrati, anche se per gli altri dati sono specificati dei valori. NOTA Specificare sempre lo stesso tipo di conteggio vita per tutti gli utensili dello stesso tipo. La "funzione di controllo" permette di verificare che non ci siano differenze nel tipo di conteggio vita fra gli utensili dello stesso tipo. M • Numero correttore lunghezza utensile (H) Voce Lunghezza Campo dei valori • Descrizione 2byte da 0 a 999 Numero correttore raggio fresa (D) Voce Lunghezza Campo dei valori Descrizione 2byte da 0 a 999 T • Numero correttore geometria utensile (G) Voce Lunghezza Campo dei valori Descrizione 2byte da 0 a 999 - 217 - 10.FUNZIONE UTENSILE (FUNZIONE T) • PROGRAMMAZIONE B-64484IT/02 Numero correttore usura utensile (W) Voce Lunghezza Campo dei valori Descrizione 2byte da 0 a 999 NOTA Quando la macchina controllata è di tipo misto, i numeri dei correttori lunghezza utensile e raggio fresa sono utilizzati per i canali impostati per sistemi di fresatura, mentre per i canali impostati per sistemi di tornitura vengono utilizzati i numeri dei correttori geometria utensile e usura utensile. • Velocità mandrino (S) Voce Lunghezza Unità Campo dei valori • Descrizione 4byte min-1 da 1 a 99999 Velocità di avanzamento (F) Voce Lunghezza Unità Campo dei valori Descrizione 4byte mm/min, pollici/min, gradi/min, mm/giro, pollici/giro da 0 a 99999999 Come dati aggiuntivi della gestione utensili, sono state predisposte le aree di memoria necessarie per l'impostazione di dati personalizzabili (5 elementi che comprendono il dato personalizzabile 0 ed i dati personalizzabili da 1 a 4), senza definirne il tipo di utilizzo. Queste aree possono essere utilizzate liberamente per impostare un livello di avviso vita utensile, la resistenza al taglio, l'entità della regolazione della velocità di avanzamento, la corrente del mandrino, i valori massimo e minimo dei codici S e F, o altri dati richiesti dall'applicazione. • Dato personalizzabile 0 Voce Lunghezza Campo dei valori • Descrizione 1 byte (di tipo bit) 0 o 1 per ciascun bit Dati personalizzabili da 1 a 4 (a 20) (a 40) Voce Lunghezza Campo dei valori Descrizione 4byte da -99999999 a 99999999 NOTA Per il numero massimo di dati personalizzabili, riferirsi al manuale del costruttore della macchina utensile. - Tabella di gestione dei magazzini utensili La tabella di gestione dei magazzini utensili gestisce lo stato degli utensili presenti nei magazzini. • E' possibile definire più magazzini utensili. ((fino a 4, numerati da 1 a 4) • Il numero massimo di tazze per tutti i magazzini è 64, 240 o 1000, a seconda dell'opzione selezionata. • I numeri di magazzino ed i numeri di tazza possono essere assegnati liberamente tra quelli disponibili attraverso l'impostazione dei parametri corrispondenti (descritta più avanti). - 218 - B-64484IT/02 • • • • • • • - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE Il numero dati della gestione utensili associato ad un numero di tazza rimanda ai dati utensile definiti nella tabella di gestione degli utensili. In questo modo è identificato l'utensile montato nella tazza. Zero indica che la tazza è vuota. La tabella di gestione dei magazzini utensili può essere letta e scritta attraverso la finestra del PMC e la funzione FOCAS2. La tabella dei mandrini e la tabella delle posizioni di attesa indicano posizioni particolari. Alle posizioni mandrino e di attesa, viste come magazzini speciali, sono assegnati i numeri fissi di magazzino da 11 a 14 (dal primo al quarto mandrino) e da 21 a 24 (dalla prima alla quarta posizione di attesa). La tabella dei mandrini e la tabella delle posizioni di attesa possono essere lette e scritte attraverso la finestra del PMC. Il conteggio della vita utensile viene eseguito solo per gli utensili che compaiono nella tabella mandrini. Sistemi a più canali I dati della gestione utensili e la tabella di gestione dei magazzini utensili sono dati comuni a tutti i canali. Però, la tabella dei mandrini e la tabella delle posizioni di attesa sono trattate come dati indipendenti per ciascun canale. Quando la tabella dei mandrini o la tabella delle posizioni di attesa vengono specificate attraverso la finestra del PMC, deve essere utilizzato il seguente formato, nel quale il numero del canale compare nella posizione delle centinaia: Primo Canale 1 Canale 2 Canale 3 Canale 4 Canale 5 Canale 6 Canale 7 Canale 8 Canale 9 Canale 10 111(11) 211 311 411 511 611 711 811 911 1011 Primo Canale 1 Canale 2 Canale 3 Canale 4 Canale 5 Canale 6 Canale 7 Canale 8 Canale 9 Canale 10 121(21) 221 321 421 521 621 721 821 921 1021 Posizione mandrino Secondo Terzo 112(12) 212 312 412 512 612 712 812 912 1012 Quarto 113(13) 213 313 413 513 613 713 813 913 1013 114(14) 214 314 414 514 614 714 814 914 1014 Posizioni di attesa Secondo Terzo Quarto 122(22) 222 322 422 522 622 722 822 922 1022 123(23) 223 323 423 523 623 723 823 923 1023 124(24) 224 324 424 524 624 724 824 924 1024 NOTA Per il canale 1, invece di 111, 121, e così via, è possibile specificare solo 11, 21, e così via. - 219 - 10.FUNZIONE UTENSILE (FUNZIONE T) - - - PROGRAMMAZIONE B-64484IT/02 Dati della gestione utensili Sono i dati registrati per ciascun utensile: codice tipo, stato vita, numero correttore, ecc. Il numero dei gruppi di dati è 64, 240 o 1000. Tabella di gestione dei magazzini utensili Questa tabella indica il gruppo di dati della gestione utensili assegnato a ciascuna tazza di ciascun magazzino utensili. Possono essere utilizzati fino a 4 magazzini utensili. Canale 1 Canale 2 Tabella delle posizioni di attesa da 121 a 124 (da 21 a 24) Tabella delle posizioni di attesa da 221 a 224 Tabella dei mandrini da 111 a 114 (da 11 a 14) Tabella dei mandrini da 211 a 214 Canale 10 ..... Tabella delle posizioni di attesa da 1021 a 1024 Tabella dei mandrini da 1011 a 1014 Serie M e Serie T I dati della gestione utensili e la tabella di gestione dei magazzini utensili disponibili sia nella Serie M che nella Serie T. - Gestione vita utensili e cambio utensile Il CNC esegue la gestione vita utensili considerando gli utensili con lo stesso codice tipo utensile come costituenti un gruppo. Quando il programma pezzo specifica un codice tipo utensile (codice T), viene eseguita una ricerca nei dati della gestione utensili registrati nel CNC per trovare l'utensile con la vita residua più breve tra quelli con il codice tipo utensile specificato. Il numero di magazzino ed il numero di tazza dell'utensile trovato vengono inviati come codice T al PMC. In base ai dati ricevuti, il PMC prepara il cambio utensile (per l'utensile successivo). Il PMC può anche selezionare un altro utensile. Il CNC esegue il conteggio della vita utensile per gli utensili registrati nella tabella dei mandrini. Quando la vita di tutti gli utensili con lo stesso codice tipo utensile specificato dal programma pezzo è finita, si verifica l'allarme PS5317, “TUTTI GLI UTENSILI SONO SCADUTI”. Se un utensile è nella posizione mandrino o nella posizione di attesa, quell'utensile viene selezionato per la prosecuzione della lavorazione. Con una appropriata impostazione parametrica è possibile ottenere l'emissione diretta come segnale del codice T del codice tipo utensile specificato anziché quella del numero di magazzino e del numero di tazza. Sono disponibili due metodi di conteggio della vita utensile: conteggio del numero di impieghi e conteggio del tempo di impiego. Il metodo prescelto per un utensile si specifica nei dati della gestione utensili ad esso corrispondenti. Le altre specifiche principali relative alla gestione vita utensili sono le seguenti: Codice tipo utensile (codice T) : Fino a 8 cifre (da 1 a 99999999) Vita utensile massima : 99999999 impieghi, oppure : 999 ore 59 minuti 59 secondi Intervallo di conteggio della vita utensile come tempo : 1 secondo Codice M di riavvio del conteggio : Abilitato Variazione del conteggio della vita utensile : Abilitata Per specificare direttamente un utensile, senza eseguire la gestione vita utensili per codice tipo utensile, utilizzare il seguente formato: M (valore del parametro N. 13252) T (numero di magazzino) (numero di tazza) ; Se il valore del parametro N. 13252 è 333, il numero di magazzino è 2, ed il numero di tazza è 27, ad esempio, si programmerà: M333 T20027; - 220 - PROGRAMMAZIONE B-64484IT/02 - 10.FUNZIONE UTENSILE (FUNZIONE T) Sequenza di ricerca dell'utensile Vengono cercati in sequenza gli utensili che hanno il codice tipo utensile (T) specificato dal programma iniziando dal numero dati della gestione utensili 1 ed esaminando il contenuto dei dati. Lo schema a blocchi del processo di ricerca eseguito dal CNC è il seguente: I dati della gestione utensili sono validi (il bit 0 (RGS) delle informazioni è 1)? Sì L'utensile è in corso di editazione? No No Sì No Il codice tipo utensile (T) corrisponde a quello specificato? Sì L'utensile è registrato in un magazzino (il numero di magazzino è diverso da 0)? Sì Il magazzino utensili è un obiettivo della ricerca (i bit da 0 a 3 del parametro N. 13203 sono 0)? Sì L'utensile è registrato nella posizione mandrino o nella posizione di attesa di un altro canale? No No Sì No Lo stato vita indica che l'utensile non è gestito (0)? Sì No L'utensile è escluso dalla gestione ma non dalla ricerca (il bit 4 (SEN) delle informazioni è 1)? No Sì Fine della ricerca Lo stato vita indica che la vita dell'utensile è finita (3)? No Lo stato vita indica che l'utensile è rotto (4)? No Considera come candidato l'utensile con vita residua (o dato personalizzabile) minore. Bit 6 (SWC) del parametro N. 13203 (0: Controlla la vita residua, 1: controlla il dato personalizzabile) Utensile successivo? Fine della ricerca - 221 - Sì Sì 10.FUNZIONE UTENSILE (FUNZIONE T) - PROGRAMMAZIONE B-64484IT/02 Variabili di sistema Attraverso le variabili macro è possibile leggere i seguenti dati di gestione per l'utensile montato sul mandrino dopo un cambio utensile comandato con M06 e per l'utensile da utilizzare successivamente (specificato con il codice T): In uso Voce #8401 #8402 #8403 #8404 #8405 #8406 #8407 #8408 #8409 #8410 #8411 #8412 #8413 #8414 #8431 #8432 #8433 #8434 #8435 #8436 #8437 #8438 #8439 #8440 #8441 #8442 #8443 #8444 #8445 #8446 #8447 #8448 #8449 #8450 #8451 #8452 #8453 #8454 #8455 #8456 #8457 #8458 #8459 #8460 #8461 #8462 #8463 #8464 #8465 #8466 Numero dati della gestione utensili Codice tipo utensile (T) Contatore vita utensile Vita utensile massima Livello di notifica vita utensile Stato vita utensile Dato personalizzabile 0 (bit) Informazioni sull'utensile Numero correttore lunghezza utensile (H) Numero correttore raggio fresa (D) Velocità mandrino (S) Velocità di avanzamento in lavoro (F) Numero correttore geometria utensile (G) Numero correttore usura utensile (W) Dato personalizzabile 1 Dato personalizzabile 2 Dato personalizzabile 3 Dato personalizzabile 4 Dato personalizzabile 5 Dato personalizzabile 6 Dato personalizzabile 7 Dato personalizzabile 8 Dato personalizzabile 9 Dato personalizzabile 10 Dato personalizzabile 11 Dato personalizzabile 12 Dato personalizzabile 13 Dato personalizzabile 14 Dato personalizzabile 15 Dato personalizzabile 16 Dato personalizzabile 17 Dato personalizzabile 18 Dato personalizzabile 19 Dato personalizzabile 20 Dato personalizzabile 21 Dato personalizzabile 22 Dato personalizzabile 23 Dato personalizzabile 24 Dato personalizzabile 25 Dato personalizzabile 26 Dato personalizzabile 27 Dato personalizzabile 28 Dato personalizzabile 29 Dato personalizzabile 30 Dato personalizzabile 31 Dato personalizzabile 32 Dato personalizzabile 33 Dato personalizzabile 34 Dato personalizzabile 35 Dato personalizzabile 36 - 222 - Sistemi per centri di lavoro Sistemi per torni B-64484IT/02 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) In uso Voce #8467 #8468 #8469 #8470 Dato personalizzabile 37 Dato personalizzabile 38 Dato personalizzabile 39 Dato personalizzabile 40 Quando la variabile #8400 contiene un numero di posizione mandrino (da 11 a 14) o un numero di posizione di attesa (da 21 a 24) è possibile leggere le informazioni relative all'utensile in quella posizione. Se la posizione mandrino o la posizione di attesa specificate contengono 0, le variabili da #8402 a #8470 sono. La variabile #8401 (numero dati utensile) contiene 0. Grazie a questa corrispondenza, è possibile specificare le condizioni di lavorazione registrate nei dati della gestione utensili programmando, ad esempio, D#8410, H#8409, S#8411, e F#8412 in una macro di cambio utensile (come M06). Allo stesso modo è possibile fare riferimento ai dati personalizzabili dall'interno di una macro ed i programmi pezzo possono essere personalizzati in base all'utensile utilizzato. NOTA Per il numero massimo di dati personalizzabili, riferirsi al manuale del costruttore della macchina utensile. - Specifica di un numero di correttore M Quando il parametro N. 13265 è 0, è possibile selezionare il numero di correttore registrato nei dati di gestione dell'utensile montato sul mandrino programmando H99 o D99. (99 è trattato come un numero speciale, di conseguenza non può essere specificato direttamente come numero di correttore. Quando il parametro N. 13265 è diverso da zero, invece di 99 può essere specificato il numero impostato con tale parametro. Ad esempio, se il parametro N. 13265 è 3, H3 specifica il numero correttore lunghezza utensile registrato per l'utensile nella posizione "mandrino". T Quando non è utilizzata la funzione di gestione degli utensili, il codice T specifica anche il numero di correttore; Quando è utilizzata questa funzione, invece, il codice T specifica solo un codice tipo utensile ed il numero di correttore deve essere specificato con l'indirizzo D. Salvo che per la specifica degli indirizzi, la specifica del numero di cifre utilizzabili (parametro N. 3032) ed il numero di cifre che costituiscono il numero di correttore (parametro N. 5028), la separazione tra i numeri dei correttori geometria utensile ed i numeri dei correttori usura utensile (bit 1 (LGN) del parametro N. 5002), e così via sono come per la Serie T convenzionale. Se il parametro N. 13265 è 0, il formato di specifica di un numero di correttore registrato per un utensile nella posizione "mandrino" dipende, come per la Serie T convenzionale, dal numero di cifre assegnato al numero di correttore: Quando il numero di correttore è di 1 cifra : D9 Quando il numero di correttore è di 2 cifre : D99 Quando il numero di correttore è di 3 cifre : D999 9,99 e 999 sono trattati come numeri speciali, di conseguenza non possono essere specificati direttamente come numero di correttore. Quando il parametro N. 13265 è diverso da zero, invece di 9, 99 o 999 può essere specificato il numero impostato con tale parametro. Se il parametro N. 13265 è 3, D3 specifica il numero correttore geometria utensile ed il numero correttore usura utensile registrati per l'utensile nella posizione "mandrino". - 223 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 Sistemi a più canali Il metodo di specifica dei correttori utensile per un dato canale dipende dal tipo di sistema (centro di lavoro o tornio) per cui quel canale è impostato. Selezione del mandrino Per specificare i numeri dei correttori di un utensile montato su un mandrino diverso dal primo, specificare il numero del mandrino con l'indirizzo P nello stesso blocco che contiene i codici H o D. P può essere omesso per il primo mandrino. D99 P3; Specifica i numeri dei correttori registrati per l'utensile montato sul terzo mandrino. D99 ; Specifica i numeri dei correttori registrati per l'utensile montato sul primo mandrino. - Lettura/scrittura dei dati della gestione utensili e della tabella di gestione dei magazzini utensili I dati della gestione utensili e la tabella di gestione dei magazzini utensili possono essere letti e scritti utilizzando la finestra dati CNC/PMC (FOCAS2). Di conseguenza è possibile costruire facilmente mediante l'OPEN CNC un sistema di gestione degli utensili su personal computer, che comprenda tutti gli utensili disponibili non registrati nel CNC. I dati della gestione utensili e la tabella di gestione dei magazzini utensili possono anche essere letti e scritti utilizzando la finestra del PMC. Attraverso le variabili macro è possibile leggere i dati di gestione per l'utensile montato sul mandrino dopo un cambio utensile comandato con M06 e per l'utensile selezionato mediante un codice T. I dati della gestione utensili possono essere modificati in MDI utilizzando la schermata del CNC relativa alla gestione utensili. é possibile eseguire aggiunte, modifiche e cancellazioni dei dati della gestione utensili da programma (G10). Questi dati possono anche essere immessi od emessi su un'unità esterna di I/O utilizzando la schermata TUT IO o la schermata relativa alla gestione utensili. - Formato del comando G10 E' possibile eseguire aggiunte, modifiche e cancellazioni dei dati della gestione utensili da programma. Questa funzione necessita dell'opzione "introduzione dati da programma". Se il formato di un comando G10 L75/L76/L77 - G11 è errato o se è specificato un valore fuori dal campo di validità, si verifica l'allarme PS5312, “COMANDO ILLEGALE IN G10 L75/76/77”. In questo caso, correggere il programma. Nella parte di programma compresa tra G10 e G11 non è possibile utilizzare il punto decimale. In presenza di un punto decimale si verifica l'allarme PS0007, “PUNTO DECIMALE ERRATO”. - Registrazione dei dati di gestione di un nuovo utensile. I dati della gestione utensili possono essere registrati. Quando i dati vengono scritti su un'unità esterna di I/O, viene utilizzato questo formato. La specifica dei dati che non è necessario registrare può essere omessa. - 224 - B-64484IT/02 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) G10 L75 P1 ; N_ ; Numero dato della gestione utensili T_ C_ L_ I_ B_ Q_ H_ D_ S_ F_ J_ K_ ; P0 R_ ; Dato personalizzabile 0 P1 R_ ; Dato personalizzabile 1 P2 R_ ; Dato personalizzabile 2 P3 R_ ; Dato personalizzabile 3 P4 R_ ; Dato personalizzabile 4 Numero dati della gestione utensili N_ ; : G11 ; N_ N. dato della gestione utensili T_ Codice tipo utensile (T) C_ Contatore vita utensile L_ Vita massima dell'utensile I_ Notifica vita B_ Stato della vita utensile Q_ Informazioni sull'utensile H_ N. correttore lunghezza utensile (H) D_ N. correttore raggio fresa (D) S_ Velocità del mandrino (S) F_ Avanzamento in lavoro ((F) J_ N. correttore geometria utensile (G) K_ Numero correttore usura utensile (W) P_ N. dato personalizzabile R_ Valore del dato personalizzabile 1 - 64 (1 - 240, 1 - 1000) 0 - 99999999 0 - 99999999 0 - 99999999 0 - 99999999 0-4 Formato bit (8 bit) 0 - 999 (Serie M) 0 - 999 (Serie M) 0 - 99999 0 - 99999999 0 - 999 (Serie T) 0 - 999 (Serie T) 0 - 4 (0 - 20, 0 - 40) da -99999999 a 99999999 Specificare i valori dei dati personalizzabili utilizzando il seguente formato: P (numero del dato) R (valore) Utilizzare il formato bit solo per specificare il dato personalizzabile numero 0 (P0). Specificare gli altri dati utilizzando il formato decimale. La specifica dei dati personalizzabili che non è necessario impostare può essere omessa. Esempio) G10 L75 P1; N1 ; Dati della gestione utensili N. 1 T10000001 C0 L1000 B1 Q00000001 H1 D1 S4000 F10000 ; P0 R11101101 ; Dato personalizzabile 0 P4 R99999999 ; Dato personalizzabile 4 N2 ; Dati della gestione utensili N. 2 : G11; Modifica dei dati della gestione utensili I dati della gestione utensili possono essere modificati. La specifica dei dati che non è necessario modificare può essere omessa. - 225 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 G10 L75 P2; N_ ; T_ C_ L_ I_ B_ Q_ H_ D_ S_ F_ J_ K_ ; P_R_; N_ ; : G11 ; Cancellazione dei dati della gestione utensili E' possibile cancellare i dati della gestione utensili corrispondenti al numero specificato. Il dato corrispondente al numero cancellato, viene cancellato anche dalla tabella di gestione dei magazzini utensili. (Nella tabella di gestione dei magazzini utensili viene messo a zero il campo del numero dati della gestione utensili.) G10 L75 P3 ; N_ ; N_ ; : N_ ; G11 ; Registrazione di nuovi dati nella tabella di gestione dei magazzini utensili E' possibile registrare nella un numero dati della gestione utensili tabella di gestione dei magazzini utensili, associandolo ad una tazza vuota. G10 L76 P1 ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; G11 ; Per la tabella dei mandrini e per la tabella delle posizioni di attesa non si specifica il numero tazza. Esempio) G10 L76 P2 ; N11 R1; Assegna il numero dati della gestione utensili 1 alla posizione mandrino 1. N21 R29; Assegna il numero dati della gestione utensili 29 alla posizione di attesa 1. G11; Modifica dei dati della tabella di gestione dei magazzini utensili I numeri dati della gestione utensili registrati nella tabella di gestione dei magazzini utensili possono essere modificati. G10 L76 P2 ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; G11 ; - 226 - PROGRAMMAZIONE B-64484IT/02 10.FUNZIONE UTENSILE (FUNZIONE T) Per la tabella dei mandrini e per la tabella delle posizioni di attesa non si specifica il numero tazza. Esempio) G10 L76 P2 ; N11 R1; Assegna il numero dati della gestione utensili 1 alla posizione mandrino 1. N21 R29; Assegna il numero dati della gestione utensili 29 alla posizione di attesa 1. G11; Cancellazione dei dati della tabella di gestione dei magazzini utensili I numeri dati della gestione utensili registrati nella tabella di gestione dei magazzini utensili possono essere cancellati. G10 L76 P3 ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; N numero magazzino P numero tazza R numero dati della gestione utensili ; G11 ; Per la tabella dei mandrini e per la tabella delle posizioni di attesa non si specifica il numero tazza. Esempio) G10 L76 P3 ; N11 ; Cancella il numero dati della gestione utensili della posizione mandrino 1 (azzera il campo) N21 ; Cancella il numero dati della gestione utensili della posizione di attesa 1 (azzera il campo) G11; Assegnazione di nomi ai dati personalizzabili E' possibile specificare il nome da visualizzare per i dati personalizzabili (da 0 a 40). G10 L77 P1 ; N_ ; P_R_; P_R_; ; N_ ; P_R_; P_R_; G11 ; N_: P_: R_: • • • • • N. del dato personalizzabile (da 0 a 40) N. del carattere (da 1 a 16) Codice del carattere (ANK o JIS traslato) - Se si utilizza il codice JIS traslato, ogni carattere occupa due posizioni. - Per cancellare un nome, specificare 0. Il nome impostato può essere controllato solo sulla schermata relativa ai dati della gestione utensili. Se non viene registrato il nome, viene visualizzato il nome di default, ad esempio "Customize 3". Viene visualizzato un nome lungo fino a 16 caratteri. Se un nome è più corto di 16 caratteri, registrare 0 nell'area residua. Vengono visualizzati i caratteri registrati prima dello 0. Per cancellare un nome specificare 0 come codice carattere. I codici dei caratteri non vengono controllati. - 227 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 Per assegnare al dato personalizzabile 3 il nome " MEASURE5", ad esempio, specificare: Esempio) G10 L77 P1 ; N3 ; Specifica il dato personalizzabile 3. P1 R32 ; carattere ‘spazio’ codice ASCII 20h P2 R77 ; carattere “M” codice ASCII 4Dh P3 R69 ; carattere “E” codice ASCII 45h P4 R65 ; carattere “A” codice ASCII 41h P5 R83 ; carattere “S” codice ASCII 53h P6 R85 ; carattere “U” codice ASCII 55h P7 R82 ; carattere “R” codice ASCII 54h P8 R69 ; carattere “E” codice ASCII 45h P9 R53 ; carattere “5” codice ASCII 35h P10 R0 ; Cancella i dati. (Non visualizzato. Fine) G11; Assegnazione di nomi ai possibili stati della vita utensile E' possibile specificare il nome da visualizzare per i possibili stati della vita utensile (da 0 a 4). G10 L77 P2 ; N_ ; P_R_; P_R_; N_ ; P_R_; P_R_; G11 ; N_: P_: R_: • • • • • • Stato vita utensile (da 0 a 4) N. del carattere (da 1 a 12) Codice del carattere (ANK o JIS traslato) - Se si utilizza il codice JIS traslato, ogni carattere occupa due posizioni. - Per cancellare un nome, specificare 0. Il nome impostato può essere controllato solo sulla schermata relativa ai dati della gestione utensili. Se non è registrato un nome, viene visualizzato il nome di default, ad esempio: "Remaining" e "Unremaining". Viene visualizzato un nome lungo fino a 12 caratteri. Se un nome è più corto di 12 caratteri, registrare 0 nell'area residua. Vengono visualizzati i caratteri registrati prima dello 0. Per cancellare un nome specificare 0 come codice carattere. I codici dei caratteri non vengono controllati. I nomi di default sono: - 0: Invalid - 1: Remaining - 2: Remaining - 3: Unremaining - 4: Broken - 228 - PROGRAMMAZIONE B-64484IT/02 10.FUNZIONE UTENSILE (FUNZIONE T) Per assegnare il nome " NORMAL" allo stato 2 (Remaining), specificare: Esempio) G10 L77 P2 ; N2 ; Specifica lo stato 2. P1 R78 ; carattere “N” codice ASCII 4Eh P2 R79 ; carattere “O” codice ASCII 4Fh P3 R82 ; carattere “R” codice ASCII 52h P4 R77 ; carattere “M” codice ASCII 4Dh P5 R65 ; carattere “A” codice ASCII 41h P6 R76 ; carattere “L” codice ASCII 4Ch P7 R0 ; Cancella i dati. (Non visualizzato. Fine) G11; 10.3 ESTENSIONE DELLA GESTIONE UTENSILI Introduzione Alla funzione gestione utensili sono state aggiunte le seguenti possibilità: 1. Personalizzazione della visualizzazione dei dati della gestione utensili 2. Personalizzazione della visualizzazione di posizione mandrino/posizione di attesa 3. Introduzione dei dati personalizzabili con il punto decimale 4. Protezione mediante il segnale KEY di vari dati utensili 5. Selezione del periodo di conteggio della vita utensile 6. Schermata dei dati di ciascun utensile 7. Visualizzazione della vita utile complessiva degli utensili dello stesso tipo Ciascuna di queste nuove possibilità è descritta in dettaglio nel resto di questa sezione. 10.3.1 Personalizzazione della visualizzazione dei dati della gestione utensili Questa funzione permette di utilizzare il comando G10 per cambiare la posizione in cui compaiono i vari elementi della schermata della gestione utensili (codice tipo, informazioni sull'utensile, contatore vita, ecc.) e di scegliere se ciascuno di questi elementi deve o non deve essere visualizzato. Questa funzione permette, quindi, di configurare una schermata personalizzata della gestione utensili. Formato G10L77P3; N_ R_; G11 ; N_: Numero di posizione nella schermata della gestione utensili R_: Dato da visualizzare Spiegazioni - numero (N_) • •- Numero d'ordine della posizione, a partire dalla sinistra della schermata, in cui deve comparire il dato specificato. Per N, è possibile specificare un numero da 1 a 200. - Dato da visualizzare (R_) • • • I possibili valori di R_ sono indicati nelle sottostanti tabelle. Per l'impostazione, considerare la larghezza di visualizzazione più 1. Elementi comuni ai sistemi per centri di lavoro ed ai sistemi per torni - 229 - 10.FUNZIONE UTENSILE (FUNZIONE T) R • • PROGRAMMAZIONE Voce Larghezza -1 0 1 Fine dell'impostazione Colonna vuota N. 10 4 2 3 4 5 6 7 8 N. TIPO MG POT (tazza) INFO-U CONT-VI VITA-MAX AVVISO-V 8 4 5 10 10 10 10 9 STATO-V 10 11 12 S (Velocità mandrino) F (Velocità di avanzamento) N. figura utensile (A) 6 o 12 B-64484IT/02 Note Per le posizioni mandrino/attesa di 10 canali Dipende dal bit 1 del parametro N. 13201. 10 10 3 Dati relativi alle correzioni utensile per i sistemi per centri di lavoro R Voce Larghezza 20 21 22 23 24 25 26 27 28 H (Numero correttore lunghezza utensile) D (Numero correttore raggio utensile) CORREZIONE-M GEOMETRIA-M USURA-M GEOMETRIA(H) USURA(H) GEOMETRIA(D) USURA(D) 4 4 10 10 10 10 10 10 10 Note Memoria A delle correzioni utensili Memoria B delle correzioni utensili Memoria C delle correzioni utensili Dati relativi alle correzioni utensile per i sistemi per torni R Voce Larghezza 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 TG (Numero correttore geometria utensile) TW (Numero correttore usura utensile) CORREZIONE-X CORREZIONE-Z CORREZIONE-R T (punta) CORREZIONE-Y CORREZIONE-B GEOMETRIA (X) USURA (X) GEOMETRIA (Z) USURA (Z) GEOMETRIA (R) GEOMETRIA PUNTA USURA (R) USURA PUNTA GEOMETRIA (Y) USURA (Y) GEOMETRIA (B) USURA (B) GEOMETRIA (X2) GEOMETRIA (Z2) GEOMETRIA (Y2) 4 4 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 - 230 - Note Compensazione raggio utensile Correzione dell'asse Y Controllo asse B Correzione geometria/usura utensile Compensazione raggio utensile, correzione geometria/usura utensile Correzione utensile lungo l'asse Y, compensazione geometria/usura Controllo asse B, compensazione geometria/usura Seconda correzione geometria utensile B-64484IT/02 R 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Elementi relativi ai dati personalizzabili Voce Larghezza DATO PERSON. 0 DATO PERSON. 1 DATO PERSON. 2 DATO PERSON. 3 DATO PERSON. 4 DATO PERSON. 5 DATO PERSON. 6 DATO PERSON. 7 DATO PERSON. 8 DATO PERSON. 9 DATO PERSON. 10 DATO PERSON. 11 DATO PERSON. 12 DATO PERSON. 13 DATO PERSON. 14 DATO PERSON. 15 DATO PERSON. 16 DATO PERSON. 17 DATO PERSON. 18 DATO PERSON. 19 DATO PERSON. 20 DATO PERSON. 21 DATO PERSON. 22 DATO PERSON. 23 DATO PERSON. 24 DATO PERSON. 25 DATO PERSON. 26 DATO PERSON. 27 DATO PERSON. 28 DATO PERSON. 29 DATO PERSON. 30 DATO PERSON. 31 DATO PERSON. 32 DATO PERSON. 33 DATO PERSON. 34 DATO PERSON. 35 DATO PERSON. 36 DATO PERSON. 37 DATO PERSON. 38 DATO PERSON. 39 DATO PERSON. 40 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 Note Espansione da 5 a 20 o da 5 a 40 dei dati personalizzabili della gestione utensili Espansione da 5 a 40 dei dati personalizzabili della gestione utensili NOTA 1 Se l'esecuzione del comando G10 L77 P3 termina normalmente, spegnere il CNC prima di proseguire. 2 L'impostazione è valida dopo lo spegnimento e la riaccensione del sistema. - 231 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 Esempio Esempio di impostazione per la memoria A delle correzioni utensili G10L77P3; N1 R1; N2 R2; N3 R3; N4 R4; N5 R5; N6 R6; N7 R7; N8 R8; N9 R9; N10 R11; N11 R21; N12 R22; N13 R80; N14 R81; N15 R-1; G11; Impostazione della schermata personalizzata della gestione utensili Imposta N. come numero 1 Imposta N. TIPO come numero 2 Imposta MG come numero 3 Imposta TAZZA come numero 4 Imposta INFORMAZIONI UTENSILE come numero 5 Imposta CONTATORE VITA come numero 6 Imposta VITA MAX. come numero 7 Imposta LIVELLO SEGNALAZIONE come numero 8 Imposta STATO VITA UTENSILE come numero 9 Imposta F (Velocità di avanzamento) come numero 10 Imposta D come numero 11 Imposta CORREZIONE-M come numero 12 0 Imposta DATO PERSON. 0 come numero 13 Imposta DATO PERSON. 1 come numero 14 Fine Cancellazione del modo impostazione La prima pagina della schermata conterrà "N., Tipo, MG, Tazza, Informazioni, Contatore vita, Vita massima, Livello di preavviso e Stato vita utensile". La seconda pagina conterrà "F (velocità di avanzamento), D (correttore utensile), Correzione utensile-M, Dato personalizzabile 0 e dato personalizzabile 1". Esempio 1: Pag. 1 - 232 - B-64484IT/02 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Esempio 1: Pag. 2 NOTA 1 Questa impostazione è abilitata quando il bit 0 (TDC) del parametro N. 13201 è 1. 2 E' possibile impostare fino a 20 pagine. 3 Specificare sempre la fine dell'impostazione. 4 Se viene specificato per la visualizzazione un elemento che necessita dell'opzione corrispondente e l'opzione non è installata, il campo di quell'elemento compare come vuoto. 5 Gli elementi specificati dopo la fine non saranno visualizzati. (Esempio) Se viene specificato N1 → R1 (N.), N2 → R2 (Tipo), N 3 → R3 (MG), N4 → R-1 (Fine), N5 → R4 (Tazza), verranno visualizzati solo "N., Tipo e MG". 6 Se viene specificato G10 L77 P3, viene inizializzata l'impostazione immediatamente precedente. 7 Se il valore di R (elemento da visualizzare) non è valido verrà visualizzato un campo vuoto. - 233 - 10.FUNZIONE UTENSILE (FUNZIONE T) 10.3.2 PROGRAMMAZIONE B-64484IT/02 Personalizzazione della visualizzazione di posizione mandrino/posizione di attesa Nel campo MG della schermata della gestione utensili compaiono come valore numerico (ad es.: 11, 12 e 13) la posizione mandrino o la posizione di attesa. Questa funzione permette di visualizzare tre caratteri arbitrari specificati con un comando G10. Formato G10L77P4; N_; P_R_; G11 ; N_: Specifica della posizione (mandrino/di attesa) da impostare P_: Numero del carattere R_: Codice del carattere Spiegazioni - Specifica della posizione (mandrino/di attesa) da impostare (N_) Specificare la posizione mandrino o la posizione di attesa da rinominare. La sottostante tabella indica i valori da specificare. Primo Canale 1 Canale 2 Canale 3 Canale 4 Canale 5 Canale 6 Canale 7 Canale 8 Canale 9 Canale 10 111 211 311 411 511 611 711 811 911 1011 Primo Canale 1 Canale 2 Canale 3 Canale 4 Canale 5 Canale 6 Canale 7 Canale 8 Canale 9 Canale 10 - 121 221 321 421 521 621 721 821 921 1021 Posizione mandrino Secondo Terzo 112 212 312 412 512 612 712 812 912 1012 113 213 313 413 513 613 713 813 913 1013 Posizioni di attesa Secondo Terzo 122 222 322 422 522 622 722 822 922 1022 123 223 323 423 523 623 723 823 923 1023 Quarto 114 214 314 414 514 614 714 814 914 1014 Quarto 124 224 324 424 524 624 724 824 924 1024 Numero del carattere (P_) Specificare il numero del carattere (da 1 a 3). Vengono visualizzati fino a tre caratteri. Se la stringa da specificare è più corta di tre caratteri, specificare 0 a partire dalla prima posizione da lasciare in bianco. Verrà visualizzata la stringa di caratteri che precede immediatamente il primo 0. - 234 - B-64484IT/02 - PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Codice del carattere (R_) Per specificare il nome di una posizione (mandrino o di attesa) utilizzando il codice del carattere che deve comparire in ciascuna delle tre posizioni. • Come codice dei caratteri utilizzare il codice ASCI I o il codice Shift JIS. • I codici dei caratteri non vengono controllati. Esempio Per chiamare "SP1" il mandrino 1 e "WT1" la posizione di attesa 1 programmare: G10L77P4; N111; P1 R83; P2 R80; P3 R49; N121; P1 R87; P2 R84; P3 R49; G11; Impostazione del nome delle posizioni mandrino/di attesa Mandrino 1 53h : codice ASCII di "S" 50h : codice ASCII di "P" 31h : codice ASCII di "1" Attesa 1 57h : codice ASCII di "W" 54h : codice ASCII di "T" 31h : codice ASCII di "1" Cancellazione del modo impostazione Il campo MG della schermata dei dati utensili conterrà "SP1" per il mandrino 1 e "WT1" per la posizione di attesa 1. NOTA I dati registrati diventano validi a partire dalla successiva selezione della schermata della gestione utensili. - 235 - 10.FUNZIONE UTENSILE (FUNZIONE T) 10.3.3 PROGRAMMAZIONE B-64484IT/02 Introduzione dei dati personalizzabili con il punto decimale Questa funzione permette di utilizzare dati personalizzabili con il punto decimale; il numero delle posizioni decimali può essere impostato mediante il comando G10 per ciascun dato personalizzabile (da 1 a 40). Formato G10L77P5; N_ R_; G11 ; N_: Numero dato personalizzabile R_: Posizione del punto decimale Spiegazioni - Numero dato personalizzabile (N_) Per N è possibile specificare un numero da 1 a 4. Quando è disponibile l'espansione dei dati personalizzabili (5 - 20), è possibile specificare un numero da 1 a 20. Quando è disponibile l'espansione dei dati personalizzabili (5 - 40), è possibile specificare un numero da 1 a 40. - Posizione del punto decimale (R_) Specificare la posizione del punto decimale (da 0 a 7). Se viene specificato 0, il dato personalizzato è un intero e non accetta valori decimali. NOTA 1 Se G10 L77 P5 termina normalmente, spegnere il CNC prima di proseguire . 2 L'impostazione è valida dopo lo spegnimento e la riaccensione del sistema. 3 Quando per un dato personalizzabile viene specificato il numero di posizioni decimali, l'introduzione di valori decimali è possibile solo attraverso la tastiera MDI. 4 L'impostazione del numero di posizioni decimali per i dati personalizzabili da 5 a 20 è possibile solo se è presente una delle opzioni di espansione dei dati personalizzabili (5 - 20, o 5 - 40). 5 L'impostazione del numero di posizioni decimali per i dati personalizzabili da 21 a 40 è possibile solo se è presente l'opzione di espansione dei dati personalizzabili (5 - 40). Esempio 1 Quando i dati personalizzabili 1 e 2 hanno tre posizioni decimali G10L77P5; N1 R3; N2 R3; G11; Impostazione del numero di posizioni decimali dei dati personalizzabili Mette a 3 il numero di posizioni decimali del dato personalizzabile 1 Mette a 3 il numero di posizioni decimali del dato personalizzabile 2 Cancellazione del modo impostazione - 236 - B-64484IT/02 - PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Utilizzo con il comando G10 Tra i comandi G10 e G11, non è possibile specificare il punto decimale per nessun indirizzo. Pertanto, se con questa funzione è stato definito il numero di posizioni decimali per uno o più dati personalizzabili, nei comandi G10 L75/L76/L77 è possibile utilizzare le variabili macro (da #8431 a #8450) per leggere e impostare il valore della parte intera. Esempio 2 (Esempio 1) Condizione: Il dato personalizzabile 1 ha 3 posizioni decimali. Il dato personalizzabile 2 ha 1 posizione decimale. Operazione: Il valore del dato personalizzato 1 viene trasferito al dato personalizzato 2 utilizzando una variabile macro. G10L77P5; N1 R3; N2 R1; G11; ; G10 L75 P1; N01; P1 R12345; P2 R#8431; G11; <1> <2> <3> <4> Impostazione della posizione del punto decimale nei dati personalizzabili Specifica 3 come posizione del punto decimale nel dato personalizzabile 1 Specifica 1 come posizione del punto decimale nel dato personalizzabile 2 Cancellazione del modo impostazione <5> <6> <7> <8> <9> Registrazione dei dati della gestione utensili Registrazione con il N. 1 Assegna “12.345” al dato personalizzabile 1 Assegna “1.2” al dato personalizzabile 2 Cancellazione del modo impostazione Nell'esempio 1, il valore del dato personalizzabile 1 viene assegnato al dato personalizzabile 2 attraverso una variabile macro. Il valore del dato personalizzabile 1 è "12.345". Nel passo <8>, con "P2 R12" viene letta e processata solo parte intera di questo valore. Di conseguenza, al dato personalizzabile 2 viene assegnato "1.2". - 237 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 (Esempio 2) Condizione: Il dato personalizzabile 1 ha 3 posizioni decimali. Il dato personalizzabile 2 ha 1 posizione decimale. Operazione: Attraverso la variabile macro corrispondente al dato personalizzabile 1, il valore di questo dato viene trasferito al dato personalizzabile 2 moltiplicandolo per 1000. G10L77P5; N1 R3; N2 R1; G11; ; G10 L75 P1; N01; P1 R12345; P2 R[#8431*1000]; G11; <1> <2> <3> <4> Impostazione della posizione del punto decimale nei dati personalizzabili Specifica 3 come posizione del punto decimale nel dato personalizzabile 1 Specifica 1 come posizione del punto decimale nel dato personalizzabile 2 Cancellazione del modo impostazione <5> <6> <7> <8> <9> Registrazione dei dati della gestione utensili Registrazione con il N. 1 Assegna “12.345” al dato personalizzabile 1 Assegna “1234.5” al dato personalizzabile 2 Cancellazione del modo impostazione Nell'esempio 2, il valore del dato personalizzabile 1 viene assegnato al dato personalizzabile 2 attraverso una variabile macro. Il valore del dato personalizzabile 1 è "12.345". Nel passo <8>, il dato viene moltiplicato per 1000 allo scopo di trasformarlo in un intero. In questo modo il comando del passo <8> equivale a "P2 R12345" ed al dato personalizzabile 2 viene assegnato "1234.5". 10.3.4 Protezione mediante il segnale KEY di vari dati utensili Quando i dati della gestione utensili sono nella condizione di edit, è possibile modificare molti valori. Se il bit 0 del parametro N. 13204 è 1, i dati della gestione utensili possono essere protetti con il segnale KEY in modo da impedire la registrazione, la modifica e la cancellazione di varie informazioni. 10.3.5 Selezione del periodo di conteggio della vita utensile Il periodo di conteggio della vita utensile può essere scelto utensile per utensile tra 1 secondo e 8 millisecondi. - Selezione del periodo di conteggio della vita utensile Il periodo di conteggio della vita di un utensile si seleziona con il bit 5 del campo "informazioni sull'utensile". Voce Lunghezza #5 REV Descrizione 1 byte (indicatori) 0: Il periodo di conteggio vita è di 1 secondo. (S) 1: Il periodo di conteggio vita è di 8 msec. (M) Il campo dei valori del contatore vita è: 1sec:da 0 a 3599999 sec (999 ore 59 minuti 59 secondi) 8msec: da 0 a 3599992 msec (59 minuti 59 secondi 992 millisecondi) NOTA Questa funzione è valida quando il bit 1 (TIM) del campo "informazioni sull'utensile" è 1. - 238 - B-64484IT/02 10.3.6 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Schermata dei dati di ciascun utensile E' possibile estrarre e visualizzare tutti i dati relativi ad uno specifico utensile. 10.3.7 Visualizzazione della vita utile complessiva degli utensili dello stesso tipo Viene determinata e visualizzata la vita residua totale di tutti gli utensili dello stesso tipo; la visualizzazione può avvenire in ordine di tipo utensile o di vita residua. Inoltre vengono listati i dati degli utensili con lo stesso codice tipo. - 239 - 10.FUNZIONE UTENSILE (FUNZIONE T) 10.4 PROGRAMMAZIONE B-64484IT/02 SUPPORTO PER LA GESTIONE DI UTENSILI SOVRADIMENSIONATI Introduzione Alla funzione di gestione utensili viene aggiunto il supporto per la gestione di utensili sovradimensionati. E' possibile definire liberamente e memorizzare la figura di ciascun utensile sovradimensionato. Quando in un magazzino utensili viene caricato un utensile sovradimensionato, viene considerata l'interferenza con gli utensili che si trovano nelle altre tazze. Questa funzione può essere utilizzata per magazzini utensili a catena e a matrice. Formato Attraverso il comando G10 è possibile impostare nei dati della gestione utensili il numero di un utensile sovradimensionato. Inoltre è possibile impostare il dato relativo alla figura dell'utensile. <Registrazione di un nuovo dato della gestione utensili> G10 L75 P1 ; N_; A_; G11 ; N_: Numero dati della gestione utensili A_: Specificare il numero della figura dell'utensile (da 0 a 20). <Modifica di un dato della gestione utensili> G10 L75 P2; N_; A_; G11 ; N_: Numero dati della gestione utensili A_: Specificare il numero della figura dell'utensile (da 0 a 20). <Registrazione dei dati delle figure utensile> G10 L77 P6 ; N_P_Q_R_S_T_; G11 ; N_: Numero figura utensile P_: Numero di tazze occupate verso sinistra (in incrementi di 0.5 tazze) Q_: Numero di tazze occupate verso destra (in incrementi di 0.5 tazze) R_: Numero di tazze occupate verso l'alto (in incrementi di 0.5 tazze) S_: Numero di tazze occupate verso il basso (in incrementi di 0.5 tazze) T_: 0 per la figura A, oppure 1 per la figura B - 240 - B-64484IT/02 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) NOTA 1 Se nella registrazione o nella modifica del dato relativo alla figura di un utensile registrato in un magazzino utensili viene rilevata una interferenza con altri utensili, viene indicato l'allarme PS5360, “ERR CTL INTERFER. UTENS”. (Il dato non viene accettato.) 2 Se nella registrazione o nella modifica della tabella di gestione dei magazzini utensili viene rilevata una interferenza tra gli utensili, viene indicato l'allarme PS5360. (Il dato non viene accettato.) 3 Se si tenta di modificare il dato della figura di un utensile e l'utensile oggetto della modifica è registrato in un magazzino utensili, viene indicato l'allarme PS5360. (Il dato non viene accettato.) - 241 - 10.FUNZIONE UTENSILE (FUNZIONE T) 10.5 PROGRAMMAZIONE B-64484IT/02 GESTIONE VITA UTENSILI Gli utensili vengono classificati in vari gruppi, per ciascuno dei quali viene preventivamente specificata la vita dell'utensile (tempo o frequenza di impiego). Ogni volta che un utensile viene utilizzato, ne viene incrementato il contatore vita. Quando viene raggiunta la vita utensile specificata, viene selezionato automaticamente l'utensile successivo dello stesso gruppo. Con questa funzione è possibile gestire la vita (durata utile) degli utensili senza interrompere la lavorazione. I dati della gestione vita utensili consistono nei numeri di gruppi utensili, nei valori della vita utensile, nei numeri utensile e nei codici utilizzati per selezionare i correttori utensile. Questi dati vengono registrati nel CNC. 1 2 : : n Gruppo utensili n. m Vita utensile (l) Numero utensile Codici per la selezione del (T) correttore (H/D) : : : : : : : : Programma di lavorazione : Dati della gestione vita utensili : Comando per la selezione Gruppo utensili n. 1 del gruppo utensili m : : Gruppo utensili n. m Selezione utensile. : : : Comando di cambio utensile (M06) : : Gruppo utensili n. p : Dati del primo utensile Dati del secondo utensile : : Dati dell'ennesimo utensile Operazioni della macchina e del CNC Macchina Mette l'utensile selezionato nello stato di attesa. Monta sul mandrino l'utensile in stato di attesa (cambio utensile) CNC Seleziona automaticamente un utensile non scaduto del gruppo m Inizia a conteggiare la vita dell'utensile montato sul mandrino. Fig. 10.5 (a) Selezione dell'utensile nel programma pezzo M Il gruppo si seleziona con il codice T, il conteggio della vita utensile viene avviato dal comando M06. T La Serie T ha due tipi di cambio utensile (a torretta e con ATC). Il tipo a torretta utilizza il codice T per selezionare un gruppo, specificare il numero di correttore e avviare il conteggio della vita utensile, mentre il tipo con ATC utilizza il codice T per selezionare il gruppo ed il comando M06 per avviare il conteggio della vita utensile. Per il tipo con ATC, il correttore utensile si specifica con il codice D. Il tipo di cambio utensile si seleziona con il bit 3 (TCT) del parametro N. 5040. AVVERTENZA Se il bit 1 (LGN) del parametro N. 5002 è 1 (il numero di selezione utensile seleziona anche il correttore geometria) questa funzione non può essere utilizzata. - Gestione vita utensili B Se è abilitata la funzione gestione vita utensili B, è possibile aumentare il numero massimo di valori della vita utensili ed è possibile disporre del segnale di preavviso che può essere emesso per indicare che la vita utensile residua (valore vita - valore contatore vita) ha raggiunto il valore specificato. Questo valore (vita residua) deve essere registrato preventivamente nel CNC. La funzione gestione vita utensili B si abilita mettendo a 1 il bit 4 (LFB) del parametro N. 6805. - 242 - B-64484IT/02 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) M Se è abilitata la funzione gestione vita utensili B, è possibile utilizzare la funzione di selezione del gruppo utensile con un numero di gruppo arbitrario. T La funzione gestione vita utensili B può essere utilizzata. Però, la funzione di selezione del gruppo utensile con un numero gruppo arbitrario può essere utilizzata solo se il cambio utensile è il tipo con ATC (bit 3 (TCT) del parametro N. 5040 = 1). - Numero massimo di gruppi della gestione vita utensili e sistemi a più canali E' possibile utilizzare fino a 256 gruppi della gestione vita utensili nell'intero sistema CNC. Utilizzare il parametro N. 6813 per impostare il numero massimo di gruppi per ciascun canale. Il numero massimo di gruppi deve essere un multiplo del numero minimo di gruppi (otto). Se il numero massimo di gruppi è uguale a 0, la gestione vita utensili è disabilitata. Il numero totale di gruppi dell'intero sistema CNC può essere portato a 1024 mediante l'opzione gruppi aggiuntivi della gestione vita utensili. Sistema a più canali (gestione vita utensili eseguita per 3 canali) Supponiamo che i gruppi complessivamente disponibili nel sistema (256), vengano allocati così: 128 al canale 1, 64 al canale 2 e 64 al canale 3. In questo caso, il parametro N. 6813 deve essere impostato come segue: File dei dati della gestione vita utensili (256 gruppi in totale nel sistema) Parametro N. 6813 Canale 1 Canale 1 Fino a 128 gruppi Impostare 128 Canale 2 Canale 2 Fino a 64 gruppi Impostare 64 Canale 3 Canale 3 Fino a 64 gruppi Impostare 64 Fig. 10.5 (b) Allocazione dei gruppi nell'intero sistema AVVERTENZA Se viene reimpostato questo parametro, il file dei dati della gestione vita utensili viene cancellato all'accensione successiva. Dopo aver reimpostato questo parametro, devono essere nuovamente registrati i dati della gestione utensile per ciascun canale. 10.5.1 Dati della gestione vita utensili I dati della gestione vita utensili sono: numero gruppo utensili, numero utensile, codici che specificano le correzioni, vita dell'utensile, numeri arbitrari di gruppo e vita residua. L'utilizzo dei numeri arbitrari di gruppo e della vita residua si specifica impostando il bit 5 (TGN) ed il bit 3 (GRP) del parametro N. 6802. Spiegazioni - Numero gruppo utensili E' possibile utilizzare fino a 256 gruppi della gestione vita utensili nell'intero sistema CNC. Utilizzare il parametro N. 6813 per impostare il numero dei gruppi utilizzabili. Se si utilizzano tutti i gruppi disponibili, per ciascun gruppo è possibile registrare fino a 4 utensili. La combinazione di gruppi utilizzabili e numero massimo di utensili per gruppo si specifica impostando il bit 0 (GS1) ed il bit 1 (GS2) del parametro N. 6800 come segue. - 243 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE Tabella 10.5.1 Numero massimo di gruppi e di utensili registrabili Bit 1 (GS2) del Bit 0 (GS1) del Numero di gruppi parametro N. 6800 parametro N. 6800 0 0 1 1 0 1 0 1 B-64484IT/02 Numero di utensili 1/8 del numero massimo di gruppi (parametro N. 6813) 1/4 del numero massimo di gruppi (parametro N. 6813) 1/2 del numero massimo di gruppi (parametro N. 6813) Numero massimo di gruppi (parametro N. 6813) 32 16 8 4 AVVERTENZA Quando vengono cambiati i bit 0 (GS1) e 1 (GS2) del parametro N. 6800, deve essere ripetuta la registrazione dei dati della gestione vita utensili con il comando G10L3 (registrazione dopo la cancellazione dei dati di tutti i gruppi). Altrimenti, la nuova combinazione impostata non è valida. NOTA Il numero totale di gruppi dell'intero sistema CNC può essere portato fino a 1024 mediante l'opzione gruppi aggiuntivi della gestione vita utensili. - Numero utensile Il numero utensile si specifica con il codice T. Può essere utilizzato un numero di al massimo otto cifre (99999999). NOTA Il numero massimo di cifre del codice T si imposta con il parametro N. 3032. - Codici per la specifica delle correzioni utensile M I codici per la specifica delle correzioni utensile comprendono il codice H (per la compensazione lunghezza utensile) e il codice D (per la compensazione raggio utensile) Questi codici sono numeri di al massimo tre cifre (fino a 999). Tuttavia, i codici registrati non devono superare il numero dei correttori utilizzabili dal CNC. NOTA Se non si utilizzano i codici di specifica delle correzioni utensili, la loro registrazione può essere omessa. T Se il cambio utensile è a torretta (bit 3 (TCT) del parametro N. 5040 = 0), per la specifica delle correzioni non vengono utilizzati né il codice H né il codice D. Il codice T comprende il numero di correttore. Se il cambio utensile è un ATC (bit 3 (TCT) del parametro N. 5040 = 1), viene utilizzato solo il codice D. - Valore della vita utensile Il valore della vita utensile può essere registrato in termini di durata o di numero di impieghi. Il valore massimo è definito come segue: Fino a 4300 minuti se la vita utensile è espressa come durata e fino a 65535 volte se la vita è espressa come numero di impieghi. Se è abilitata la funzione gestione vita utensili B, è possibile specificare fino a 100000 minuti (o 60000 minuti se il conteggio vita viene eseguito ogni 0.1 secondi) o fino a 99999999 volte se la vita utensile è espressa come numero di impieghi. - 244 - PROGRAMMAZIONE B-64484IT/02 - 10.FUNZIONE UTENSILE (FUNZIONE T) Numero gruppo arbitrario M Se è abilitata la funzione che permette di specificare numeri di gruppo arbitrari (bit 5 (TGN) del parametro N. 6802 = 1), è possibile selezionare un gruppo della gestione vita utensili specificando un numero gruppo arbitrario con il codice T. E' possibile specificare una valore da 1 a 99999999. T I numeri di gruppo arbitrari possono essere utilizzati solo se il cambio utensile è il tipo con ATC (bit 3 (TCT) del parametro N. 5040 = 1). - Impostazione della vita residua Il bit 3 (GRP) del parametro N. 6802 permette di specificare se il valore della vita residua al quale viene emesso il segnale di utensile prossimo alla scadenza è specifico di ciascun gruppo o è impostato mediante i parametri N. 6844 e 6845). Se questo valore è specifico di ciascun gruppo (bit 3 (GRP) del parametro N. 6802 = 1), esso viene registrato come dato della gestione vita utensili. Se la vita utensile è espressa come durata, può essere specificato un valore compreso fra 1 e 100000 minuti (o 60000 minuti se il conteggio vita viene eseguito ogni 0.1 secondi); se la vita utensile è espressa come numero di impieghi, il valore massimo specificabile è 99999999 volte. 10.5.2 Registrazione, modifica e cancellazione dei dati della gestione vita utensili I dati della gestione vita utensili possono essere registrati modificati e cancellati da programma. Spiegazioni Il formato di programmazione varia in base ai seguenti quattro tipi di operazione: - Registrazione dopo la cancellazione di tutti i gruppi I dati della gestione vita utensili vengono registrati dopo la cancellazione di tutti i dati della gestione vita utensili precedenti. - Modifica dei dati della gestione vita utensili E' possibile registrare i dati di un gruppo per il quale non lo erano stati precedentemente ed è possibile modificare i dati precedentemente registrati. - Cancellazione dei dati della gestione vita utensili I dati della gestione utensili possono essere cancellati. - Impostazione del tipo di conteggio vita utensile E' possibile specificare separatamente per ciascun gruppo il tipo di conteggio (durata o numero di impieghi). - 245 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 Formato - Registrazione dopo la cancellazione di tutti i gruppi M Formato G10L3; P-L-; T-H-D-; T-H-D-; : P-L-; T-H-D-; T-H-D-; : G11; M02(M30); Significato G10L3: P-: L-: T-: H-: D-: G11 : Registrazione dopo la cancellazione dei dati di tutti i gruppi. Numero gruppo Valore vita utensile Numero utensile Codice per la selezione del correttore (codice H) Codice per la selezione del correttore (codice D) Fine della registrazione T Formato G10L3; P-L-; T-(D-); T-(D-); : P-L-; T-(D-); T-(D-); : G11; M02(M30); Significato G10L3: Registrazione dopo la cancellazione dei dati di tutti i gruppi. P-: Numero gruppo L-: Valore vita utensile T-: Per il cambio utensile a torretta (bit 3 (TCT) del parametro N. 5040 = 0), numero utensile e numero correttore Per il cambio utensile con ATC (bit 3 (TCT) del parametro N. 5040 = 1), numero utensile G11 : Fine della registrazione (D-): Per il cambio utensile con ATC (bit 3 (TCT) del parametro N. 5040 = 1), codice per la selezione del correttore NOTA Anche se il cambio utensile è con ATC (bit 3 (TCT) del parametro N. 5040 = 1), il codice H non viene utilizzato. Se per un utensile devono essere utilizzati più correttori nello stesso processo, specificare il comando come è indicato qui sotto (assumendo che i numeri di correttore siano di due cifre). Formato G10L3; P-L-; T0101; T0102; T0103; : G11; M02(M30); Significato Numero utensile 01, numero correttore 01 Numero utensile 01, numero correttore 02 Numero utensile 01, numero correttore 03 - 246 - PROGRAMMAZIONE B-64484IT/02 - 10.FUNZIONE UTENSILE (FUNZIONE T) Modifica dei dati della gestione vita utensili M Formato G10L3P1; P-L-; T-H-D-; T-H-D-; : P-L-; T-H-D-; T-H-D-; : G11; M02(M30); Significato G10L3P1: P-: L-: T-: H-: D-: G11 : Inizio della variazione dei dati Numero gruppo Valore vita utensile Numero utensile Codice per la selezione del correttore (codice H) Codice per la selezione del correttore (codice D) Fine della variazione dei dati T Formato G10L3P1; P-L-; T-(D-); T-(D-); : P-L-; T-(D-); T-(D-); : G11; M02(M30); Significato G10L3P1: P-: L-: T-: G11 : (D-): Inizio della variazione dei dati Numero gruppo Valore vita utensile Per il cambio utensile a torretta (bit 3 (TCT) del parametro N. 5040 = 0), numero utensile e numero correttore Per il cambio utensile con ATC (bit 3 (TCT) del parametro N. 5040 = 1), numero utensile Fine della registrazione Per il cambio utensile con ATC (bit 3 (TCT) del parametro N. 5040 = 1), codice per la selezione del correttore NOTA Anche se il cambio utensile è con ATC (bit 3 (TCT) del parametro N. 5040 = 1), il codice H non viene utilizzato. - Cancellazione dei dati della gestione vita utensili Formato G10L3P2; P-; P-; P-; P-; : G11; M02(M30); - Significato G10L3P2: Inizio della cancellazione dei dati P-: Numero gruppo G11 : Fine della cancellazione Impostazione del tipo di conteggio vita utensile Formato G10L3 (o G10L3P1); P-L-Q-; T-H-D-; T-H-D-; : G11; M02(M30); Significato Q : Tipo di conteggio vita (1: Numero di impieghi. 2: Durata.) - 247 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 AVVERTENZA Se il comando Q viene omesso, il tipo di conteggio vita è determinato dall'impostazione del bit 2 (LTM) del parametro N. 6800. - Numero gruppo arbitrario M Se è abilitata la funzione gestione vita utensili B (bit 4 (LFB) del parametro N. 6805 = 1), e si utilizza la funzione per la specifica dei numeri di gruppo arbitrari (bit 5 (TGN) del parametro N. 6802 = 1), è possibile registrare un numero gruppo arbitrario mediante un comando del programma. Formato G10L3; (o G10L3P1); P-L-T-; T-H-D-; T-H-D-; : G11; M02(M30); Significato T-: Numero gruppo arbitrario (da 1 a 99999999) NOTA 1 Non è possibile registrare un numero gruppo già attribuito ad un altro gruppo. Se lo si tenta, si verifica l'allarme PS0431, “DATI T/R VITA UTENSILI ILLEGALI”. 2 Se un numero gruppo arbitrario (T) è 0, si verifica l'allarme PS0431. 3 Se si specifica un numero gruppo arbitrario deve essere specificato il comando T. Se il comando T viene omesso, si verifica l'allarme PS0149, “ERRORE DI FORMATO G10 L3”. T La funzione opzionale numero gruppo arbitrario può essere utilizzata solo quando il cambio utensile è un ATC (bit 3 (TCT) del parametro N. 5040 = 1). Se il cambio utensile è un ATC, il formato per l'impostazione del numero gruppo arbitrario è lo stesso della Serie M. Impostazione della vita residua Se è abilitata la funzione gestione vita utensili B (bit 4 (LFB) del parametro N. 6805 = 1), e la vita residua si imposta separatamente per ciascun gruppo (bit 3 (GRP) del parametro N. 6802 = 1), è possibile impostare la vita residua come dato della gestione vita utensili mediante un comando del programma. Formato G10L3; (o G10L3P1); P-L-R-; T-H-D-; T-H-D-; : G11; M02(M30); Significato R-: Vita residua (prima della selezione di un altro utensile) - 248 - PROGRAMMAZIONE B-64484IT/02 10.FUNZIONE UTENSILE (FUNZIONE T) NOTA 1 Se l'impostazione della vita residua (R) viene omessa o è 0, come vita residua viene assunto 0. In questo caso, la funzione di preavviso della prossima scadenza dell'utensile è disabilitata. 2 Il valore della vita residua (R) non può superare il valore vita (L). Se non viene rispettato questo limite, si verifica l'allarme PS0431. 3 Il valore della vita residua (R) deve essere un numero senza segno né punto decimale. 4 Le unità del valore della vita residua (R) dipendono dall'impostazione del bit 1 (FGL) del parametro N. 6805, che seleziona le unità della vita utensile. Valore della vita utensile - Se è disabilitata la funzione gestione vita utensili B Se è disabilitata la funzione gestione vita utensili B (bit 4 (LFB) del parametro N. 6805 = 0), il valore della vita utensile è una durata o un numero di impieghi a seconda dell'impostazione del bit 2 (LTM) del parametro N. 6800 o del comando di impostazione del tipo di conteggio (Q). I valori massimi sono i seguenti. Tabella 10.5.2 (a) Tipi di conteggio e valori massimi della vita utensili Bit 4 (LFB) del Bit 2 (LTM) del Tipo di conteggio Valore massimo parametro N. 6805 parametro N. 6800 0 0 1 Numero di impieghi Durata 65535 volte 4300 minuti Se il tipo di conteggio è "durata", le unità del valore vita specificato con l'indirizzo L in un programma possono essere minuti o decimi di secondo in base all'impostazione del bit 1 (FGL) del parametro N. 6805. Tabella 10.5.2 (b) Unità e valore massimo vita utensile nel comando L Valore massimo Bit 4 (LFB) del Bit 1 (FGL) del Esempio Unità nel comando L parametro N. 6805 parametro N. 6805 0 0 1 - 1 minuto 4300 0.1 secondo 2580000 L100: Vita di 100 minuti L1000: Vita di 100 secondi Se è abilitata la funzione gestione vita utensili B Se la funzione gestione vita utensili B è abilitata (bit 4 (LFB) del parametro N. 6805 = 1) Tabella 10.5.2 (c) Tipi di conteggio e valori massimi della vita utensili Bit 4 (LFB) del Bit 2 (LTM) del Tipo di conteggio Valore massimo parametro N. 6805 parametro N. 6800 1 0 Numero di impieghi 1 Durata 99999999 volte 100000 minuti 60000 minuti(Nota) Tabella 10.5.2 (d) Unità e valore massimo vita utensile nel comando L Valore massimo Bit 4 (LFB) del Bit 1 (FGL) del Esempio Unità nel comando L parametro N. 6805 parametro N. 6805 0 1 minuto 1 0.1 secondo 1 - 249 - 100000 60000(Nota ) 60000000 L100: Vita di 100 minuti L1000: 36000000(Nota ) Vita di 100 secondi 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 NOTA Se la vita viene conteggiata ogni 0.1 secondi (bit 0 (FCO) del parametro N. 6805 = 1), il valore massimo specificabile per la durata è di 60000 minuti. 10.5.3 Comandi della gestione vita utensili in un programma pezzo Spiegazioni M - Comandi Per la gestione vita utensili si utilizzano i seguenti comandi: T○○○○○○○○; Specifica un numero di gruppo utensili. La gestione vita utensili seleziona, dal gruppo specificato, un utensile la cui vita non è scaduta e emette il segnale del suo codice T. {{{{{{{{, è il valore ottenuto sommando al numero del gruppo utensili voluto il valore del parametro 6810 (limite dei codici T fuori dalla gestione vita utensili). Esempio: Se il valore del parametro N. 6810 è 100, per specificare il gruppo utensili N. 1, programmare “T101;”. NOTA Se {{{{{{{{ non è maggiore del valore del parametro N. 6810, il codice T è trattato come un normale codice T.. Se si utilizza la funzione numero gruppo utensili arbitrario (bit 4 (LFB) del parametro N. 6805 = 1, e bit 5 (TGN) del parametro N. 6802 = 1), {{{{{{{{ deve essere il numero gruppo arbitrario preimpostato, anziché il numero del gruppo. Esempio: Se per il gruppo utensili numero 1 è stato impostato il numero arbitrario 1234, per selezionare il gruppo 1 specificare T1234. NOTA 1 Quando si utilizza la funzione numero gruppo utensili arbitrario, il limite dei numeri utensile normali impostato con il parametro N. 6810 viene ignorato. 2 Se il gruppo specificato da {{{{{{{{ non è presente, il CNC assume che debba essere selezionato un utensile non controllato dalla funzione gestione vita utensili. M06; Termina la gestione vita per l'utensile precedentemente utilizzato ed inizia il conteggio vita per l'utensile selezionato con il codice T. NOTA 1 M06 viene trattato come un codice M che non comporta la bufferizzazione. 2 Se nello stesso blocco devono essere programmati più codici M, M06 può essere specificato in una posizione qualsiasi fra i codici M. H99; Seleziona il codice H registrato nei dati della gestione vita utensili per l'utensile attualmente utilizzato, per abilitare la compensazione lunghezza utensile. Il parametro N. 13265 può essere utilizzato per abilitare la compensazione con un codice H diverso da H99. - 250 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 H00; Cancella la compensazione lunghezza utensile. D99 ; Seleziona il codice D registrato nei dati della gestione vita utensili per l'utensile attualmente utilizzato, per abilitare la compensazione raggio utensile. Il parametro N. 13266 può essere utilizzato per abilitare la compensazione con un codice D diverso da D99. D00; Cancella la compensazione raggio utensile. NOTA H99 e D99 devono essere specificati dopo il comando M06. Se dopo M06 viene specificato un codice diverso da H99 o D99 o dai codici H e D impostati rispettivamente con i parametri N. 13265 e 13266, non vengono selezionati i codici H o D registrati nei dati della gestione vita utensili. - Tipi Per la gestione vita utensili possono essere utilizzati i quattro tipi di cambio utensile (tipi da A a D) elencati qui sotto. Il tipo utilizzato varia da macchina a macchina. Per i dettagli consultare il manuale del costruttore della macchina utensile. Tipo di cambio utensile Parametri M6T e M6E M6T (N. 6800#7) M6E (N. 6801#7) Numero gruppo utensili specificato nello stesso blocco del comando di cambio utensile (M06) Conteggio della vita utensile Note Tabella 10.5.3 A Differenze fra i tipi di cambio utensile B C D M6T M6E M6T M6E M6T M6E 0 0 1 0 1 0 Gruppo utensili già utilizzato M6T M6E 1 Gruppo utensili da utilizzare successivamente Il conteggio viene eseguito per un utensile appartenente al gruppo specificato a partire dal codice M06 programmato successivamente. Il conteggio viene eseguito per un utensile appartenente al gruppo specificato nello stesso blocco del codice M06. Se il comando T (ritiro gruppo utensili) che segue il comando M06 non corrisponde al gruppo utensili attualmente utilizzato, si verifica l'allarme PS0155, “T NON CORRISPONDENTE AL GRUPPO” (se il bit 6 (IGI) del parametro N. 6800 è 0). Se M06 viene specificato da solo, si verifica l'allarme PS0153, “CODICE T NON COMANDATO”. Normalmente, se il numero gruppo utensili viene specificato da solo, si utilizza il tipo B. Tuttavia, anche se il numero gruppo utensili viene specificato da solo quando si usa il tipo C, non vengono generati allarmi. (Ciò significa che fra i tipi B e C non ci sono differenze operative.) - 251 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 NOTA Se quando viene specificato il numero gruppo utensili viene selezionato un nuovo utensile, viene emesso il segnale di selezione nuovo utensile. - Compensazione lunghezza utensile nella direzione dell'asse utensile Controllo del centro utensile Per queste funzioni viene utilizzata la compensazione selezionata nella gestione vita utensili. T Se il cambio utensile è un ATC (bit 3 (TCT) del parametro N. 5040 = 1), i comandi si specificano come per la Serie M, salvo che per la Serie T non sono utilizzati né H99 né H00. Vedi la descrizione per la Serie M. Per i dettagli sui tipi di compensazione utensile applicati quando il cambio utensile è un ATC, vedi la sezione “SELEZIONE UTENSILE ESTESA” del MANUALE DELL'OPERATORE (sistemi per torni) (B-64484-1). Il metodo di specifica dei comandi per il tipo a torretta (bit 3 (TCT) del parametro N. 5040 = 0) è descritto qui sotto. AVVERTENZA Se il bit 1 (LGN) del parametro N. 5002 è 1 (il numero di selezione utensile seleziona anche il correttore geometria) questa funzione non può essere utilizzata. - Comandi T{{{{{{99; La gestione vita utensili termina il conteggio vita dell'utensile utilizzato finora, seleziona, nel gruppo specificato da {{{{{{, un utensile non ancora scaduto, emette il segnale del codice T per l'utensile, ed inizia il conteggio vita per il nuovo utensile. Esempio: Supponiamo che venga dato il comando T199 (numero correttore utensile specificato con le due cifre meno significative) perché la funzione gestione vita selezioni T10001 del gruppo utensile 1. Quindi viene emesso il codice T 100 e viene selezionato il correttore numero 1. Se nella seconda selezione o nelle selezioni successive dello stesso gruppo dopo che il CNC è passato dalla condizione di reset alla condizione di funzionamento automatico l'utensile rimane lo stesso e sono stati registrati più correttori, viene selezionato il codice T successivo a quello attuale. Alla terza selezione, ad esempio, viene selezionato il terzo correttore fra quelli registrati per lo stesso utensile. Esempio: Supponiamo che il correttore utensile sia specificato con le due cifre meno significative e che siano stati impostati due correttori per lo stesso utensile del gruppo 1 con i seguenti due codici T: T10001 T10002 Il primo comando T199 successivo al passaggio dell'unità di controllo dalla condizione di reset a quella di funzionamento automatico, seleziona il primo codice T, T10001. Se T199 viene di nuovo eseguito prima di un reset dell'unità di controllo, viene selezionato il secondo correttore, T10002. Se viene eseguito un altro T199 prima di un reset dell'unità di controllo, viene selezionato il secondo correttore, T10002, perché non ci sono altri correttori. Se il bit 1 (TSM) del parametro N. 6801 è 1 il conteggio vita viene eseguito separatamente per ciascun codice T, anche se per lo stesso numero utensile sono stati impostati più codici T. - 252 - PROGRAMMAZIONE B-64484IT/02 10.FUNZIONE UTENSILE (FUNZIONE T) T{{{{{{88; La correzione dell'utensile per il quale la gestione vita utensili sta conteggiando la vita viene cancellata. Il numero correttore viene posto a 0 ed il numero utensile viene emesso come segnale del codice T. Esempio: Supponiamo che il numero utensile attualmente utilizzato dalla gestione vita utensili sia 100. In questo caso, l'esecuzione del comando T188 (correttore utensile specificato con le due cifre meno significative) causa l'emissione del codice T 100 e seleziona il correttore numero 0, cancellando la correzione. NOTA Se il conteggio vita non è in esecuzione o l'utensile specificato non appartiene al gruppo per il quale è in esecuzione il conteggio, si verifica l'allarme PS0155. Il numero di cifre di {{{{{{ e 99/88 varia come segue: N.5028 1 2 3 99 T{{{{{{{ 9 ↑ ↑ Selezione Inizio conteggio vita del gruppo T{{{{{{ 99 ↑ ↑ Selezione Inizio conteggio vita del gruppo 88 T{{{{{{{ 8 ↑ ↑ Selezione Cancellazione della correzione del gruppo T{{{{{{ 88 ↑ ↑ Selezione Cancellazione della correzione del gruppo T{{{{{ 999 ↑ ↑ Selezione Inizio conteggio vita del gruppo T{{{{{ 888 ↑ ↑ Selezione Cancellazione della correzione del gruppo Il numero massimo di cifre del codice T si imposta con il parametro N. 3032. Il numero di cifre del numero di correttore si imposta con il parametro N. 5028. Se questo parametro è 0, il numero di cifre dipende dal numero dei correttori. Esempio: Da 1 a 9 correttori: l'ultima cifra da 10 a 99 correttori: le ultime due cifre da 100 a 999 correttori: le ultime tre cifre NOTA L'attivazione e la cancellazione delle correzioni comportano l'esecuzione della compensazione con un movimento dell'utensile o con una traslazione del sistema di coordinate. Il bit 6 (LWM) del parametro N. 5002 permette di scegliere tra l'esecuzione della compensazione quando viene specificato un codice T o quando viene specificato un comando di movimento asse. Per i dettagli, riferirsi alla sottosezione “Correzioni utensile” del MANUALE DELL'OPERATORE (sistemi per torni) (B-64484-1). T{{{{{{∆∆; Se il numero correttore in ∆∆ non è 99 né 88, il codice T viene trattato come un codice T normale. Se è in corso un conteggio vita, questo viene terminato. - 253 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 Esempi M - Cambio utensile di tipo A Se un blocco che specifica il comando di cambio utensile (M06) specifica anche un gruppo utensili (contiene un codice T), il codice T viene utilizzato come comando ti ritorno dell'utensile nella sua cartuccia. Quando viene specificato un numero gruppo utensili con un codice T, il numero dell'utensile utilizzato fino a quel momento viene emesso come segnale del codice T. Se il numero utensile specificato non è tra quelli appartenenti al gruppo utensili al quale appartiene l'utensile in uso, si verifica l'allarme PS0155. Questo allarme, però, può essere soppresso mettendo a 1 il bit 6 (IGI) del parametro N. 6800. Esempio: Supponiamo che il limite dei codici T normali sia 100. Selezione di un utensile non scaduto del gruppo 1. T101 ; (Ad esempio, l'utensile 10.) : Conteggio della vita utensile per l'utensile del gruppo 1. M06 ; (Viene contata la vita dell'utensile 10.) : Selezione di un utensile non scaduto del gruppo 2. T102 ; (Ad esempio, l'utensile 100.) : Conteggio della vita utensile per l'utensile del gruppo 2. M06 T101 ; (Viene contata la vita dell'utensile 100.) : Il numero dell'utensile attualmente in uso (del gruppo 1) viene emesso come segnale del : codice T. (Viene emesso il numero utensile 010.) : Selezione di un utensile non scaduto del gruppo 3. T103 ; (Ad esempio, l'utensile 200.) : Conteggio della vita utensile per l'utensile del gruppo 3. M06 T102 ; (Viene contata la vita dell'utensile 200.) : Selezione del correttore lunghezza utensile associato all'utensile del gruppo 3 selezionato. G43 H99 ; : Selezione del correttore raggio utensile associato all'utensile del gruppo 3 selezionato. G41 D99 ; : Cancellazione della compensazione raggio utensile. D00; : Cancellazione della compensazione lunghezza utensile. H00 ; - 254 - B-64484IT/02 - PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Cambio utensile di tipo B o C Se un blocco che specifica il comando di cambio utensile (M06) specifica anche un gruppo utensili (contiene un codice T), il codice T specifica il gruppo utensili per il quale verrà avviato il conteggio vita dal comando successivo di cambio utensile. Esempio: Supponiamo che il limite dei codici T normali sia 100. T101 ; : M06 T102 ; : : : M06 T103 ; : : : G43 H99 ; : G41 D99 ; : D00; : H00 ; : M06 T104 ; : - Selezione di un utensile non scaduto del gruppo 1. (Ad esempio, l'utensile 10.) Conteggio della vita utensile per l'utensile del gruppo 1. (Viene contata la vita dell'utensile 10.) Selezione di un utensile non scaduto del gruppo 2. (Ad esempio, l'utensile 100.) Conteggio della vita utensile per l'utensile del gruppo 2. (Viene contata la vita dell'utensile 100.) Selezione di un utensile non scaduto del gruppo 3. (Ad esempio, l'utensile 200.) Selezione del correttore lunghezza utensile associato all'utensile del gruppo 2 selezionato. Selezione del correttore raggio utensile associato all'utensile del gruppo 2 selezionato. Cancellazione della compensazione raggio utensile. Cancellazione della compensazione lunghezza utensile. Conteggio della vita utensile per l'utensile del gruppo 3. (Viene contata la vita dell'utensile 200.) Selezione di un utensile non scaduto del gruppo 4. Cambio utensile di tipo D Per un utensile selezionato dalla specifica di un gruppo utensili (codice T), il conteggio vita viene avviato dal comando di cambio utensile (M06) contenuto nello stesso blocco del codice T. La specifica del codice T da solo non causa un allarme, ma la specifica del comando M06 da solo causa l'allarme PS0153. Questo allarme, però, può essere soppresso mettendo a 1 il bit 7 (TAD) del parametro N. 6805. Esempio: Supponiamo che il limite dei codici T normali sia 100. T101 M06 ; : : : T102 M06 ; : : : G43 H99 ; : G41 D99 ; : D00; : H00 ; : T103 M06 ; : Selezione di un utensile non scaduto del gruppo 1. (Ad esempio, l'utensile 10.) Conteggio della vita utensile per l'utensile del gruppo 1. (Viene contata la vita dell'utensile 10.) Selezione di un utensile non scaduto del gruppo 2. (Ad esempio, l'utensile 100.) Conteggio della vita utensile per l'utensile del gruppo 2. (Viene contata la vita dell'utensile 100.) Selezione del correttore lunghezza utensile associato all'utensile del gruppo 2 selezionato. Selezione del correttore raggio utensile associato all'utensile del gruppo 2 selezionato. Cancellazione della compensazione raggio utensile. Cancellazione della compensazione lunghezza utensile. Selezione di un utensile non scaduto del gruppo 3. Conteggio della vita utensile per l'utensile del gruppo 3. - 255 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 T Per un ATC (bit 3 (TCT) del parametro N. 5040 = 1), i comandi si specificano come per la Serie M, salvo l'utilizzo di D99 anziché H99. Per il cambio utensile con ATC, si veda la descrizione fornita per la Serie M. Per il cambio utensile a torretta (bit 3 (TCT) del parametro N. 5040 = 0) i comandi si specificano come segue. Esempio: Supponiamo che il numero correttore sia di due cifre. T0199 ; : : : : : T0188 ; : : T0299 ; : : : : T0299 ; : : : : T0301 ; : : 10.5.4 Selezione di un utensile non scaduto del gruppo 1. (Ad esempio T1001. Il numero utensile è 10 e il numero correttore è 01.) Conteggio della vita utensile per l'utensile del gruppo 1. (Viene contata la vita dell'utensile 10.) Cancellazione della correzione dell'utensile del gruppo 1 selezionato. (Dato che l'utensile utilizzato è T1001, il numero utensile è 10m e il numero correttore è 00.) Selezione di un utensile non scaduto del gruppo 2. (Ad esempio T2002. Il numero utensile è 20 e il numero correttore è 02.) Conteggio della vita utensile per l'utensile del gruppo 2. (Viene contata la vita dell'utensile 20.) Se per l'utensile del gruppo 2 attualmente utilizzato sono stati impostati più correttori, viene selezionato il correttore successivo. (Supponiamo che per l'utensile 20 siano stati registrati T2002 e T2003. In questo caso, viene selezionato T2003. Il numero utensile è 20 e il numero correttore è 03.) Il conteggio vita per l'utensile del gruppo 2 ha termine e questo comando viene trattato come un codice T normale. Il numero utensile è 03 e il numero correttore è 01.) Conteggio vita utensile e selezione utensile La vita utensile può essere espressa come numero di impieghi o come durata, a seconda dell'impostazione del bit 2 (LTM) del parametro N. 6800. Il conteggio vita viene eseguito separatamente per ciascun gruppo utensili ed il contenuto dei contatori vita non viene perso quando viene spento il CNC. Tabella 10.5.4 Tipo di conteggio Bit 2 (LTM) del parametro N. 6800 Intervallo di conteggio Tipi e intervalli di conteggio della vita utensili Numero di impieghi Durata 0 Il contatore viene incrementato di uno per gli utensili utilizzati da un programma. 1 Bit 0 (FCO) del parametro N. 6805 0: Ogni secondo. 1: Ogni 0.1 secondi. Il conteggio può essere ripreso programmando il codice M che riavvia il conteggio vita utensile (parametro N. 6811). E' possibile applicare una regolazione. - 256 - B-64484IT/02 PROGRAMMAZIONE 10.FUNZIONE UTENSILE (FUNZIONE T) Spiegazioni M - Numero di impieghi (LTM=0) Quando viene specificato un gruppo utensili (codice T), viene selezionato un utensile non scaduto appartenente al gruppo specificato. Di conseguenza, quando viene eseguito il comando di cambio utensile (M06), il contatore vita dell'utensile selezionato viene incrementato di uno. A meno che non venga specificato il codice M per il riavvio del conteggio vita, la selezione di un nuovo utensile e l'incremento del contatore vengono eseguiti solo quando la specifica del numero di gruppo ed il comando di cambio utensile vengono eseguiti per la prima volta dopo il passaggio dell'unità di controllo dalla condizione di reset a quella di funzionamento automatico. AVVERTENZA Non importa per quante altre volte il programma specifica lo stesso numero di gruppo utensili. Il contatore non viene più incrementato, né viene selezionato un altro utensile dello stesso gruppo. - Durata (LTM=1) I dati della gestione vita utensili vengono registrati dopo la cancellazione di tutti i dati della gestione vita utensili precedenti. Quando viene specificato un gruppo utensili (codice T), viene selezionato un utensile non scaduto appartenente al gruppo specificato. Di conseguenza, quando viene eseguito il comando di cambio utensile (M06), inizia il conteggio della vita utensile. Il conteggio della vita utensile viene eseguito misurando a intervalli regolari (ad ogni secondo o ad ogni decimo di secondo) il tempo durante il quale l'utensile viene effettivamente utilizzato in lavoro. L'intervallo di conteggio si specifica con il bit 0 (FCO) del parametro N. 6805. Il tempo di arresto in blocco singolo, feed hold, rapido, sosta, blocco macchina e interblocco non viene conteggiato. Se il bit 2 (LFV) del parametro N. 6801 è 1, è possibile applicare al conteggio vita la regolazione specificata dai segnali di correzione del conteggio vita utensile. E' possibile applicare una regolazione compresa fra 0 e 99.9 volte. Con una regolazione di 0 volte, il conteggio non viene eseguito. T Se il cambio utensile è un ATC (il bit 3 (TCT) del parametro N. 5040 è 1), vale lo stesso metodo di specifica della Serie M. Vedi la descrizione per la Serie M. Il metodo di specifica per il tipo a torretta (bit 3 (TCT) del parametro N. 5040 = 0) è descritto qui sotto. - Numero di impieghi (LTM=0) Quando viene specificato un gruppo utensili (codice T○○99), viene selezionato un utensile non scaduto appartenente al gruppo specificato, ed il contatore vita dell'utensile selezionato viene incrementato di uno. A meno che non venga specificato il codice M per il riavvio del conteggio vita, la selezione di un nuovo utensile e l'incremento del contatore vengono eseguiti solo quando la specifica del numero di gruppo ed il comando di cambio utensile vengono eseguiti per la prima volta dopo il passaggio dell'unità di controllo dalla condizione di reset a quella di funzionamento automatico. AVVERTENZA Non importa per quante altre volte il programma specifica lo stesso numero di gruppo utensili. Il contatore non viene più incrementato, né viene selezionato un altro utensile dello stesso gruppo. - 257 - 10.FUNZIONE UTENSILE (FUNZIONE T) - PROGRAMMAZIONE B-64484IT/02 Durata (LTM=1) Quando viene specificato un gruppo utensili (codice T○○99), viene selezionato un utensile non scaduto appartenente al gruppo specificato, ed inizia il conteggio vita per l'utensile selezionato. Il conteggio della vita utensile viene eseguito misurando a intervalli regolari (ad ogni secondo o ad ogni decimo di secondo) il tempo durante il quale l'utensile viene effettivamente utilizzato in lavoro. L'intervallo di conteggio si specifica con il bit 0 (FCO) del parametro N. 6805. Il tempo di arresto in blocco singolo, feed hold, rapido, sosta, blocco macchina e interblocco non viene conteggiato. Se il bit 2 (LFV) del parametro N. 6801 è 1, è possibile applicare al conteggio vita la regolazione specificata dai segnali di correzione del conteggio vita utensile. E' possibile applicare una regolazione compresa fra 0 e 99.9 volte. Con una regolazione di 0 volte, il conteggio non viene eseguito. M T NOTA 1 Quando deve essere selezionato un utensile, viene cercato, a partire dall'utensile attuale per arrivare all'ultimo utensile del gruppo, un utensile non scaduto. Quando viene raggiunto l'ultimo utensile, la ricerca riparte dal primo. Se non viene trovato un utensile non scaduto, viene selezionato l'ultimo utensile. Quando deve essere cambiato l'utensile attualmente utilizzato in seguito al segnale di salto utensile, il nuovo utensile viene selezionato come segue. 2 Se il conteggio vita indica che l'ultimo utensile del gruppo è scaduto, viene emesso il segnale di sostituzione utensili. Se viene conteggiata la durata, il segnale viene emesso non appena ha termine la vita dell'ultimo utensile. Se viene conteggiato il numero di impieghi, il segnale viene emesso quando il CNC viene resettato da un comando come M02 o M30 o quando viene specificato il codice M per la ripartenza del conteggio dopo che l'ultimo utensile del gruppo è scaduto. 3 Quando viene specificato un comando T, vengono deselezionati un gruppo ed un utensile appartenente al gruppo, mentre il codice T viene bufferizzato. Ciò significa che se un blocco da bufferizzare contiene un comando T che specifica un gruppo mentre è in corso la lavorazione ed è selezionato quel gruppo, il comando T successivo è già bufferizzato, e, anche se l'utensile scade durante la lavorazione, non viene selezionato l'utensile successivo. Per evitare questa situazione, se viene conteggiato il tempo di impiego e deve essere specificato in sequenza un altro codice T che seleziona lo stesso gruppo, inserire un codice M che sopprime la bufferizzazione immediatamente prima del codice T. 4 Durante il conteggio della vita utensile, la vita residua di un gruppo (valore vita meno contatore vita) viene confrontata con la vita residua impostata, e lo stato del segnale di preavviso scadenza utensile cambia in base al risultato del confronto. - M99 Se la vita utensili è espressa come numero di impieghi e il bit 0 (T99) del parametro N. 6802 è 1, quando viene eseguito il comando M99, se è terminata la vita di almeno un gruppo utensili viene emesso i segnale di sostituzione utensili TLCH e il funzionamento automatico si ferma. Quando per la vita utensile viene conteggiata la durata, se è terminata la vita di un gruppo utensili il segnale di sostituzione utensili viene emesso immediatamente e, quando viene specificato il comando M99, il funzionamento automatico si ferma, ma non viene emesso un altro segnale di sostituzione utensili. - 258 - PROGRAMMAZIONE B-64484IT/02 10.FUNZIONE UTENSILE (FUNZIONE T) M Se la vita utensili è espressa come numero di impieghi, dopo la specifica di M99 un codice T (gruppo di utensili) seleziona entro il gruppo specificato un utensile non scaduto, ed il successivo comando di cambio utensile (M06) incrementa di uno il contatore della vita utensile. T Se la vita utensili è espressa come numero di impieghi, quando viene specificato un codice T (gruppo di utensili) dopo la specifica di M99, viene selezionato un utensile non scaduto appartenente al gruppo specificato e il contatore vita viene incrementato di uno. Se il cambio utensile è un ATC (il bit 3 (TCT) del parametro N. 5040 è 1), vale la stessa specifica della Serie M. 10.5.5 Codice M per la ripartenza del conteggio vita utensili Spiegazioni M Quando la vita utensili è specificata come numero di impieghi, se viene comandato il codice M per la ripartenza del conteggio della vita utensili, il segnale di sostituzione utensile viene emesso quando c'è almeno un gruppo utensili la cui vita è scaduta. Il codice T (che comanda un gruppo della gestione vita utensili) specificato dopo il codice M di ripartenza del conteggio seleziona un utensile non scaduto entro il gruppo specificato e il successivo comando M06 (cambio utensile) incrementa di uno il contatore vita. Questo permette di conteggiare la vita utensile in seguito ad un comando di cambio utensile (M06), anche se quel comando non è il primo dopo il passaggio del CNC dalla condizione di reset alla condizione di funzionamento automatico. Il codice M per la ripartenza del conteggio vita si specifica con il parametro N. 6811. Esempio: Supponiamo che il codice M per la ripartenza del conteggio vita sia M16 e che il limite degli utensili normali sia 100. Supponiamo inoltre che la vita utensile sia espressa come numero di impieghi. T101 ; Selezione di un utensile non scaduto del gruppo 1. : : M06 ; La gestione vita utensili viene eseguita per il gruppo 1. : (Il contatore vita utensile viene incrementato di uno.) : T102 ; Selezione di un utensile non scaduto del gruppo 2. : : M06 ; La gestione vita utensili viene eseguita per il gruppo 2. : (Il contatore vita utensile viene incrementato di uno.) : M16 ; Il conteggio vita viene riavviato. T101 ; Selezione di un utensile non scaduto del gruppo 1. : : M06 ; La gestione vita utensili viene eseguita per il gruppo 1. : (Il contatore vita utensile viene incrementato di uno.) - 259 - 10.FUNZIONE UTENSILE (FUNZIONE T) PROGRAMMAZIONE B-64484IT/02 T Se il cambio utensile è un ATC (il bit 3 (TCT) del parametro N. 5040 è 1), vale la stessa specifica della Serie M. Vedi la descrizione per la Serie M. Nella spiegazione che segue si assume che il cambio utensile sia a torretta (bit 3 (TCT) del parametro N. 5040 = 0). Quando la vita utensili è specificata come numero di impieghi, se viene comandato il codice M per la ripartenza del conteggio vita utensili, il segnale di sostituzione utensile viene emesso quando c'è almeno un gruppo utensili la cui vita è scaduta. Quando viene specificato un gruppo utensili (codice T) dopo il codice M di ripartenza del conteggio vita, viene selezionato un utensile non scaduto appartenente al gruppo specificato, ed il contatore vita dell'utensile selezionato viene incrementato di uno. Questo permette di conteggiare la vita utensile in seguito alla specifica di un gruppo utensili (codice T), anche se questa non è la prima dopo il passaggio del CNC dalla condizione di reset alla condizione di funzionamento automatico. Il codice M per la ripartenza del conteggio vita si specifica con il parametro N. 6811. Esempio: Supponiamo che il codice M di ripartenza del conteggio vita sia M16. Supponiamo inoltre che la vita utensile sia espressa come numero di impieghi. T199 ; Selezione di un utensile non scaduto del gruppo 1. : La gestione vita utensili viene eseguita per il gruppo 1. : (Il contatore vita utensile viene incrementato di uno.) : T299 ; Selezione di un utensile non scaduto del gruppo 2. : La gestione vita utensili viene eseguita per il gruppo 2. : (Il contatore vita utensile viene incrementato di uno.) : M16 ; Il conteggio vita viene riavviato. T199 ; Selezione di un utensile non scaduto del gruppo 1. : La gestione vita utensili viene eseguita per il gruppo 1. : (Il contatore vita utensile viene incrementato di uno.) M T NOTA 1 Il codice M di ripartenza del conteggio vita è trattato come codice M non coinvolto nella bufferizzazione. 2 Quando la vita utensili è specificata come numero di impieghi, se viene programmato il codice M per la ripartenza del conteggio della vita utensili, il segnale di sostituzione utensile viene emesso quando c'è almeno un gruppo utensili la cui vita è scaduta. Se la vita utensili è specificata come tempo, la specifica del codice M per la ripartenza del conteggio non ha effetti. 3 Se nello stesso blocco devono essere programmati più codici M, il codice M per la ripartenza del conteggio può essere specificato in una posizione qualsiasi fra i codici M. - 260 - PROGRAMMAZIONE B-64484IT/02 10.5.6 10.FUNZIONE UTENSILE (FUNZIONE T) Disabilitazione del conteggio vita Spiegazioni M T Se il bit 6 (LFI) del parametro N. 6804 è “1”, è possibile utilizzare il segnale LFCIV che abilita/disabilita il conteggio vita utensile. Se il segnale LFCIV è “1”, va a “1” il segnale LFCIF (conteggio vita utensile disabilitato) e il conteggio vita non viene eseguito. Se il segnale LFCIV è “0”, va a “0” il segnale LFCIF (conteggio vita utensile disabilitato) e il conteggio vita viene eseguito. NOTA Quando cambia lo stato del segnale LFCIV (disabilitazione del conteggio vita utensile) la bufferizzazione deve essere inibita. Pertanto, per cambiare lo stato del segnale utilizzare codici M non coinvolti nella bufferizzazione. Se il blocco che contiene M06 (per la Serie M) o un codice T di cambio utensile (per la Serie T) segue immediatamente un blocco contenente un codice M che cambia lo stato del segnale LFCIV e questo codice M non disabilita la bufferizzazione, è probabile che il comando che specifica se eseguire o non eseguire il conteggio risulti errato. 10.5.7 Funzione di controllo del numero di utensili rimasti Introduzione M Nella gestione vita utensili, questa funzione genera un segnale di avvertimento se il numero degli utensili rimasti in un gruppo è minore o uguale al valore del parametro N. 6846. Spiegazioni M Se, nella gestione vita utensili, il numero degli utensili rimasti nel gruppo selezionato con il codice T è minore o uguale al valore del parametro N. 6846, il corrispondente segnale di avviso, TLAL, va a "1". Se il valore del parametro N. 6846 è 0, il segnale TLAL non viene emesso. Il segnale TLAL va a "0" quando: • Viene assegnato un valore al parametro N. 6846. • Con G10 viene effettuata una registrazione che comporta la cancellazione di tutti i gruppi di dati della gestione vita utensili. • Mediante il codice T viene selezionato un gruppo il cui numero di utensili rimasti è maggiore del parametro N. 6846. Il segnale TLAL va a "0" quando per il gruppo che ne ha causato la messa a "1" viene eseguita una qualsiasi delle seguenti operazioni. • Cancellazione dei dati di esecuzione mediante il segnale di reset della sostituzione utensili. • Modifica o cancellazione dei dati della gestione vita utensili mediante il comando G10. • Cancellazione in blocco dei gruppi di utensili sulla schermata di editazione dei gruppi, aggiunta di dati utensile sulla schermata e cancellazione dalla schermata. • Cancellazione dei dati di esecuzione sulla schermata di editazione dei gruppi della gestione vita utensili. - 261 - 10.FUNZIONE UTENSILE (FUNZIONE T) • • PROGRAMMAZIONE B-64484IT/02 Cancellazione dei dati di esecuzione sulla schermata della lista della gestione vita utensili. Esecuzione di una qualsiasi delle funzioni FOCAS2 date nella Tabella 10.5.7. Tabella 10.5.7 Funzioni FOCAS2 che causano la messa a "0" del segnale TLAL Nome della Descrizione funzione cnc_clrcntinfo cnc_deltlifegrp cnc_deltlifedt cnc_instlifedt cnc_wr1tlifedata cnc_wr1tlifedat2 cnc_wr2tlifedata Cancellazione dei dati della gestione vita utensili (contatore vita e dati utensili) (specifica range) Cancellazione dei dati della gestione vita utensili (gruppo utensili) Cancellazione dei dati della gestione vita utensili (dati utensili) (Valido se il gruppo contiene un solo utensile.) Aggiunta di dati della gestione vita utensili (dati utensile) Scrittura dei dati della gestione vita utensili (dati utensili) (Valido se il dato viene cambiato in "scaduto" o se viene cambiato in "registrato" per un utensile "saltato".) - 262 - PROGRAMMAZIONE B-64484IT/02 11 11.FUNZIONI AUSILIARIE FUNZIONI AUSILIARIE Introduzione Sono disponibili due tipi di funzioni ausiliarie: funzione ausiliaria (codice M), utilizzata per specificare la rotazione del mandrino, l'arresto del mandrino, la fine del programma, e così via, e seconda funzione ausiliaria (codice B), utilizzata per specificare il posizionamento della tavola rotante. Quando nello stesso blocco vengono specificati un comando di movimento e una funzione ausiliaria, i comandi vengono eseguiti in uno dei due modi seguenti: (1) Esecuzione simultanea del comando di movimento e della funzione ausiliaria. (2) Esecuzione della funzione ausiliaria dopo il completamento del comando di movimento. La scelta tra queste due sequenze dipende dalle specifiche del costruttore della macchina utensile. Vedere i dettagli sul manuale del costruttore. Il Capitolo 11, "FUNZIONI AUSILIARIE", è costituito dalle seguenti sezioni: 11.1 11.2 11.3 11.4 FUNZIONE AUSILIARIA (FUNZIONE M) ................................................................................... 263 PIU' CODICI M IN UN BLOCCO ................................................................................................... 264 GRUPPI DI CODICI M .................................................................................................................... 265 SECONDA FUNZIONE AUSILIARIA (CODICI B) ...................................................................... 268 11.1 FUNZIONE AUSILIARIA (FUNZIONE M) Quando viene specificato l'indirizzo M seguito da un numero, vengono trasmessi alla macchina segnale del codice e un segnale strobe. La macchina usa questi segnali per attivare o disattivare le proprie funzioni. Normalmente, in un blocco può essere specificato un solo codice M. in base all'impostazione del bit 7 (M3B) del parametro N. 3404, è possibile specificare fino a tre codici M. La corrispondenza tra codici M e funzioni della macchina è determinata dal costruttore della macchina stessa. Tutte le operazioni specificate con i codici M, salvo M98, M99, M198, i codici M usati per il richiamo di sottoprogrammi (parametri da 6071 a 6079) e i codici M usati per il richiamo di macroistruzioni (parametri da 6080 a 6089), vengono eseguite dalla macchina. Vedere i dettagli sul manuale del costruttore della macchina utensile. Spiegazioni I seguenti codici M hanno un significato speciale. - M02,M30 (Fine del programma) Questo indica la fine del programma principale. Il ciclo si ferma ed il CNC viene resettato. (Questo varia da costruttore a costruttore.) Dopo l'esecuzione del blocco che specifica la fine del programma, il controllo ritorna all'inizio del programma stesso. E' possibile usare il bit 5 (M02) e il bit 4 (M30) del parametro N. 3404 per disabilitare la restituzione del controllo all'inizio del programma con M02, M30. - M00 (Arresto del programma) Dopo un blocco contenente M00, il ciclo si arresta. Con questo arresto, tutte le informazioni modali restano invariate. Il ciclo può essere riavviato attuando un cycle start. (Questo varia da costruttore a costruttore.) - M01 (Arresto opzionale) Come per M00, il ciclo si arresta dopo un blocco contenente M01. Questo codice, però, è effettivo soltanto se è stato premuto il tasto arresto opzionale sul pannello dell'operatore. - 263 - 11.FUNZIONI AUSILIARIE - PROGRAMMAZIONE B-64484IT/02 M98 (Richiamo sottoprogramma) Questo codice si usa per richiamare i sottoprogrammi. Il segnale del codice ed il segnale strobe non sono inviati alla macchina. Vedi la sezione “SOTTOPROGRAMMI (M98, M99)” per i dettagli. - M99 (Fine sottoprogramma) Questo codice indica la fine di un sottoprogramma. L'esecuzione di M99 restituisce il controllo al programma principale. Il segnale del codice ed il segnale strobe non sono inviati alla macchina. Vedi la sezione “SOTTOPROGRAMMI (M98, M99)” per i dettagli. 11.2 PIU' CODICI M IN UN BLOCCO Normalmente, in un blocco può essere specificato un solo codice M. Però, mettendo a 1 il bit 7 (M3B) del parametro N. 3404, diventa possibile specificare fino a 3 codici M in un solo blocco.. I codici M specificati in un blocco vengono inviati alla macchina simultaneamente, consentendo di ridurre il tempo ciclo totale. Spiegazioni Il CNC permette di specificare fino a tre codici M in un blocco. Però alcuni codici M non possono essere programmati contemporaneamente a causa di limitazioni dovute alle operazioni meccaniche. Per maggiori informazioni sulla programmazione di più codici M per blocco, consultare il manuale del costruttore della macchina utensile. M00, M01, M02, M30, M98, M99 e M198 non possono essere specificati in un blocco insieme ad altri codici M. Alcuni altri codici M, oltre a M00, M01, M02, M30, M98, M99 e M198, non possono essere specificati insieme ad altri codici M e devono essere specificati in un blocco indipendente. Questi codici M sono quelli che oltre ad essere inviati alla macchina vengono anche usati internamente dal CNC. Ad esempio, i codici M che richiamano i sottoprogrammi da 9001 a 9009 e i codici M che inibiscono la pre-lettura del blocco successivo (esclusione del buffer). In un blocco possono essere specificati più codici M, ma limitatamente ai codici M che il controllo invia alla macchina senza eseguire altre elaborazioni. Vale a dire che è possibile specificare in un blocco più codici M da inviare alla macchina, purché essi non comportino l'esecuzione di operazioni interne al CNC. (Dato che il trattamento dei codici M dipende dalla macchina, riferirsi al manuale del costruttore della macchina utensile.) Esempio Un codice M in un blocco Più codici M in un blocco M40; M50; M60; G28G91X0Y0Z0; : : : M40M50M60; G28G91X0Y0Z0; : : : : : - 264 - PROGRAMMAZIONE B-64484IT/02 11.3 11.FUNZIONI AUSILIARIE GRUPPI DI CODICI M Introduzione La classificazione di un massimo di 500 codici M in un massimo di 127 gruppi consente di: • Ricevere un allarme se un codice M che deve essere specificato da solo compare in un blocco che contiene altri codici M. • Ricevere un allarme se in un blocco sono specificati più codici M appartenenti allo stesso gruppo. 11.3.1 - Impostazione di un numero di gruppo di codici M sulla schermata di impostazione Procedura per la visualizzazione della schermata di impostazione dei gruppi di codici M Fig. 11.3 (a) Schermata di impostazione dei gruppi di codici M La “schermata di impostazione dei gruppi di codici M (Fig. 11.3 (a))” permette di assegnare un numero di gruppo a ciascun codice M. Per visualizzare questa schermata procedere come segue: (1) Premere il tasto funzione ed il tasto di continuazione del menu più volte. Compare il tasto software [COD M]. (2) Premere il tasto software [COD M]. Nella colonna “N.” compaiono i codici M per i quali è possibile impostare un numero di gruppo. Il numero di gruppo può essere specificato per i seguenti codici M: da M00 a M99, e fino a 400 codici M selezionati tra quelli da M100 in poi. Per i dettagli relativi all'aggiunta dei codici M da 100 in poi, riferirsi alle spiegazioni dei parametri N. 3441 - 3444. Nella colonna “DATI”, compaiono i numeri di gruppo corrispondenti ai codici M. - 265 - 11.FUNZIONI AUSILIARIE - PROGRAMMAZIONE B-64484IT/02 Impostazione di un numero di gruppo Per impostare un numero di gruppo su questa schermata (Fig. 11.3 (a)) procedere come segue: 1 Selezionare il modo MDI. 2 Mettere a 1 "SCRITTURA PARAMETRI" sulla schermata di impostazione. 3 Visualizzare la schermata di impostazione dei gruppi di codici M. 4 Utilizzare i tasti pagina ed i tasti cursore per portare il cursore sul codice M da impostare. Il cursore può anche essere portato sul codice M desiderato introducendo il numero del codice M e premendo il tasto software [RIC.NO]. 5 Introdurre un numero di gruppo e premere il tasto software [ENTRAT] o il tasto . Il campo di validità dei numeri di gruppo va da 1 a 127 (127 gruppi). Se viene introdotto zero, esso non viene registrato come numero di gruppo. - Esempi di impostazione dei parametri N. 3441 - 3444 Negli esempi che seguono il numero di cifre di un codice M è 4. <1> - <4> indicano i parametri N. 3441 - 3444. (1) Quando <1> = 300, <2> = 400, <3> = 500 e <4> = 900 Numero 0000 : 100 codici 0099 0300 : 100 codici Il numero di gruppo può essere specificato per M0000 - M0099, 0399 M0300 - M0599 e M0900 - M999. 0400 I codici M da M0300 a M0599 e da M0900 a M999 sono aggiunti : 100 codici alla schermata di impostazione dei gruppi di codici M. 0499 0500 : 100 codici 0599 0900 : 100 codici 0999 (2) Quando <1> = 200, <2> = 0, <3> = 550 e <4> = 800 Numero 0000 : 0099 Il numero di gruppo può essere specificato per M0000 - M0099, M0200 0200 M0299, M0550 - M0649 e M0800 - M0899. : (L'impostazione del parametro <2> non è valido perché 0.) 0299 In questo caso alla schermata di impostazione dei gruppi di codici M 0550 vengono aggiunti i codici M da M0200 a M0299, da M0550 a M0649 e da : M0800 a M0899. 0649 0800 : 0899 - 266 - PROGRAMMAZIONE B-64484IT/02 11.3.2 11.FUNZIONI AUSILIARIE Impostazione da programma di un numero di gruppo di codici M Per impostare i numeri di gruppo ed i nomi dei codici M è possibile utilizzare un programma. Il formato di programmazione è il seguente. Formato G10 L40 Pn Rg ; Pn : “n” specifica un codice M. Rg : “g” specifica un numero di gruppo di codici M. NOTA 1 Se il formato non è corretto, si verifica l'allarme PS1144, “ERRORE DI FORMATO IN G10”. 2 Se per il codice M specificato con il comando P non è possibile specificare un numero di gruppo o se il numero di gruppo specificato con il comando R non è nell'intervallo da 1 a 127, si verifica l'allarme PS1305, “DATO FUORI DAI LIMITI”. (Esempio) L'esecuzione del seguente programma assegna a M03 il numero di gruppo "1". G10 L40 P03 R1 ; 11.3.3 Funzione di controllo dei gruppi di codici M Quando è possibile specificare più codici M in un blocco (bit 7 (M3B) del parametro N. 3404 = 1), è possibile anche controllare quanto segue. L'esecuzione di questi controlli si abilita utilizzando il bit 1 (MGC) del parametro N. 3400. (1) Codice M che deve essere specificato in un blocco senza altri codici M Se un codice M che deve essere specificato in un blocco senza altri codici M viene invece specificato insieme ad un altro codice M si verifica l'allarme PS5016, “COMBINAZIONE ILLEGALE DI COD M”. (2) Codici M dello stesso gruppo Se in un blocco vengono specificati più codici M appartenenti allo stesso gruppo si verifica l'allarme PS5016. Il campo di validità dei numeri di gruppo va da 0 a 127 (128 gruppi). I numeri di gruppo 0 e 1 hanno un significato speciale. Notare quanto segue: • Il numero di gruppo 1 caratterizza i codici M che devono essere specificati in un blocco senza altri codici M. • Il numero di gruppo 0 caratterizza i codici M per i quali non viene controllata la concomitanza con altri codici M dello stesso gruppo. Ciò significa che quando nello stesso sono specificati più codici M del gruppo 0 non viene indicato l'allarme. • Il numero di gruppo 0, però, non disabilita il controllo relativo ai codici M che devono essere specificati da soli in un blocco. Ciò significa che se un blocco contiene un codice M del gruppo 1 e un codice M del gruppo 0, si verifica l'allarme. • Per i codici M che non vengono inviati alla macchina, come M98, M99, M198 ed i codici M che richiamano macro o sottoprogrammi (specificati con i parametri N. 6071 - 6079 e N. 6080 - 6089, e con il macro executor), come numero di gruppo specificare sempre 0. • Per M00, M01, M02, M30 ed i codici M per i quali viene soppressa la bufferizzazione (specificati con i parametri N. 3411 - 3432 e N. 11290 -11299), come numero di gruppo specificare sempre 1. - 267 - 11.FUNZIONI AUSILIARIE 11.4 PROGRAMMAZIONE B-64484IT/02 SECONDA FUNZIONE AUSILIARIA (CODICI B) Introduzione Quando viene programmato l'indirizzo B seguito da un numero (massimo 8 cifre), vengono emessi il segnale del codice ed il segnale strobe per l'esecuzione dei calcoli relativi all'asse rotativo. IL segnale del codice è ritenuto fino alla specifica di un altro codice B. E' possibile specificare un solo codice B per blocco. Se il numero di cifre di un codice B supera il limite massimo specificato con il parametro N. 3033, si verifica un allarme. Come indirizzo utilizzato per specificare la seconda funzione ausiliaria può essere scelto un carattere diverso da B (A, C, U, V o W) mediante il parametro N. 3460. L'indirizzo utilizzato per la seconda funzione ausiliaria non può essere utilizzato anche come indirizzo asse. Per i dettagli consultare il manuale del costruttore della macchina utensile. Spiegazioni - Campo di validità del codice da -99999999 a 99999999 - Valore in uscita Il valore specificato dopo l'indirizzo della seconda funzione ausiliaria viene emesso con i segnali di codice B00 - B31. Riguardo al valore in uscita notare quanto segue. 1. Quando sono disabilitati il punto decimale ed il segno meno (Quando il bit 0 (AUP) del parametro N. 3450 è 0) Quando è selezionata la programmazione senza punto decimale della seconda funzione ausiliaria, il valore specificato viene emesso così com'è, indipendentemente dall'impostazione relativa all'uso del punto decimale tipo calcolatrice tascabile (bit 0 (DPI) del parametro N.3401). Esempio: Valore specificato Valore in uscita B10 10 Se il codice della seconda funzione ausiliaria viene programmato con il punto decimale si verifica l'allarme PS0007, “PUNTO DECIMALE ERRATO”. Se il valore del codice della seconda funzione ausiliaria è negativo si verifica l'allarme PS0007, “USO ILLEGA SEGNO MENO”. 2. Quando sono abilitati il punto decimale ed il segno meno (Quando il bit 0 (AUP) del parametro N. 3450 è 1) Quando non è selezionata la programmazione del punto decimale tipo calcolatrice tascabile (il bit 0 (DPI) del parametro N. 3401 è 0), se la seconda funzione ausiliaria viene programmata senza punto decimale, il valore specificato viene emesso così com'è. Esempio: Valore specificato Valore in uscita B10 10 - 268 - B-64484IT/02 PROGRAMMAZIONE 11.FUNZIONI AUSILIARIE Quando è selezionata la programmazione del punto decimale tipo calcolatrice tascabile (il bit 0 (DPI) del parametro N. 3401 è 1), se la seconda funzione ausiliaria viene programmata senza punto decimale, viene emesso il valore specificato moltiplicato per un moltiplicatore. (I moltiplicatori sono indicati nella tabella 11.4 (a).) Esempio: Valore specificato Valore in uscita B10 10000 (Quando si utilizza la programmazione in millimetri e l'asse di riferimento è IS-B. Il moltiplicatore è 1000.) Se la seconda funzione ausiliaria viene programmata con il punto decimale, viene emesso il valore specificato moltiplicato per un moltiplicatore. (I moltiplicatori sono indicati nella tabella 11.4 (a).) Esempio: Valore specificato Valore in uscita B10. 10000 (Quando si utilizza la programmazione in millimetri e l'asse di riferimento è IS-B. Il moltiplicatore è 1000.) B0.123 1230 (Quando è utilizzata la programmazione in pollici, l'asse di riferimento è IS-B ed il parametro AUX è 1. Il moltiplicatore è 10000.) Il moltiplicatore viene determinato come segue in base al sistema di incrementi dell'asse di riferimento (specificato dal parametro N. 1031) e del bit 0 (AUX) del parametro N. 3405. Tabella 11.4 (a) Moltiplicatori del valore in uscita quando la seconda funzione ausiliaria è specificata con il punto decimale ed è selezionato l'uso del punto decimale tipo calcolatrice tascabile Bit 0 (AUX) del parametro Bit 0 (AUX) del parametro Unità N. 3405 = 0 N. 3405 = 1 Programmazione in millimetri Programmazione in pollici Asse di riferimento: IS-A Asse di riferimento: IS-B Asse di riferimento: IS-C Asse di riferimento: IS-D Asse di riferimento: IS-E Asse di riferimento: IS-A Asse di riferimento: IS-B Asse di riferimento: IS-C Asse di riferimento: IS-D Asse di riferimento: IS-E 100× 1000× 10000× 100000× 1000000× 100× 1000× 10000× 100000× 1000000× 100× 1000× 10000× 100000× 1000000× 1000× 10000× 100000× 1000000× 10000000× AVVERTENZA Se dopo l'applicazione al valore specificato con il punto decimale del moltiplicatore indicato nella tabella 11.4 (a), rimane una parte decimale, questa viene troncata. Esempio: Valore specificato Valore in uscita B0.12345 1234 (Quando è utilizzata la programmazione in pollici, l'asse di riferimento è IS-B ed il parametro AUX è 1. Il moltiplicatore è 10000.) - 269 - 11.FUNZIONI AUSILIARIE PROGRAMMAZIONE B-64484IT/02 NOTA Se il numero di cifre del valore specificato eccede il limite stabilito con il parametro N. 3033, si verifica l'allarme PS0003, “TROPPE CIFRE”. Quando al valore specificato viene applicato il moltiplicatore indicato nella tabella 11.4 (a), il numero di cifre considerato è quello del risultato della moltiplicazione. Limitazioni L'indirizzo utilizzato per la seconda funzione ausiliaria (l'indirizzo B o quello specificato con il parametro N. 3460) non può essere utilizzato come indirizzo asse. - 270 - PROGRAMMAZIONE B-64484IT/02 12 12.GESTIONE DEI PROGRAMMI GESTIONE DEI PROGRAMMI Il Capitolo 12, "GESTIONE DEI PROGRAMMI", è costituito dalle seguenti sezioni: 12.1 CARTELLE ...................................................................................................................................... 271 12.2 FILE .................................................................................................................................................. 275 12.3 RELAZIONE CON LE FUNZIONI CONVENZIONALI ............................................................... 277 12.1 CARTELLE Introduzione E' possibile suddividere la memoria programmi in cartelle. 12.1.1 Configurazione delle cartelle I nomi delle cartelle devono essere conformi alle seguenti regole: • Il nome di una cartella può essere lungo fino a 32 caratteri. • Nei nomi delle cartelle possono essere utilizzati i seguenti caratteri: Caratteri alfabetici (lettere maiuscole e minuscole), caratteri numerici, e i seguenti simboli: −+_. Poiché "." e ".." sono nomi di cartella riservati, essi non possono essere utilizzati. - Cartelle iniziali Quando viene inizializzata la memoria programmi vengono create delle cartelle con struttura e nome predefiniti. Queste sono le cartelle iniziali. (1) Cartella radice (ROOT) Questa cartella contiene tutte le altre. (2) Cartella del sistema (SYSTEM) Contiene i sottoprogrammi ed i programmi macro del sistema. (3) Prima cartella del costruttore della macchina utensile (MTB1) Contiene sottoprogrammi e macroprogrammi creati dal costruttore della macchina utensile. (4) Seconda cartella del costruttore della macchina utensile (MTB2) Contiene sottoprogrammi e macroprogrammi creati dal costruttore della macchina utensile. (5) Cartella dell'utilizzatore (USER) Contiene i programmi creati dall'utilizzatore della macchina utensile. In questa cartella vengono create le seguenti sottocartelle: (a) Cartelle dei canali (PATHn: Vengono create tante cartelle quanti sono i canali.) Ciascuna di esse contiene i programmi principali, i sottoprogrammi ed i programmi macro utilizzati per il canale corrispondente. (b) Cartella dei programmi comuni (LIBRARY) Contiene i sottoprogrammi e le macro comuni a più canali. NOTA Le cartelle iniziali non possono essere cancellate né rinominate. - 271 - 12.GESTIONE DEI PROGRAMMI PROGRAMMAZIONE B-64484IT/02 [Configurazione delle cartelle iniziali] L'unità in cui risiedono i programmi si chiama CNC_MEM. //CNC_MEM (1) Cartella radice / SYSTEM/ (2) Cartella del sistema (SYSTEM) MTB1/ (3) Cartella 1del costruttore della macchina utensile (MTB1) MTB2/ (4) Cartella 2del costruttore della macchina utensile (MTB2) USER/ (5) Cartella dell'utilizzatore PATH1/ (a) Cartelle dei canali (PATHn) PATH2/ PATHn/ (b) Cartella dei programmi comuni (LIBRARY) LIBRARY/ - Cartelle create dall'utilizzatore Le cartelle create successivamente all'inizializzazione della memoria programmi sono dette "cartelle create dall'utilizzatore". Queste cartelle possono essere create nelle seguenti cartelle iniziali: • Cartella USER/ • Cartelle PATHn/ Le cartelle create dall'utilizzatore possono contenere programmi principali, sottoprogrammi e programmi macro creati dall'utilizzatore. NOTA 1 I nomi delle sottocartelle devono essere unici nella cartella che le contiene. 2 Ogni volta che l'utilizzatore crea una cartella, il numero dei programmi registrabili diminuisce di uno. 3 I livelli gerarchici delle cartelle create dall'utilizzatore sono limitati. Sono possibili fino a tre livelli gerarchici a partire dalla cartella USER/. - 272 - PROGRAMMAZIONE B-64484IT/02 12.GESTIONE DEI PROGRAMMI [Esempio di configurazione delle cartelle] //CNC_MEM / SYSTEM/ MTB1/ MTB2/ USER/ PATH1/ CYLINDER/ PISTON/ PATH2/ GEAR1/ Cartelle create dall'utilizzatore I programmi sono raggruppati in base al pezzo da lavorare ed a ciascun gruppo corrisponde una cartella. GEAR2/ LIBRARY/ 12.1.2 Attributi delle cartelle Ad eccezione della cartella radice, le cartelle hanno i seguenti attributi configurabili. • Disabilitazione dell'editazione • Disabilitazione dell'editazione e della visualizzazione - Disabilitazione dell'editazione E' possibile disabilitare l'editazione dei programmi e delle sottocartelle di una cartella. L'emissione di programmi contenuti in tale cartella verso unità esterne sarà possibile. L'immissione (registrazione) di programmi da unità esterne non sarà possibile. - Disabilitazione dell'editazione e della visualizzazione E' possibile disabilitare l'editazione e la visualizzazione dei programmi e delle sottocartelle di una cartella. Quando per una cartella viene selezionato questo attributo, i programmi e le cartelle che essa contiene diventano invisibili. (La cartella appare come vuota.) L'immissione/emissione di programmi da e verso unità esterne non sarà possibile. - 273 - 12.GESTIONE DEI PROGRAMMI PROGRAMMAZIONE 12.1.3 B-64484IT/02 Cartelle di default Le cartelle di default vengono utilizzate quando manca la specifica della cartella. Esistono i seguenti due tipi di cartelle di default: • Cartella di default per il foreground • Cartella di default per il background - Cartella di default per il foreground Questa cartella viene utilizzata dalle operazioni eseguite nel foreground nei modi diversi da funzionamento automatico ed editazione programmi. Le operazioni eseguibili comprendono le seguenti: • Immissione/emissione di programmi • Introduzione dati dall'esterno • Ricerca numero pezzo dall'esterno - Cartella di default per il background E' possibile specificare una cartella da utilizzare per le operazioni in background. Le operazioni eseguibili comprendono le seguenti: • Immissione/emissione di programmi • Controllo di un'unità esterna di I/O NOTA 1 Se le cartelle di default non sono specificate, viene assunta la cartella di un canale (una delle cartelle iniziali). 2 La specifica delle cartelle di default viene memorizzata nei corrispondenti file di impostazione. 3 Se vengono cancellati un file di programma, una cartella di programmi o il file di gestione delle cartelle di programmi, vengono contemporaneamente cancellati anche i file relativi alle cartelle di default. - 274 - PROGRAMMAZIONE B-64484IT/02 12.2 12.GESTIONE DEI PROGRAMMI FILE Introduzione E' possibile attribuire un nome file ai programmi pezzo residenti nella memoria programmi. 12.2.1 Nomi dei file I nomi dei file possono essere formulati come segue: • Il nome di un file può essere lungo fino a 32 caratteri. • Nei nomi dei file possono essere utilizzati i seguenti caratteri: Caratteri alfabetici (lettere maiuscole e minuscole), caratteri numerici, e i seguenti simboli: −+_. Poiché "." e ".." sono nomi file riservati, essi non possono essere utilizzati. - Nome file e numero programma Un nome file è associato ad un numero programma come segue. Se il nome file di un programma è costituito dalla lettera "O" seguita da un numero (descritto sotto), il programma può anche essere gestito utilizzando il numero programma. • Il numero deve essere senza zeri a sinistra e deve essere compreso nell'intervallo da 1 a 9999. Se il nome file non ha le suddette caratteristiche, il programma non può essere gestito utilizzando il suo numero programma. Non è possibile creare un file il cui nome sia costituito da una "O" seguita da un numero che non soddisfi il suddetto requisito. Esempio) Nomi file trattabili come numeri programma O123 Numero programma 123 O1 Numero programma 1 O3000 Numero programma 3000 O9999 Numero programma 9999 Nomi file non trattabili come numeri programma ABC o123 O123.4 NOTA 1 I nomi file devono essere unici nella cartella che li contiene. 2 Se il nome file di un programma non è trattabile come numero programma, esistono le seguenti limitazioni: - Il programma non può essere specificato con il suo numero. - L'emissione dei dati per numero programma è impossibile. - 275 - 12.GESTIONE DEI PROGRAMMI PROGRAMMAZIONE - B-64484IT/02 Visualizzazione del nome file e del numero programma Il nome file del programma selezionato o in esecuzione come programma principale viene visualizzato come si vede nelle figure da Fig. 12.2.1 (a) a Fig. 12.2.1 (c). • Se il nome file è trattabile come numero programma, viene visualizzato il numero programma. Fig. 12.2.1 (a) • Nome file, visualizzazione 1 Se il nome file non è trattabile come numero programma, viene visualizzato il nome file. La visualizzazione varia, come si vede in basso, in relazione alla lunghezza del nome file. Fig. 12.2.1 (b) Nome file, visualizzazione 2 Fig. 12.2.1 (c) Nome file, visualizzazione 3 12.2.2 Attributi dei file Per i file è possibile specificare i seguenti attributi: • Disabilitazione dell'editazione • Disabilitazione dell'editazione e della visualizzazione • Crittografia • Livello di protezione dalle modifiche/livello di protezione dall'emissione - Disabilitazione dell'editazione E' possibile disabilitare l'editazione di un determinato programma. L'immissione (registrazione) di programmi da unità esterne non sarà possibile. - Disabilitazione dell'editazione e della visualizzazione E' possibile disabilitare l'editazione e la visualizzazione di un determinato programma. Quando viene impostato questo attributo, il programma diventa invisibile. (Non compare nel contenuto della cartella.) L'immissione e l'emissione dei file mediante un'unità esterna (registrazione programmi) non è possibile. - 276 - PROGRAMMAZIONE B-64484IT/02 - 12.GESTIONE DEI PROGRAMMI Crittografia Un programma può essere crittografato. Per i dettagli, riferirsi alla descrizione della funzione “Crittografia dei programmi”. L'immissione e l'emissione dei file mediante un'unità esterna (registrazione programmi) non è possibile. - Livello di protezione dalle modifiche/livello di protezione dall'emissione Utilizzando la funzione di protezione dei dati ad otto livelli, è possibile proteggere un, programma contro le modifiche e contro l'emissione. Per i dettagli, riferirsi alla descrizione della funzione “Protezione dei dati ad otto livelli”. 12.3 RELAZIONE CON LE FUNZIONI CONVENZIONALI Questa sezione descrive la relazione tra l'utilizzo delle cartelle e dei nomi file e le funzioni convenzionali. 12.3.1 Relazione con le cartelle In questa sezione viene descritto l'utilizzo delle cartelle. - Funzionamento automatico Programma principale Per l'esecuzione del funzionamento automatico è possibile selezionare un programma residente nella cartella desiderata. Sottoprogramma (richiamato da M98/G72.1/G72.2) Programma macro (richiamato da G65/G66/G66.1/M96) • Richiamo sottoprogramma (M98) • Richiamo macro (richiamo semplice G65/richiamo modale G66, G66.1) • Interrupt macro (M96) • Copia della figura (G72.1,G72.2) Quando viene specificato uno dei suddetti comandi, viene eseguita una ricerca nelle cartelle, nell'ordine descritto qui sotto, e viene richiamato il programma trovato per primo: <1> Cartella contenente il programma principale <2> Cartella dei programmi comuni, una delle cartelle iniziali (LIBRARY) E' possibile utilizzare il bit 7 (SCF) del parametro N. 3457 per aggiungere le seguenti cartelle di ricerca. (La ricerca viene eseguita nell'ordine indicato qui sotto.) La cartella da abilitare si imposta separatamente con i bit da 1 a 3 del parametro N. 3457. <3> Cartella 2 del costruttore della macchina utensile, una delle cartelle iniziali (MTB2) <4> Cartella 1 del costruttore della macchina utensile, una delle cartelle iniziali (MTB1) <5> Cartella del sistema, una delle cartelle iniziali (SYSTEM) Sottoprogrammi (richiamati da codice M/codice ASCII/seconda funzione ausiliaria) Programmi macro (richiamati da codice G/codice M/codice T/macro da pulsante) • Richiamo di sottoprogrammi con codice M/codice ASCII/codice della seconda funzione ausiliaria • Richiamo macro con codice G/codice M/codice T • Richiamo macro da pulsante Per i programmi richiamati nei modi suddetti, devono essere specificate preventivamente le cartelle nelle quali deve essere eseguita la ricerca (bit da 0 a 3 del parametro N. 3457). (La sequenza di ricerca è descritta qui sotto.) - 277 - 12.GESTIONE DEI PROGRAMMI PROGRAMMAZIONE B-64484IT/02 Viene eseguita una ricerca nelle cartelle specificate e viene richiamato il programma trovato per primo. <1> Cartella dei programmi comuni, una delle cartelle iniziali (LIBRARY) <2> Cartella 2 del costruttore della macchina utensile, una delle cartelle iniziali (MTB2) <3> Cartella 1 del costruttore della macchina utensile, una delle cartelle iniziali (MTB1) <4> Cartella del sistema, una delle cartelle iniziali (SYSTEM) - Editazione programmi E' possibile editare un programma residente in qualsiasi cartella. - Immissione/emissione programmi Le seguenti funzioni vengono eseguite utilizzando le cartelle di default: • Immissione di programmi da un'unità esterna • Emissione di programmi su un'unità esterna (Se per il comando non è specificata la cartella) La seguente funzione viene eseguita utilizzando la cartella di default del background. • Controllo di un'unità esterna di I/O - Introduzione dati dall'esterno La ricerca programma dall'esterno viene eseguita nelle cartelle di default. - Ricerca numero pezzo dall'esterno La ricerca del numero pezzo dall'esterno viene eseguita nella cartella di default del foreground. - Macro executor I programmi richiamati dalle macro di esecuzione, dalle macro conversazionali e dalle macro ausiliarie sono programmi in codice P senza relazioni con le cartelle di default. Per i programmi sul macro executor, le funzioni relative alle cartelle ed ai nomi file non sono disponibili. 12.3.2 Relazione con i nomi file I nomi file possono essere utilizzati con le seguenti funzioni: • Richiamo sottoprogramma (M98) • Richiamo macro (richiamo semplice G65/richiamo modale G66, G66.1) • Interrupt delle macroistruzioni (M96) • Richiamo di sottoprogrammi nella copia della figura (G72.1, G72.2) • Immissione/emissione programmi con unità esterne - Richiamo sottoprogramma con nome file Richiamo macro con nome file • Richiamo sottoprogramma (M98) • Richiamo macro (G65/G66/G66.1) • Interrupt delle macroistruzioni (M96) • Copia della figura (G72.1,G72.2) Per richiamare un programma con una delle suddette funzioni è possibile specificarne il nome file. • • Richiamo sottoprogramma con nome file M98 <nome-file> Lxx ; Richiamo macro con nome file G65 <nome-file> Lxx specifica-argomenti ; G66 <nome-file> Lxx specifica-argomenti ; G66.1 <nome-file> Lxx specifica-argomenti ; - 278 - B-64484IT/02 • • PROGRAMMAZIONE 12.GESTIONE DEI PROGRAMMI Interrupt delle macroistruzioni M96 <nome-file> ; Richiamo sottoprogramma con nome file nella copia della figura (G72.1, G72.2) G72.1 <nome-file> Lxx Xxx Yxx Rxx ; G72.2 <nome-file> Lxx Ixx Jxx ; I suddetti comandi richiamano il programma il cui nome file corrisponde a <nome-file>. Esempi di formato: • Richiamo sottoprogramma M98 <R50> L1 ; • Richiamo macro G65 <R50> L1 A0 ; G66 <R50> L1 A1 ; G66.1 <R50> L1 A2 ; • Interrupt delle macroistruzioni M96 <R50> ; • Richiamo sottoprogramma nella copia della figura G72.1 <R50> L1 X0 Y0 R0 ; G72.2 <R50> L1 I0 J0 ; NOTA 1 Quando vengono letti, i caratteri tra <> sono trattati come i caratteri dei commenti. Pertanto questi caratteri sono trattati in modo diverso dalle altre parti significative. Fare riferimento all'appendice B “CODICI DEI CARATTERI” per i dettagli. 2 La parola <nome-file> deve essere inserita immediatamente dopo il codice di richiamo (M98, G65, e così via). - 279 - 12.GESTIONE DEI PROGRAMMI PROGRAMMAZIONE 12.3.3 B-64484IT/02 Parametri correlati Nella sottostante tabella sono descritti i parametri relativi alle cartelle ed ai programmi da manipolare o da eseguire. N. Parametro N. Bit 0 (NE8) 3202 4 (NE9) 3 (P8E) 3204 4 (P9E) 5 (SPR) 3210/3211 - 3222/3223 - 3404 2 (SBP) 6001 5 (TCS) da 6050 a 6059 - da 6071 a 6079 - da 6080 a 6089 - 6090/6091 - 8341/8343 - Descrizione Disabilita o abilita l'editazione dei programmi da O8000 a O8999. Disabilita o abilita l'editazione dei programmi da O9000 a O9999. Disabilita o abilita l'editazione dei programmi da O80000000 a O8999999. Disabilita o abilita l'editazione dei programmi da O90000000 a O99999999. Ai numeri programma del gruppo 9000 viene o non viene sommato 90000000. Password/keyword per la protezione dei programmi del gruppo 9000 Intervallo dei programmi protetti (valore minimo)/(valore massimo) Nel richiamo sottoprogramma con M198, l'indirizzo P specifica un file/un numero programma. Il codice T richiama o non richiama una macro. Codici G per il richiamo delle macro con N. programma da 9010 a 9019 Codici M per il richiamo dei sottoprogrammi N. programma da 9001 a 9009 Codici M per il richiamo delle macro con N. programma da 9020 a 9029 Codici ASCII per il richiamo dei sottoprogrammi N. programma da 9004 a 9005 Numero programma (con numero O di 4 o di 8 cifre) per l'arresto al numero di sequenza specificato - 280 - Oggetto manipolato/eseguito Programmi corrispondenti in tutte le cartelle Come sopra Come sopra Come sopra Come sopra Come sopra Come sopra (Non dipende da queste funzioni) Mediante impostazione parametrica è possibile selezionare le seguenti cartelle iniziali: - Cartella dei programmi comuni (LIBRARY) - Cartella 2del costruttore della macchina utensile (MTB2) - Cartella 1 del costruttore della macchina utensile (MTB1) - Cartella del sistema (SYSTEM) Come sopra Come sopra Come sopra Come sopra Cartella di default del foreground o del background a seconda del modo PROGRAMMAZIONE B-64484IT/02 12.3.4 12.GESTIONE DEI PROGRAMMI Capacità della memoria programmi / Numero dei programmi registrabili La sottostante tabella fornisce la relazione fra la capacità della memoria programmi ed il numero dei programmi registrabili. Capacità della memoria programmi Numero dei programmi registrabili Espansione 1 del numero dei programmi registrabili Espansione 2 (*2) del numero dei programmi registrabili 32Kbyte (*1) 64Kbyte 128Kbyte 256Kbyte 512Kbyte 1Mbyte 2Mbyte 4Mbyte (*2) 8Mbyte (*2) 63 63 63 63 63 63 63 63 63 125 250 500 1000 1000 1000 1000 1000 2000 4000 4000 4000 *1) Solo per 32i-B *2) Solo per 30i/31i-B e 31i-B5 - 281 - 12.GESTIONE DEI PROGRAMMI PROGRAMMAZIONE Programma O0001 O0001 ; N1 G01 ; Prima pagina (Area utilizzata) N100 … ; Seconda pagina (Area utilizzata) M30 ; (Area utilizzata) Ultima pagina (Area inutilizzata) Non utilizzabile per altri programmi Esempio di creazione del programma O0001 Fig. 12.3.4 (a) Unità della memoria programmi B-64484IT/02 NOTA 1 La creazione di una cartella riduce di 1 il numero dei programmi registrabili. 2 La capacità della memoria programmi corrisponde alla dimensione massima di un programma se il programma è l'unico ad essere registrato. 3 Se vengono registrati due o più programmi, la dimensione totale dei programmi ancora registrabili si riduce per il seguente motivo. I CNC Serie 30i/31i/32i-B e 31i-B5 gestiscono i programmi in unità corrispondenti alle pagine. Anche le unità di gestione della memoria programmi corrispondono alle pagine. Quando viene creato un programma, gli vengono assegnate tante pagine quante sono necessarie a contenerlo, ed il programma viene scritto in queste pagine. Generalmente, nell'ultima pagina rimane un'area non utilizzata (Fig. 12.3.4 (a)). Quest'area inutilizzata non è disponibile per altri programmi. La gestione programmi la tratta come area utilizzata. I CNC Serie 16i/18i/21i utilizzano un metodo di gestione simile, ma le pagine sono diverse da quelle dei CNC Serie 30i/31i/32i-B e FS31i-B5. Così, se vengono registrati due o più programmi, la dimensione dei programmi ancora registrabili nei CNC Serie 30i/31i/32i-B o FS31i-B5, è diversa da quella dei CNC Serie 16i/18i/21i. - 282 - 13 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 CONFIGURAZIONE DEL PROGRAMMA Introduzione - Programma principale e sottoprogrammi Esistono due tipi di programmi: programma principale e sottoprogramma. Normalmente, il CNC opera sotto il controllo del programma principale, ma, quando viene incontrato un comando che richiama un sottoprogramma, il controllo passa al sottoprogramma. Quando, poi, viene incontrato un comando di ritorno al programma principale, il controllo viene restituito al programma principale. Programma principale Sottoprogramma Istruzione 1 Istruzione 1’ Istruzione 2 Istruzione 2’ Segui le istruzioni del sottoprogramma Istruzione n Istruzione n+1 Ritorna al programma principale Fig. 13 (a) Programma principale e sottoprogramma Nella memoria del CNC possono essere registrati fino a 63 (standard) o fino a 4000 (opzione) programmi principali e sottoprogrammi. Il CNC può utilizzare uno di questi programmi per governare la macchina. Vedi il capitolo “PROGRAMMAZIONE” e la sezione “RICERCA DI UN PROGRAMMA” per i metodi di registrazione e di selezione dei programmi.. - Componenti del programma Un programma è composto dalle seguenti sezioni: Tabella 13 (a) Componenti del programma Descrizione Componente Codice di inizio file programma Sezione leader Inizio programma Sezione programma Sezione commenti Codice di fine file programma Un simbolo che indica l'inizio di un file di programma Usata per il titolo del file di programma, ecc. Un simbolo che indica l'inizio del programma I comandi di lavorazione Commenti o istruzioni per l'operatore Un simbolo che indica la fine del file di programma Sezione leader Codice di inizio file programma Sezione programma % TITOLO Inizio programma O0001 ; (COMMENTO) M30 ; % Fig. 13 (b) ; Sezione commenti Codice di fine file programma Configurazione del programma - 283 - 13.CONFIGURAZIONE DEL PROGRAMMA - PROGRAMMAZIONE B-64484IT/02 Configurazione della sezione programma La sezione programma è costituita da vari blocchi, inizia con il numero programma o il nome file e termina con il codice di fine programma. Configurazione della sezione programma Sezione programma Numero programma Blocco 1 Blocco 2 : : Blocco n Fine programma O0001 ; N1 G91 G00 X120.0 Y80.0 ; N2 G43 Z-32.0 H01 ; Nn Z0 ; M30 ; Un blocco contiene le informazioni necessarie per la lavorazione, come i comandi di movimento o i comandi di attivazione/disattivazione del refrigerante. E' possibile disabilitare l'esecuzione di un blocco specificando una barra (/) seguita da un valore numerico all'inizio del blocco stesso (vedere "Salto blocco opzionale" nella sezione II-13.2). 13.1 COMPONENTI DEL PROGRAMMA DIVERSE DALLA SEZIONE PROGRAMMA Questo paragrafo descrive le componenti del programma diverse dalla sezione programma. La sezione programma è descritta successivamente. Sezione leader % Codice di inizio file programma TITOLO ; Inizio programma O0001 ; (COMMENTO) Sezione programma Sezione commenti M30 ; Codice di fine file programma % Fig. 13.1 (a) Configurazione del programma Spiegazioni - Codice di inizio file programma Il simbolo di inizio file programma indica l'inizio di un file che contiene uno o più programmi pezzo. Questo simbolo non è richiesto quando i programmi pezzo sono registrati con il SYSTEM P o con normali personal computer e non viene visualizzato. Però, nella emissione di file, questo simbolo viene sempre scritto all'inizio del file. Tabella 13.1 (a) Nome Codice di inizio file programma Codice di inizio file programma Notazione usata in questo Codice ISO Codice EIA manuale % ER - 284 - % - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 Sezione leader I dati del file che precedono i programmi costituiscono la sezione leader. All'accensione o dopo un reset eseguito per iniziare una lavorazione, il sistema è normalmente nello stato di label skip. In questo stato del sistema, tutte le informazioni che precedono il primo codice di fine blocco sono ignorate. Quando un file viene registrato nel CNC da una unità di I/O, le sezioni leader sono saltate dalla funzione label skip. Generalmente, la sezione leader contiene informazioni quali la testata del file. Quando questa sezione viene saltata, il controllo di parità TV non è eseguito. Quindi una sezione leader può contenere qualsiasi codice, salvo il codice di fine blocco (EOB). - Inizio programma Il codice di inizio programma deve comparire immediatamente dopo la sezione leader, cioè, immediatamente prima della sezione programma. Questo codice indica l'inizio di un programma ed è sempre necessario per disabilitare la funzione label skip. Con il SYSTEM P o un normale personal computer, questo codice può essere registrato premendo il tasto return. Tabella 13.1 (b) Codice di inizio programma Nome Codice ISO Codice EIA Notazione usata in questo manuale Inizio programma LF CR ; NOTA Se un file contiene più programmi, non è necessario che il codice EOB (fine blocco) per la disabilitazione della funzione label skip compaia anche all'inizio dei programmi successivi al primo. - Sezione commenti Le informazioni contenute fra i codici control-out e control-in vengono considerate come commenti. In questa sezione possono essere inseriti un titolo, dei commenti, delle istruzioni per l'operatore e così via. Tabella 13.1 (c) Nome Codice ISO Control-out Control-in ( ) Codici di control-in e control-out Notazione usata in Codice EIA questo manuale 2-4-5 2-4-7 ( ) Significato Inizio sezione commento Fine sezione commento Quando un programma viene registrato in memoria, per essere eseguito nel modo memoria, le sezioni commento, se esistono, non vengono ignorate, ma vengono anch'esse registrate in memoria. Però, i codici non elencati nell'appendice A vengono ignorati. Quando un programma registrato in memoria viene scritto su una unità esterna di immissione/emissione (Vedi il capitolo “IMMISSIONE/EMISSIONE DEI DATI”), vengono scritti anche i commenti. Quando un programma viene visualizzato sullo schermo, sono visualizzate anche le sezioni commenti. Però, i codici ignorati durante la lettura non vengono né emessi, né visualizzati. Durante il funzionamento da memoria o in DNC i commenti vengono ignorati. Il controllo TV può essere abilitato per la sezione commenti con l'impostazione del bit 1 (CTV) del parametro N. 0100. AVVERTENZA Se la sezione commenti è all'interno della sezione programma ed è lunga, il movimento subisce una lunga interruzione. Quindi, la sezione commenti deve essere messa in un punto in cui il movimento possa essere interrotto o in un punto senza movimento. - 285 - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 NOTA 1 Quando il codice "control-in" non è preceduto dal codice "control out", viene ignorato. 2 Il seguenti codici non possono essere usati nella sezione commenti: - EOB - % (ER in codice EIA) - Codice di fine file programma Alla fine di un file contenente uno o più programmi pezzo, deve essere registrato un codice di fine file. Se i programmi sono caricati nel CNC usando un sistema di programmazione automatica, non è necessario immettere questo carattere, che non viene visualizzato. Al termine dell'emissione di un file, il carattere di fine file viene registrato automaticamente. Se alla fine del programma non ci sono M02 o M30 e si tenta di eseguire un %, si ha l'allarme PS5010, “FINE DEL RECORD”. Tabella 13.1 (d) Codice di fine file programma Nome Codice ISO Codice EIA Notazione usata in questo manuale Codice di fine file programma % ER % - 286 - B-64484IT/02 13.2 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE CONFIGURAZIONE DELLA SEZIONE PROGRAMMA Questo paragrafo descrive gli elementi della sezione programma. Le altre componenti del programma pezzo sono descritte nella sezione “COMPONENTI DEL PROGRAMMA DIVERSE DALLA SEZIONE PROGRAMMA”. Numero programma % TITOLO ; O0001 ; N1 ... ; Numero di sequenza Sezione programma (COMMENTO) M30 ; Fine programma % Fig. 13.2 (a) - Configurazione del programma Numero programma Il numero programma è costituito dall'indirizzo O seguito da un numero di quattro cifre ed ha lo scopo di distinguere i programmi registrati in memoria. Se si usa l'opzione numero programma di 8 cifre, è possibile specificare il numero del programma usando otto cifre. In codice ISO è possibile utilizzare il carattere due punti ( : ) al posto di O. Quando all'inizio del programma non viene specificato il numero del programma, viene assunto come tale il numero di sequenza (N...) specificato all'inizio del programma. Se il numero di sequenza è di 5 cifre, il numero di programma è costituito dalle 4 cifre meno significative. Se queste sono tutte 0, il numero del programma è il numero del programma precedente più 1. N0 non può essere usato come numero del programma. Se all'inizio del programma non sono specificati né il numero del programma né il numero di sequenza, il numero del programma deve essere specificato tramite la tastiera MDI quando il programma viene registrato (vedi le sezioni “IMMISSIONE/EMISSIONE DA CIASCUNA SCHERMATA” o “PROGRAMMAZIONE MEDIANTE IL PANNELLO MDI”) NOTA I numeri di programma da 8000 a 9999 possono essere utilizzati dal costruttore della macchina utensile, nel qual caso non sono a disposizione dell'utilizzatore. - Nome del file E' possibile assegnare un nome file invece di un numero di programma. In questo caso, è necessario inserire il nome del file racchiuso tra i caratteri "<" e ">" all'inizio del programma. Esempio) % ; <PARTS_1> ; N1 ... : M30 ; % - 287 - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 NOTA E' possibile specificare un nome file: - All'inizio di un programma - Immediatamente dopo M98, G65, G66, G66.1, M96, G72.1, o G72.2 Non specificare un nome file in condizioni diverse da queste. - Numero di sequenza e blocco Un programma è costituito da vari comandi. Un comando è detto blocco. I blocchi sono separati l'uno dall'altro da un codice di fine blocco. Nome Fine blocco (EOB) Tabella 13.2 (a) Codice di fine blocco (EOB) Codice ISO Codice EIA Notazione usata in questo manuale LF CR ; All'inizio di un blocco può essere specificato un numero di sequenza costituito dall'indirizzo N e da un numero non più lungo di otto cifre (da 1 a 99999999). L'ordine dei numeri di sequenza è arbitrario e non è necessario che i numeri siano consecutivi. Il numero di sequenza può essere specificato per tutti i blocchi o per i soli blocchi per cui è necessario. In genere è però conveniente assegnare i numeri di sequenza in ordine ascendente in base alla successione dei passi di lavorazione (ad esempio, quando viene eseguito un cambio utensile o quando la lavorazione passa ad un'altra superficie con l'indexaggio della tavola). N300X200.0Z300.0 ; Il numero di sequenza è sottolineato. Fig. 13.2 (b) Numero di sequenza e blocco (esempio) NOTA Per compatibilità con altri sistemi CNC, il numero di sequenza N0 non deve essere utilizzato. Poiché il numero di programma 0 non è valido, un numero di sequenza visto come numero di programma non deve essere 0. - Controllo TV (controllo di parità verticale) Sui blocchi letti viene eseguito un controllo di parità verticale. Se il blocco contiene un numero dispari di caratteri (tra il codice immediatamente successivo ad un EOB e l'EOB successivo), viene visualizzato l'allarme PS0002, “ERRORE TV”. Il controllo TV non viene eseguito soltanto per quelle parti che vengono saltate dalla funzione label skip. Il bit 1 (CTV) del parametro N. 0100 permette di specificare se i caratteri dei commenti racchiusi tra parentesi vengono contati per il controllo TV. Il controllo TV può essere abilitato/disabilitato da MDI (vedi la sottosezione, “Visualizzazione ed introduzione dei dati di impostazione”). - Configurazione del blocco (Parole e indirizzi) Gli elementi che costituiscono un blocco sono le parole. Una parola è costituita da un indirizzo e da un numero di una o più cifre che segue l'indirizzo. (I numeri possono essere preceduti dai segni algebrici + o -.) L'indirizzo è una lettera (da A a Z) che indica il significato del valore numerico che la segue. Parola = Indirizzo + numero (Esempio : X-1000) La Tabella 13.1 (b) elenca gli indirizzi utilizzabili e il loro significato. E' possibile che un indirizzo abbia diversi significati in base alla funzione preparatoria attiva in quel momento. Funzione Numero programma Numero di sequenza Funzioni preparatorie Tabella 13.2 (b) Funzioni principali e indirizzi Indirizzo O(*) N G Significato Numero programma Numero di sequenza Tipo di moto (Lineare,circolare,ecc.) - 288 - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 Numero sottoprogramma Ripetizioni Parametro S T M B P P, L P, Q Comandi di movimento Coordinate del centro dell'arco Raggio dell'arco Velocità di avanzamento al minuto Velocità di avanzamento al giro Velocità del mandrino Numero utensile ON/OFF delle funzioni della macchina Indexaggio tavola, ecc. Numero del sottoprogramma Numero di ripetizioni del sottoprogramma Parametro del ciclo fisso Numero di correttore Sosta D, H P, X Numero di correttore Tempo di sosta Parole dimensionali X, Y, Z, U, V, W, A, B, C I, J, K R Funzione avanzamento F Funzione velocità mandrino Funzioni utensile Funzioni ausiliarie M T Sosta P, X, U Tempo di sosta NOTA (*) In codice ISO, come indirizzo per il numero programma è possibile utilizzare i due punti ( : ). N_ Numero di sequenza G_ Funzioni preparatorie X_ Y_ Parole dimensionali F_ Funzione avanzamento Fig. 13.2 (c) - S_ Funzione velocità mandrino T_ Funzioni utensile M_ ; Funzioni ausiliarie Un blocco (esempio) Indirizzi principali e intervallo dei valori ammessi per i comandi Nella tabella sottostante sono elencati gli indirizzi principali e i valori ammessi per ciascun comando. Va però osservato che si tratta dei limiti imposti dal CNC, i limiti imposti dalla macchina possono essere molto diversi. Ad esempio, il CNC è in grado comandare un movimento lungo l'asse X di circa 100 metri (nel caso di programmazione in millimetri). Tuttavia, la corsa massima della macchina per l'asse X può essere di soli due metri. Lo stesso vale per la velocità di avanzamento; il CNC è in grado di controllare velocità di avanzamento fino a 240 m/min, mentre il limite imposto dalla macchina può essere di soli 3 m/min. Durante la programmazione, si raccomanda di consultare sia questo manuale sia il manuale del costruttore della macchina utensile. - 289 - 13.CONFIGURAZIONE DEL PROGRAMMA Tabella 13.2 (c) Funzione Numero programma Numero di sequenza Funzioni preparatorie Sistema di incrementi IS-A Sistema di incrementi IS-B Parole Sistema di dimensionali incrementi IS-C Sistema di incrementi IS-D Sistema di incrementi IS-E Sistema di incrementi IS-A Sistema di incrementi IS-B Avanzamento Sistema di al minuto incrementi IS-C Sistema di incrementi IS-D Sistema di incrementi IS-E Avanzamento al giro Funzione velocità mandrino Funzioni utensile Funzioni ausiliarie Numero correttore (solo per serie M) Sistema di incrementi IS-A Sistema di incrementi IS-B Sistema di Sosta incrementi IS-C Sistema di incrementi IS-D Sistema di incrementi IS-E Sosta Specifica di un numero di programma Numero di ripetizioni del sottoprogramma *1 *2 PROGRAMMAZIONE B-64484IT/02 Indirizzi principali e valori ammessi per i comandi Programmazione in Programmazione in pollici Indirizzo millimetri O (*1) N G X,Y,Z,U,V, W,A,B,C,I, J,K,R (*2) F F S (*4) T (*4) (*4) M (*4) B H, D X, U (solo per serie T) P P L P da 1 a 99999999 da 1 a 99999999 da 0 a 99.9 ±999999.99 mm ±999999.99 gradi ±999999.999 mm ±999999.999 gradi ±99999.9999 mm ±99999.9999 gradi ±9999.99999 mm ±9999.99999 gradi ±999.999999 mm ±999.999999 gradi da 1 a 99999999 da 1 a 99999999 da 0 a 99.9 ±99999.999 pollici *3 ±999999.99 gradi ±99999.9999 pollici *3 ±999999.999 gradi ±9999.99999 pollici *3 ±99999.9999 gradi ±999.999999 pollici *3 ±9999.99999 gradi ±99.9999999 pollici *3 ±999.999999 gradi da 0.01 a 999000.00mm/min da 0.001 a 96000.000pollici/min da 0.001 a 999000.000mm/min da 0.0001 a 9600.0000pollici/min da 0.0001 a 99999.9999mm/min da 0.00001 a 9999.99999mm/min da 0.000001 a 999.999999mm/min da 0.001 a 50000mm/giro da 0 a 99999999 da 0 a 99999999 da 0 a 99999999 da 0 a 99999999 da 0 a 999 da 0.00001 a 4000.00000pollici/min da 0.000001 a 400.000000pollici/min da 0.0000001 a 40.0000000pollici/min da 0.0001 a 50.0000pollici/giro da 0 a 99999999 da 0 a 99999999 da 0 a 99999999 da 0 a 99999999 da 0 a 999 da 0 a 999999.99 sec da 0 a 999999.99 sec da 0 a 99999.999 sec da 0 a 99999.999 sec da 0 a 9999.9999 sec da 0 a 9999.9999 sec da 0 a 999.99999 sec da 0 a 999.99999 sec da 0 a 99.999999 sec da 0 a 99.999999 sec da 1 a 99999999 da 1 a 99999999 da 1 a 99999999 da 0 a 9999 da 1 a 99999999 da 1 a 99999999 da 1 a 99999999 da 0 a 9999 In codice ISO, come indirizzo per il numero programma è possibile utilizzare i due punti ( : ). Quando gli indirizzi I, J, K, o R vengono utilizzati per la specifica del raggio nell'interpolazione circolare, gli intervalli dei valori sono i seguenti: Sistema di incrementi Programmazione in millimetri Programmazione in pollici IS-A IS-B IS-C IS-D IS-E ±999999999.99 mm ±999999999.999 mm ±99999999.9999 mm ±9999999.99999 mm ±999999.999999 mm ±99999999.999 pollici ±99999999.9999 pollici ±9999999.99999 pollici ±999999.999999 pollici ±99999.9999999 pollici - 290 - PROGRAMMAZIONE B-64484IT/02 *3 13.CONFIGURAZIONE DEL PROGRAMMA Per la programmazione in pollici di macchine in millimetri, gli intervalli dei valori delle parole dimensionali sono i seguenti: Sistema di incrementi Intervallo IS-A IS-B IS-C IS-D IS-E ±39370.078 pollici ±39370.0787 pollici ±3937.00787 pollici ±393.700787 pollici ±39.3700787 pollici *4 Il valore massimo degli indirizzi M, S, T, e B è 99999999. Però, non è possibile assegnare un valore che superi il numero ammissibile di cifre specificato nei parametri dal N. 3030 al N. 3033. Il valore e l'utilizzo di alcuni codici sono limitati dall'impostazione dei parametri. (Ad esempio, alcuni codici M non vengono bufferizzati). Per i dettagli, riferirsi al manuale dei parametri. - Salto blocco opzionale Quando all'inizio di un blocco viene specificata un barra seguita da un numero (/n (n = 1 .. 9)) e i segnali da BDT1 a BDT9 di salto blocco opzionale vengono messi a 1 durante il funzionamento automatico, i dati (da /n alla fine del blocco (EOB)) contenuti nel blocco con /n corrispondente al segnale BDTn vengono ignorati. Esempio 1) /2 N123 X100.0 Y200.0 ; Esempio 2) //3 N123 X100.0 Y200.0 ; /1 /3 N123 X100.0 Y200.0 ; Segnale in ingresso → Errato → Corretto Segnali in ingresso e codici dei blocchi da ignorare Codice del blocco da ignorare / o /1(NOTA) /2 /3 /4 /5 /6 /7 /8 /9 BDT1 BDT2 BDT3 BDT4 BDT5 BDT6 BDT7 BDT8 BDT9 NOTA 1 In /1, il numero 1 può essere omesso. Però, se per il blocco sono specificati più salti blocco opzionali, il numero 1 in /1 non può essere omesso. 2 Non tutte le macchine utensili dispongono di 9 segnali di salto blocco opzionale. A questo proposito, consultare il manuale del costruttore della macchina utensile. - 291 - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 Di seguito è indicata la relazione fra il momento in cui i segnali di salto blocco opzionale da BDT1 a BDT9 vengono messi a 1 e il gruppo di dati che viene ignorato. 1. Se il segnale BDTn viene messo a 1 prima che il CNC inizi a leggere un blocco contenente /n, il blocco è ignorato. BDTn "1" "0" Letto dal CNC → . . . ; /n N123 X100. Y200. ; N234 . . . . Questo gruppo di dati viene ignorato. 2. Se il segnale BDTn viene messo a 1 mentre il CNC sta leggendo un blocco contenente /n, il blocco non è ignorato. BDTn "1" "0" Letto dal CNC → . . . ; /n N123 X100. Y200. ; N234 Questo gruppo di dati non viene ignorato. 3. Se il segnale BDTn viene messo a 0 mentre il CNC sta leggendo un blocco contenente /n, il blocco è ignorato. BDTn "1" "0" Letto dal CNC → . . . ; /n N123 X100. Y200.; N234 . . . . Questo gruppo di dati viene ignorato. 4. E' possibile specificare due o più codici di salto blocco opzionale nello stesso blocco. Quando il segnale corrispondente a uno di questi codici viene messo a 1, il blocco è ignorato. BDT3 "1" "0" Letto dal CNC → . . . ; /1 /3 /5 N123 X100. Y200. ; N234 . . . . Questo gruppo di dati viene ignorato. NOTA 1 Questa funzione è ignorata durante la registrazione in memoria del programma. I blocchi contenenti /n vengono registrati indipendentemente dallo stato dei segnali di salto blocco opzionale. I programmi registrati in memoria possono essere emessi indipendentemente dallo stato dei segnali di salto blocco opzionale. Il salto blocco opzionale è valido durante la ricerca del numero di sequenza. 2 Posizione della barra La barra (/) deve essere specificata all'inizio del blocco. Se la barra si trova in un altro punto del blocco, vengono ignorate le informazioni che si trovano tra di essa e l'EOB. 3 Controlli TV e TH Quando il segnale di salto blocco opzionale è a 1, per le porzioni saltate vengono eseguiti i controlli TH e TV, come quando il segnale è a 0. - 292 - B-64484IT/02 - PROGRAMMAZIONE 13.CONFIGURAZIONE DEL PROGRAMMA Fine del programma La fine del programma si indica inserendo i seguenti codici alla fine della sezione programma: Codice Tabella 13.2 (d) Codici di fine programma Uso principale M02 M03 M99 Per il programma principale Per il sottoprogramma Quando viene eseguito uno dei suddetti codici di fine programma, l'esecuzione del programma ha termine e il CNC entra nello stato di reset. Quando viene eseguito il codice di fine sottoprogramma, il controllo ritorna al programma che ha richiamato il sottoprogramma in esecuzione. AVVERTENZA Un blocco con un codice di salto opzionale come /M02 ; , /M30 ; , o /M99 ; non viene visto come fine del programma. (Vedere "Salto blocco opzionale".) - 293 - 13.CONFIGURAZIONE DEL PROGRAMMA 13.3 PROGRAMMAZIONE B-64484IT/02 SOTTOPROGRAMMI (M98, M99) Quando esistono sequenze fisse ripetitive, queste sequenze possono essere caricate in memoria come sottoprogrammi, semplificando la programmazione. Un sottoprogramma può essere richiamato dal programma principale. Un sottoprogramma richiamato può a sua volta richiamare un altro sottoprogramma. Formato - Configurazione del sottoprogramma Un sottoprogramma Oxxxx ; : M99; Numero o nome file del sottoprogramma (In codice ISO è possibile utilizzare la notazione " : ") Fine programma Come si può vedere nell'esempio qui sotto, non è necessario che M99 costituisca un blocco separato. Esempio) X100.0Y100.0M99; - Richiamo di sottoprogrammi Richiamo di un sottoprogramma con un numero di 4 cifre o più corto M98 Pxxxx xxxx ; Numero del sottoprogramma Numero di ripetizioni del sottoprogramma oppure M98 Pxxxx Lxxxxxxxx ; Numero di ripetizioni del sottoprogramma Numero del sottoprogramma - Richiamo di un sottoprogramma con un numero di 5 cifre o più lungo M98 Pxxxxxxxx Lxxxxxxxx ; Numero del sottoprogramma Numero di ripetizioni del sottoprogramma - Richiamo di un sottoprogramma con nome file M98 <xxxx> Lxxxxxxxx ; Nome file del sottoprogramma Numero di ripetizioni del sottoprogramma - 294 - - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 Programma richiamato e cartelle oggetto della ricerca L'ordine nel quale vengono esaminate le cartelle dipende dal metodo di richiamo del sottoprogramma. Le cartelle vengono esaminate in sequenza e viene richiamata la prima ricorrenza del programma che viene trovata. Per i dettagli riferirsi al capitolo "Gestione dei programmi". NOTA 1 Per richiamare un sottoprogramma con un numero programma più corto di 4 cifre specificando il numero di ripetizioni (P8 cifre), è necessario aggiungere uno o più zeri davanti al numero del sottoprogramma, in modo da portare a 4 cifre la sua lunghezza. Esempio) P100100: Richiamo del sottoprogramma N. 100 per dieci ripetizioni. P50001: Richiamo del sottoprogramma N. 1 per cinque ripetizioni. 2 Se, richiamando un sottoprogramma con un numero più corto di 4 cifre, il numero di ripetizioni viene omesso, il sottoprogramma viene eseguito una sola volta. In questo caso non è necessario portare a 4 cifre la lunghezza del numero del sottoprogramma, come descritto nel punto 1. 3 Quando viene richiamato un sottoprogramma con un numero programma di 4 cifre o più corto specificando il numero di ripetizioni (P8 cifre), l'indirizzo L non deve essere specificato nello stesso blocco. 4 Quando viene richiamato un sottoprogramma con un numero di 5 cifre o più lungo, il numero di ripetizioni non può essere omesso. 5 Quando viene richiamato un sottoprogramma con un nome file, il nome deve essere specificato immediatamente dopo M98. Spiegazioni Quando il programma principale richiama un sottoprogramma si ha un livello di richiamo di sottoprogramma. I richiami di sottoprogramma possono essere annidati fino a dieci livelli, come si vede nella sottostante figura. Inoltre, con l'opzione macroistruzioni, i richiami di sottoprogrammi e macro possono essere annidati fino ad un totale di 15 livelli. Programma principale Sottoprogramma Sottoprogramma Sottoprogramma O0001 ; O0010 ; O0020 ; O0090 ; M98P0010 ; M98P0020 ; M98P0030 ; M98P0100 ; M30 ; M99; M99; M99; (Livello 1) (Livello 2) (Livello 9) Sottoprogramma O0100; M99; (Livello 10) Il richiamo di un sottoprogramma può chiedere più ripetizioni (fino a 99999999) del sottoprogramma. Per compatibilità con i sistemi di programmazione automatica, come numero del sottoprogramma si può usare "Nxxxxxxxx" (numero di sequenza del primo blocco) invece di O (o :). In questo caso, viene registrato come numero del sottoprogramma il numero di sequenza dato dopo N. - 295 - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 NOTA 1 Il segnale strobe ed il segnale del codice di M98 e M99 non vengono inviati alla macchina. 2 Se il numero del sottoprogramma specificato con l'indirizzo P non esiste, si ha l'allarme PS0078, “NESSUN NUMERO SEQUENZA”. 3 Se si tenta il richiamo di un sottoprogramma con un nome file, ma il file specificato non esiste, si ha l'allarme PS0310, “FILE NON TROVATO”. Esempio M98 P51002 ; Con questo comando, il sottoprogramma numero 1002 viene richiamato 5 volte consecutivamente." M98P_ può essere programmato in un blocco contenente un comando di movimento. X1000.0 M98 P1200 ; In questo esempio, il sottoprogramma numero 1200 viene richiamato una volta, al termine del movimento dell'asse X. La sequenza di esecuzione di un programma che richiama un sottoprogramma è Programma principale N0010 . . . ; 1 2 3 Sottoprogramma O1010 . . . ; N0020 . . . ; N1020 . . . ; N0030 M98 P21010 ; N1030 . . . ; N0040 . . . ; N1040 . . . ; N0050 M98 P1010 ; N1050 . . . ; N0060 . . . ; N1060 . . . M99; Un sottoprogramma può richiamare un altro sottoprogramma nello stesso modo in cui il programma principale richiama il sottoprogramma. Specifiche speciali - Specifica del numero di sequenza per il ritorno al programma principale Se nell'ultimo blocco (M99) di un sottoprogramma viene specificato P seguito da un numero di sequenza, il controllo non ritorna al blocco immediatamente successivo al blocco di richiamo, ma al blocco con il numero di sequenza specificato con P. Però, se il programma principale è eseguito in un modo diverso dal funzionamento da memoria, P viene ignorato. Il tempo richiesto per il ritorno al blocco specificato è considerevolmente più lungo di quello del ritorno normale. Programma principale N0010 . . . ; N0020 . . . ; N0030 M98 P1010 ; N0040 . . . ; N0050 . . . ; N0060 . . . ; - Sottoprogramma O0010 . . . ; N1020 . . . ; N1030 . . . ; N1040 . . . ; N1050 . . . ; N1060 . . . M99 P0060 ; Uso di M99 nel programma principale Se M99 viene eseguito nel programma principale, il controllo ritorna all'inizio dello stesso programma. Ad esempio, se in una appropriata posizione del programma viene inserito un blocco "/M99 ;" e il salto blocco opzionale non è attivo, il comando M99 viene eseguito, il controllo ritorna all'inizio e il programma principale viene rieseguito. - 296 - B-64484IT/02 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE L'esecuzione viene ripetuta fino a quando il salto blocco opzionale è off. Se il salto blocco opzionale è attivo, il comando M99 non viene eseguito e il controllo passa al blocco successivo. Se viene programmato /M99Pn ; il controllo non torna all'inizio del programma, ma al blocco il cui numero di sequenza è "n". Il tempo di elaborazione richiesto per il ritorno al blocco specificato è considerevolmente più lungo di quello del ritorno all'inizio. Salto blocco opzionale OFF - N0010 . . . ; N0020 . . . ; N0030 . . . ; N0040 . . . ; N0050 . . . ; / N0060 . . . M99 P0030 ; N0070 . . . ; N0080 M02 ; Salto blocco opzionale ON Esecuzione indipendente di un sottoprogramma E' possibile comandare l'esecuzione di un sottoprogramma specificandone la ricerca dalla tastiera MDI come si fa per i programmi principali. (Vedi la sezione, “RICERCA DI UN PROGRAMMA” per i dettagli relativi alla ricerca.) In questo caso, M99 restituisce il controllo all'inizio del sottoprogramma e questo viene rieseguito. Se viene eseguito M99Pn, il controllo ritorna al blocco specificato con n. In queste condizioni, se si vuole arrestare l'esecuzione, inserire un /M02 ; o un /M30 ; nel punto appropriato. Quando viene disattivato il salto blocco opzionale, questo comando viene eseguito, mettendo fine all'esecuzione del sottoprogramma. N1010 . . . ; N1020 . . . ; N1030 . . . ; / N1040 . . . M02 ; N1050 M99 P1020 ; - Salto blocco opzionale ON Richiamo di un sottoprogramma specificando il numero di sequenza Se il bit 0 (SQC) del parametro N. 6005 è 1 è possibile specificare il numero di sequenza da eseguire nel sottoprogramma. Nel comando di richiamo del sottoprogramma, dopo l'indirizzo P (numero del sottoprogramma) specificare l'indirizzo Q seguito dal numero di sequenza. M98 Pxxxx Qxxxxx ; Numero di sequenza Numero programma Con questo comando, l'esecuzione del sottoprogramma inizia dal numero di sequenza specificato. Se è specificato il numero di ripetizioni, l'esecuzione del sottoprogramma viene ripetuta sempre a partire dal numero di sequenza specificato. Programma principale Sottoprogramma N0010…; O1010…; N0020…; N1020…; N0030 M98 P1010 Q1030 ; N1030…; N0040…; N1040…; N0050…; N1050…; N0060…; N1060…M99 ; - 297 - 13.CONFIGURAZIONE DEL PROGRAMMA PROGRAMMAZIONE B-64484IT/02 Questa funzione permette di richiamare un numero di sequenza contenuto nello stesso programma, come si vede qui sotto. Nell'utilizzare questo metodo, però, il programmatore deve fare attenzione al livello di annidamento accettabile. Se viene superato quel livello, si verifica l'allarme PS0077, "ERRORE DI CHIAMATA SOTTOPROGRAMMA". O0001 ; N0010…; N0020 M98 (P0001) Q0050 ; N0030…; N0040…; N0050…; N0060…; N0070…M99; Se un blocco che richiama un numero di sequenza all'interno dello stesso programma contiene M98, è possibile omettere la specifica di Pxxxx. Questa funzione può essere utilizzata solo per i richiami di sottoprogramma con M98; non può essere utilizzata con altri metodi di richiamo, come il richiamo di macro o il richiamo di sottoprogrammi esterni con M198. NOTA Se il bit 0 (SQC) del parametro N. 6005 è ”0”, e viene specificato M98 Pxxxx Qxxxxx, si verifica l'allarme PS0009, "INDIRIZZO NC ERRATO". - 298 - B-64484IT/02 14 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE Il Capitolo 14, "FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE", è costituito dalle seguenti sezioni: 14.1 COPIA DELLA FIGURA (G72.1, G72.2) ....................................................................................... 299 14.2 CONVERSIONE TRIDIMENSIONALE DEL SISTEMA DI COORDINATE .............................. 306 14.1 COPIA DELLA FIGURA (G72.1, G72.2) Le lavorazioni ripetitive possono essere eseguite attraverso la rotazione o la traslazione di una figura programmata con un sottoprogramma. Formato - Copia con rotazione Piano Xp-Yp (selezionato con G17) : G72.1 P_ L_ Xp_Yp_R_ ; Piano Zp-Xp (selezionato con G18) : G72.1 P_ L_ Zp_Xp_R_ ; Piano Yp-Zp (selezionato con G19) : G72.1 P_ L_ Yp_Zp_R _; P L Xp Yp Zp R :Numero del sottoprogramma :Numero di ripetizioni :Centro di rotazione sull'asse Xp (Xp:asse X o suo asse parallelo) :Centro di rotazione sull'asse Yp (Yp: asse Y o suo asse parallelo) :Centro di rotazione sull'asse Zp (Zp: asse Z o suo asse parallelo) :Spostamento angolare (Un valore positivo indica la rotazione in senso antiorario. Specificare l'angolo di rotazione con valore incrementale.) Il piano nel quale deve essere effettuata la copia con rotazione si seleziona con un comando di selezione del piano (G17, G18, G19). - Copia con traslazione Piano Xp-Yp (selezionato con G17) : G72.2 P_ L_ I_ J_ ; Piano Zp-Xp (selezionato con G18) : G72.2 P_ L_ K_ I_ ; Piano Yp-Zp (selezionato con G19) : G72.2 P_ L_ J_ K_; P :Numero del sottoprogramma L :Numero di ripetizioni I :Entità della traslazione lungo l'asse Xp J :Entità della traslazione lungo l'asse Yp K :Entità della traslazione lungo l'asse Zp Il piano nel quale deve essere effettuata la copia con traslazione si seleziona con un comando di selezione del piano (G17, G18, G19). - 299 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 Spiegazioni - Primo blocco del sottoprogramma Il blocco iniziale del sottoprogramma che esegue la copia deve sempre contenere un comando di movimento. Se il blocco iniziale non specifica un movimento, come quando il numero del programma è specificato in un blocco indipendente (per esempio O1234;), il movimento può fermarsi al punto iniziale della figura generata dall'ennesima (n=1, 2, 3 ... ) copia. Il primo comando di movimento deve essere specificato nel modo assoluto. (Esempio di programma errato) O1234 ; G00 G90 X100.0 Y200.0 ; .....; .....; M99; (Esempio di programma corretto) O1000 G00 G90 X100.0 Y200.0 ; .....; .....; M99; - Combinazione di copia con rotazione e copia con traslazione La copia con traslazione può essere specificata in un sottoprogramma per la copia con rotazione e la copia con rotazione può essere specificata in un sottoprogramma per la copia con traslazione. - Richiamo del sottoprogramma Il sottoprogramma che esegue la copia, con rotazione o traslazione, può eseguire il richiamo di sottoprogrammi con M98 e il richiamo di macro con G65. - Specifica del centro di rotazione Il comando del centro di rotazione di G72.1 viene sempre visto come comando assoluto, indipendentemente dal modo incrementale o assoluto. - Specifica degli indirizzi Nel blocco G72.1, gli indirizzi diversi da P, L, Xp, Yp, Zp e R sono ignorati. In questo blocco, specificare sempre il numero del sottoprogramma (P), le coordinate del centro di rotazione (Xp, Yp, Zp) e l'angolo di rotazione (R). Nel blocco G72.2, gli indirizzi diversi da P, L, I, J e K sono ignorati. In questo blocco, specificare sempre il numero del sottoprogramma (P) e l'entità della traslazione (I, J, K). - Indirizzo P Se il numero del sottoprogramma specificato con l'indirizzo P non esiste, si ha l'allarme PS0078, “NESSUN NUMERO SEQUENZA”. Se P non è specificato si verifica l'allarme PS0076, “PROGRAMMA NON TROVATO”. - Indirizzo L Se L viene omesso, il numero di ripetizioni è 1. In altre parole, il sottoprogramma viene eseguito una sola volta. - Incremento dello spostamento angolare o della traslazione Con G72.1, lo spostamento angolare R specifica un incremento. Lo spostamento angolare dell'ennesimo profilo sarà: R × (n - 1). Con G72.2, l'entità della traslazione (I, J, K) specifica un incremento. L'entità della traslazione dell'ennesimo profilo sarà: (distanza specificata) × (n - 1). - 300 - 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 - Livello di annidamento del sottoprogramma Il richiamo del sottoprogramma con G72.1 e G72.2 incrementa di 1 il livello di annidamento, come il richiamo con M98. - Posizione finale del blocco Le coordinate di una figura ruotata o traslata (punto finale del blocco) possono essere lette con le variabili di sistema #5001 e successive delle macroistruzioni. - Discordanza fra il punto finale e il punto iniziale Se il punto finale della figura generata dall'ennesima copia non coincide con il punto iniziale della figura generata dalla copia successiva (n + 1), la figura viene traslata dal punto finale al punto iniziale, poi inizia la copia. (Generalmente, questa discordanza si verifica in seguito ad un errore di specifica dell'angolo di rotazione o dell'entità della traslazione.) Y Punto finale della prima copia P1 P4 P5 P3 P6 P2 P7 P0 Punto iniziale 30 Punto iniziale della seconda copia X 20 70 Programma principale O1000 ; N10 G92 X-20.0 Y0.0 ; N20 G00 G90 X0.0 Y0.0 ; N30 G01 X20.0 Y0.0 F10 ; (P0) N40 Y20.0 ; (P1) N50 X30.0 ; (P2) N60 G72.2 P2000 L3 I90.0 J0.0 ; Benché sia richiesto uno spostamento di 70mm, è stato programmato I90.0 invece di I70.0. Dato che è stato specificato un errato spostamento, il punto finale della figura generata dall'ennesima copia non coincide con il punto iniziale della figura generata dalla copia successiva (n + 1). Sottoprogramma O2000 G90 G01 X40.0 ; N100 Y40.0 ; N200 X80.0 ; N300Y20.0 ; N400 X100.0 ; N500 M99; (P3) (P4) (P5) (P6) (P7) - 301 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 Limitazioni - Specifica di due o più comandi per la copia di una figura G72.1 non può essere specificato più di una volta in un sottoprogramma per l'esecuzione della copia con rotazione (se lo si tenta, si verifica l'allarme PS0160, “CODICI M DI ATTESA DISCORDANTI”). G72.2 non può essere specificato più di una volta in un sottoprogramma per l'esecuzione della copia con traslazione (se lo si tenta, si verifica l'allarme PS0161, “VALORE ILLEGALE DI P PER CODICE M DI ATTESA”). - Comandi che non devono essere specificati In un programma che esegue una copia con rotazione o con traslazione, non è possibile specificare: • Comando di selezione del piano (G17, G18, G19) • Comando per la specifica di coordinate polari • Ritorno al punto di riferimento • Rotazione del sistema di coordinate, scala, immagine speculare programmabile E' possibile comandare la copia con rotazione o con traslazione dopo aver comandato la rotazione del sistema di coordinate, la scala, o l'immagine speculare programmabile. - Modi che non devono essere selezionati La copia della figura non può essere eseguita durante l'esecuzione dello smusso o del raccordo o durante la correzione utensile. - Unità di misura I due assi del piano della copia devono avere lo stesso sistema di incrementi. - Blocco singolo Per i blocchi G72.1 e G72.2, non viene eseguito l'arresto in blocco singolo. - Compensazione raggio utensile e sistema di coordinate del pezzo In un sottoprogramma per la copia della figura, il codice G per la compensazione raggio utensile o l'entità della compensazione (codici D o H) non possono essere cambiati. Non possono essere cambiati neppure G92 e G54..G59. Questi codici devono essere specificati prima di iniziare la copia della figura. - 302 - 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio - Copia con rotazione Y P4 P3 P2 P5 P0 120° P6 Programma principale O1000 ; N10 G92 X40.0 Y50.0 ; N20 G00 G90 X_ Y_ ; N30 G01 G17 G41 X_ Y_ D01 F10 ; N40 G72.1 P2000 L3 X0 Y0 R120.0 ; N50 G40 G01 X_ Y_ I_ J_ ; N60 G00 X40.0 Y50.0 ; N70 M30 ; Sottoprogramma O2000 G03 X_ Y_ R30.0 ; N100 G01 X_ Y_ ; N200 G03 X_ Y_ R10.0 ; N300 G01 X_ Y_ ; N400 G03 X_ Y_ R30.0 ; N500 M99; - Punto iniziale P1 X (P0) (P1) (P0) (P2) (P3) (P4) (P5) (P6) Copia con rotazione (foratura) Y P1 P0 Punto iniziale 60° X Programma principale O3000 ; N10 G92 G17 X80.0 Y50.0 ; N20 G72.1 P4000 L6 X0 Y0 R60.0 ; N30 G80 G00 X80.0 Y50.0 ; N40 M30 ; Sottoprogramma O4000 N100 G90 G81 X_ Y_ R_ Z_ F_ ; N200 M99 ; - 303 - (P0) (P0) (P1) 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE - B-64484IT/02 Copia con traslazione Y P4 Punto iniziale P2 P1 P3 P0 P5 P6 P7 70 70 Programma principale O1000 ; N10 G92 X-20.0 Y0 ; N20 G00 G90 X0 Y0 ; N30 G01 G17 G41 X20. Y0 D01 F10 ; N40 Y20. ; N50 X30. ; N60 G72.2 P2000 L3 I70.0 J0 ; N70 X_ Y_ ; N80 X0 ; N90 G00 G40 X-20.0 Y0 ; N100 M30 ; (P0) (P1) (P2) (P8) Sottoprogramma O2000 G90 G01 X_ ; N100 Y_ ; N200 G02 X_ I_ ; N300 G01 Y_ ; N400 X_ ; N500 M99; (P3) (P4) (P5) (P6) (P7) - 304 - 70 P8 X 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 - Combinazione di copia con rotazione e copia con traslazione (cerchio di fori per bulloni) Y P0 Punto iniziale P1 45° X Programma principale O1000 ; N10 G92 G17 X100.0 Y80.0 ; N20 G72.1 P2000 X0 Y0 L8 R45.0 ; N30 G80 G00 X100.0 Y80.0 ; N40 M30 ; (P0) (P0) Sottoprogramma (copia con rotazione) O2000 N100 G72.2 P3000 I0 J_ L3 ; N200 M99 ; Sottoprogramma (copia con traslazione) O3000 N110 G90 G81 X_ Y_ R_ Z_ F_ ; N210 M99 ; - 305 - (P1) 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE 14.2 B-64484IT/02 CONVERSIONE TRIDIMENSIONALE DEL SISTEMA DI COORDINATE E' possibile eseguire la conversione del sistema di coordinate intorno ad un asse specificando il centro di rotazione, la direzione dell'asse di rotazione e lo spostamento angolare. Questa funzione è molto utile per la lavorazione tridimensionale su macchine per lavorazione stampi e simili. Ad esempio, se un programma che specifica una lavorazione sul piano XY viene convertito usando questa funzione, la stessa lavorazione può essere eseguita sul piano desiderato nello spazio tridimensionale. • Fresatura Z Y X Conversione tridimensionale del sistema di coordinate Z Y X • Tornitura X X' Z Z' Superficie da lavorare B Z #1 #4 #2 #3 Y Esecuzione di operazioni quali fresatura, lavorazione tasche e foratura. - 306 - B-64484IT/02 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE Formato M G68 XpX1 Ypy1 Zpz1 Ii1 Jj1 Kk1 Rα ; Attivazione della conversione tridimensionale del sistema di coordinate : Modo conversione tridimensionale del sistema di coordinate. Cancellazione della conversione tridimensionale del sistema di coordinate Xp, Yp, Zp : Coordinate assolute (X, Y, Y, o assi paralleli) del centro di rotazione I, J, K : Direzione dell'asse di rotazione R : Spostamento angolare : G69 ; T G68.1 XpX1 Ypy1 Zpz1 Ii1 Jj1 Kk1 Rα ; Attivazione della conversione tridimensionale del sistema di coordinate : Modo conversione tridimensionale del sistema di coordinate. Cancellazione della conversione tridimensionale del sistema di coordinate Xp, Yp, Zp : Coordinate assolute (X, Y, Y, o assi paralleli) del centro di rotazione I, J, K : Direzione dell'asse di rotazione R : Spostamento angolare : G69.1 ; NOTA In questa sezione, da qui in poi, per il codice G della funzione di conversione tridimensionale delle coordinate verrà usato il formato G68/G69 (centri di lavoro). Spiegazioni - Comando per la conversione tridimensionale del sistema di coordinate (sistema di coordinate del programma) N1 G68 Xp x1 Yp y1 Zp z1 I i1 J j1 K k1 R α ; N2 G68 Xp x2 Yp y2 Zp z2 I i2 J j2 K k2 R β ; N3 : Nn G69 ; La conversione tridimensionale del sistema di coordinate può essere eseguita due volte. Nel blocco N1, specificare il centro, la direzione dell'asse di rotazione e lo spostamento angolare della prima rotazione. Quando viene eseguito questo blocco, il centro del sistema di coordinate originale viene traslato a (x1, y1, z1), poi viene ruotato intorno al vettore (i1, j1, k1) dello spostamento angolare α. Il nuovo sistema di coordinate è chiamato X'Y'Z'. Nel blocco N2 specificare il centro, la direzione dell'asse di rotazione e lo spostamento angolare della seconda rotazione. Nel blocco N2, specificare con Xp, Yp, Zp, I, J, K e R le coordinate e l'angolo nel sistema di coordinate ottenuto con il blocco N1. Quando viene eseguito il blocco N2, il sistema di coordinate X'Y'Z' viene traslato a (x2, y2, z2), poi viene ruotato intorno al vettore (i2, j2, k2) dello spostamento angolare β. Il nuovo sistema di coordinate è chiamato X''Y''Z''. Nel successivo blocco N3, Xp, Yp e Zp specificano le coordinate nel sistema di coordinate X''Y''Z''. Il sistema di coordinate X''Y''Z'' è il sistema di coordinate del programma. - 307 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 Se (Xp, Yp, Zp) non è specificato nel blocco N2, (Xp, Yp, Zp) specificato nel blocco N1 è anche il centro della seconda rotazione (i blocchi N1 e N2 hanno il centro di rotazione in comune). Se il sistema di coordinate deve essere ruotato una sola volta, non è necessario programmare il blocco N2. Esempio) G68 Xx0 Yy0 Zz0 I0 J0 K1 Rα ; G68 I1 J0 K0 Rβ ; Z Z' Z" Y" β Y' β P (x, y, z) α Y x O (x0, y0, z0) z y α X, Y, Z X', Y', Z' X", Y", Z" α β O (x0, y0, z0) P (x, y, z) - : : : : : : : X Sistema di coordinate del pezzo Sistema di coordinate generato dalla prima conversione Sistema di coordinate generato dalla seconda conversione Spostamento angolare della prima rotazione Spostamento angolare della seconda rotazione Centro di rotazione Coordinate nel sistema di coordinate X''Y''Z'' (sistema di coordinate del programma) Errori di formato Se viene rilevato uno dei seguenti errori di formato, si ha l'allarme PS5044, “ERRORE FORMATO G68”: 1. I, J o K non sono specificati in un blocco G68 (manca un parametro della rotazione del sistema di coordinate) 2. I, J e K sono tutti a 0 in un blocco G68 3. R non è specificato in un blocco G68 - Centro di rotazione In un blocco G68, Xp, Yp e Zp devono essere specificati in coordinate assolute. - Equazione per la conversione tridimensionale del sistema di coordinate La seguente equazione fornisce la relazione generale fra (x, y, z) nel sistema di coordinate del programma e (X, Y, Z) nel sistema di coordinate originale (sistema di coordinate del pezzo). ⎛ x ⎞ ⎛ x1 ⎞ ⎛X⎞ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ Y ⎟ = (M 1 )⎜ y ⎟ + ⎜ y1 ⎟ ⎜z⎟ ⎜z ⎟ ⎜Z ⎟ ⎝ ⎠ ⎝ 1⎠ ⎝ ⎠ Quando la conversione viene eseguita due volte, la relazione si esprime come segue: ⎛ x 2 ⎞ ⎛ x1 ⎞ ⎛x⎞ ⎛X⎞ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ Y ⎟ = (M 1 )(M 2 )⎜ y ⎟ + (M 1 )⎜ y 2 ⎟ + ⎜ y1 ⎟ ⎜z ⎟ ⎜z ⎟ ⎜z⎟ ⎜Z ⎟ ⎝ ⎠ ⎝ ⎠ ⎝ 2⎠ ⎝ 1⎠ - 308 - 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 X, Y, Z x, y, z x1, y1, z1 x2, y2, z2 : : : : M1 M2 : : Coordinate nel sistema di coordinate originale (sistema di coordinate del pezzo) Valori programmati (coordinate nel sistema di coordinate del programma) Centro di rotazione della prima conversione Centro di rotazione della seconda conversione (coordinate nel sistema di coordinate generato dalla prima conversione) Matrice della prima conversione Matrice della seconda conversione M1 e M2 sono matrici di conversione determinate dallo spostamento angolare e dall'asse di rotazione. Generalmente, queste matrici si esprimono come segue: ⎛ n1 2 + (1 − n1 2 ) cos θ ⎜ ⎜ n1 n2 (1 − cosθ ) + n3 sin θ ⎜ ⎜ n1 n3 (1 − cosθ ) − n 2 sin θ ⎝ n1 n2 (1 − cos θ ) − n3 sin θ n 2 + (1 − n 2 ) cosθ 2 2 n2 n3 (1 − cosθ ) + n1 sin θ n1 n3 (1 − cos θ ) + n2 sin θ ⎞ ⎟ n2 n3 (1 − cosθ ) − n1 sin θ ⎟ ⎟ 2 2 ⎟ n3 + (1 − n3 ) cosθ ⎠ n1 : Coseno dell'angolo fra l'asse di rotazione e l'asse X i/p n2 : Coseno dell'angolo fra l'asse di rotazione e l'asse Y j/p n3 : Coseno dell'angolo fra l'asse di rotazione e l'asse Z k/p θ : Spostamento angolare Il valore di p si ottiene come segue: p = i2 + j2 + k 2 Le matrici di conversione per la rotazione nel piano sono le seguenti: (1) Conversione del sistema di coordinate nel piano XY ⎛ cosθ ⎜ M = ⎜ sin θ ⎜0 ⎝ − sin θ 0 ⎞ ⎟ cosθ 0 ⎟ 0 1 ⎟⎠ (2) Conversione del sistema di coordinate nel piano YZ ⎛1 ⎜ M = ⎜0 ⎜0 ⎝ 0 cosθ sin θ 0 ⎞ ⎟ − sin θ ⎟ cosθ ⎟⎠ (3) Conversione del sistema di coordinate nel piano ZX ⎛ cosθ 0 ⎜ M = ⎜0 1 ⎜ − sin θ 0 ⎝ - sin θ ⎞ ⎟ 0 ⎟ cosθ ⎟⎠ Assi base e assi paralleli La conversione tridimensionale del sistema di coordinate può essere applicata alla combinazione desiderata di tre assi scelti fra gli assi base (X, Y, Z) ed i rispettivi assi paralleli. Il sistema tridimensionale di coordinate soggetto alla conversione tridimensionale del sistema di coordinate è determinato dagli indirizzi asse specificati nel blocco G68. Se Xp, Yp o Zp non sono specificati, vengono assunti gli assi base X, Y o Z. Se i tre assi base non sono specificati nel parametro N. 1022, si ha l'allarme PS0048, “3 ASSI BASE NON TROVATI”. Un blocco G68 non può specificare un asse base e un asse parallelo. In questo caso si avrebbe l'allarme PS0047, “ERRORE DI DESIGNAZIONE ASSE”. (Esempio) Se gli assi U, V e W sono rispettivamente paralleli agli assi X, Y e Z G68 X_ I_ J_ K_ R_ ; Sistema di coordinate XYZ G68 U_V_ Z_ I_ J_ K_ R_ ; Sistema di coordinate UVZ G68 W_ I_ J_ K_ R_ ; Sistema di coordinate XYW - 309 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE - B-64484IT/02 Specifica della seconda conversione La conversione tridimensionale del sistema di coordinate può essere eseguita due volte. Il centro di rotazione della seconda conversione deve essere specificato con gli stessi indirizzi asse usati nella prima conversione. Se esistono differenze, gli indirizzi asse diversi vengono ignorati. Un tentativo di eseguire la conversione tridimensionale del sistema di coordinate tre o più volte causa l'allarme PS5043, “TROPPE CHIAMATE A G68”. - Spostamento angolare R Un valore positivo di R (spostamento angolare) indica una rotazione in senso orario lungo l'asse di rotazione. Specificare lo spostamento angolare R in 0.001 gradi, nell'intervallo -360000..360000. Per specificare l'angolo di rotazione R in 0.00001 gradi (un centomillesimo), mettere a 1 il bit 0 (FRD) del parametro N. 11630. In questo caso, l'angolo di rotazione R può essere specificato nell'intervallo da -36000000 a 36000000. - Codici G che possono essere specificati Nel modo conversione tridimensionale del sistema di coordinate possono essere specificati i seguenti codici G: G00 Posizionamento G01 Interpolazione lineare G02 Interpolazione circolare in senso orario G03 Interpolazione circolare in senso antiorario G04 Sosta G10 Impostazione dati G17 Selezione del piano (XY) G18 Selezione del piano (ZX) G19 Selezione del piano (YZ) G28 Ritorno al punto di riferimento G29 Movimento dal punto di riferimento G30 Ritorno al secondo, terzo, quarto punto di riferimento G31 Funzione di salto della lavorazione G53 Selezione del sistema di coordinate della macchina G65 Richiamo macro G66 Richiamo macro modale G67 Cancella il richiamo macro modale G40 Cancella la compensazione raggio utensile G41 Compensazione raggio utensile a sinistra G42 Compensazione raggio utensile a destra G73, G74, G76, G80 .. G89 Cicli fissi di foratura M G43 Compensazione lunghezza utensile, direzione + G44 Compensazione lunghezza utensile, direzione G45 Incremento correzione utensile G46 Decremento correzione utensile G47 Doppio incremento correzione utensile G48 Doppio decremento correzione utensile G49 Cancella la compensazione lunghezza utensile G50.1 Cancella l'immagine speculare programmabile G51.1 Immagine speculare programmabile G90 Programmazione assoluta G91 Programmazione incrementale G94 Avanzamento al minuto G95 Avanzamento al giro G98 Ciclo fisso: ritorno al livello iniziale G99 Ciclo fisso: ritorno al livello del punto R - 310 - B-64484IT/02 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE T G90 G91 G94 G95 G98 G99 Programmazione assoluta (con i sistemi B o C di codici G.) Programmazione incrementale (con i sistemi B o C di codici G.) Avanzamento al minuto (con i sistemi B o C di codici G.) Avanzamento al giro (con i sistemi B o C di codici G.) Ciclo fisso: ritorno al livello iniziale (con i sistemi B o C di codici G.) Ciclo fisso: ritorno al livello del punto R (con i sistemi B o C di codici G.) - Movimenti in rapido dei cicli di foratura Mediante il bit 1 (D3R) del parametro N. 11221, è possibile selezionare il modo rapido per l'esecuzione dei movimenti nella direzione di foratura in un ciclo fisso di foratura nei modi programmazione dei comandi nel piano di lavoro inclinato, conversione tridimensionale delle coordinate, o compensazione montaggio pezzo, oltre che per lo spostamento dell'utensile nei cicli di barenatura fine (G76) o barenatura posteriore (G87) della Serie M. Quando il bit 1 (D3R) del parametro N. 11221 è 0, viene selezionato il modo avanzamento in lavoro; quando questo bit è 1, viene selezionato il modo rapido. Per il posizionamento al livello iniziale all'inizio di un ciclo fisso di foratura, però, viene utilizzato il modo rapido, indipendentemente dall'impostazione del bit 1 (D3R) del parametro N. 11221. Nel modo rapido è possibile applicare la regolazione della velocità in rapido e nel modo avanzamento in lavoro è possibile applicare la regolazione della velocità di avanzamento. Il bit 1 (D3R) del parametro N. 11221 può anche essere utilizzato per cambiare il modo dei movimenti in rapido nella direzione della maschiatura rigida. Per l'accelerazione/decelerazione dopo l'interpolazione. Quando il bit 1 (D3R) del parametro N. 11221 è 1 (modo rapido), il posizionamento in rapido nella direzione di foratura di un ciclo fisso di foratura nei modi programmazione dei comandi nel piano di lavoro inclinato, conversione tridimensionale delle coordinate, o compensazione montaggio pezzo viene accelerato/decelerato indipendentemente lungo ciascun asse in base alle costanti di tempo specificate con i parametri N. 1620 e 1621. Così, quando si esegue il posizionamento di tipo interpolazione lineare con il bit 1 (D3R) del parametro N. 11221 messo a 1, eseguire le seguenti impostazioni: Bit 1 (LRP) del parametro N. 1401=1 Bit 4 (PRT) del parametro N. 1603)=1 Parametro N. 1620 Parametro N. 1621 Seleziona il posizionamento di tipo interpolazione lineare. Seleziona l'accelerazione/decelerazione a tempo costante. Impostare lo stesso valore per tutti. Impostare lo stesso valore per tutti. Per l'accelerazione/decelerazione prima dell'interpolazione In un ciclo fisso di foratura viene sempre eseguito il posizionamento lineare nella direzione di foratura. Velocità di avanzamento Quando il bit 1 (D3R) del parametro N. 11221 è 1 (modo rapido), la velocità in rapido nella direzione di foratura di un ciclo fisso di foratura nei modi programmazione dei comandi nel piano di lavoro inclinato, conversione tridimensionale delle coordinate, o compensazione montaggio pezzo è limitata a un valore parametrico indicato qui sotto, se la regolazione della velocità in rapido è il 100%. Nel modo F0 della regolazione della velocità in rapido, però, la velocità in rapido è limitata al minore fra il valore del parametro N. 1421 e i valori parametrici indicati nella Tabella 14.2 (a). - 311 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 Tabella 14.2 (a) Velocità di avanzamento nel modo rapido Parametro N. 5412=0 Parametro N. 5412≠0 Parametro N. 1420 Il minore fra il valore del parametro N. 1420 e il valore del parametro 5412 Tuttavia, quando è abilitata la funzione decelerazione dall'esterno, la velocità di avanzamento è limitata al minore fra i valori parametrici indicati nella Tabella 14.2 (a) dopo l'applicazione della regolazione e la velocità determinata dalla decelerazione dall'esterno. NOTA 1 Impostare la velocità rapida per ciascun asse con il parametro N. 1420 e la velocità rapida tangenziale con il parametro N. 5412. 2 Se viene eseguito il posizionamento in rapido senza interpolazione lineare, la velocità è limitata al valore del parametro N. 1420, indipendentemente dall'impostazione del parametro N. 5412. 3 Se è selezionato il modo avanzamento di lavoro (quando il bit 1 (D3R) del parametro N. 11221 è 0), impostare la velocità rapida tangenziale con il parametro N. 5412. - Funzioni di compensazione M Se insieme alla conversione tridimensionale del sistema di coordinate vengono specificate la compensazione lunghezza utensile, la compensazione raggio utensile o la correzione utensile, prima viene eseguita la compensazione e poi viene eseguita la conversione delle coordinate. T Se insieme alla conversione tridimensionale del sistema di coordinate viene specificata la compensazione raggio utensile, prima viene eseguita la compensazione e poi viene eseguita la conversione delle coordinate. - Relazione fra la conversione tridimensionale e la conversione bidimensionale del sistema di coordinate La conversione tridimensionale e la conversione bidimensionale del sistema di coordinate usano gli stessi codici G (G68 e G69). Un codice G specificato con I, J e K indica la conversione tridimensionale, e un codice G senza I, J e K indica la conversione nel piano. - Variabili di sistema delle macroistruzioni Le coordinate nel sistema di coordinate del pezzo sono assegnate alle variabili di sistema da #5041 a #5048 (posizione corrente di ciascun asse). - Reset Se durante il modo conversione tridimensionale del sistema di coordinate viene eseguito un reset, il modo conversione è cancellato e il sistema entra nel modo G69. Il bit 2 (D3R) del parametro N. 5400 determina se il modo conversione tridimensionale del sistema di coordinate (G68.1) è cancellato solo da G69.1. Se viene scelta questa impostazione, un reset del CNC, determinato da un'operazione di reset o da un segnale del PMC, non cancella il modo conversione tridimensionale del sistema di coordinate. - Visualizzazione della posizione assoluta Nel modo conversione tridimensionale del sistema di coordinate possono essere visualizzate le coordinate assolute basate sul sistema di coordinate del programma o sul sistema di coordinate del pezzo. La scelta si opera con il bit 6 (DAK) del parametro N. 3106. - 312 - 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 - Maschiatura rigida Se il comando di maschiatura rigida viene specificato nel modo conversione tridimensionale del sistema di coordinate, la maschiatura può essere eseguita nella direzione dell'angolo programmato con il comando della conversione tridimensionale del sistema di coordinate. Nel modo conversione tridimensionale del sistema di coordinate, il dato "Errore di posizione asse Z", visualizzato sulla schermata per la regolazione del mandrino, è rilevato sull'asse longitudinale di maschiatura, dopo la conversione tridimensionale. Nel modo conversione tridimensionale del sistema di coordinate, il posizionamento deve essere del tipo con interpolazione lineare (il bit 1 (LRP) del parametro 1401 deve essere a 1). - Conversione tridimensionale del sistema di coordinate durante la compensazione lunghezza utensile Se il bit 3 (TLC) del parametro N. 11221 è 1, è possibile utilizzare la conversione tridimensionale del sistema di coordinate durante la compensazione lunghezza utensile. In questo caso, il vettore della compensazione lunghezza utensile viene convertito nel sistema di coordinate del programma assoggettato alla conversione tridimensionale del sistema di coordinate. Questo rende possibile eseguire la lavorazione mantenendo la direzione utensile nella direzione dell'asse Z del sistema di coordinate del pezzo. La compensazione lunghezza utensile e la conversione tridimensionale del sistema di coordinate devono essere annidate l'una nell'altra. (Esempio) N10 G43 H1 X_ Y_ Z_ ; : N20 G68 X0 Y0 Z0 I0. J1. K0. R-30. ; : G69 ; : G49 X_ Y_ Z_ ; Vettore della compensazione lunghezza utensile Z Z’ X’ X Sistema di coordinate del pezzo N10 Sistema di coordinate del programma N20 Limitazioni - Interventi manuali La conversione tridimensionale del sistema di coordinate non influenza il grado di intervento manuale o di interruzione con volantino. - Posizionamento nel sistema di coordinate della macchina La conversione tridimensionale del sistema di coordinate non influenza il posizionamento nel sistema di coordinate della macchina (ad esempio il posizionamento con G28, G30 o G53). - Specifica del tipo di movimento in rapido Quando viene eseguita la conversione tridimensionale del sistema di coordinate, specificare il posizionamento in rapido con interpolazione lineare. (Mettere a 1 il bit 1 (LRP) del parametro N. 1401.) - 313 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE - B-64484IT/02 Blocchi G68 e G69 In un blocco G68 o G69 non devono essere specificati altri codici G. G68 deve essere specificato con I, J e K. - Visualizzazione della posizione e compensazione Per visualizzare la posizione assoluta quando viene eseguita la conversione tridimensionale del sistema di coordinate, mettere a 0 i bit da 4 a 7 (DRL, DRC, DAL e DAC) del parametro N. 3104. - Immagine speculare M L'immagine speculare programmabile può essere specificata, ma l'immagine speculare non può essere comandata dall'esterno (segnale dell'immagine speculare o impostazione). La conversione tridimensionale del sistema di coordinate viene eseguita dopo l'applicazione dell'immagine speculare programmabile. T L'immagine speculare non può essere comandata dall'esterno (segnale dell'immagine speculare o impostazione). - Conversione tridimensionale del sistema di coordinate e altri comandi modali M I cicli fissi, G41, G42 o G51.1 devono essere specificati all'interno di G68 e G69. (Esempio) G68 X100. Y100. Z100. I0. J0. K1. R45. ; : G41 D01 ; : G40 ; : G69 ; T I cicli fissi, G41 o G42 devono essere specificati all'interno di G68.1 e G69.1. (Esempio) G68.1 X100. Y100. Z100. I0. J0. K1. R45. ; : G41 X_ Z_ I_ K_ ; : G40 ; : G69.1 ; - 314 - B-64484IT/02 14.FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE T - Relazione tra la conversione tridimensionale del sistema di coordinate e le correzioni utensile I comandi relativi alle correzioni utensile devono essere specificati nel modo conversione tridimensionale del sistema di coordinate. (Esempio) G68.1 X100. Y100. Z100. I0. J0. K1. R45. ; : T0101; : T0100; : G69.1 ; - Asse controllato dal PMC Nel modo conversione tridimensionale del sistema di coordinate non è possibile eseguire il controllo asse da PMC per i tre assi relativi alla conversione (allarme). - Operazioni manuali Se nel modo conversione tridimensionale del sistema di coordinate vengono eseguiti movimenti manuali, la velocità tangenziale nel sistema di coordinate risultante dalla conversione (sistema di coordinate del programma) è uguale alla velocità di avanzamento più bassa tra quelle degli assi selezionati. - Sistema di coordinate del pezzo Evitare di cambiare il sistema di coordinate del pezzo nel modo conversione tridimensionale del sistema di coordinate. - Ritorno manuale al punto di riferimento Se il ritorno manuale al punto di riferimento viene eseguito nel modo conversione tridimensionale del sistema di coordinate, si verifica l'allarme PS5324. Prima di eseguire un ritorno manuale al punto di riferimento, cancellare il modo conversione tridimensionale del sistema di coordinate. - Contornatura con asse Cs Se nel modo conversione tridimensionale del sistema di coordinate devono essere specificati contemporaneamente il rapido e la contornatura con asse Cs, eseguire preventivamente un ritorno al punto di riferimento dell'asse Cs. Se il bit 1 (NRF) del parametro 3700 è 0 (nel primo movimento in rapido successivo alla selezione dell'asse Cs viene eseguito un ritorno al punto di riferimento), evitare di specificare il comando di ritorno al punto di riferimento nel modo conversione tridimensionale del sistema di coordinate. - 315 - 14. FUNZIONI CHE SEMPLIFICANO LA PROGRAMMAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio N1 G90 X0 Y0 Z0 ; N2 G68 X10. Y0 Z0 I0 J1 K0 R30. ; N3 G68 X0 Y-10. Z0 I0 J0 K1 R-90. ; Posizionamento sul punto zero (H). Genera il sistema di coordinate X'Y'Z'. Genera il sistema di coordinate X''Y''Z''. L'origine è il punto (0, -10, 0) nel sistema di coordinate X'Y'Z. Posizionamento sul punto zero H'' nel sistema di coordinate X''Y''Z''. Posizionamento sul punto (10, 10, 0) nel sistema di coordinate X''Y''Z''. N4 G90 X0 Y0 Z0 ; N5 X10. Y10. Z0 ; Y Y' X' 10 H H' N4 Y" -10 H" N5 Z 30° (10, 10, 0) Z' -90° Z" - 316 - X" 30° PROGRAMMAZIONE B-64484IT/02 15 15.FUNZIONI DI COMPENSAZIONE FUNZIONI DI COMPENSAZIONE Il Capitolo 15, "FUNZIONI DI COMPENSAZIONE", è costituito dalle seguenti sezioni: 15.1 15.2 15.3 15.4 15.5 15.6 COMPENSAZIONE LUNGHEZZA UTENSILE (G43, G44, G49)................................................ 317 SCALA (G50, G51) .......................................................................................................................... 324 IMMAGINE SPECULARE PROGRAMMABILE (G50.1, G51.1) ................................................. 331 CONTROLLO DELLA DIREZIONE NORMALE (G40.1,G41.1,G42.1) ...................................... 333 COMPENSAZIONE MONTAGGIO PEZZO .................................................................................. 338 CORREZIONE UTENSILE PER LE FUNZIONI DI FRESATURA E DI TORNITURA ............. 377 15.1 COMPENSAZIONE LUNGHEZZA UTENSILE (G43, G44, G49) Questa funzione può essere usata per compensare la differenza tra la lunghezza utensile assunta nella programmazione e la lunghezza dell'utensile effettivamente utilizzato per la lavorazione, registrandola nella memoria delle correzioni.. In questo modo è possibile tenere conto delle differenze senza modificare il programma. La direzione della compensazione viene stabilita con G43 e G44. L'entità della correzione viene selezionata specificando con l'indirizzo H il numero del correttore interessato. Utensile considerato Utensile effettivamente durante la utilizzato programmazione Specificare questa distanza come entità della compensazione lunghezza utensile. Fig. 15.1 (a) 15.1.1 Compensazione lunghezza utensile Introduzione Può essere usato uno dei seguenti tre metodi, a seconda dell'asse lungo il quale viene applicata la compensazione lunghezza utensile. • Compensazione lunghezza utensile A Compensa la differenza della lunghezza utensile lungo l'asse base Z.. • Compensazione lunghezza utensile B Compensa la differenza della lunghezza utensile nella direzione normale al piano selezionato. • Compensazione lunghezza utensile C Compensa la differenza della lunghezza utensile lungo l'asse specificato. - 317 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Formato Tipo Formato Compensazione lunghezza utensile A G43 Z_ H_ ; G44 Z_ H_ ; Compensazione lunghezza utensile B G17 G43 Z_ H_ ; G17 G44 Z_ H_ ; G18 G43 Y_ H_ ; G18 G44 Y_ H_ ; G19 G43 X_ H_ ; G19 G44 X_ H_ ; Compensazione lunghezza utensile C G43 α_H_ ; G44 α_H_ ; Cancella la compensazione lunghezza utensile G49 ; o H0 ; Descrizione G43 : G44 : G17 : G18 : G19 : α : H : X, Y, Z : Compensazione positiva Compensazione negativa Selezione piano XY Selezione piano ZX Selezione piano YZ Indirizzo asse Numero correttore Comando di movimento compensato Spiegazioni - Selezione del tipo di compensazione lunghezza utensile Il tipo di compensazione lunghezza utensile (A, B o C) si seleziona tramite i bit 0(TLC) e 1(TLB) del parametro N. 5001. Parametro N. 5001 - Bit 1 (TLB) Bit 0 (TLC) 0 1 0/1 0 0 1 Tipo Compensazione lunghezza utensile A Compensazione lunghezza utensile B Compensazione lunghezza utensile C Direzione della compensazione Quando viene specificato G43, l'entità della compensazione lunghezza utensile (registrata nella memoria delle correzioni) specificata con il codice H viene sommata alla coordinata del punto finale specificata dal programma. Quando viene specificato G44, l'entità della compensazione lunghezza utensile (registrata nella memoria delle correzioni) specificata con il codice H viene sottratta alla coordinata del punto finale specificata dal programma. La coordinata risultante indica la posizione finale dopo la compensazione, indipendentemente dal modo assoluto/incrementale. Se non è specificato un movimento asse, viene effettuato un movimento pari all'entità della compensazione. G43 e G44 sono codici G modali. Pertanto rimangono validi finché non viene specificato un altro codice G dello stesso gruppo. - Entità della compensazione lunghezza utensile L'entità della compensazione lunghezza utensile assegnata al numero (numero di correttore) specificato con il codice H viene acquisita leggendola nella memoria delle correzioni e viene sommata o sottratta dal comando di movimento programmato. - 318 - B-64484IT/02 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Esempio : H1 ; Viene selezionato il correttore N. 1. : G43 Z_ ; Viene applicata la correzione memorizzata nel correttore N. 1. : H2 ; Viene applicata la correzione memorizzata nel correttore N. 2. : H0 ; Viene applicata una correzione uguale a 0. : H3 ; Viene applicata la correzione memorizzata nel correttore N. 3. : G49 ; La correzione viene cancellata. : H4 ; Viene selezionato il correttore N. 4. : L'entità della correzione deve essere registrata nella memoria delle correzioni utensili corrispondente ad un numero di correttore. PERICOLO Quando l'entità della compensazione lunghezza utensile cambia a causa della programmazione di un nuovo numero di correttore, la nuova compensazione non si somma alla precedente, ma la sostituisce. H1 : entità della compensazione lunghezza utensile 20.0 H2 : entità della compensazione lunghezza utensile 30.0 G90 G43 Z100.0 H1 ; Entità del movimento = 120.0 G90 G43 Z100.0 H2 ; Entità del movimento = 130.0 NOTA Il valore del correttore H0 è sempre 0. E' impossibile assegnargli un valore diverso. - Esecuzione della compensazione lunghezza utensile lungo due o più assi La compensazione lunghezza utensile B può essere eseguita lungo due o più assi, purché gli assi siano specificati in due o più blocchi. Se il bit 3 (TAL) del parametro N. 5001 è 1, anche la compensazione lunghezza utensile C può essere eseguita lungo due o più assi, purché gli assi siano specificati in due o più blocchi. Se nel blocco di attivazione non è specificato un asse, si ha l'allarme PS0027, “MANCA COMANDO ASSI CON G43/G44”. Se nello stesso blocco sono specificati due o più assi, si ha l'allarme PS0336, “COMPENSAZIONE UTENSILE COMANDATA PER PIU' DI DUE ASSI”. - 319 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio 1 Compensazione lunghezza utensile B eseguita lungo gli assi X e Y G19 G43 H_; Compensazione lungo l'asse X G18 G43 H_; Compensazione lungo l'asse Y Esempio 2 Compensazione lunghezza utensile C eseguita lungo gli assi X e Y G43 X_ H_ ; Compensazione lungo l'asse X G43 Y_ H_ ; Compensazione lungo l'asse Y Esempio 3 Generazione di un allarme con la compensazione lunghezza utensile C G43 X_ Y_ H_ ; Si verifica l'allarme PS0336. - Cancellazione della compensazione lunghezza utensile Per cancellare la compensazione, programmare G49 o specificare H0. Quando sono comandati H0 o G49, la cancellazione ha luogo immediatamente. NOTA 1 Quando la compensazione lunghezza utensile è eseguita su due o più assi, G49 cancella la compensazione per tutti gli assi. Se per la cancellazione si utilizza H0, nel caso della compensazione lunghezza utensile B viene cancellata solo la correzione lungo l'asse normale al piano selezionato; nel caso della compensazione lunghezza utensile C viene cancellata solo la correzione lungo l'ultimo asse specificato con G43 o G44. 2 Se la compensazione è applicata a tre o più assi e viene cancellata per tutti gli assi con G49, può verificarsi l'allarme PS0015, “TROPPI ASSI SIMULTANEI”. In questo caso, riportare il numero degli assi controllati simultaneamente (gli assi lungo i quali ha luogo il movimento che cancella la compensazione) entro il limite ammesso dal sistema utilizzando H0. 3 Se la compensazione lunghezza utensile e la conversione tridimensionale del sistema di coordinate vengono cancellate con un reset, quando la conversione tridimensionale del sistema di coordinate viene eseguita contemporaneamente alla compensazione lunghezza utensile, la direzione di cancellazione del vettore della compensazione sarà errata. Mettere a 1 il bit 6 (LVK) del parametro N. 5003 e il bit 2 (D3R) del parametro N. 5400 per evitare che il vettore della compensazione lunghezza utensile e la conversione tridimensionale del sistema di coordinate vengano cancellati da un reset. Esempio) G43 H1 ; G68 X_ Y_ Z_ I_ J_ K_ R_ ; : : Assicurarsi che la compensazione lunghezza utensile e la conversione : tridimensionale delle coordinate non vengano cancellate in questo intervallo. G69 ; G49 ; - 320 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Esempio Compensazione lunghezza utensile (nella barenatura dei fori #1, #2, e #3) #1 #3 20 30 (6) (13) +Y (9) (1) #2 30 +X 30 120 Posizione effettiva Entità della compensazione posizione programmata = 4mm 35 30 50 +Z (2) 3 (12) 18 (3) (5) (7) (8) (4) (10) 8 22 (11) Programma H1=-4.0 (Entità della compensazione lunghezza utensile) N1 G91 G00 X120.0 Y80.0 ; ............... (1) N2 G43 Z-32.0 H1 ; ........................... (2) N3 G01 Z-21.0 F1000 ; ...................... (3) N4 G04 P2000 ; ................................... (4) N5 G00 Z21.0 ; .................................... (5) N6 X30.0 Y-50.0 ; ............................... (6) N7 G01 Z-41.0 ; ................................... (7) N8 G00 Z41.0 ; .................................... (8) N9 X50.0 Y30.0 ; ................................. (9) N10 G01 Z-25.0 ; ................................. (10) N11 G04 P2000 ; ................................ (11) N12 G00 Z57.0 H0 ; ........................... (12) N13 X-200.0 Y-60.0 ; .......................... (13) N14 M2 ; Note - Comando per l'impostazione del sistema di coordinate del pezzo nel modo compensazione lunghezza utensile L'esecuzione di un codice G per l'impostazione del sistema di coordinate del pezzo (G92 o, per il sistema A di codici G su un sistema per torni, G50) presettta un sistema di coordinate nel quale la posizione specificata sarà la posizione prima della compensazione. Però, questo codice G non può essere utilizzato in un blocco nel quale cambia il vettore della compensazione lunghezza utensile vectors vary. Per i dettagli, vedi “Note” nella sottosezione 7.2.1, “Impostazione del sistema di coordinate del pezzo.” - 321 - 15.FUNZIONI DI COMPENSAZIONE 15.1.2 PROGRAMMAZIONE B-64484IT/02 Comandi G53, G28, G30 e G30.1 nel modo compensazione lunghezza utensile Questa sezione descrive la cancellazione e il ripristino della compensazione lunghezza che hanno luogo quando G53, G28, G30 o G30.1 sono specificati nel modo compensazione lunghezza utensile. E' anche descritta la tempificazione della compensazione lunghezza utensile. Come è stato detto nella sezione "DIFFIDE E AVVERTENZE RELATIVE ALLA PROGRAMMAZIONE" a pagina S-3 di questo manuale, si raccomanda di cancellare il modo compensazione lunghezza utensile prima di eseguire i comandi G53, G28, G30 e G30.1. Spiegazioni - Cancellazione del vettore della compensazione lunghezza utensile Quando G53, G28, G30 o G30.1 vengono specificati nel modo compensazione lunghezza utensile, i vettori della compensazione lunghezza utensile vengono cancellati come segue. Tuttavia, rimane visualizzato il codice G modale precedentemente specificato: il codice modale visualizzato non diventa G49. (1) Quando è specificato G53 Comando G53 IP_ G49 G53 IP_ Asse specificato Operazione Asse della compensazione lunghezza utensile Altri assi Asse della compensazione lunghezza utensile Altri assi Cancellata all'esecuzione del movimento specificato Non cancellata Cancellata all'esecuzione del movimento specificato Il modo oscillazione è cancellato (IP_ : Parola dimensionale) AVVERTENZA Se la compensazione lunghezza utensile è applicata a più assi, viene cancellato il vettore di compensazione lungo l'asse specificato da G53. (2) Quando sono specificati G28, G30, o G30.1 Comando G28 IP_ G49 G28 IP_ Asse specificato Operazione Asse della compensazione lunghezza utensile Altri assi Asse della compensazione lunghezza utensile Altri assi Non cancellata al punto intermedio. Cancellata al punto di riferimento. Non cancellata al punto intermedio. Cancellata al punto di riferimento. Cancellata all'esecuzione del movimento sul punto intermedio. Cancellata all'esecuzione del movimento sul punto intermedio. (IP_ : Parola dimensionale) AVVERTENZA Quando la compensazione lunghezza utensile è applicata a più assi, viene cancellato il vettore di compensazione lungo l'asse per il quale è stato eseguito il ritorno al punto di riferimento. - 322 - PROGRAMMAZIONE B-64484IT/02 - 15.FUNZIONI DI COMPENSAZIONE Ripristino del vettore della compensazione lunghezza utensile Il ripristino dei vettori della compensazione lunghezza utensile cancellati dalla specifica di G53, G28, G30 o G30.1 nel modo compensazione lunghezza utensile avviene come segue. Tipo Bit 6 (EVO) del parametro N. 5001 A/B 0 1 C Condizione di ripristino Sono specificati il comando H o G43 (G44). Ripristinato dal blocco bufferizzato successivo . Sono specificati il comando H o G43 (G44)IP_ . (IP_ : Parola dimensionale) AVVERTENZA 1 Se, quando la compensazione lunghezza utensile è applicata su più assi, si esegue il ripristino del vettore della compensazione lunghezza utensile solo con H_, G43, o G44, nel caso della compensazione lunghezza utensile B viene ripristinato soltanto il vettore della compensazione lungo l'asse normale al piano selezionato; nel caso della compensazione lunghezza utensile C viene ripristinato soltanto il vettore della compensazione lungo l'ultimo asse per il quale è stata applicata la compensazione. Per gli altri assi, il ripristino non viene eseguito. 2 Nel blocco in cui viene ripristinato il vettore della compensazione lunghezza utensile, non eseguire comandi diversi dal posizionamento con G00 o G01, dalla sosta con G04, o da un blocco con il solo EOB. - 323 - 15.FUNZIONI DI COMPENSAZIONE 15.2 PROGRAMMAZIONE B-64484IT/02 SCALA (G50, G51) Introduzione Alle quote programmate può essere applicato un fattore di scala. l fattore di scala applicato alle coordinate X_, Y_ e Z_ può essere lo stesso oppure può essere specificato per ciascun asse. Il fattore di scala può essere specificato dal programma. Se il programma non specifica il fattore di scala, viene assunto il fattore specificato tramite parametro. Y P4 P3 P4’ P3’ P0 P2’ P1’ 0 P2 P1 X P0 P1 .. P4 P1’ - P4’ : Centro di scala : Figura programmata : Figura dopo l'applicazione del fattore di scala Fig. 15.2 (a) Scala Formato Applicazione dello stesso fattore di scala a tutti gli assi (Bit 6 (XSC) del parametro N. 5400 = 0) Formato Significato dei comandi G51 IP_P_ ; Inizio scala La scala è abilitata. (Modo scala) G50; IP_ P_ : Comando assoluto del centro di scala : Fattore di scala Cancellazione della scala Applicazione di un fattore di scala diverso a ciascun asse (immagine speculare) (Bit 6 (XSC) del parametro N. 5400 = 1) Formato Significato dei comandi G51 IP_I_J_K_; Inizio scala La scala è abilitata. (Modo scala) G50; IP_ I_J_K_ Cancellazione della scala - 324 - : Comando assoluto del centro di scala : Fattori di scala per i 3 assi base (assi X, Y e Z) rispettivamente B-64484IT/02 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE T NOTA Questa funzione è disponibile se si utilizzano i sistemi B o C dei codici G. AVVERTENZA 1 Specificare G51 in un blocco indipendente. 2 Dopo l'ingrandimento o la riduzione della figura, specificare G50 per cancellare il modo scala. NOTA 1 La selezione della programmazione del punto decimale tipo calcolatrice tascabile (bit 0 (DPI) del parametro N. 3401 = 1) non cambia le unità dei fattori di scala P, I, J e K. 2 La selezione dell'incremento minimo di immissione pari a 10 volte l'incremento minimo di comando (bit 7 (IPR) del parametro N. 1004 = 1) non cambia le unità dei fattori di scala P, I, J e K. 3 Se il fattore di scala è uguale a 0, il blocco G51 genera l'allarme PS0142, “ERRORE DI SCALA”. Spiegazioni - Assi per i quali è abilitata la scala Mettere a 1 il bit 0 (SCL) del parametro N. 5401 degli assi per i quali si intende abilitare la scala. - Incremento minimo del fattore di scala L'incremento minimo del fattore di scala può essere 0.001 o 0.00001. E' 0.00001 (un centomillesimo) se il bit 7 (SCR) del parametro N. 5400 è 0 ed è 0.001 se questo parametro è 1. - Centro di scala Le coordinate del centro di scala specificate con IP_ nel blocco G51 sono sempre assolute, indipendentemente dal modo assoluto/incrementale. Se le coordinate del centro di scala vengono omesse, il centro di scala coincide con la posizione in cui viene eseguito G51. AVVERTENZA Il comando di movimento successivo al blocco G51 deve specificare una posizione assoluta (modo G90). Se il comando di movimento successivo al blocco G51 non è assoluto, come centro di scala viene assunta la posizione in cui è specificato G51; Il centro di scala assume le coordinate specificate nel blocco G51 dopo l'esecuzione del primo blocco di movimento assoluto. - Applicazione dello stesso fattore di scala a tutti gli assi Mettere a 0 il bit 6 (XSC) del parametro N. 5400. Se il fattore di scala P non è specificato, viene utilizzato il valore del parametro N. 5411. Il fattore di scala P deve essere specificato senza il punto decimale. In presenza di un punto decimale si verifica l'allarme PS0007, “PUNTO DECIMALE ERRATO”. Il fattore di scala P non può essere negativo. Se viene specificato un valore negativo si verifica l'allarme PS0006, “USO NON AMMESSO DEL SEGNO MENO”. Il campo di validità della scala va da 0.00001 a 9999.99999. - 325 - 15.FUNZIONI DI COMPENSAZIONE - PROGRAMMAZIONE B-64484IT/02 Scala asse per asse, immagine speculare programmabile (fattore di scala negativo) E' possibile specificare un fattore di scala diverso per ciascun asse. Se il fattore di scala è negativo viene applicata un'immagine speculare. L'asse soggetto all'immagine speculare è quello che contiene il centro di scala. Per abilitare la scala asse per asse (immagine speculare), mettere a 1 il bit 6 (XSC) del parametro N. 5400. Il fattore di scala per i tre assi base (assi d X a Z) si specifica con gli indirizzi I, J e K. Utilizzare il parametro N. 1022 per specificare quali assi utilizzare come assi base. Per gli assi base (X, Y, Z) per i quali non è specificato il fattore di scala (I, J, K) e per gli assi addizionali viene utilizzato il fattore di scala specificato con il parametro N. 5421. Il valore del parametro N. 5421 deve essere diverso da 0. Il fattore di scala (I, J, K) deve essere programmato senza il punto decimale. Il campo di validità del fattore di scala va da ±0.00001 a ±9999.99999. a/b c/d o Asse Y : Fattore di scala per l'asse X : Fattore di scala per l'asse Y : Centro di scala Figura programmata d Figura dopo l'applicazione del fattore di scala c o Asse X a b Fig. 15.2 (b) Scala su ciascun asse AVVERTENZA Se i seguenti comandi vengono programmati contemporaneamente, l'ordine della loro esecuzione è il seguente: <1> Immagine speculare programmabile (G51.1) <2> Scala (G51) (compresa l'immagine speculare con fattore di scala negativo) <3> Immagine speculare specificata dal segnale o dal dato di impostazione corrispondenti. In questo caso, l'immagine speculare programmabile è valida anche per il centro di scala e per il fattore di scala. Se G51.1 e G51 devono essere specificati contemporaneamente, specificarli in questo ordine; per cancellarli, specificarli nell'ordine inverso. - Scala dell'interpolazione circolare Se in una interpolazione circolare vengono applicati agli assi fattori di scala diversi, l'utensile non traccia una ellisse. G90 G00 X0.0 Y100.0 Z0.0; G51 X0.0 Y0.0 Z0.0 I2000 J1000; (Il fattore di scala applicato alla componente X è 2 e quello applicato alla componente Y è 1.) G02 X100.0 Y0.0 I0 J–100.0 F500; Questi comandi equivalgono ai seguenti: G90 G00 X0.0 Y100.0 Z0.0; G02 X200.0 Y0.0 I0 J–100.0 F500; (Poiché il punto finale non è sull'arco, viene assunta l'interpolazione a spirale.) - 326 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Y Figura dopo l'applicazione del fattore di scala X (0,0) (100.0) (200.0) Fig. 15.2 (c) Scala dell'interpolazione circolare Se l'arco viene specificato con il raggio R, la scala viene applicata alle componenti I, J o K del vettore in cui viene convertito il valore del raggio (R) per ottenere le coordinate del centro dell'arco rispetto al punto iniziale. Quindi se il precedente blocco G02 viene riscritto come segue, specificando il raggio anziché il centro dell'arco, il risultato è lo stesso: G02 X100.0 Y0.0 R100.0 F500 ; - Scala e rotazione del sistema di coordinate Se la scala e la rotazione del sistema di coordinate sono specificate contemporaneamente, la scala viene eseguita per prima e la rotazione del sistema di coordinate per seconda. In questo caso, la scala è valida anche per il centro di rotazione. Se è necessario specificarle entrambe, specificare prima la scala e poi la Rotazione del sistema di coordinate. Per cancellarle, specificarle nell'ordine inverso. Esempio Programma principale O1 G90 G00 X20.0 Y10.0 ; M98 P1000 ; G51 X20.0 Y10.0 I3000 J2000 ; (×3 in direzione X e ×2 in direzione Y) M98 P1000 ; G17 G68 X35.0 Y20.0 R30. ; M98 P1000 ; G69 ; G50; M30 ; Sottoprogramma O1000 ; G01 X20.0 Y10.0 F500 ; G01 X50.0 ; G01 Y30.0 ; G01 X20.0 ; G01 Y10.0 ; M99; - 327 - 15.FUNZIONI DI COMPENSAZIONE Y PROGRAMMAZIONE B-64484IT/02 Centro di rotazione del sistema di coordinate prima dell'applicazione del fattore di scala Centro di rotazione del sistema di coordinate dopo l'applicazione del fattore di scala Programma originale Figura dopo la rotazione del sistema di coordinate Centro di scala X Figura dopo l'applicazione del fattore di scala Fig. 15.2 (d) Scala e rotazione del sistema di coordinate - Scala e smussi/raccordi opzionali Smusso Scala x 2 in direzione X x 1 in direzione Y Raccordo Scala x 2 in direzione X x 1 in direzione Y Se per ciascun asse viene applicato un fattore di scala diverso, il raccordo diventa una spirale, non un arco, in quanto il fattore di scala è applicato al punto finale e al raggio dell'arco. Fig. 15.2 (e) Scala e smussi/raccordi opzionali Limitazioni - Compensazioni utensile La scala non è applicabile ai valori della compensazione raggio utensile, della compensazione lunghezza utensile e delle correzioni utensile (Fig. 15.2 (f)). - 328 - B-64484IT/02 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Figura programmata Figura dopo l'applicazione del fattore di scala Il fattore di scala non viene applicato all'entità della compensazione raggio utensile. Fig. 15.2 (f) Scala durante la compensazione raggio utensile - Inapplicabilità della scala M La scala non è applicabile all'entità dei movimenti eseguiti nei seguenti cicli fissi: • Profondità di taglio Q e entità della ritrazione nei cicli di foratura a tratti (G83, G73). • Barenatura fine (G76) • Entità dello spostamento Q degli assi X e Y nella barenatura posteriore (G87). In manuale, l'entità del movimento non può essere modificata usando la funzione di scala. T Questa funzione è disponibile solo con i sistemi B e C di codici G. Non è disponibile con il sistema A di codici G. Quando è attiva la scala, non è possibile utilizzare le seguenti funzioni. Se vengono specificate su verifica l'allarme PS0300, “COMANDO ILLEGALE IN SCALATURA”. • Ciclo di finitura (G70 o G72) • Ciclo di sgrossatura esterna/interna (G71 o G73) • Ciclo di sgrossatura sulla facciata del pezzo (G72 o G74) • Ciclo di ripetizione del profilo (G73 o G75) • Ciclo di foratura frontale (G74 o G76) • Ciclo di foratura sul diametro esterno/interno (G75 o G77) • Ciclo di filettatura in più passate (G76 o G78) • Ciclo di pendolazione senza misuratore (per rettificatrici) (G71 o G72) • Ciclo di pendolazione con misuratore (per rettificatrici) (G72 o G73) • Ciclo multituffo senza misuratore (per rettificatrici) (G73 o G74) • Ciclo multituffo con misuratore (per rettificatrici) (G74 o G75) • Ciclo di foratura frontale (G83) • Ciclo di maschiatura frontale (G84) • Ciclo di barenatura frontale (G85) • Ciclo di foratura laterale (G87) • Ciclo di maschiatura laterale (G88) - 329 - 15.FUNZIONI DI COMPENSAZIONE • • • • PROGRAMMAZIONE B-64484IT/02 Ciclo di barenatura laterale (G89) Ciclo di tornitura sul diametro interno/esterno (G77 o G20) Ciclo di filettatura (G78 o G21) Ciclo di sfacciatura (G79, G24) (Viene indicato per primo il codice G del sistema B e per secondo quello del sistema C.) In manuale, l'entità del movimento non può essere modificata usando la funzione di scala. Se nel modo scala viene specificata la correzione utensile con traslazione del sistema di coordinate (bit 2 (LWT) del parametro N. 5002 = 1 o bit 4 (LGT) del parametro N. 5002 = 0), si verifica l'allarme PS0509, "CMD OFFSET UTENSILE NON DISPONIBILE". Lo stesso allarme si verifica quando il bit 6 (EVO) del parametro N. 5001 è 1 e cambia l'entità della correzione. AVVERTENZA 1 Se nel blocco G51 non viene specificato il fattore di scala con l'indirizzo P, viene assunto il valore impostato come parametro in quel momento; un'eventuale modifica successiva del parametro non ha effetti. 2 Prima di programmare il ritorno al punto di riferimento (G27, G28, G29, G30) o l'impostazione del sistema di coordinate (G52 - G59, G92), cancellare il modo scala. 3 L'arrotondamento dei risultati della scala può condurre ad un movimento di entità uguale a zero. In questo caso, il blocco viene visto come blocco senza movimento e può influenzare il movimento dell'utensile nella compensazione raggio utensile. Riferirsi alla descrizione della compensazione raggio utensile. 4 Evitare di applicare la scala ad un asse rotativo per il quale è abilitata la funzione di roll-over: questo può provocare movimenti inattesi. NOTA 1 La visualizzazione della posizione rappresenta le coordinate dopo l'applicazione del fattore di scala. 2 Quando l'immagine speculare viene applicata a un asse del piano selezionato, si ha: (1) Interpolazione circolare ................................. Il senso di rotazione è invertito. (2) Compensazione raggio utensile .................... La direzione della compensazione è invertita. (3) Rotazione del sistema di coordinate ............. L'angolo di rotazione è invertito. Esempio Esempio di programmazione con specifica di un fattore di scala diverso per ciascun asse O1; G51 X20.0 Y10.0 I750 J250; (× 0.75 in direzione X, × 0.25 in direzione Y) G00 G90 X60.0 Y50.0; G01 X120.0 F100; G01 Y90; G01 X60; G01 Y50; G50; M30 ; - 330 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Asse Y 90 Figura programmata 80 Figura dopo l'applicazione del fattore di scala (60,50) 30 20 10 Centro di scala Asse X 75 100 20 95 120 Fig. 15.2 (g) Esempio di programmazione con specifica di un fattore di scala diverso per ciascun asse 15.3 IMMAGINE SPECULARE PROGRAMMABILE (G50.1, G51.1) E' possibile produrre l'immagine speculare, rispetto all'asse di simmetria specificato, di un comando programmato (Fig. 15.3 (a)). Y Asse di simmetria (X=50) (2) (1) 100 60 Asse di simmetria (Y=50) 50 40 0 (4) (3) 0 40 50 60 100 X (1) Immagine originale del comando programmato (2) Immagine simmetrica intorno ad una linea parallela all'asse Y e intersecante l'asse X a 50 (3) Immagine simmetrica intorno al punto (50, 50) (4) Immagine simmetrica intorno ad una linea parallela all'asse X e intersecante l'asse Y a 50 Fig. 15.3 (a) Immagine speculare programmabile - 331 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Formato G51.1 IP_ ; : : : G50.1 IP_ ; Attivazione dell'immagine speculare Viene generata l'immagine speculare dei comandi programmati in questi blocchi, rispetto all'asse di simmetria specificato da G51.1 IP_;. Cancellazione dell'immagine speculare IP_ : Punto (posizione) e asse di simmetria per la produzione dell'immagine speculare specificata con G51.1. Asse di simmetria per produrre un'immagine speculare quando è specificato con G50.1. Il punto di simmetria non è specificato. Spiegazioni - Immagine speculare tramite impostazione Se la funzione immagine speculare programmabile è specificata quando è selezionato anche il comando dell'immagine speculare tramite un commutatore esterno o tramite i dati di impostazione (vedi la sezione, “IMMAGINE SPECULARE”), l'immagine speculare programmabile viene eseguita per prima. - Immagine speculare su un solo asse del piano selezionato L'applicazione dell'immagine speculare a uno degli assi del piano selezionato modifica come segue i seguenti comandi: Comando Spiegazioni Interpolazione circolare Compensazione raggio utensile Rotazione del sistema di coordinate G02 e G03 sono scambiati G41 e G42 sono scambiati Il senso di rotazione (orario e antiorario) è invertito Limitazioni - Scala e rotazione del sistema di coordinate L'elaborazione procede dall'immagine speculare all'applicazione del fattore di scala, alla rotazione del sistema di coordinate, nell'ordine. I comandi di attivazione devono essere dati nello stesso ordine e i comandi di cancellazione devono essere dati nell'ordine inverso. Non programmare G50.1 o G51.1 nei modi scala o rotazione del sistema di coordinate. - Comandi relativi al ritorno al punto di riferimento e al sistema di coordinate Nel modo immagine speculare programmabile, i codici G relativi al ritorno al punto di riferimento (G27, G28, G29, G30, ecc.) e quelli relativi al sistema di coordinate (da G52 a G59, G92, ecc.) non devono essere specificati. Se è necessario specificare uno di questi codici G, farlo dopo aver cancellato il modo immagine speculare programmabile. T Se nel modo immagine speculare programmabile viene specificata la correzione utensile con traslazione del sistema di coordinate (bit 2 (LWT) del parametro N. 5002 = 1 o bit 4 (LGT) del parametro N. 5002 = 0), si verifica l'allarme PS0509, "CMD OFFSET UTENSILE NON DISPONIBILE". Lo stesso allarme si verifica quando il bit 6 (EVO) del parametro N. 5001 è 1 e cambia l'entità della correzione. - 332 - PROGRAMMAZIONE B-64484IT/02 15.4 15.FUNZIONI DI COMPENSAZIONE CONTROLLO DELLA DIREZIONE NORMALE (G40.1,G41.1,G42.1) Introduzione Quando un utensile con un asse di rotazione (asse C) si muove nel piano XY durante la lavorazione, questa funzione può controllare l'utensile in modo che l'asse C sia sempre perpendicolare al percorso dell'utensile (Fig. 15.4 (a)). Percorso utensile programmato Asse C Asse C Utensile Utensile Direzione normale (in cui si muove l'utensile) Fig. 15.4 (a) Esempio di movimento dell'utensile Formato G41.1 ; Controllo direzione normale a sinistra G42.1 ; Controllo direzione normale a destra G40.1 ; Controllo direzione normale cancellato Se il pezzo è a destra del percorso dell'utensile guardando nella direzione di avanzamento, specificare il controllo della direzione normale a sinistra (G41.1). I comandi G41.1/G42.1 abilitano il controllo della direzione normale (modo controllo della direzione normale). Il comando G40.1 cancella il modo controllo della direzione normale. - 333 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE Percorso centro utensile B-64484IT/02 Percorso centro utensile Percorso utensile programmato Centro dell'arco Percorso utensile programmato Fig. 15.4 (b) Controllo della direzione normale a sinistra (G41.1) Fig. 15.4 (c) normale a destra (G42.1) Controllo della direzione Spiegazioni - Angolo dell'asse C Come si vede nella Fig. 15.4 (d), l'angolo dell'asse C è definito in modo che, guardando dal centro di rotazione dello stesso asse, il lato positivo dell'asse X è 0, il lato positivo dell'asse Y è 90°, il lato negativo dell'asse X è 180°, e il lato negativo dell'asse Y è 270°. +Y 90° 180° 0° +X 270° Centro di rotazione Fig. 15.4 (d) Angolo dell'asse C - Controllo della direzione normale dell'asse C Quando viene attivato il controllo della direzione normale, l'asse C diventa perpendicolare al percorso dell'utensile all'inizio del blocco nel quale sono comandati G41.1 o G42.1. Tra i vari blocchi, viene automaticamente inserito un movimento dell'asse C in modo che questo sia sempre perpendicolare al percorso dell'utensile all'inizio di ciascun blocco. Prima, l'utensile viene orientato in modo che l'asse C diventi perpendicolare al percorso utensile specificato dal comando di movimento, poi viene eseguito il movimento lungo gli assi X e Y. Se è attiva la compensazione raggio fresa, l'utensile viene orientato in modo che l'asse C sia perpendicolare al percorso utensile compensato. Nel funzionamento in blocco singolo, l'utensile non si ferma fra un comando di rotazione dell'utensile ed un comando di movimento lungo gli assi X e Y. L'arresto in blocco singolo ha luogo solo dopo il movimento degli assi X e Y. - 334 - B-64484IT/02 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Percorso centro utensile S N1 S : Punto di arresto in blocco singolo Percorso utensile programmato N2 S S N3 S Fig. 15.4 (e) Punto di arresto in blocco singolo nel modo controllo della direzione normale In caso di interpolazione circolare, l'asse C viene prima ruotato, in modo da essere perpendicolare al punto di partenza dell'interpolazione, e poi viene controllato in modo da tenerlo costantemente perpendicolare al percorso utensile determinato dall'interpolazione circolare. L'utensile è controllato in modo che l'asse C sia sempre perpendicolare al percorso utensile determinato dall'interpolazione circolare. Viene inserito un comando di rotazione in modo che l'asse C diventi perpendicolare all'arco, sul punto iniziale. Percorso centro utensile Centro dell'arco Percorso utensile programmato Fig. 15.4 (f) Controllo della direzione normale e interpolazione circolare NOTA Durante il controllo della direzione normale, l'angolo di rotazione dell'asse C è sempre minore di 180 gradi. Cioè, la rotazione avviene sempre nel senso del percorso più breve. - Velocità di avanzamento dell'asse C La velocità di avanzamento per il movimento dell'asse C inserito fra i blocchi viene fissata tramite il parametro N. 5481. Però, nella prova a vuoto, la velocità di avanzamento è la velocità specificata per quest'ultima. Inoltre, se il movimento degli assi X e Y è in rapido (G00), anche per l'asse C viene usata la velocità in rapido. La velocità di avanzamento dell'asse C durante un'interpolazione circolare è definita dalla seguente formula. F× Entità del movimento dell'asse C (gradi) Lunghezza dell'arco (mm o pollici) (gradi/min) F : Velocità di avanzamento (mm/min o pollici/min) specificata per l'arco L'entità del movimento dell'asse C è la differenza angolare tra l'inizio e la fine di un blocco. - 335 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 NOTA Se la velocità dell'asse C supera la velocità massima specificata per l'asse C dal parametro N. 1430, la velocità di avanzamento degli altri assi viene limitata in modo da mantenere la velocità dell'asse C entro il limite specificato. - Asse del controllo della direzione normale L'asse C al quale viene applicato il controllo della direzione normale può essere assegnato a qualsiasi asse tramite il parametro N. 5480. - Angolo per il quale l'inserimento del blocco di rotazione è ignorato Quando l'angolo di rotazione da inserire, calcolato dal controllo della direzione normale, è minore del valore specificato con il parametro N. 5482, il corrispondente blocco di rotazione dell'asse al quale il controllo della direzione normale è applicato non viene inserito. Questo angolo viene sommato all'angolo di rotazione del movimento successivo e l'angolo totale è a sua volta sottoposto a questo controllo. Se è specificato un angolo di 360 gradi o più, il corrispondente blocco di rotazione non è inserito. Se è specificato un angolo di 180 gradi o più in un blocco diverso da quello per l'interpolazione circolare con un angolo di rotazione dell'asse C di 180 gradi o più, il corrispondente blocco di rotazione non è inserito. - Movimento per il quale l'inserimento dell'arco è ignorato Specificare la distanza massima per la quale la lavorazione viene eseguita con la stessa direzione normale del blocco precedente. • Movimento lineare Se la distanza N2 della sottostante figura è minore del valore prestabilito, la lavorazione per il blocco N2 viene eseguita usando la stessa direzione normale del blocco N1. Percorso centro utensile N2 N3 N1 Distanza • Percorso utensile programmato Movimento circolare Se il diametro del blocco N2 della sottostante figura è minore del valore prestabilito, la lavorazione per il blocco N2 viene eseguita usando la stessa direzione normale del blocco N1. E il controllo di compensazione lungo l'arco non viene eseguito. Percorso centro utensile N2 N3 Diametro Percorso utensile programmato N1 - 336 - B-64484IT/02 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE NOTA 1 Un eventuale comando di movimento dell'asse C durante il controllo della direzione normale viene ignorato. 2 E' necessario impostare preventivamente la corrispondenza tra la posizione dell'asse C nel sistema di coordinate del pezzo e la posizione di macchina dell'asse C usando l'impostazione del sistema di coordinate con G92 o simili. 3 Per usare questa funzione è necessaria l'opzione interpolazione elicoidale. Non specificare l'interpolazione elicoidale durante il controllo della direzione normale. 4 Il controllo della direzione normale non può essere eseguito per il comando di movimento G53. 5 L'asse C deve essere un asse rotativo. T NOTA Nel modo controllo della direzione normale, non possono essere specificati i seguenti comandi. Altrimenti si verifica l'allarme PS1471. - Selezione del piano (G17, G18, G19) - Ritorno automatico al punto di riferimento (G28) - Ritorno al secondo/terzo/quarto punto di riferimento(G30) - Movimento dal punto di riferimento (G29) - 337 - 15.FUNZIONI DI COMPENSAZIONE 15.5 PROGRAMMAZIONE B-64484IT/02 COMPENSAZIONE MONTAGGIO PEZZO Quando un pezzo viene piazzato sulla macchina, è possibile che esso non venga montato nella posizione ideale. Questa funzione permette di lavorare correttamente in base al programma un pezzo spostato. Questa funzione può compensare l'errore di montaggio del pezzo per un asse rotativo utilizzato da funzioni quali il controllo del centro utensile, la compensazione tridimensionale dell'utensile, e la programmazione dei comandi nel piano di lavoro inclinato. In questo modo diventa possibile lavorare il pezzo in base al programma anche durante il controllo del centro utensile, la compensazione tridimensionale dell'utensile e la programmazione dei comandi nel piano di lavoro inclinato. Il sistema di coordinate e l'utensile ruotano automaticamente in base all'errore di montaggio del pezzo. Pezzo Utensile rotante Errore di montaggio del pezzo Fig. 15.5 (a) Schema della compensazione montaggio pezzo Formato G54.4 Pn ; : : G54.4 P0 ; Attiva la compensazione montaggio pezzo Modo compensazione montaggio pezzo Cancella la compensazione montaggio pezzo Pn : Specifica dell'errore di montaggio del pezzo n : da 1 a 7 I blocchi di attivazione/cancellazione della compensazione montaggio pezzo sopprimono la bufferizzazione. Spiegazioni - Errore di montaggio del pezzo L'errore di montaggio del pezzo è definito dalle seguenti otto variabili: • Errore in X ∆x • Errore in Y ∆y • Errore in Z ∆z • Errore di rotazione ∆a (Errore di rotazione sull'asse X, in gradi) • Errore di rotazione ∆b (Errore di rotazione sull'asse Y, in gradi) • Errore di rotazione ∆c (Errore di rotazione sull'asse Z, in gradi) • Posizione dell'asse di rotazione della tavola 1 • Posizione dell'asse di rotazione della tavola 2 - 338 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 [Riguardo a ∆x, ∆y e ∆z] ∆x, ∆y, e ∆z sono le coordinate nel sistema di coordinate del pezzo originale (XYZ nella Fig. 15.5 (b)) dell'origine del sistema di coordinate del pezzo (X'Y'Z' nella Fig. 15.5 (b), d'ora in poi questo sistema di coordinate verrà detto "sistema di coordinate del pezzo montato") determinata dallo spostamento del pezzo. Pezzo spostato Posizione corretta del pezzo Y' Y Pezzo -∆c gradi ∆y X' X ∆x Sistema di coordinate X'Y'Z' (sistema di coordinate del pezzo montato) basato sul pezzo spostato Sistema di coordinate del pezzo XYZ Fig. 15.5 (b) Errore nelle direzioni X, Y e Z [Riguardo a ∆a, ∆b e ∆c] ∆a, ∆b e ∆c sono definiti come segue. Il sistema di coordinate del pezzo ottenuto ruotando il sistema di coordinate del pezzo originale intorno all'asse X per l'angolo ∆a, intorno all'asse Y per l'angolo ∆b, e intorno all'asse Z per l'angolo ∆c, e spostandolo di (∆x, ∆y, ∆z) dall'origine è supposto corrispondere al "sistema di coordinate del pezzo montato". (Nota: Riguardo al senso di rotazione, la rotazione oraria è definita come rotazione positiva.) - 339 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE Z Z’ B-64484IT/02 ∆a Y’ Y Il sistema di coordinate del pezzo (X,Y,Z) viene ruotato di ∆a intorno all'asse X. Y’ Ruotato ulteriormente di ∆b intorno all'asse Y. X (= X') Z Z’ ∆b Y X X' Z Z’ Ruotato ulteriormente di ∆c intorno all'asse Z. Y’ Y X X' ∆c Z’ Y’ Z Sistema di coordinate del pezzo montato X' Y ( ∆x, ∆y, ∆z ) X Fig. 15.5 (c) Errori di rotazione Nell'esempio della Fig. 15.5 (b), ∆a = ∆b = 0 e ∆c è diverso da zero. [Riguardo a posizione dell'asse di rotazione della tavola 1 e posizione dell'asse di rotazione della tavola 2] La posizione dell'asse di rotazione della tavola è la coordinata di macchina dell'asse di rotazione della tavola di una macchina a 5 assi con un asse di rotazione della tavola (macchina con rotazione della tavola o mista) quando viene misurato l'errore di montaggio del pezzo (spostamento della posizione di montaggio rispetto alla posizione corretta del pezzo). Se la macchina ha due assi di rotazione della tavola, impostare posizione dell'asse di rotazione della tavola 1 per l'asse master e posizione dell'asse di rotazione della tavola 2 per l'asse slave. (Per l'asse di rotazione master e l'asse di rotazione slave, riferirsi, più avanti, alla Tabella 15.5 (k), “"Asse rotativo più vicino all'utensile” e "asse rotativo più vicino al pezzo"”.) Se la macchina ha un solo asse di rotazione della tavola, impostare posizione dell'asse di rotazione della tavola 1 per quell'asse. - 340 - PROGRAMMAZIONE B-64484IT/02 15.FUNZIONI DI COMPENSAZIONE Se la macchina non ha assi di rotazione della tavola o non è una macchina a 5 assi, non è necessario impostare posizione dell'asse di rotazione della tavola 1 né posizione dell'asse di rotazione della tavola 2. Non è possibile effettuare l'impostazione per un asse virtuale. Nelle precedenti descrizioni, X, Y e Z rappresentano i tre assi base specificati con il parametro N. 1022. Se manca la specifica di uno qualsiasi dei tre assi base, X, Y e Z, si verifica l'allarme PS0436, “PARAMETRO ILLEGALE IN WSC”. - Impostazione di dati di compensazione I dati di compensazione si impostano sulla schermata della compensazione montaggio pezzo. Per i dettagli, vedi il capitolo 12 della parte III, "IMPOSTAZIONE E VISUALIZZAZIONE DEI DATI". - Errore montaggio pezzo N. 00 (COMUNI) I valori impostati nei dati di compensazione N. 00 (COMUNI) Vengono sommati ai valori corrispondenti di ciascuno dei gruppi di dati da 01 a 07. Notare che il gruppo 00 (COMUNI) non comprende gli errori di rotazione. Esempio: Supponiamo che gli errori di montaggio del pezzo siano impostati come segue: N. 00 (COMUNI) X10.000 Y0.000 Z 0.000 Tabella 15.5 (a) N.01 x 0.500 y 0.000 z 0.000 a 1.500 B0.000 C0.000 N.02 x 0.800 y 0.000 z 0.000 a 1.800 B0.000 C0.000 Se viene selezionato il gruppo N. 01, la compensazione montaggio pezzo viene eseguita sulla seguente base: ∆x = 10.000+0.500 = 10.500 ∆a = 1.500 Se viene selezionato il gruppo N. 02, la compensazione montaggio pezzo viene eseguita sulla seguente base: ∆x = 10.000+0.800 = 10.800 ∆a = 1.800 Se, per una macchina a 5 assi (con rotazione della tavola o mista) con assi di rotazione della tavola, l'impostazione di "posizione dell'asse di rotazione della tavola 1"/"posizione dell'asse di rotazione della tavola 2" del gruppo N. 00 è diversa da quella degli altri gruppi, le operazioni eseguite non sono semplici addizioni. Invece, prima di eseguire le addizioni, viene eseguita una conversione nei valori impostati in quelli corrispondenti alla posizione zero dell'asse di rotazione della tavola. Esempio: Supponiamo che per una macchina a 5 assi con asse C di rotazione della tavola intorno all'asse Z gli errori di montaggio del pezzo siano impostati come segue: - 341 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Tabella 15.5 (b) N. 00 (COMUNI) N.01 X0.000 y 10.000 z 0.000 x 5.000 y 0.000 z 0.000 a 0.000 B0.000 C2.000 C 90.000 C -90.000 Prima vengono convertiti i valori del gruppo N. 00. Y Y' Y X' 10 10 X Y' X Direzione positiva C C = -90 X' C=0 ∆y = 10.000 ∆x = 10.000 Quindi vengono convertiti i valori del gruppo N. 01. Y 2° X' Direzione positiva ∆c Y' Y X' 2° Direzione positiva C X 5 5 Y' X C=0 C = 90 ∆y = 5.000, ∆c = 2.000 ∆x = 5.000, ∆c = 2.000 Se viene selezionato il gruppo N. 01, la compensazione montaggio pezzo viene eseguita come segue utilizzando i valori convertiti in base a C = 0.000: ∆x = 10.000+0.000 = 10.000 ∆y = 0.000+5.000 = 5.000 ∆c = 2.000 Y Y' X' 2° Direzione positiva ∆c 5 10 X C=0 ∆x = 10.000, ∆y = 5.000, ∆c = 2.000 - Incremento minimo di specifica dei dati e campo di validità [Riguardo a ∆x, ∆y e ∆z] Le unità dei dati sono le unità di immissione e seguono l'incremento minimo di immissione dell'asse di riferimento, specificato con il parametro N. 1031. - 342 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Tabella 15.5 (c) Per il sistema metrico IS-A IS-B IS-C Sistema di incrementi dell'asse IS-D IS-E di riferimento Incremento minimo di immissione (mm) Valore massimo specificabile (mm) 0.01 0.001 0.0001 0.00001 0.000001 ±999,999.99 ±999,999.999 ±99,999.9999 ±9,999.99999 ±999.999999 IS-D IS-E Tabella 15.5 (d) Per il sistema in pollici IS-A Sistema di incrementi dell'asse IS-B IS-C di riferimento Incremento minimo di immissione (pollici) Valore massimo specificabile (pollici) 0.001 0.0001 0.00001 0.000001 0.0000001 ±99,999.999 ±99,999.9999 ±9,999.99999 ±999.999999 ±99.9999999 [Riguardo a ∆a, ∆b e ∆c] Il numero di posizioni decimali può essere specificato con il parametro N. 11201. 1 Parametro N. 11201 Incremento minimo di immissione (gradi) Valore massimo specificabile (gradi) 3 4 0.1 0.01 0.001 0.0001 ±99,999,999.9 ±9999,999.99 ±999,999.999 ±99,999.9999 5 Parametro N. 11201 Incremento minimo di immissione (gradi) Valore massimo specificabile (gradi) Tabella 15.5 (e) 2 6 7 8 0.00001 0.000001 0.0000001 0.00000001 ±9,999.99999 ±999.999999 ±99.9999999 ±9.99999999 Notare, però, che il valore del parametro N. 11201 deve essere compreso fra 1 e 8. Se il valore del parametro N. 11201 è fuori da questi limiti, viene utilizzato l'incremento minimo di immissione dell'asse di riferimento (Tabella 15.5 (f)). IS-A Sistema di incrementi dell'asse Tabella 15.5 (f) IS-B IS-C IS-D IS-E di riferimento Incremento minimo di immissione (gradi) Valore massimo specificabile (gradi) 0.01 0.001 0.0001 0.00001 0.000001 ±999,999.99 ±999,999.999 ±99,999.9999 ±9,999.99999 ±999.999999 [Riguardo a posizione dell'asse di rotazione della tavola 1 e posizione dell'asse di rotazione della tavola 2] Le unità dei dati seguono l'incremento minimo di immissione dell'asse rotativo corrispondente. IS-A Sistema di incrementi degli assi Tabella 15.5 (g) IS-B IS-C IS-D IS-E rotativi Incremento minimo di immissione (gradi) Valore massimo specificabile (gradi) 0.01 0.001 0.0001 0.00001 0.000001 ±999,999.99 ±999,999.999 ±99,999.9999 ±9,999.99999 ±999.999999 - 343 - 15.FUNZIONI DI COMPENSAZIONE - PROGRAMMAZIONE B-64484IT/02 "Errore montaggio pezzo attivo" Nel modo compensazione montaggio pezzo, sulla schermata di impostazione dell'errore di montaggio del pezzo, "Errore montaggio pezzo attivo" visualizza il numero del gruppo di dati attualmente selezionato ed i valori corrispondenti (somma dei dati del gruppo selezionato e dei dati del gruppo N. 00). Se non è attivo il modo compensazione montaggio pezzo, viene indicato "MODO OFF" e in ciascun campo compare 0. Per una macchina a 5 assi (con rotazione della tavola o mista) con assi di rotazione della tavola, se il valore di posizione dell'asse di rotazione della tavola 1/posizione dell'asse di rotazione della tavola 2 è diverso da 0, i valori visualizzati sono quelli ottenuti dopo la conversione in base alla posizione 0 degli assi di rotazione della tavola nel sistema di coordinate della macchina. - Impostazione degli errori di montaggio del pezzo mediante variabili macro Gli errori di montaggio del pezzo possono essere letti e scritti utilizzando le variabili macro #26000 #26077. (E' necessaria l'opzione macroistruzioni.) La corrispondenza fra variabili macro ed errori è la seguente (Tabella 15.5 (h)) : Tabella 15.5 (h) Errore in X ∆x Errore in Y ∆y Errore in Z ∆z Errore di rotazione ∆a Errore di rotazione ∆b Errore di rotazione ∆c Posizione dell'asse di rotazione della tavola 1 Posizione dell'asse di rotazione della tavola 2 - Errore N.00 (COMUNE) Errore N.01 Errore N.02 Errore N.03 Errore N.04 Errore N.05 Errore N.06 Errore N.07 #26000 #26001 #26002 #26006 #26010 #26011 #26012 #26013 #26014 #26015 #26016 #26020 #26021 #26022 #26023 #26024 #26025 #26026 #26030 #26031 #26032 #26033 #26034 #26035 #26036 #26040 #26041 #26042 #26043 #26044 #26045 #26046 #26050 #26051 #26052 #26053 #26054 #26055 #26056 #26060 #26061 #26062 #26063 #26064 #26065 #26066 #26070 #26071 #26072 #26073 #26074 #26075 #26076 #26007 #26017 #26027 #26037 #26047 #26057 #26067 #26077 Modo compensazione montaggio pezzo G54.4 Pn (n: 1 - 7), attiva il modo compensazione montaggio pezzo. Pn seleziona uno dei gruppi di dati per la compensazione (da N. 01 a N. 07). Nel modo compensazione montaggio pezzo, il programma viene eseguito nel "sistema di coordinate del pezzo montato", ottenuto traslando il sistema di coordinate del pezzo. G54.4 è un codice G modale appartenente al gruppo 33 per la Serie M o al gruppo 26 per la Serie T. G54.4 P0 cancella il modo compensazione montaggio pezzo. Nel blocco di attivazione della compensazione montaggio pezzo, la macchina non si muove, ma vengono traslate le coordinate assolute, e il successivo comando assoluto esegue un movimento nel sistema di coordinate del pezzo montato. Ciò significa che, dopo il blocco di attivazione della compensazione montaggio pezzo deve essere programmato un comando assoluto. - 344 - PROGRAMMAZIONE B-64484IT/02 15.FUNZIONI DI COMPENSAZIONE NOTA 1 Il blocco che specifica G54.4 deve contenere Pn. Se P non è specificato, o se il suo valore è fuori dai limiti, si verifica l'allarme PS0437, “COMANDO ILLEGALE IN WSC”. 2 Specificare G54.4 in un blocco indipendente. Se nello stesso blocco vengono programmati un altro codice G o un comando asse, si verifica l'allarme PS0437. 3 La compensazione montaggio pezzo è valida per i movimenti eseguiti nel funzionamento automatico. 4 I dati di compensazione presenti al momento dell'attivazione rimangono validi fino alla cancellazione del modo compensazione montaggio pezzo. 5 La compensazione montaggio pezzo non può essere specificata due volte. Se G54.4 Pn (n 0) viene specificato nel modo compensazione montaggio pezzo, si verifica l'allarme PS0437. 6 La traslazione delle coordinate assolute non ha luogo se i due seguenti angoli non eccedono il valore specificato con il parametro N. 11204. (1) Angolo fra la posizione assoluta dell'utensile e la posizione di orientamento singolare (2) Angolo fra la posizione assoluta traslata per l'errore di montaggio del pezzo e la posizione di orientamento singolare 7 Se tutti gli errori sono a 0, il comando G54.4 non può attivare il modo compensazione montaggio pezzo. - Impostazione degli errori di montaggio del pezzo mediante introduzione dati da programma (G10) Per impostare gli errori di montaggio del pezzo, è possibile utilizzare l'introduzione dati da programma. Formato G10 L23 P_ X_ Y_ Z_ A_ B_ C_ I_ J_; P X Y Z A B C I J : : : : : : : : : Numero dell'errore di montaggio del pezzo da 0 a 7 Errore in X ∆x Errore in Y ∆y Errore in Z ∆z Errore di rotazione ∆a Errore di rotazione ∆b Errore di rotazione ∆c Posizione dell'asse di rotazione della tavola 1 Posizione dell'asse di rotazione della tavola 2 - 345 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 NOTA 1 Se viene omesso un indirizzo diverso da P, il valore corrispondente a quell'indirizzo non viene modificato. 2 Il valore specificato viene utilizzato come entità dell'errore. Questo vale anche nel caso di specifica nel modo G91. Il valore specificato non viene sommato, ma sostituito, al valore precedente. 3 Per l'errore di montaggio del pezzo numero 0 (COMUNE), non possono essere impostati gli errori di rotazione. Se per l'errore di montaggio numero zero viene specificato un errore di rotazione, A, B o C, si verifica l'allarme PS1144, "ERRORE DI FORMATO IN G10". 4 Se la macchina ha un solo asse di rotazione della tavola, la posizione dell'asse di rotazione della tavola 2 non può essere impostata. Se la macchina non ha assi di rotazione della tavola, non è possibile impostare nessuna delle posizioni dell'asse di rotazione della tavola 1 e 2. Se si tenta di farlo, si verifica l'allarme PS1144, “ERRORE DI FORMATO IN G10". 5 Se viene specificato un indirizzo diverso da P, X, Y, Z, A, B, C, I e J, si verifica l'allarme PS1144, “ERRORE DI FORMATO IN G10”. 6 Se per P (numero dell'errore di montaggio del pezzo) viene specificato un valore fuori dai limiti (0 - 7), si verifica l'allarme PS0031, “ERRORE DI COMANDO P IN G10”. 7 Un indirizzo NC senza il punto decimale viene trattato come segue, a seconda dell'impostazione del bit 0 (DPI) del parametro N. 3401: 0: Incrementi minimi di immissione 1: Millimetri o pollici Esempio) G10 L23 P2 X5.0 Y0 Z0 A0 B0 C2.0 I90.0; Su una macchina a 5 assi con asse di rotazione della tavola C intorno all'asse Z, questo comando imposta i seguenti valori per l'errore di montaggio del pezzo numero 2:∆x = 5.0, ∆y = 0.0, ∆z = 0.0 ∆a = 0.0, ∆b = 0.0, ∆c = 2.0, e posizione dell'asse di rotazione della tavola 1 = 90.0 NOTA 1 Gli errori di montaggio del pezzo impostati vengono utilizzati quando la macchina entra nel modo compensazione montaggio pezzo alla successiva specifica di G54.4. Gli errori di montaggio del pezzo impostati non vengono immediatamente utilizzati per la compensazione montaggio pezzo in esecuzione. 2 Gli errori di montaggio del pezzo non possono essere modificati nella simulazione della visualizzazione grafica dinamica o nella Manual Guide i. - 346 - B-64484IT/02 - PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Impostazioni su una macchina a 5 assi Per una macchina a 5 assi, devono essere impostati i seguenti parametri: N. Parametro 19680 19681 19682 19683 19684 19685 19686 19687 19688 19689 19690 19696#0 19696#1 19697 19698 19699 19700 19701 19702 19703 19704 19705 - Tabella 15.5 (i) Descrizione Tipo di unità meccanica Numero asse controllato del primo asse rotativo Direzione asse del primo asse rotativo Angolo di inclinazione quando il primo asse rotativo è inclinato. Senso di rotazione del primo asse rotativo Angolo di rotazione quando il primo asse rotativo è un asse virtuale Numero asse controllato del secondo asse rotativo Direzione asse del secondo asse rotativo Angolo di inclinazione quando il secondo asse rotativo è inclinato. Senso di rotazione del secondo asse rotativo Angolo di rotazione quando il secondo asse rotativo è un asse virtuale Il primo asse rotativo è un asse normale o virtuale Il secondo asse rotativo è un asse normale o virtuale Direzione dell'asse utensile Angolo di riferimento RA Angolo di riferimento RB Posizione della tavola rotante (asse base X) Posizione della tavola rotante (asse base Y) Posizione della tavola rotante (asse base Z) Vettore di offset dell'intersezione tra il primo ed il secondo asse di rotazione della tavola (asse X dei tre assi base) Vettore di offset dell'intersezione tra il primo ed il secondo asse di rotazione della tavola (asse X dei tre assi base) Vettore di offset dell'intersezione tra il primo ed il secondo asse di rotazione della tavola (asse X dei tre assi base) Quando la compensazione della direzione utensile non viene eseguita Quando il bit 0 (RCM) del parametro N. 11200 è 0, la compensazione della direzione utensile (compensazione per un asse rotativo) non viene eseguita. Mettere a 0 questo parametro quando la macchina non è una macchina a 5 assi o quando è un macchina a 5 assi, ma la compensazione della direzione utensile (compensazione per un asse rotativo) non è necessaria. La posizione della punta dell'utensile viene compensata correttamente, ma la direzione dell'utensile rispetto al pezzo è traslata per gli errori di rotazione (∆a, ∆b e ∆c). Questo modo di operare ha il vantaggio di rendere non necessario considerare la posizione singolare, descritta più avanti, perché l'utensile si muove intorno all'asse rotativo come specificato. - Quando la compensazione della direzione utensile viene eseguita Su una macchina a 5 assi, la compensazione della direzione utensile può essere eseguita mettendo a 1 il bit 0 (RCM) del parametro N. 11200. Questa funzione compensa la posizione dell'asse rotativo in modo da posizionare l'utensile rispetto al pezzo come da programma. Mettere a 1 questo parametro quando si eseguono forature, quando si lavora il pezzo con il lato dell'utensile, o quando il lato dell'utensile interferirebbe con il pezzo se la direzione dell'utensile non fosse compensata. Quando il bit 0 (RCM) del parametro N. 11200 è 1, l'accelerazione/decelerazione prima dell'interpolazione con lettura anticipata dei blocchi viene abilitata automaticamente nel modo compensazione montaggio pezzo. Per questa ragione, è consigliabile attivare il modo contornatura AI (programmando G05.1 Q1 o mettendo a 1 il bit 0 (SHP) del parametro N. 1604) prima di specificare la compensazione montaggio pezzo. In questo caso, impostare anche i seguenti parametri relativi all'accelerazione/decelerazione. - 347 - 15.FUNZIONI DI COMPENSAZIONE N. Parametro 1432 1660 1671 1672 1737 1769 1772 1783 PROGRAMMAZIONE B-64484IT/02 Tabella 15.5 (j) Descrizione Velocità massima di avanzamento nel modo accelerazione/decelerazione prima dell'interpolazione Accelerazione massima accettabile nel modo accelerazione/decelerazione prima dell'interpolazione Accelerazione massima accettabile in rapido nel modo accelerazione/decelerazione prima dell'interpolazione Tempo di variazione dell'accelerazione/decelerazione in rapido nel modo accelerazione/decelerazione a campana prima dell'interpolazione Accelerazione massima di ciascun asse per la decelerazione basata sull'accelerazione/decelerazione nel modo contornatura AI Costante di tempo per l'accelerazione/decelerazione dopo l'interpolazione in lavoro nel modo accelerazione/decelerazione prima dell'interpolazione Tempo di variazione dell'accelerazione/decelerazione nel modo accelerazione/decelerazione a campana prima dell'interpolazione Differenza massima di velocità per la determinazione della velocità di avanzamento in base alla differenza di velocità sugli spigoli. NOTA 1 Se l'impostazione di uno di questi parametri non è corretta si verifica l'allarme PS0438, “PARAMETRO ILLEGALE NELLA COMP. DIREZIONE UTENSILE”. 2 A causa della configurazione della macchina, può essere fisicamente impossibile orientare l'utensile nella direzione compensata. In tal caso, si verifica l'allarme DS0030. 3 Nel blocco di attivazione della compensazione montaggio pezzo, la coordinata assoluta di un asse rotativo cambia in conseguenza dell'errore di montaggio del pezzo. In questa occasione, a causa della configurazione della macchina, può mancare l'asse rotativo per l'orientamento dell'utensile nella direzione vista dal sistema di coordinate del pezzo montato. In tal caso, si verifica l'allarme PS0438. 4 Impostare i seguenti parametri per l'accelerazione/decelerazione prima dell'interpolazione con lettura anticipata dei blocchi dato che quest'ultima viene abilitata automaticamente. (1) Bit 1 (LRP) del parametro N. 1401=1: Posizionamento rapido di tipo lineare (2) Bit 5 (FRP) del parametro N. 19501=1: Accelerazione/decelerazione prima dell'interpolazione in rapido. (3) Parametro N. 1671: Accelerazione massima accettabile in rapido nel modo accelerazione/decelerazione prima dell'interpolazione (4) Parametro N. 1660: Accelerazione massima accettabile nel modo accelerazione/decelerazione prima dell'interpolazione. Se questi parametri non sono impostati correttamente, si verifica l'allarme PS0438. 5 Quando durante la compensazione montaggio pezzo si utilizzano il controllo del centro utensile (TCP) o il comando G53.1 della programmazione dei comandi nel piano di lavoro inclinato (TWP), è necessaria la compensazione della direzione utensile (il bit 0 (RCM) del parametro N. 11200 è 1). Altrimenti, si verificano gli allarmi PS5421 nel caso di TCP, o PS5458 nel caso di TWP. - 348 - PROGRAMMAZIONE B-64484IT/02 - 15.FUNZIONI DI COMPENSAZIONE "Asse rotativo più vicino all'utensile" e "asse rotativo più vicino al Pezzo" su una macchina a 5 assi Quando la compensazione della direzione utensile viene eseguita su una macchina a 5 assi, devono essere considerate una posizione singolare e una posizione di orientamento singolare. In questo paragrafo vengono spiegati i concetti di "asse rotativo più vicino all'utensile" e di "asse rotativo più vicino al pezzo", utilizzati nella successiva descrizione della posizione singolare e della posizione di orientamento singolare. Su una macchina a 5 assi con due assi rotativi, uno di questi serve per inclinare l'utensile verso il pezzo. Questo asse rotativo viene detto "asse rotativo più vicino all'utensile". L'altro asse rotativo viene detto "asse rotativo più vicino al pezzo". A seconda del tipo di unità meccanica, l'asse rotativo più vicino all'utensile e l'asse rotativo più vicino al pezzo sono determinati come è indicato nella Tabella 15.5 (k)"Asse rotativo più vicino all'utensile” e "asse rotativo più vicino al pezzo". Tabella 15.5 (k) "Asse rotativo più vicino all'utensile” e "asse rotativo più vicino al pezzo" Tipo di unità meccanica Asse rotativo più vicino all'utensile Asse rotativo più vicino al pezzo (parametro N. 19680) Con rotazione utensile (2) Con rotazione tavola (12) Mista (21) Asse slave Asse master Asse di rotazione dell'utensile Asse master Asse slave Asse di rotazione della tavola Asse rotativo più vicino al pezzo dell'utensile Asse rotativo più vicino all'utensile - Posizione singolare e posizione di orientamento singolare su una macchina a 5 assi L'orientamento dell'utensile è determinato univocamente quando sono determinati gli angoli dei due assi rotativi. Normalmente, però, la combinazione di angoli dei due assi rotativi che ottiene un certo orientamento dell'utensile non è determinata univocamente. In particolare, l'orientamento dell'utensile per il quale l'angolo dell'asse rotativo più vicino al pezzo è arbitrario viene detto "posizione di orientamento singolare". Inoltre, l'angolo dell'asse rotativo più vicino all'utensile per il quale l'utensile è nella posizione di orientamento singolare viene detto "posizione singolare (o angolo della posizione singolare)". Quando l'angolo dell'asse rotativo più vicino all'utensile è una posizione singolare, il centro dell'asse rotativo più vicino al pezzo e l'orientamento dell'utensile (direzione dell'utensile) sono paralleli l'uno all'altro. Esempio: Quando l'asse C (intorno all'asse Z) è l'asse master, l'asse B (intorno all'asse Y) è l'asse slave, e la direzione di riferimento dell'asse utensile è lungo l'asse Z su una macchina a 5 assi con rotazione dell'utensile, la posizione singolare è B = …, 0 gradi, 180 gradi, .... In questo caso, un angolo arbitrario dell'asse C rappresenta una posizione di orientamento singolare (nella stessa direzione dell'asse Z o in direzione opposta). - 349 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Se l'angolo dell'asse B è B = 0 (posizione singolare) come si vede nella Fig. 15.5 (d), ad esempio, un angolo arbitrario dell'asse C rappresenta lo stesso orientamento dell'utensile (posizione di orientamento singolare). C=0 C = 60 B=0 (Posizione singolare) Posizione di orientamento singolare Z B=0 (Posizione singolare) X Fig. 15.5 (d) Posizione singolare e posizione di orientamento singolare Se la direzione di riferimento dell'asse utensile è inclinata (parametri N. 19698 e 19699), o l'asse di rotazione è un asse inclinato (parametri N. 19682, 19683, 19687 e 19688), ad esempio, è possibile che su alcune macchine la posizione singolare e la posizione di orientamento singolare non esistano. - Condizioni per decidere che l'utensile è nella posizione di orientamento singolare Se l'angolo dell'utensile e l'angolo della posizione di orientamento singolare è minore del parametro N. 11204, si considera che l'utensile sia nella posizione di orientamento singolare. Nella descrizione che segue, l'espressione "l'utensile è nella posizione di orientamento singolare" significa che è soddisfatta la suddetta condizione. Questa condizione viene testata ad ogni punto finale calcolato dal CNC. Se il valore del parametro N. 11204 è molto piccolo e quelli della velocità di avanzamento e della regolazione sono grandi, è probabile che l'utensile passi per una posizione singolare senza essere considerato nella posizione di orientamento singolare a ciascun punto finale, anche se il percorso utensile interseca la posizione singolare. In questo caso, l'utensile non potrà andare oltre la posizione singolare. Per evitare questo problema, assegnare al parametro N. 11204 un valore leggermente più grande del quoziente ottenuto dividendo per 15000 la maggiore fra la velocità di avanzamento più elevata fra gli assi rotativi (parametro N. 1432) e la velocità in rapido (parametro N. 1420). - Movimenti nel caso in cui venga compensata la direzione utensile Se su una macchina a 5 assi viene compensata la direzione utensile (bit 0 (RCM) del parametro N. 11200=1), questa compensazione viene eseguita per ogni interpolazione ed è possibile che gli assi rotativi vadano su una posizione diversa da quella programmata. In generale, nella regione fra 0 e 360 gradi ci sono due coppie di posizioni degli assi rotativi che mettono l'utensile in una certa direzione. E quando l'utensile è nella posizione di orientamento singolare la posizione dell'asse rotativo più vicino al pezzo non è determinata univocamente. Il modo in cui vengono determinate le posizioni è il seguente: (1) La posizione attuale della macchina è singolare ed è singolare anche la posizione dopo il movimento in tempo reale (a) Quando la posizione assoluta dopo il movimento in tempo reale non è singolare, l'asse rotativo più vicino al pezzo non si muove. Esempio: Su una macchina a 5 assi con rotazione dell'utensile, l'asse di rotazione intorno all'asse Z è l'asse master, l'asse di rotazione intorno all'asse Y è l'asse slave, e la direzione di riferimento dell'asse utensile è lungo l'asse Z. - 350 - B-64484IT/02 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE Orientamento dell'utensile nel sistema di coordinate assolute Orientamento dell'utensile dopo il movimento (No singolare) Y X Orientamento dell'utensile prima del movimento Assumiamo che esista un errore di montaggio del pezzo intorno all'asse Y e che, dopo la compensazione della direzione utensile l'orientamento dell'utensile sia quello della seguente figura. (L'utensile è nella posizione di orientamento singolare sia prima che dopo il movimento.) Orientamento dell'utensile nel sistema di coordinate della macchina Y Orientamento calcolato dell'utensile dopo il movimento (Singolare) X Orientamento dell'utensile prima del movimento (Singolare) In questo caso, l'asse di rotazione intorno all'asse Z (l'asse rotativo più vicino al pezzo) non si muove. (Si muove solo l'asse rotativo più vicino all'utensile.) Orientamento effettivo dell'utensile dopo il movimento X Se il valore del parametro N. 11204 è diverso da 0, l'utensile può essere nella posizione di orientamento singolare sia prima che dopo il movimento, come nell'esempio precedente. In questo caso, l'asse rotativo più vicino al pezzo non si muove. L'asse rotativo più vicino all'utensile si muove nella direzione nella quale, nel sistema di coordinate della macchina, l'utensile viene considerato in una posizione di orientamento singolare, ma non si muove nella direzione opposta. - 351 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 (b) Quando la posizione assoluta dopo il movimento in tempo reale è singolare, l'asse rotativo più vicino al pezzo si muove come programmato. Esempio: Su una macchina a 5 assi con rotazione dell'utensile, l'asse di rotazione intorno all'asse Z è l'asse master, l'asse di rotazione intorno all'asse Y è l'asse slave, e la direzione di riferimento dell'asse utensile è lungo l'asse Z. Y Orientamento dell'utensile nel sistema di coordinate assolute Orientamento dell'utensile dopo il movimento (Singolare) X Orientamento dell'utensile prima del movimento Assumiamo che esista un errore di montaggio del pezzo intorno all'asse Z e che, dopo la compensazione della direzione utensile l'orientamento dell'utensile sia quello della seguente figura. Orientamento dell'utensile nel sistema di coordinate della macchina Y Orientamento dell'utensile dopo il movimento (Singolare) X Orientamento dell'utensile prima del movimento (Singolare) In questo caso, l'asse di rotazione intorno all'asse Z (l'asse rotativo più vicino al pezzo) si muove come programmato. (2) La posizione attuale della macchina non è singolare, ma è singolare la posizione dopo il movimento in tempo reale: L'asse rotativo più vicino al pezzo non si muove. Esempio: Su una macchina a 5 assi con rotazione dell'utensile, l'asse di rotazione intorno all'asse Z è l'asse master, l'asse di rotazione intorno all'asse Y è l'asse slave, e la direzione di riferimento dell'asse utensile è lungo l'asse Z. Assumiamo che l'orientamento dell'utensile dopo la compensazione della direzione utensile sia quello della sottostante figura. - 352 - B-64484IT/02 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE Orientamento dell'utensile nel sistema di coordinate della macchina Y Orientamento utensile calcolato dopo il movimento (Singolare) X Orientamento dell'utensile prima del movimento (No singolare) In questo caso, l'asse di rotazione intorno all'asse Z (l'asse rotativo più vicino al pezzo) non si muove. (Si muove solo l'asse rotativo più vicino all'utensile.) Y Orientamento utensile effettivo dopo il movimento X (3) La posizione attuale della macchina è singolare, ma non è singolare la posizione dopo il movimento in tempo reale: Nella regione da 0 a 360 gradi ci sono due coppie di soluzioni che posizionano l'utensile nella direzione corretta. Viene scelta la coppia di soluzioni per la quale è più breve il movimento dell'asse rotativo più vicino al pezzo. Esempio: Su una macchina a 5 assi con rotazione dell'utensile, l'asse di rotazione intorno all'asse Z è l'asse master, l'asse di rotazione intorno all'asse Y è l'asse slave, e la direzione di riferimento dell'asse utensile è lungo l'asse Z. Assumiamo che l'orientamento dell'utensile dopo la compensazione della direzione utensile sia quello della sottostante figura. Orientamento dell'utensile nel sistema di coordinate della macchina Y Orientamento dell'utensile dopo il movimento (No singolare) X Orientamento dell'utensile prima del movimento (Singolare) - 353 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 In questo caso, gli assi rotativi vanno nelle posizioni che comportano il movimento più breve dell'asse di rotazione intorno all'asse Z (l'asse rotativo più vicino al pezzo). (L'utensile si muove nella direzione indicata dalla freccia nella figura qui sopra.) L'utensile non si muove nella direzione indicata dalla freccia nella figura che segue. Y Orientamento dell'utensile dopo il movimento X Orientamento dell'utensile prima del movimento (4) La posizione attuale della macchina non è singolare e non è singolare neppure la posizione dopo il movimento in tempo reale : Nella regione da 0 a 360 gradi ci sono due coppie di soluzioni che posizionano l'utensile nella direzione corretta. Viene selezionata la soluzione per la quale gli assi rotativi non superano per la posizione singolare. E gli assi rotativi vanno nelle posizioni determinate da quella soluzione. Esempio: Su una macchina a 5 assi con rotazione dell'utensile, l'asse di rotazione intorno all'asse Z è l'asse master, l'asse di rotazione intorno all'asse Y è l'asse slave, e la direzione di riferimento dell'asse utensile è lungo l'asse Z. Assumiamo che l'orientamento dell'utensile dopo la compensazione della direzione utensile sia quello della sottostante figura. Y Orientamento dell'utensile nel sistema di coordinate della macchina Orientamento dell'utensile dopo il movimento (No singolare) X Orientamento dell'utensile prima del movimento (No singolare) In questo caso, gli assi rotativi vanno nelle posizioni per le quali non superano la posizione singolare. (L'utensile si muove nella direzione indicata dalla freccia nella figura qui sopra.) L'utensile non si muove nella direzione indicata dalla freccia nella figura che segue. - 354 - B-64484IT/02 PROGRAMMAZIONE Y 15.FUNZIONI DI COMPENSAZIONE Orientamento dell'utensile dopo il movimento X Orientamento dell'utensile prima del movimento - Quando su una macchina a 5 assi la direzione dell'utensile si avvicina alla posizione di orientamento singolare Se viene eseguita la compensazione della direzione utensile su una macchina a 5 assi, e la direzione dell'utensile si avvicina ad una posizione di orientamento singolare durante l'esecuzione di un blocco, asse rotativo più vicino al pezzo può eseguire un movimento significativo. Inoltre, se il parametro N. 11204 (angolo per decidere su una posizione di orientamento singolare) è diverso da zero, è probabile che la direzione dell'utensile e la posizione della punta non siano corrette durante il processo di decisione riguardo alla posizione di orientamento singolare. Infine, è probabile che l'asse rotativo più vicino all'utensile esegua un movimento improvviso pari all'angolo impostato con il parametro. Pertanto, non assegnare al parametro N. 11204 un valore più grande del necessario. - Note per il caso in cui è delimitata la corsa degli assi rotativi Quando su una macchina a 5 assi viene compensata la direzione dell'utensile, può esistere il caso in cui la posizione della macchina non supera la posizione di orientamento singolare. In questo caso, conformemente al precedente punto 4), viene sempre selezionata la soluzione per la quale gli assi rotativi non superano la posizione singolare. Quindi, in questo caso, il verso del movimento (area) dipende dal punto in cui si trova l'utensile rispetto alla posizione singolare, perché la posizione dell'utensile viene sempre selezionata in modo da evitare che gli assi rotativi superino la posizione singolare. Nel caso in cui sia definita la corsa degli assi rotativi ed in essa esista una posizione singolare, la compensazione montaggio pezzo deve essere attivata dopo aver portato gli assi rotativi nell'area entro la quale devono muoversi, vale a dire, nell'area (A) fra il limite inferiore e la posizione singolare o nell'area (B) fra il limite superiore e la posizione singolare. In generale, si raccomanda di scegliere l'area più grande nel caso in cui le due aree fossero diverse. Limite inferiore della corsa Posizione singolare 0 gradi Limite superiore della corsa Corsa dell'asse rotativo (A) (B) La compensazione montaggio pezzo deve essere attivata dopo aver portato gli assi rotativi in un'area nella quale essi debbano muoversi. Il seguente esempio mostra come il verso del movimento (area) dipenda dalla posizione degli assi rotativi prima dell'attivazione della compensazione montaggio pezzo. L'asse master è l'asse C intorno all'asse Z e l'asse slave è l'asse B intorno all'asse Y (quando C=0). La direzione dell'utensile è +Z quando B=C=0. Qui, supponiamo che la corsa dell'asse B vada da –45 gradi a +100 gradi. - 355 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Z Quando B = C = 0 L'asse C ruota intorno all'asse Z. Y L'asse B ruota intorno all'asse Y. X Se B=0, l'orientamento dell'utensile non cambia in seguito ad un movimento dell'asse C. Ciò significa che la posizione B=0 è una posizione singolare. - 45 gradi Corsa dell'asse B Posizione singolare 0 gradi 100 gradi Consideriamo il seguente programma che non considera l'errore di montaggio del pezzo. Programma senza la compensazione montaggio pezzo O1 N10 G5.1 Q1 N20 G90 G01 B-1.0 C0 F1000 N30 G43.4 H1 N40 X0 Y0 Z0 N50 B90.0 C90.0 Z Fine N40 Y Assoluto Macchina B -1.0 -1.0 C 0.0 0.0 X - 356 - PROGRAMMAZIONE B-64484IT/02 Z 15.FUNZIONI DI COMPENSAZIONE A metà di N50 Y X Z Fine N50 Y Assoluto Macchina B 90.0 90.0 C 90.0 90.0 X Nel blocco N50, la posizione della macchina diventa B90.0 e C90.0, come da programma. Ora, supponiamo che ci sia un errore di -2.0 gradi intorno all'asse Y e che sia stato impostato ∆b=-2.000 come errore di montaggio del pezzo, supponiamo anche che al programma venga aggiunto il blocco N25: Prima dell'attivazione della compensazione montaggio pezzo, la posizione dell'asse B è –1.0, che si trova fra il limite inferiore della corsa e la posizione singolare dell'asse B. -45 gradi Posizione singolare 0 gradi 100 gradi Corsa dell'asse B Posizione dell'asse B nel blocco N20, prima dell'attivazione della compensazione montaggio pezzo. O2 N10 G5.1 Q1 N20 G90 G01 B-1.0 C0 F1000 ; La posizione di macchina dell'asse B è fra il limite inferiore e la posizione singolare N25 G54.4 P1 N30 G43.4 H1 N40 X0 Y0 Z0 N50 B90.0 C90.0 - 357 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE Z B-64484IT/02 Fine N40 Y Assoluto Macchina B 1.0 -1.0 C 0.0 0.0 X Z A metà di N50 Y X Nel blocco N50, la posizione della macchina non supera la posizione singolare. Così l'asse B va dal punto iniziale (–1.0) al punto finale (B–90.0,C–90.0). Di conseguenza, il movimento dell'asse B va oltre il limite inferiore della corsa dell'asse. Infine, supponiamo che nel programma O3 l'asse B venga posizionato su 1.0, che si trova fra la posizione singolare ed il limite superiore, prima dell'attivazione della compensazione montaggio pezzo. In questo caso l'area fra la posizione singolare ed il limite superiore della corsa dell'asse B è quella entro la quale si muoverà l'asse. -45 gradi Posizione singolare 0 gradi 100 gradi Corsa dell'asse B Posizione dell'asse B nel blocco N20, prima dell'attivazione della compensazione montaggio pezzo. O3 N10 G5.1 Q1 N20 G90 G01 B1.0 C0 F1000 ; La posizione di macchina dell'asse B è fra il limite superiore e la posizione singolare N25 G54.4 P1 N30 G43.4 H1 N40 X0 Y0 Z0 N50 B90.0 C90.0 - 358 - PROGRAMMAZIONE B-64484IT/02 Z 15.FUNZIONI DI COMPENSAZIONE Fine N40 Y Assoluto Macchina B 3.0 1.0 C 0.0 0.0 X Z A metà di N50 Y X Z Fine N50 Y Assoluto Macchina B 90.0 90.0 C 90.0 90.0 X Questa volta nel blocco N50 la posizione della macchina diventa B90.0 e C90.0. Di conseguenza, il movimento dell'asse B non va oltre il limite della corsa dell'asse. In O2, il fatto che l'asse B vada oltre il limite inferiore della corsa fa sì che nel blocco N50 la posizione di macchina non corrisponda alla posizione di orientamento singolare. Quando il parametro N. 11204 è 0, la decisione riguardo alla corrispondenza fra l'orientamento dell'utensile e la posizione di orientamento singolare viene presa in base ad una valutazione rigorosa. Di conseguenza, anche se l'utensile è molto vicino alla posizione di orientamento singolare, esso non viene considerato in tale posizione. Quando il parametro N. 11204 ha un valore appropriato e, nel sistema di coordinate della macchina, l'utensile viene considerato essere nella posizione di orientamento singolare, c'è la possibilità che il movimento superi la posizione singolare. - 359 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Nell'esempio precedente, se il valore del parametro N. 11204 è 0.1, il blocco N50 del programma O2 ottiene la posizione di orientamento singolare, e l'asse B, superando la posizione singolare, va nella posizione B90.0,C90.0. O2 N10 G5.1 Q1 N20 G90 G01 B-1.0 C0 F1000 ; N25 G54.4 P1 N30 G43.4 H1 N40 X0 Y0 Z0 N50 B90.0 C90.0 L'asse B è fra il limite inferiore e la posizione singolare O2 viene eseguito con il parametro No 11204=0.1. Z Fine N40 Y Assoluto Macchina B 1.0 -1.0 C 0.0 0.0 X Z A metà di N50 Y X - 360 - PROGRAMMAZIONE B-64484IT/02 Z 15.FUNZIONI DI COMPENSAZIONE Fine N50 Y Assoluto Macchina B 90.0 90.0 C 90.0 90.0 X Nel blocco N50 la posizione della macchina diventa B90.0 e C90.0. Di conseguenza, il movimento dell'asse B non va oltre il limite della corsa dell'asse. - Errore per il quale non è necessario il calcolo della posizione singolare Anche se su una macchina a 5 assi deve essere eseguita la compensazione della direzione utensile, non è necessario considerare la suddetta posizione singolare se tutti gli errori angolari di montaggio del pezzo sono a 0 (solo gli errori nelle direzioni X, Y e Z sono diversi da 0) o l'errore esiste solo per l'asse rotativo più vicino al pezzo. In questo caso, la compensazione dell'asse rotativo viene eseguita con un movimento dell'asse rotativo più vicino al pezzo di entità corrispondente all'errore, ed i calcoli relativi alla posizione singolare non vengono eseguiti. [Esempio per una macchina con rotazione dell'utensile] Per una macchina con rotazione dell'utensile, specificare l'asse C (che ruota intorno all'asse Z) e l'asse B (che ruota intorno all'asse Y), rispettivamente come assi rotativi master e slave. L'asse C è l'asse rotativo più vicino al pezzo. I calcoli relativi alla posizione di orientamento singolare non vengono eseguiti se gli errori angolari di montaggio del pezzo sono: ∆a (errore di rotazione intorno all'asse X): 0° ∆b (errore di rotazione intorno all'asse Y): 0° Errore di rotazione ∆c (errore di rotazione intorno all'asse Z): α° L'asse B si muoverà come da programma. L'asse C andrà in una posizione compensata di α° rispetto a quella specificata. [Esempio per una macchina con rotazione della tavola] Per una macchina con rotazione della tavola, specificare l'asse A (che ruota intorno all'asse X) e l'asse C (che ruota intorno all'asse Z), rispettivamente come assi rotativi master e slave. L'asse C è l'asse rotativo più vicino al pezzo. I calcoli relativi alla posizione di orientamento singolare non vengono eseguiti se gli errori angolari di montaggio del pezzo sono: ∆a (errore di rotazione intorno all'asse X): 0° ∆b (errore di rotazione intorno all'asse Y): 0° Errore di rotazione ∆c (errore di rotazione intorno all'asse Z): α° L'asse A si muoverà come da programma. L'asse C andrà in una posizione compensata di α° rispetto a quella specificata. - 361 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 [Esempio per una macchina mista] Per una macchina mista, specificare l'asse B (che ruota intorno all'asse Y) e l'asse C (che ruota intorno all'asse Z), rispettivamente come assi rotativi master e slave. L'asse C è l'asse rotativo più vicino al pezzo. I calcoli relativi alla posizione di orientamento singolare non vengono eseguiti se gli errori angolari di montaggio del pezzo sono: ∆a (errore di rotazione intorno all'asse X): 0° ∆b (errore di rotazione intorno all'asse Y): 0° Errore di rotazione ∆c (errore di rotazione intorno all'asse Z): α° L'asse B si muoverà come da programma. L'asse C andrà in una posizione compensata di α° rispetto a quella specificata. - Visualizzazione della posizione assoluta Il bit 6 (DAK) del parametro N. 3106 permette di scegliere se nel modo compensazione montaggio pezzo le coordinate assolute devono essere visualizzate nel sistema di coordinate del pezzo o nel sistema di coordinate del pezzo montato. - Visualizzazione della distanza residua Durante la compensazione montaggio pezzo, la visualizzazione della distanza residua indica la distanza lungo l'asse lungo il quale si muove effettivamente l'utensile, non la distanza nel sistema di coordinate del pezzo montato. Se è impostato l'errore di montaggio del pezzo nel senso di rotazione, l'orientamento dell'utensile può diventare un orientamento in posizione singolare. (Per i dettagli, vedi la sezione "Posizione singolare e posizione di orientamento singolare su una macchina a 5 assi".) La coordinata di macchina sull'asse rotativo è qui determinata attraverso l'elaborazione della posizione singolare. A seconda della soluzione dell'angolo dell'asse rotativo selezionata, è possibile che la distanza residua venga ricalcolata. - Variabili delle macro istruzioni Le coordinate nel sistema di coordinate del pezzo sono assegnate alle variabili di sistema da #5041 a #5048 (posizione corrente di ciascun asse). - Corsa degli assi rotativi Nel caso in cui si utilizzino la programmazione dei comandi nel piano di lavoro inclinato o il tipo II del controllo del centro utensile o il tipo II della compensazione raggio utensile per lavorazioni a 5 assi, i parametri N. 19741 - 19744 permettono di limitare la corsa degli assi rotativi. Se è compensata la direzione utensile (bit 0 (RCM) del parametro N. 11200=1), la compensazione degli assi rotativi viene compensata dopo il controllo dei limiti di corsa. Quindi, quando vengono compensati gli assi rotativi è possibile che la loro posizione sia fuori dai rispettivi limiti di corsa. Di conseguenza, se vengono specificati i limiti di corsa degli assi rotativi, impostare le zone di sicurezza in modo da evitare i movimenti oltre i limiti. - 362 - PROGRAMMAZIONE B-64484IT/02 - 15.FUNZIONI DI COMPENSAZIONE Tolleranza entro la quale gli errori di rotazione sono considerati a 0 La tolleranza entro la quale gli errori di rotazione sono considerati a 0 può essere impostata con i parametri N. 1750 - 11752. Quando la macchina ha un asse di rotazione della tavola Quando la macchina ha un asse di rotazione della tavola, i parametri N. 11750 - 11752 sono validi per gli errori di rotazione ∆a, ∆b e ∆c quando la posizione dell'asse di rotazione della tavola nel sistema di coordinate del pezzo è 0. Il significato dei parametri N. 11750 - 11752 è il seguente: Parametro N. 11750: Se l'errore di montaggio del pezzo ∆a è minore o uguale a questo valore, si assume che esso sia uguale a 0. Parametro N. 11751: Se l'errore di montaggio del pezzo ∆b è minore o uguale a questo valore, si assume che esso sia uguale a 0. Parametro N. 11752: Se l'errore di montaggio del pezzo ∆c è minore o uguale a questo valore, si assume che esso sia uguale a 0. Se, quando la posizione dell'asse di rotazione della tavola nel sistema di coordinate del pezzo è 0, il valore assoluto dell'errore di rotazione è minore o uguale al valore dei parametri N. 11750 - 11752, si assume che l'errore sia uguale a 0. (L'incremento minimo di immissione degli errori di rotazione è determinato dall'impostazione del parametro N. 11201.) Qui sotto viene fornito un esempio per il tipo con rotazione della tavola. Configurazione degli assi X, Y, Z, B, C Offset del sistema di coordinate del pezzo: 0 per tutti gli assi rotativi Asse Z Sistema di coordinate della macchina Sistema di coordinate del pezzo Asse Y Asse Z Asse X Asse Y Tavola Asse X Fig. 15.5 (e) Posizione della tavola quando B = 0.0 Compensazione montaggio pezzo: ∆x=0, ∆y=0, ∆z=0, ∆a=0, ∆b=0, ∆c=0.5, B=90.0, C=0 Asse Z Sistema di coordinate del pezzo Asse Y Sistema di coordinate della macchina ∆c = 0.5 ∆b=0 Asse Z Asse X Asse Y ∆a = 0 Asse X Tavola Fig. 15.5 (f) Posizione della tavola quando viene impostato un errore di montaggio del pezzo (B = 90.0) - 363 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Dato che quando vengono misurati gli errori di montaggio del pezzo come posizione dell'asse di rotazione della tavola viene impostato B = 90.0, quando la posizione intorno all'asse B nel sistema di coordinate della macchina è 90.0, gli errori di montaggio del pezzo ∆a, ∆b e ∆c sono definiti come si vede nella Fig. 15.5 (f). Asse Z Sistema di coordinate del pezzo Asse Y ∆c0 Sistema di coordinate della macchina ∆b0 ∆a = 0 ∆b=0 Asse Z Asse Y ∆c = 0.5 Asse X Asse X ∆a0 Tavola Fig. 15.5 (g) Errore di montaggio del pezzo (B=0.0) Quando la posizione intorno all'asse B nel sistema di coordinate del pezzo viene messa a 0.0, la tavola ruota per gli errori di montaggio del pezzo come si vede nella Fig. 15.5 (g). ∆a0, ∆b0 e ∆c0 sono gli errori di rotazione intorno agli assi X, Y e Z nel sistema di coordinate del pezzo quando la posizione dell'asse di rotazione della tavola viene messa a 0 nel sistema di coordinate del pezzo. Per il caso mostrato nella Fig. 15.5 (g), ∆a0 è nella direzione opposta a quella di ∆c e ∆c è 0.5, ∆b è 0.0 per ∆b0, e ∆a è 0.0 per ∆c0, così essi vengono assunti come segue: ∆a0 = -0.5, ∆b0 = 0.0, ∆c0 = 0.0 Le impostazioni dei parametri N. 11750 - 11752 sono valide per questi ∆a0, ∆b0 e ∆c0. Di conseguenza, ∆a0=0.0 viene considerato uguale a 0 quando i parametri sono impostati come segue: Parametro N. 11201=0 Parametro N. 11750=500 Parametro N. 11751=0 Parametro N. 11752=0 Quando i parametri sono impostati come segue: ∆a0 rimane -0.5: Parametro N. 11201=0 Parametro N. 11750=409 Parametro N. 11751=0 Parametro N. 11752=500 AVVERTENZA Notare che le seguenti equazioni possono non essere soddisfatte a seconda degli errori di montaggio del pezzo: Δa 0 = -∆c, ∆b0 = ∆b, ∆c0 = ∆a La tavola ruota per ∆a0, ∆b0 e ∆c0, e per ∆a, ∆b e ∆c nel seguente ordine: a→b→c Per questa ragione, Quando la tavola ruota intorno agli assi rotativi, l'ordine di rotazione (a - b - c) viene cambiato. Per ∆a0 e ∆c, i segni sono diversi perché è diverso il senso di rotazione. Di conseguenza, quando ∆a o ∆b hanno un valore, le suddette equazioni non sono soddisfatte. - 364 - PROGRAMMAZIONE B-64484IT/02 - 15.FUNZIONI DI COMPENSAZIONE Limite superiore e limite inferiore degli errori di rotazione I limiti superiore e inferiore degli errori di rotazione possono essere impostati con i parametri N. 11753 - 11758. Se un errore di rotazione è fuori dal range determinato dai corrispondenti parametri N. 11753 - 11758, quando viene attivata la compensazione montaggio pezzo si verifica l'allarme PS0517, “IMPOST ENTITA' ERRORE FUORI RANGE”. Se la macchina ha assi di rotazione della tavola, i parametri N. 11753 - 11758 sono validi per gli errori di rotazione ∆a, ∆b e ∆c quando la posizione degli assi di rotazione della tavola nel sistema di coordinate del pezzo è 0. - Funzione di salto della lavorazione Durante la compensazione montaggio pezzo, è possibile specificare la funzione di salto (G31). Mettendo a 1 il bit 3 (WSK) del parametro N. 11200, è possibile ottenere le coordinate della posizione di salto nel sistema di coordinate del pezzo montato (sistema di coordinate del programma). La spiegazione che segue utilizza come esempio la sottostante configurazione della macchina. Tipo di unità meccanica: Con rotazione dell'utensile Assi di conversione dell'errore di montaggio del pezzo: X, Y, Z, B, C Entità della compensazione montaggio pezzo: x0.0 y0.0 z0.0 a0.0 b0.0 c90.0 Esempio di programma O0001 N100G90G00X0Y0Z0B0C0 N200G54.4P1 N300X0Y0Z0B0C0 N400G31X100.0F100.0 : Se il programma O0001 viene eseguito con la suddetta configurazione, nel blocco N400 l'utensile si muove nella direzione dell'asse X del sistema di coordinate del pezzo montato (direzione dell'asse Y del sistema di coordinate del pezzo). Così, se durante il blocco N400 perviene il segnale di salto, il valore delle variabili di sistema #100151 #100182 sarà il seguente: Tabella 15.5 (l) WSK=1 WSK=0 X Y Z B C 0 o più 0.0 0.0 0 o più 0.0 0.0 0.0 0.0 0.0 90.0 - 365 - 15.FUNZIONI DI COMPENSAZIONE - PROGRAMMAZIONE B-64484IT/02 Movimenti in rapido dei cicli di foratura Mediante il bit 1 (D3R) del parametro N. 11221, è possibile selezionare il modo rapido per l'esecuzione dei movimenti nella direzione di foratura in un ciclo fisso di foratura nei modi programmazione dei comandi nel piano di lavoro inclinato, conversione tridimensionale delle coordinate, o compensazione montaggio pezzo. Quando il bit 1 (D3R) del parametro N. 11221 è 0, viene selezionato il modo avanzamento in lavoro; quando questo bit è 1, viene selezionato il modo rapido. Per il posizionamento al livello iniziale all'inizio di un ciclo fisso di foratura, però, viene utilizzato il modo rapido, indipendentemente dall'impostazione del bit D3R. Nel modo rapido è possibile applicare la regolazione della velocità in rapido e nel modo avanzamento in lavoro è possibile applicare la regolazione della velocità di avanzamento. Il bit D3R può anche essere utilizzato per cambiare il modo dei movimenti in rapido nella direzione della maschiatura rigida. Per l'accelerazione/decelerazione dopo l'interpolazione. Quando il bit 1 (D3R) del parametro N. 11221 è 1 (modo rapido), il posizionamento in rapido nella direzione di foratura di un ciclo fisso di foratura nei modi programmazione dei comandi nel piano di lavoro inclinato, conversione tridimensionale delle coordinate, o compensazione montaggio pezzo viene accelerato/decelerato indipendentemente lungo ciascun asse in base alle costanti di tempo specificate con i parametri N. 1620 e 1621. Così, quando si esegue il posizionamento di tipo interpolazione lineare con il bit D3R messo a 1, eseguire le seguenti impostazioni: Bit 1 (LRP) del parametro N. 1401=1 Bit 4 (PRT) del parametro N. 1603=1 Parametro N. 1620 Parametro N. 1621 Seleziona il posizionamento di tipo interpolazione lineare. Seleziona l'accelerazione/decelerazione a tempo costante. Impostare lo stesso valore per tutti. Impostare lo stesso valore per tutti. Per l'accelerazione/decelerazione prima dell'interpolazione In un ciclo fisso di foratura viene sempre eseguito il posizionamento lineare nella direzione di foratura. Velocità di avanzamento Quando il bit 1 (D3R) del parametro N. 11221 è 1 (modo rapido), la velocità in rapido nella direzione di foratura di un ciclo fisso di foratura nei modi programmazione dei comandi nel piano di lavoro inclinato, conversione tridimensionale delle coordinate, o compensazione montaggio pezzo è limitata a un valore parametrico indicato qui sotto, se la regolazione della velocità in rapido è il 100%. Nel modo F0 della regolazione della velocità in rapido, però, la velocità in rapido è limitata al minore fra il valore del parametro N. 1421 e i valori parametrici indicati nella Tabella 15.5 (m)Velocità di avanzamento nel modo rapido. Tabella 15.5 (m) Velocità di avanzamento nel modo rapido Quando il parametro No.5412 è 0 Parametro N. 1420 Il minore fra il valore del parametro N. 1420 e il valore del Quando il parametro No.5412 non è 0 parametro N. 5412 Tuttavia, quando è abilitata la funzione decelerazione dall'esterno, la velocità di avanzamento è limitata al minore fra i suddetti valori parametrici dopo l'applicazione della regolazione e la velocità determinata dalla decelerazione dall'esterno. - 366 - PROGRAMMAZIONE B-64484IT/02 15.FUNZIONI DI COMPENSAZIONE NOTA 1 Impostare la velocità rapida per ciascun asse con il parametro N. 1420 e la velocità rapida tangenziale con il parametro N. 5412. 2 Se viene eseguito il posizionamento in rapido senza interpolazione lineare, la velocità è limitata al valore del parametro N. 1420, indipendentemente dall'impostazione del parametro N. 5412. 3 Se è selezionato il modo avanzamento di lavoro (quando il bit 1 (D3R) del parametro N. 11221 è 0), impostare la velocità rapida tangenziale con il parametro N. 5412. Utilizzo di un set di errori di montaggio del pezzo per più sistemi di coordinate del pezzo Gli errori di montaggio del pezzo ∆x, ∆y e ∆z vengono misurati in un certo sistema di coordinate del pezzo. Se i parametri N. 11411 - 11417 sono a 0, per utilizzare più sistemi di coordinate del pezzo per lo stesso stato di montaggio del pezzo è necessario impostare tanti set di errori di montaggio del pezzo ∆x, ∆y e ∆z quanti sono i sistemi di coordinate del pezzo da utilizzare. Posizione effettiva di montaggio del pezzo Sistema di coordinate del pezzo montato per G55 Sistema di coordinate del pezzo montato per G54 Errore di montaggio del pezzo P1 (per G54) Errore di montaggio del pezzo P2 (per G55) Posizione originale di montaggio del pezzo G54 (Esempio di programmazione) G54 G54.4 P1 ... G55 G55 G54.4 P2 ... L'utilizzo del sistema di coordinate del pezzo G55, necessita del set di errori di montaggio del pezzo P2, in esso misurato. Però, il sistema di coordinate del pezzo sul quale sono basati gli errori di montaggio del pezzo può essere specificato con i parametri N. 11411 - 11417 in modo da utilizzare un solo set di errori di montaggio del pezzo per più di un sistema di coordinate del pezzo. Con questa funzione, l'impostazione nei parametri N. 11411 - 11417 del sistema di coordinate del pezzo di riferimento per ciascun set di errori di montaggio del pezzo in un certo stato di montaggio del pezzo permette di utilizzare quel set di errori di montaggio del pezzo per un altro sistema di coordinate del pezzo. Nel sottostante esempio, l'impostazione del sistema di coordinate del pezzo di riferimento per l'errore di montaggio del pezzo P1 a G54 (parametro N. 11411 = 54) permette di utilizzare il sistema di coordinate del pezzo montato per G55 specificando errore di montaggio del pezzo P1. - 367 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Posizione effettiva di montaggio del pezzo Sistema di coordinate del pezzo montato per G55 Sistema di coordinate del pezzo montato per G54 Errore di montaggio del pezzo P1 (basato su G54) Errore di montaggio del pezzo Calculato utilizzando P1 (basato su G54). Posizione originale di montaggio del pezzo G54 (Esempio di programmazione) G54 G54.4 P1 ... G55 G55 G54.4 P1 ... P1 può essere utilizzato anche per il sistema di coordinate del pezzo G55. L'errore di rotazione non è considerato. Impostare lo stesso errore di rotazione impostato per il sistema di coordinate del pezzo di riferimento. Impostare il numero del sistema di coordinate del pezzo sul quale è basato ciascuno degli errori di montaggio del pezzo N. 01 - 07 nei parametri N. 11411 - 11417. Per G54 - G59, impostare 54 - 59. Per G54.1P1 - G54.1P300, impostare 1001 - 1300. Se uno di questi parametri è 0, il set corrispondente di errori di montaggio del pezzo non può essere utilizzato per più sistemi di coordinate del pezzo. Se viene impostato un numero di sistema di coordinate del pezzo non valido, nel blocco di attivazione della compensazione montaggio pezzo si verifica l'allarme PS0436, “PARAMETRO ILLEGALE IN WSC”. Esempi - Esempio 1 O1 è un programma che lavora i lati di un quadro. O1; N10 G55 ; Impostazione del sistema di coordinate N20 G90 G00 X0 Y0 Z300.0 B0 C0 ; Movimento alla posizione iniziale N30 G01 G43 H01 Z40.0 F500. ; Attivazione della compensazione lunghezza utensile H01 è il numero del correttore da utilizzare. N40 X50.0 Y50.0 Z20.0 ; L'altezza Z del piano di lavorazione è di 20.0. N50 X150.0 ; N60 Y150.0 ; N70 X50.0 ; N80 Y50.0 ; N90 X0 Y0 Z40.0 ; N100 G49 Z300.0 ; Cancellazione della compensazione lunghezza utensile Movimento alla posizione iniziale sull'asse Z N110 M30; - 368 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Posizione corretta di montaggio del pezzo Y N70 N80 Pezzo N60 N50 X Sistema di coordinate del pezzo G55 (XYZ) Fig. 15.5 (h) Quando non ci sono errori di montaggio del pezzo Supponiamo che il pezzo non sia nella "posizione corretta di montaggio del pezzo" come nella Fig. 15.5 (i). Posizione corretta di montaggio del pezzo Pezzo spostato. Vengono lavorati i quattro lati. Y' Y N70 ∆c = -20.000 N80 Pezzo ∆y = 20 000 N60 N50 X X' ∆x = 10.000 Sistema di coordinate del pezzo G55 (XYZ) Sistema di coordinate del pezzo montato (X'Y'Z') Fig. 15.5 (i) Quando ci sono errori di montaggio del pezzo Per corrispondere al sistema di coordinate del pezzo montato, il sistema di coordinate del pezzo deve essere ruotato di -20.000 gradi intorno all'asse Z, traslato di 10.000 nella direzione X, e traslato di 20.000 nella direzione Y. In questo caso, impostare i seguenti valori degli errori di montaggio del pezzo: (Gruppo di dati N. 01) x 10.000 y 20.000 z 0.000 a 0.000 B0.000 C-20.000 Aggiungere al programma O1 i blocchi N15 e N115 per l'attivazione/disattivazione della compensazione montaggio pezzo, come si vede qui sotto. - 369 - 15.FUNZIONI DI COMPENSAZIONE O1; N10 G55 ; N15 G54.4 P1 N20 G90 G00 X0 Y0 Z300.0 B0 C0 ; N30 G01 G43 H01 Z40.0 F500. ; N40 X50.0 Y50.0 Z20.0 ; N50 X150.0 ; N60 Y150.0 ; N70 X50.0 ; N80 Y50.0 ; N90 X0 Y0 Z40.0 ; N100 G49 Z300.0 ; N115 G54.4 P0 ; N110 M30; PROGRAMMAZIONE B-64484IT/02 Impostazione del sistema di coordinate Modo compensazione montaggio pezzo ON Movimento alla posizione iniziale Attivazione della compensazione lunghezza utensile H01 è il numero del correttore da utilizzare. L'altezza Z del piano di lavorazione è di 20.0. Cancellazione della compensazione lunghezza utensile Movimento alla posizione iniziale sull'asse Z Modo compensazione montaggio pezzo OFF Quando viene eseguito O1, l'utensile lavora i quattro lati del pezzo spostato, come si vede nella Fig. 15.5 (i). - Esempio 2 O2 è un programma per la lavorazione dei lati di un quadro utilizzando il controllo del centro utensile. La macchina è del tipo con rotazione dell'utensile, l'asse C è l'asse rotativo master e ruota intorno all'asse Z, l'asse B è l'asse slave e ruota intorno all'asse Y. Per la lavorazione del piano normale alla direzione del movimento, l'utensile è inclinato di 45 gradi rispetto alla direzione +Z. O2 ; N10 G55 ; N20 G90 G00 X0 Y0 Z300.0 B0 C0 ; N30 G01 G43.4 H01 Z40.0 F500. ; Impostazione del sistema di coordinate Movimento alla posizione iniziale Attivazione del controllo del centro utensile H01 è il numero del correttore da utilizzare. N40 X50.0 Y50.0 Z20.0 B45.0 C-90.0 ; L'altezza Z del piano di lavorazione è di 20.0. N50 X150.0 ; N60 C0.0 ; N70 Y150.0 ; N80 C90.0 ; N90 X50.0 ; N100 C180.0 ; N110 Y50.0 ; N120 X0 Y0 Z40.0 B0.0 C0.0 ; N130 G49 Z300.0 ; Cancellazione della compensazione lunghezza utensile Movimento alla posizione iniziale sull'asse Z N140 M30; - 370 - B-64484IT/02 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE Posizione corretta di montaggio del pezzo N90 N110 Pezzo N70 N50 X Sistema di coordinate del pezzo XYZ Fig. 15.5 (j) Controllo del centro utensile quando non ci sono errori di montaggio Supponiamo che il pezzo non sia nella "posizione corretta di montaggio del pezzo" come per l'esempio 1, e che le anche impostazioni relative all'errore di montaggio siano quelle dell'esempio 1. Inoltre, come si vede qui sotto, ad O2 vengono aggiunti i blocchi N15, N16, N135 e N136 per convalidare l'errore di montaggio del pezzo come nel caso dell'esempio 1. O2 ; N10 G55 ; N15 G05.1 Q1 N16 G54.4 P1 N20 G90 G00 X0 Y0 Z300.0 B0 C0 ; N30 G01 G43.4 H01 Z40.0 F500. ; Impostazione del sistema di coordinate Modo contornatura AI ON Modo compensazione montaggio pezzo ON Movimento alla posizione iniziale Attivazione del controllo del centro utensile H01 è il numero del correttore da utilizzare. N40 X50.0 Y50.0 Z20.0 B45.0 C-90.0 ; L'altezza Z del piano di lavorazione è di 20.0. N50 X150.0 ; N60 C0.0 ; N70 Y150.0 ; N80 C90.0 ; N90 X50.0 ; N100 C180.0 ; N110 Y50.0 ; N120 X0 Y0 Z40.0 B0.0 C0.0 ; N130 G49 Z300.0 ; Cancellazione della compensazione lunghezza utensile Movimento alla posizione iniziale sull'asse Z N135 G54.4 P0 ; Modo compensazione montaggio pezzo OFF N136 G05.1 Q0 ; Modo contornatura AI OFF N140 M30; Prima di eseguire O2, mettere a 1 il bit 0 (RCM) del parametro N. 11200 per eseguire la compensazione della direzione utensile. Quando l'utensile lavora i lati del pezzo con la punta, esso è inclinato di 45 gradi rispetto alla direzione +Z nel piano normale alla direzione del movimento, come si vede nella Fig. 15.5 (k). - 371 - 15.FUNZIONI DI COMPENSAZIONE Y Posizione corretta di montaggio del pezzo PROGRAMMAZIONE B-64484IT/02 Pezzo spostato. Vengono lavorati i quattro lati. Y' N90 N110 Pezzo N70 N50 X X' Sistema di coordinate del pezzo XYZ Sistema di coordinate del pezzo montato X'Y'Z' Fig. 15.5 (k) Controllo del centro utensile quando ci sono errori di montaggio Limitazioni In questo paragrafo vengono descritte le limitazioni relative alla compensazione montaggio pezzo. - Codici G specificabili Quando è abilitata la compensazione montaggio pezzo, possono essere specificati i seguenti codici G: G00 G01 G02 G03 G04 G05.1 Q0/Q1 G10 G11 G17 G18 G19 G28 G29 G30 G31 G40 G41 G41.2/G41.4/G41.5 G41.6 G42 Posizionamento Interpolazione lineare Interpolazione circolare in senso orario Interpolazione circolare in senso antiorario Sosta Modo contornatura AI OFF/ON Introduzione dati da programma Cancellazione del modo introduzione dati da programma Selezione del piano (XY) Selezione del piano (ZX) Selezione del piano (YZ) Ritorno al punto di riferimento Ritorno dal punto di riferimento Ritorno al secondo, terzo o quarto punto di riferimento Funzione di salto della lavorazione Compensazione raggio utensile / compensazione tridimensionale dell'utensile cancellate Compensazione raggio utensile a sinistra / compensazione tridimensionale dell'utensile a sinistra Compensazione tridimensionale dell'utensile a sinistra (tipo 1) (solo se si utilizza anche il controllo del centro utensile) Compensazione tridimensionale dell'utensile a sinistra (tipo 2) (solo se si utilizza anche il controllo del centro utensile) Compensazione raggio utensile a destra / compensazione tridimensionale dell'utensile a destra - 372 - PROGRAMMAZIONE B-64484IT/02 G42.2/G42.4/G42.5 G42.6 G43 G43.4 G43.5 G49 (G49.1) G50 G51 G50.1 G51.1 G53 G53.1 G65 G66 G67 G68.2 G73, G74, G76, G80 .. G89 15.FUNZIONI DI COMPENSAZIONE Compensazione tridimensionale dell'utensile a destra (tipo 1) (solo se si utilizza anche il controllo del centro utensile) Compensazione tridimensionale dell'utensile a destra (tipo 2) (solo se si utilizza anche il controllo del centro utensile) Compensazione lunghezza utensile + Controllo del centro utensile (tipo 1) Controllo del centro utensile (tipo 2) Compensazione lunghezza utensile cancellata Scala cancellata Scala Immagine speculare programmabile cancellata Immagine speculare programmabile Selezione del sistema di coordinate della macchina Controllo della direzione dell'asse utensile Richiamo macro Richiamo macro modale Richiamo macro modale cancellato Programmazione dei comandi nel piano di lavoro inclinato Cicli fissi di foratura M G69 Rotazione del sistema di coordinate/conversione tridimensionale del sistema di coordinate/programmazione dei comandi nel piano di lavoro inclinato cancellate Programmazione assoluta Programmazione incrementale Avanzamento al minuto Avanzamento al giro Ciclo fisso : ritorno al livello iniziale Ciclo fisso : ritorno al livello del punto R G90 G91 G94 G95 G98 G99 T G69.1 Rotazione del sistema di coordinate/conversione tridimensionale del sistema di coordinate/programmazione dei comandi nel piano di lavoro inclinato cancellate G90 Programmazione assoluta (per i sistemi B e C di codici G) G91 Programmazione incrementale (per i sistemi B e C di codici G) G94 Avanzamento al minuto (per i sistemi B e C di codici G) G95 Avanzamento al giro (per i sistemi B e C di codici G) G98 Ciclo fisso : ritorno al livello iniziale (per i sistemi B e C di codici G) G99 Ciclo fisso : ritorno al livello del punto R (per i sistemi B e C di codici G) - Codici G modali che permettono l'attivazione della compensazione montaggio pezzo La compensazione montaggio pezzo può essere specificata nei seguenti stati modali: G00 G01 G13.1 G15 G17 G18 G19 G20 Posizionamento Interpolazione lineare Modo interpolazione in coordinate polari cancellato Comando in coordinate polari cancellato Selezione del piano (XY) Selezione del piano (ZX) Selezione del piano (YZ) Programmazione in pollici - 373 - 15.FUNZIONI DI COMPENSAZIONE G21 G23 G25 G40 G49 (G49.1) G50 G50.1 G50.2 G54 - G59, G54.1 G64 G67 G80 G80.5 (G80.8) G97 PROGRAMMAZIONE B-64484IT/02 Programmazione in millimetri Controllo delle zone di sicurezza OFF Rilevazione errore di velocità del mandrino OFF Compensazione raggio utensile / compensazione tridimensionale dell'utensile cancellate Compensazione lunghezza utensile cancellata Scala cancellata Immagine speculare programmabile cancellata Tornitura poligonale cancellata Selezione del sistema di coordinate del pezzo Modo taglio Richiamo macro modale cancellato Ciclo fisso cancellato Sincronizzazione EGB cancellata Controllo velocità di taglio costante cancellato M G40.1 Controllo della direzione normale cancellato G54.2 P0 Compensazione dinamica rotazione tavola cancellata G69 Rotazione del sistema di coordinate/conversione tridimensionale del sistema di coordinate/programmazione dei comandi nel piano di lavoro inclinato cancellate G90 Programmazione assoluta G91 Programmazione incrementale G94 Avanzamento al minuto G95 Avanzamento al giro G98 Ritorno al livello iniziale del ciclo fisso G99 Ritorno al livello R del ciclo fisso T G69 G69.1 G90 G91 G94 G95 G98 G99 - Immagine speculare per doppia torretta OFF/modo lavorazione bilanciata cancellato Rotazione del sistema di coordinate/conversione tridimensionale del sistema di coordinate/programmazione dei comandi nel piano di lavoro inclinato cancellate Programmazione assoluta (per i sistemi B e C di codici G) Programmazione incrementale (per i sistemi B e C di codici G) Avanzamento al minuto (per i sistemi B e C di codici G) Avanzamento al giro (per i sistemi B e C di codici G) Ritorno al livello iniziale del ciclo fisso (per i sistemi B e C di codici G) Ritorno al livello R del ciclo fisso (per i sistemi B e C di codici G) Intervento manuale e interruzione del volantino Nel modo compensazione montaggio pezzo, non eseguire interventi manuali né interruzioni del volantino. - Comandi di posizionamento rapido Quando si utilizza la compensazione montaggio pezzo, selezionare il posizionamento rapido con interpolazione lineare (mettendo a 1 il bit 1 (LRP) del parametro N. 1401). - Relazioni con altri comandi modali I comandi per le seguenti funzioni devono essere annidati all'interno dei comandi relativi alla compensazione montaggio pezzo, devono trovarsi fra i comandi G54.4 P_ e G54.4 P0. Vale a dire che G54.4 P_ deve essere specificato quando i modi corrispondenti a queste funzioni sono OFF, e che questi modi devono essere cancellati prima di specificare G54.4 P0 . - 374 - • 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 • • • • • Compensazione raggio fresa (G40, G41, G41.2, G41.3, G41.4, G41.5, G41.6, G42, G42.2, G42.4, G42.5, G42.6) Compensazione lunghezza utensile (G43, G43.4, G43.5, G49) Immagine speculare programmabile (G50.1, G51.1) Scala (G51) Programmazione dei comandi nel piano di lavoro inclinato (G68.2, G69) Ciclo fisso (G73,G74,G76,G80 - G89) - Controllo assi da PMC Nel modo compensazione montaggio pezzo, non eseguire il controllo da PMC degli assi utilizzati per la compensazione montaggio pezzo. - Movimenti di attivazione/cancellazione della compensazione lunghezza utensile Per eseguire la compensazione lunghezza utensile (compreso il controllo del centro utensile) nel modo compensazione montaggio pezzo, mettere a 1 il bit 6 (TOS) del parametro N. 5006 o il bit 2 (TOP) del parametro N. 11400 to 1 (esecuzione della compensazione lunghezza utensile mediante traslazione del sistema di coordinate). Se i parametri TOS e TOP sono a 0, si verifica l'allarme PS0438, “PARAMETRO ILLEGALE NELLA COMP. DIREZIONE UTENSILE”. - Immagine speculare Se vengono utilizzate contemporaneamente la compensazione montaggio pezzo e l'immagine speculare programmabile, l'immagine speculare programmabile viene applicata alle coordinate nel sistema di coordinate del pezzo montato, quindi viene eseguita la compensazione montaggio pezzo. Y Percorso programmato Y' X' Percorso effettivo Centro dell'immagine speculare Sistema di coordinate del pezzo montato X Sistema di coordinate del pezzo Se vengono utilizzate contemporaneamente la compensazione montaggio pezzo e l'immagine speculare dall'esterno (con il segnale di immagine speculare o il dato di impostazione corrispondente), viene eseguita la compensazione montaggio pezzo, quindi viene applicata l'immagine speculare. Y Percorso effettivo Percorso programmato X' Y' Sistema di coordinate del pezzo montato Sistema di coordinate del pezzo X Posizione nella quale è applicata l'immagine speculare - 375 - 15.FUNZIONI DI COMPENSAZIONE - PROGRAMMAZIONE B-64484IT/02 Controllo delle zone di sicurezza prima del movimento nel modo compensazione montaggio pezzo, il controllo zone di sicurezza prima del movimento non è disponibile. - Quando il controllo orientamento utensile viene utilizzato insieme al tipo 2 del controllo del centro utensile Quando si utilizza il controllo orientamento utensile insieme al tipo 2 del controllo del centro utensile, se l'angolo fra l'orientamento dell'utensile e l'orientamento singolare è minore del parametro N. 19738, l'orientamento dell'utensile a fine blocco cambia in modo da superare la posizione di orientamento singolare. Però, se viene compensata la direzione dell'utensile (bit 0 (RCM) del parametro N. 11200 = 1), è possibile che l'utensile non superi la posizione di orientamento singolare a causa della compensazione, successiva al controllo orientamento utensile. - Ripartenza del programma Non riavviare un programma per il quale viene eseguita la compensazione montaggio pezzo. - Reset Perché un reset cancelli il modo compensazione montaggio pezzo, il bit 2 (D3R) del parametro N. 5400 deve essere 0. Il modo compensazione lunghezza utensile (compreso il controllo del centro utensile) attivato nel modo compensazione montaggio pezzo e il corrispondente vettore di compensazione vengono cancellati da un reset indipendentemente dall'impostazione dei seguenti parametri: • Bit 6 (CLR) del parametro N. 3402 • Bit 0 (C08) del parametro N. 3407 • Bit 6 (LVK) del parametro N. 5003 - Coordinate assolute dell'asse slave nel controllo sincrono Se è attiva la sincronizzazione degli assi di avanzamento, le coordinate assolute dell'asse slave non vengono visualizzate correttamente. - Spostamento del sistema di coordinate del pezzo Non eseguire la compensazione montaggio pezzo dopo G52 (impostazione del sistema di coordinate locali) o G92/G50 (Serie T) (spostamento del sistema di coordinate del pezzo). Se è stato spostato il sistema di coordinate del pezzo, presettarlo con G92.1 o con la funzioni specifiche di preset del sistema di coordinate del pezzo per asse prima di attivare la compensazione montaggio pezzo. - Ritorno manuale al punto di riferimento Se nel modo compensazione montaggio pezzo viene eseguito un ritorno manuale al punto di riferimento, si verifica l'allarme PS5324, “AZZERAMENTO NON ESEGUITO”. Prima di eseguire un ritorno manuale al punto di riferimento, cancellare il modo compensazione montaggio pezzo. - 376 - 15.6 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 CORREZIONE UTENSILE PER LE FUNZIONI DI FRESATURA E DI TORNITURA Introduzione Precedentemente, la schermata delle correzioni utensile dei sistemi per centri di lavoro era diversa da quella dei sistemi per torni. Questa funzione permette di visualizzare e manipolare le correzioni utensile su una schermata comune. Abilitando questa funzione diventa possibile dare alle correzioni utensile una configurazione adatta a lavorazioni complesse grazie alla possibilità eseguire le correzioni utensile dei sistemi per torni anche sui sistemi per centri di lavoro. Formato M G43.7 Hα; : : G49 ; o H0; Modo correzioni utensile ON Modo correzioni utensile OFF α : Specificare un codice H, seguito da un numero di correttore. T E’ conforme al formato dei sistemi per torni. Spiegazioni - Correzioni utensile (G43.7) M Programmando G43.7 con un codice H, è possibile eseguire la correzione utensile. Questa funzione esegue la correzione utensile utilizzando i valori memorizzati per gli assi X, Y e Z nel correttore specificato con il codice H. Punto programmato H : Numero correttore Correzione geometria asse X H : Numero correttore Correzione usura asse X H : Numero correttore Correzione usura asse Z H : Numero correttore Correzione geometria asse Z Fig. 15.6 (a) Corrispondenza fra il codice H specificato e le correzioni geometria ed usura (esempio con gli assi X e Z) - 377 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Correzione con movimento dell'utensile e correzione con traslazione del sistema di coordinate M La correzione totale (geometria più usura) viene eseguita con la modalità selezionata mediante il bit 6 (TOS) del parametro N. 5006 o il bit 2 (TOP) del parametro N. 11400. Non è possibile specificare modalità diverse per la correzione geometria e la correzione usura. - Relazione fra la compensazione lunghezza utensile e la correzione utensile M Se il comando G43.7 viene eseguito nel modo G43, la compensazione lunghezza utensile, abilitata nel modo G43, viene cancellata automaticamente ed al suo posto viene abilitata la correzione utensile specificata da G43.7. Se il comando G43 viene eseguito nel modo G43.7, la correzione utensile, abilitata nel modo G43.7, viene cancellata automaticamente ed al suo posto viene abilitata la compensazione lunghezza utensile specificata da G43. - Compensazione lunghezza utensile sull'Asse Z Fra i valori di compensazione utilizzati dalle seguenti funzioni viene utilizzato solo quello impostato per la lunghezza Z sulla schermata delle correzioni utensile. I valori impostati per gli assi X e Y, per il raggio, ecc. non vengono utilizzati. G43/G44 : Compensazione lunghezza utensile G43.1: Compensazione lunghezza utensile nella direzione dell'asse utensile G43.4 : Controllo centro utensile (tipo 1) G43.5 : Controllo centro utensile (tipo 2) - Parametri relativi alla correzione utensile M Di seguito sono elencati i parametri che sono validi anche nel modo G43.7 e quelli che non lo sono. Parametri validi anche nel modo G43.7 Bit 6 (LVK) del parametro N. 5003 Bit 6 (TOS) del parametro N. 5006 Bit 6 (3OC) del parametro N. 5007 Bit 7 (3OF) del parametro N. 5007 Bit 2 (TOP) del parametro N. 11400 Parametri non validi nel modo G43.7 Bit 0 (TLC) e 1 (TLB) del parametro N. 5001 Indipendentemente dall'impostazione di questi parametri, le correzioni utensili sono valide per gli assi X e Y. Bit 3 (TAL) del parametro N. 5001 Indipendentemente dall'impostazione di questo parametro, viene sempre seguita l'impostazione 1, "Non genera un allarme quando sono compensati due o più assi". Bit 6 (EVO) del parametro N. 5001 Indipendentemente dall'impostazione di questo parametro, viene sempre seguita l'impostazione 0, "Il nuovo valore diventa valido nel blocco successivo nel quale sono specificati G43, G44 o un codice H". - 378 - B-64484IT/02 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Misura automatica della lunghezza utensile (Serie M) M Se è utilizzata la funzione correzioni utensile per lavorazioni complesse, il valore ottenuto dalla misura automatica della lunghezza utensile (Serie M) G37 viene acquisito come lunghezza utensile (lunghezza Z). Impostando il bit 4 (MMT) del parametro N. 11403, è possibile acquisire tale valore come lunghezza nella direzione dell'asse utilizzato per la misura (lunghezza X, Y o Z). Esempio) Se la misura viene eseguita lungo l'asse X, il valore viene acquisito come correzione per l'asse X. Se la misura viene eseguita lungo l'asse Y, il valore viene acquisito come correzione per l'asse Y. Se la misura viene eseguita lungo l'asse Z, il valore viene acquisito come correzione per l'asse Z. - Introduzione diretta B delle correzioni utensile misurate M Se è utilizzata la funzione correzioni utensile per lavorazioni complesse, il valore ottenuto dalla funzione B di introduzione diretta delle correzioni misurate viene acquisito come lunghezza utensile (lunghezza Z). Impostando il bit 4 (MMT) del parametro N. 11403, è possibile acquisire tale valore come lunghezza nella direzione dell'asse utilizzato per la misura (lunghezza X o Z). Esempio) Se la misura viene eseguita lungo l'asse X, il valore viene acquisito come correzione per l'asse X. Se la misura viene eseguita lungo l'asse Z, il valore viene acquisito come correzione per l'asse Z. - Misura della lunghezza utensile/origine pezzo M Il valore ottenuto dalla misura della lunghezza utensile/origine pezzo viene acquisito come lunghezza utensile (lunghezza Z). Introduzione dati da programma (G10) Il formato utilizzato per l'immissione/emissione dei dati dalla schermata delle correzioni utensile e per l'introduzione delle correzioni utensili da programma è il formato G10 descritto qui sotto. - 379 - 15.FUNZIONI DI COMPENSAZIONE • PROGRAMMAZIONE B-64484IT/02 Formato G10 dei dati delle correzioni utensili G10 Lbaaa + Vari formati • L formato: Lbaaa aaa : 200- Correzioni utensile, compensazione raggio utensile, direzione della punta immaginaria dell'utensile Correzione usura : 201- Correzioni utensile, compensazione raggio utensile, direzione della punta immaginaria dell'utensile Correzione geometria : 202- Compensazione raccordo per la programmazione del punto di taglio Correzione usura : 203- Compensazione raccordo per la programmazione del punto di taglio Correzione geometria b : 0Sovrascrive i dati esistenti. : 1Somma i dati specificati ai dati esistenti. • Vari formati aaa : 200,201- Correzioni utensile, compensazione raggio utensile, direzione della punta immaginaria dell'utensile P_ : Numero correttore X_ : Correzione asse X Z_ : Correzione asse Z (compensazione lunghezza utensile) R_ : Compensazione raggio utensile Q_ : Direzione della punta immaginaria Y_ : Correzione asse Y : 202,203- Compensazione raccordo per la programmazione del punto di taglio P_ : Numero correttore R_ : Compensazione raccordo • Esempio O0010 ; G10L200P1X_Z_R_Q_Y_; G10L1200P1X_Z_R_Q_Y_; G10L201P1X_Z_R_Y_; G10L1201P1X_Z_R_Y_; : : G10L202P1R_; G10L1202P1R_; G10L203P1R_; G10L1203P1R_; Sovrascrive le correzioni usura utensile. Somma i valori alle correzioni usura utensile esistenti. Sovrascrive le correzioni geometria utensile. Somma i valori alle correzioni geometria utensile esistenti. Sovrascrive la compensazione raccordo per l'usura utensile. Somma il valore di R alla compensazione raccordo per l'usura utensile. Sovrascrive la compensazione raccordo per la geometria utensile. Somma il valore di R alla compensazione raccordo per la geometria utensile. M02 ; - 380 - B-64484IT/02 - PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Introduzione nel formato G10 dei sistemi per centri di lavoro M I dati delle correzioni possono essere introdotti utilizzando il formato G10 dei sistemi per centri di lavoro. Notare, però, che vengono introdotti solo i dati specificati nel formato L. G10G90L10P1R1.001 G10G90L11P1R2.001 G10G90L12P1R3.001 G10G90L13P1R4.001 G10G90L110P1R5.001 G10G90L111P1R6.001 I dati che supportano il formato L sono: L10 : Correzione utensile lungo l'asse Z (geometria) L11 : Correzione utensile lungo l'asse Z (usura) L12 : Correzione utensile (geometria) L13 : Correzione utensile (usura) L110 : Compensazione raccordo (geometria) L111 : Compensazione raccordo (usura) NOTA L'introduzione nel formato G10 dei sistemi per centri di lavoro è disponibile solo se il parametro N. 983 specifica un sistema per centri di lavoro (è a 1). - Introduzione nel formato G10 dei sistemi per torni T I dati delle correzioni possono essere introdotti utilizzando il formato G10 dei sistemi per torni. G10P1X1.001Z2.001R3.001Q4Y5.001 Pn : Numero correttore (da 1 al numero di correttori) Pn ≤ 10000 : Correzione usura Pn ≥ 10001 : Correzione geometria X_ : Correzione utensile lungo l'asse X Z_ : Correzione utensile lungo l'asse Z R_ : Compensazione raggio utensile Q_ : Direzione della punta immaginaria Y_ : Correzione utensile lungo l'asse Y NOTA L'introduzione nel formato G10 dei sistemi per torni è disponibile solo se il parametro N. 983 specifica un sistema per torni (è a 0). - 381 - 15.FUNZIONI DI COMPENSAZIONE PROGRAMMAZIONE B-64484IT/02 Variabili di sistema delle macroistruzioni M Numero della variabile #2001 - #2200 da #10001 a #10999 #2201 - #2400 da #11001 a #11999 da #12001 a #12999 da #13001 a #13999 Numero della variabile #2001 - #2200 da #10001 a #10999 #2201 - #2400 da #11001 a #11999 #2401 - #2600 da #12001 a #12999 #2601 - #2800 da #13001 a #13999 Quando il bit 3 (V15) del parametro N. 6000 è 0 Nome della Attributo Descrizione variabile [#_OFSHW[n]] R/W Correzione utensile lungo l'asse Z (usura) oppure (Vecchio nome: Correzione utensile (codice H, usura) [#_OFSZW[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSHG[n]] R/W Correzione utensile lungo l'asse Z (geometria) oppure (Vecchio nome: Correzione utensile (codice H, geometria) [#_OFSZG[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSDW[n]] R/W Correzione utensile (usura) oppure (Vecchio nome: Correzione utensile (codice D, usura) [#_OFSRW[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSDG[n]] R/W Correzione utensile (geometria) oppure (Vecchio nome: Correzione utensile (codice H, geometria) [#_OFSRG[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Quando il bit 3 (V15) del parametro N. 6000 è 1 Nome della Attributo Descrizione variabile R/W [#_OFSHG[n]] Correzione utensile lungo l'asse Z (geometria) (Vecchio nome: Correzione utensile (codice H, geometria) oppure Nota) L'indice n rappresenta un numero di correttore [#_OFSZG[n]] (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSHW[n]] R/W Correzione utensile lungo l'asse Z (usura) (Vecchio nome: Correzione utensile (codice H, usura) oppure Nota) L'indice n rappresenta un numero di correttore [#_OFSZW[n]] (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). (Nota 1) R/W [#_OFSDG[n]] Correzione utensile (geometria) (Vecchio nome: Correzione utensile (codice H, geometria)) oppure [#_OFSRG[n]] L'indice n rappresenta un numero di correttore (da 1 a 200). Nota 1) Abilitata quando il bit 5 (D15) del parametro N. 6004 è 1. Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). (Nota 1) R/W [#_OFSDW[n]] Correzione utensile (usura) (Vecchio nome: Correzione utensile (codice D, usura)) oppure [#_OFSRW[n]] L'indice n rappresenta un numero di correttore (da 1 a 200). Nota 1) Abilitata quando il bit 5 (D15) del parametro N. 6004 è 1. Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). - 382 - B-64484IT/02 Numero della variabile #21001 - #21999 #22001 - #22999 #23001 - #23999 #135001 #135999 #136001 #136999 #137001 #137999 #138001 #138999 PROGRAMMAZIONE 15.FUNZIONI DI COMPENSAZIONE Variabili di sistema non dipendenti dal bit 3 (V15) del parametro N. 6000 Nome della Attributo Descrizione variabile [#_CORR_G[n]] R/W Compensazione raccordo (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_CORR_W[n]] R/W Compensazione raccordo (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFST[n]] R/W Posizione della punta immaginaria Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSXW[n]] R/W Correzione utensile lungo l'asse X (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSYW[n]] R/W Correzione utensile lungo l'asse Y (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). R/W [#_OFSXG[n]] Correzione utensile lungo l'asse X (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSYG[n]] R/W Correzione utensile lungo l'asse Y (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). T E' conforme alle variabili di sistema convenzionali. Limitazioni (1) Funzioni non utilizzabili insieme a questa funzione • Funzione correzione utensile B • Variazione della correzione attiva mediante un movimento manuale • Funzione Basic Operation Package 2 • MANUAL GUIDE i Se viene ordinata una di queste funzioni insieme a questa, la schermata delle correzioni utensile viene sostituita da quella convenzionale e G43.7 non può essere utilizzato. (2) Se è utilizzata questa funzione, le specifiche della seguente funzione sono parzialmente limitate. La protezione delle correzioni utensile non può essere eseguita con la funzione di protezione dati ad 8 livelli. Note NOTA Questa funzione è opzionale. - 383 - 16.MACROISTRUZIONI 16 PROGRAMMAZIONE B-64484IT/02 MACROISTRUZIONI I sottoprogrammi sono utili per ripetere la stessa operazione. Le macro istruzioni, invece, permettendo di usare variabili, istruzioni aritmetiche e logiche e istruzioni di salto condizionato, consentono di sviluppare facilmente programmi di uso generale quali operazioni di esecuzione di tasche e cicli fissi definiti dall'utilizzatore. Un programma pezzo può richiamare una macro con un semplice comando, simile a quelli utilizzati per richiamare i sottoprogrammi. Programma di lavorazione Macro O0001 ; : : : G65 P9010 R50.0 L2 ; : : M30 ; 16.1 O9010 #1=#18/2 ; G01 G42 X#1 Y#1 F300 ; 02 X#1 Y-#1 R#1 ; : : : M99; VARIABILI In un normale programma pezzo i codici G e le coordinate sono specificati direttamente con un valore numerico; possibili esempi sono G100 e X100.0. In una macro, i valori numerici possono essere specificati direttamente o utilizzando il numero di una variabile, il cui valore può essere modificato dal programma o manualmente, tramite il pannello MDI. #1=#2+100 ; G01 X#1 F300 ; Spiegazioni - Rappresentazione delle variabili Le variabili si specificano con il simbolo # seguito da un numero. #i (i = 1, 2, 3, 4, .....) [Esempio] #5 #109 #1005 Per specificare il numero di una variabile si può utilizzare una <espressione>. Le espressioni sono descritte nella sezione relativa alle operazioni aritmetiche e logiche. #[<espressione>] [Esempio] #[#100] #[#1001-1] #[#6/2] Nelle descrizioni che seguono, #i può essere sostituito da #[<espressione>]. - Tipi di variabili Le variabili sono suddivise in variabili locali, variabili comuni e variabili di sistema, in base al loro numero. Ciascun tipo di variabili ha impiego e caratteristiche specifici. Sono disponibili anche costanti di sistema di sola lettura. - 384 - B-64484IT/02 - PROGRAMMAZIONE 16.MACROISTRUZIONI Intervallo dei valori delle variabili Le variabili locali e le variabili comuni possono avere un valore uguale a zero o un valore compreso nei seguenti intervalli. Se il risultato di un calcolo è fuori dai limiti, si verifica l'allarme PS0111, “OVERFLOW : NUMERO REALE”. Quando il bit 0 (F16) del parametro N. 6008 è 0: Valore massimo: appross. ±10308 Valore minimo: appross. ±10-308 I valori numerici gestiti dalle macroistruzioni sono conformi allo standard IEEE e sono trattati come numeri reali a doppia precisione. Gli errori risultanti dalle operazioni dipendono dalla precisione. Quando il bit 0 (F16) del parametro N. 6008 è 1: Valore massimo: appross. ±1047 Valore minimo: appross. ±10-29 - Variabili locali (#1-#33) Una variabile locale è una variabile utilizzata localmente in una macro. Vale a dire che la variabile locale #i utilizzata da una macro chiamata in un certo momento è diversa da quella utilizzata da una macro chiamata in un momento diverso, anche se le due macro sono la stessa. Quindi, ad esempio, se la macro A richiama la macro B in una serie di richiami annidati, è impossibile che la macro B modifichi erroneamente le variabili locali utilizzate dalla macro A, utilizzandole a sua volta. Le variabili locali si utilizzano per passare ad una macro i suoi argomenti. Per le informazioni relative alla corrispondenza tra gli argomenti e gli indirizzi, riferirsi alla sezione relativa ai comandi di richiamo delle macro. Lo stato iniziale di una variabile locale per la quale non è stato passato un argomento è <nulla> e la variabile può essere utilizzata liberamente. L'attributo di una variabile locale è READ/WRITE (lettura (Read) e scrittura (Write) abilitate). - Variabili comuni (#100-#199, #500-#999) A differenza delle variabili locali, che sono utilizzate localmente, le variabili comuni sono condivise tra il programma principale, i sottoprogrammi richiamati dal programma principale e le macro. Vale a dire che la variabile #i utilizzata da una macro è la stessa utilizzata da tutte le altre macro. Di conseguenza, il valore di una variabile comune ottenuto in una macro può essere utilizzato da un'altra. Normalmente l'attributo di una variabile comune è READ/WRITE (lettura (Read) e scrittura (Write) abilitate). Tuttavia è possibile proteggere dalla scrittura le variabili comuni mediante i parametri N. 6031 e 6032 (l'attributo delle variabili specificare diventa READ (solo lettura)). Le variabili comuni possono essere utilizzate liberamente in quanto il loro significato non è predefinito dal sistema. Il numero delle variabili comuni disponibili dipende dalle opzioni selezionate: (a) 100 variabili comuni (con la sola opzione macroistruzioni) Possono essere utilizzate le variabili comuni #100 - #149 e #500 - #549. All'accensione, le variabili #100 - #149 sono nulle, mentre le variabili #500 - #531 contengono i valori precedenti. (b) 600 variabili comuni (con l'opzione macroistruzioni e l'opzione variabili aggiuntive delle macroistruzioni) Possono essere utilizzate le variabili comuni #100 - #199 e #500 - #999. All'accensione, le variabili #100 - #199 sono nulle, mentre le variabili #500 - #999 contengono i valori precedenti. - Protezione dalla scrittura di una variabile locale E' possibile proteggere dalla scrittura più variabili comuni (#500 - #999) mediante i parametri N. 6031 e 6032 (l'attributo delle variabili specificare diventa READ (solo lettura). Questa protezione è abilitata sia per l'introduzione dei valori o la cancellazione da MDI sulla schermata delle macro sia per le operazioni di scrittura delle variabili specificate da un programma macro. Se un programma pezzo utilizza una variabile comune protetta dalla scrittura nel lato sinistro di un'operazione (ne specifica la scrittura) si verifica l'allarme PS0116, “VARIABILE PROTETTA DALLA SCRITTURA”. - 385 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Condivisione delle variabili macro comuni fra i canali Tutte o parte delle variabili macro comuni (#100 - #149 (#199, #499) e #500 - #599 (#999)) possono essere utilizzate come dati comuni impostando appropriatamente i parametri N. 6036 (#100 - #149 (#199, #499)) e 6037 (#500 - #599 (#999)). Inoltre è possibile canale per canale se le variabili devono essere condivise o no impostando appropriatamente il bit 0 (NC1) del parametro N. 6020 per il parametro N. 6036 ed il bit 1 (NC2) del parametro N. 6020 per il parametro N. 6037. [Esempio] Assumiamo che il valore del parametro N. 6036 sia 20. Se l'impostazione del parametro N. 6036 non deve valere per il solo canale 4, eseguire le seguenti impostazioni (Tabella 16.1 (a)). Tabella 16.1 (a) Numero canale 1 2 3 4 - N.6036 NC1 20 0 0 0 1 Variabili comuni condivise Le variabili #100 - #119 sono comuni a tutti i canali, mentre le altre variabili di ciascun canale sono indipendenti. Le variabili del canale 4 sono tutte indipendenti. Variabili di sistema Il significato delle variabili di sistema non può essere cambiato. L'attributo di una variabile di sistema può essere READ (solo lettura), WRITE (solo scrittura) o READ/WRITE (lettura e scrittura) a seconda della natura della variabile. - Costanti di sistema Le costanti di sistema sono simili alle variabili di sistema, ma il loro valore è fisso. L'attributo delle costanti di sistema è READ (solo lettura). - Omissione del punto decimale Quando il valore di una variabile è definito dal programma, è possibile omettere il punto decimale. [Esempio] Quando #1 = 123; il valore della variabile #1 è 123.000. - Uso delle variabili Il valore di un indirizzo può essere specificato utilizzando una variabile. Programmando <indirizzo>#i o <indirizzo>-#i, è possibile utilizzare il valore della variabile, o il suo complemento, come valore dell'indirizzo. [Esempio] Se #33 = 1.5, F#33 equivale a F1.5. Se #18 = 20.0, Z-#18 equivale a Z-20.0. Se #130 = 3.0, G#130 equivale a G3. Non è possibile utilizzare una variabile per specificare il valore di /, :, O e N. [Esempio] La programmazione di O#27, N#1 o simili non è ammessa. n (n = 1 .. 9) nella specifica /n del salto blocco opzionale non può essere una variabile. Il numero di una variabile non può essere specificato utilizzando direttamente un'altra variabile. [Esempio] Per sostituire 5 in #5 con #30, specificare #[#30] anziché ##30. Non possono essere specificati valori eccedenti il limite massimo ammesso da ciascun indirizzo. [Esempio] Se #140 = 120, G#140 eccede il valore massimo accettabile. Il valore di una variabile utilizzata come valore di un indirizzo, viene arrotondato automaticamente al numero di cifre significative dell'indirizzo. - 386 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 [Esempio] Per una macchina con un sistema di incrementi di 1/1000 mm (IS-B), se #1 = 12.3456, G00 X#1; diventa G00 X12.346;. Il valore di un indirizzo può essere sostituito da una <espressione> (le espressioni sono descritte più avanti). <Indirizzo>[<espressione>] o <Indirizzo>-[<espressione>] L'esempio riportato qui sopra indica che il valore di <espressione> o il suo complemento possono essere utilizzati come valori di un indirizzo. Notare che una costante senza il punto decimale racchiusa tra parentesi quadre ([ ]) viene trattata come se avesse il punto decimale alla fine. [Esempio] X[#24+#18*COS[#1]] Z-[#18+#26] - Variabili non definite Se il valore di una variabile non è definito, a tale variabile ci si riferisce come ad una variabile "nulla". Le variabili #0 e #3100 sono sempre variabili nulle e non possono essere scritte, ma possono essere lette. (a) Utilizzo Quando viene utilizzata una variabile non definita, anche l'indirizzo con il quale è specificata viene ignorato. Comando programmato G90 X100 Y#1 Comando equivalente quando #1 è <nulla> Comando equivalente quando #1 = 0 G90 X100 G90 X100 Y0 (b) Definizione/sostituzione, addizione, moltiplicazione Quando una variabile locale o una variabile comune vengono direttamente sostituite con <nulla>, il risultato è <nulla>. Quando una variabile di sistema viene sostituita direttamente con <nulla> o con il risultato di un calcolo contenente una variabile <nulla>, per la variabile viene assunto un valore uguale a zero. Espressione originale (variabile locale) #2=#1 #2=#1*5 #2=#1+#1 Risultato della sostituzione (se #1 = <nulla>) Risultato della sostituzione (se #1 = 0) <nulla> 0 0 0 0 0 Espressione originale (variabile comune) #100=#1 #100=#1*5 #100=#1+#1 <nulla> 0 0 0 0 0 Espressione originale (variabile di sistema) #2001=#1 #2001=#1*5 #2001=#1+#1 Risultato della sostituzione (se #1 = <nulla>) Risultato della sostituzione (se #1 = 0) 0 0 0 0 0 0 Risultato della sostituzione (se #1 = <nulla>) Risultato della sostituzione (se #1 = 0) - 387 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 (c) Confronto <nulla> è diverso da 0 solo per EQ e NE. <nulla> è uguale a 0 per GE, GT, LE e LT. • Quando #1 è <nulla> Espressione condizionale #1 EQ #0 #1 NE 0 #1 GE #0 #1 GT 0 #1 LE #0 #1 LT 0 Risultato Stabilito (vero) Stabilito (vero) Stabilito (vero) Non stabilito (falso) Stabilito (vero) Non stabilito (falso) • - Quando #1 = 0 Espressione condizionale #1 EQ #0 #1 NE 0 #1 GE #0 #1 GT 0 #1 LE #0 #1 LT 0 Risultato Non stabilito (falso) Non stabilito (falso) Stabilito (vero) Non stabilito (falso) Stabilito (vero) Non stabilito (falso) Specifica di una variabile (costante) di sistema con il suo nome Una variabile (costante) di sistema viene specificata con il suo numero, ma può anche essere specificata con il suo nome. Il nome di una variabile (costante) di sistema inizia con un underscore (_), seguito da un massimo di sette lettere maiuscole, cifre o underscore. Per specificare i valori delle variabili che dipendono dagli assi (come le coordinate) e di quelle relative a gruppi di dati dello stesso tipo (come le correzioni utensile), è possibile utilizzare un indice [n] (n: intero). In questo caso, n può essere specificato con una <espressione>. Come si vede qui sotto, il formato di programmazione è [#nome-della-variabile-di-sistema]. [#_DATE] [Esempio] [#_DATE]=20040117 ; : Alla variabile #3011 viene assegnato 2004.01.17 (anno mese giorno). [#_TIME]=161705 ; : Alla variabile #3012 viene assegnato 16:17:05 (ore minuti secondi). #101=[#_ABSMT[1]] ; : Viene letta la variabile #5021 (coordinata di macchina del primo asse) ed il suo valore viene assegnato alla variabile #101. #102=[#_ABSKP[#500*2]] ; : Viene letta la variabile #506x (posizione di salto del [#500*2]esimo asse) ed il suo valore viene assegnato alla variabile #102. Se per l'indice n anziché un intero viene utilizzata una variabile, il suo valore viene arrotondato all'intero più vicino. [Esempio] [#_ABSIO[1.4999999]] : Corrisponde a [#_ABSIO[1]], cioè, #5001. [#_ABSIO[1.5000000]] : Corrisponde a [#_ABSIO[2]], cioè, #5002. NOTA 1 Se il nome della variabile non esiste, si verifica l'allarme PS1098, “NON UTILIZZABILE COME NOME DI UNA VARIABILE”. 2 Se l'indice è negativo o non è valido, si verifica l'allarme PS1099, “SUFFISSO [ ] ILLEGALE”. - 388 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Costanti di sistema #0, #3100-#3102 (Attributo: R) Le costanti di sistema possono essere utilizzate allo stesso modo delle variabili di sistema, ma il loro valore è fisso. Le costanti di sistema disponibili sono elencate qui sotto. Numero #0, #3100 #3101 #3102 - Nome [#_EMPTY] [#_PI] [#_E] Descrizione Nulla Costante circolare π = 3.14159265358979323846 Base dei logaritmi naturali e =2.71828182845904523536 Specifica di una variabile comune con il suo nome Con il comando SETVN, descritto più avanti, è possibile assegnare ad una variabile comune un nome che può essere utilizzato in luogo del suo numero. Il formato del riferimento alle variabili comuni per nome è [#nome-della-variabile-comune], come [#VAR500]. [Esempio] X[#POS1] Y[#POS2] ; : Specifica di una posizione utilizzando il nome, anziché il numero delle variabili. [#POS1] = #100+#101 ; : Esecuzione di una assegnazione specificando il nome della variabile #[100+[#ABS]] = 500 ; : Come sopra (con un numero di variabile) #500 = [1000+[#POS2]*10] ; : Lettura di una variabile utilizzandone il nome. - Impostazione e specifica del nome di una variabile comune (SETVN) Utilizzando il comando presentato qui sotto, è possibile assegnare un nome lungo fino ad otto caratteri alle 50 variabili comuni da #500 a #549. Se è abilitata la funzione di espansione del nome delle variabili, è possibile specificare un nome lungo fino a 31 caratteri. SETVN n [VAR500, VAR501, VAR502,......] ; n rappresenta il numero della prima variabile comune alla quale si riferisce il comando. In questo esempio, VAR500 è il nome della variabile n, VAR501 è quello della variabile n+1, VAR502 è quello della variabile n+2, e così via. I nomi sono separati da virgole (,). E' possibile utilizzare tutti i codici utilizzabili nelle informazioni significative eccetto '(' (control out), ')' (control in), '[', ']', EOB, EOR, e ':' (due punti nel nome programma). Il nome di una variabile deve iniziare con un carattere alfabetico. I nomi delle variabili non vengono persi quando viene spento il CNC. La specifica del nome di una variabile comune ne permette la lettura e la scrittura. Il formato del riferimento alle variabili comuni per nome è [#nome-della-variabile-comune], come [#VAR500]. [Esempio] SETVN 510[TOOL_NO, WORK_NO, COUNTER1, COUNTER2]; Il comando presentato qui sopra denomina le variabili come segue. Variabile Nome #510 #511 #512 #513 TOOL_NO WORK_NO COUNTER1 COUNTER2 I nomi attribuiti alle variabili comuni con il comando SETVN possono essere utilizzati nei programmi. Ad esempio, per assegnare 10 alla variabile comune #510, è possibile scrivere [#TOOL_NO]=10; anziché #510=10;. Se è abilitata la funzione di espansione del nome delle variabili, il comando SETVN 510[TOOL_NUMBER000001_CHANGE_DETECT]; assegna un nome di 31 caratteri alla variabile. Variabile Nome #510 TOOL_NUMBER000001_CHANGE_DETECT - 389 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 NOTA Se più variabili comuni hanno lo stesso nome, è possibile riferirsi con il nome solo alla variabile con il numero più piccolo. 16.2 VARIABILI DI SISTEMA Le variabili di sistema possono essere utilizzate per leggere e scrivere dati interni del CNC come i valori delle correzioni utensile e i dati della posizione corrente. Le variabili di sistema sono essenziali per lo sviluppo di programmi per l'automazione e per uso generale. Lista delle variabili e delle costanti di sistema n rappresenta un indice. R, W, e R/W sono gli attributi delle variabili ed indicano che sono abilitate solo la lettura, solo la scrittura, la lettura e la scrittura, rispettivamente. - Segnali di interfaccia Numero della variabile Nome della variabile Attributo Descrizione Segnali di interfaccia in ingresso (BIT), UI000-UI031 NOTA) L'indice n rappresenta la posizione di un bit (da 0 a 31). Segnali di interfaccia in ingresso (LONG), UI000-UI031/ UI100-UI131/ UI200-UI231/UI300-UI331 NOTA) Indice n (da 0 a 3): 0 = UI000-UI031, 1 = UI100-UI131, 2 = UI200-231, 3 = UI300-UI331 Segnali di interfaccia in ingresso (BIT), UI400-UI431 NOTA) L'indice n rappresenta la posizione di un bit (da 32 a -63). Segnali di interfaccia in ingresso (LONG), UI400-UI431 / UI500-UI531 / UI600-UI631 / UI700-UI731 NOTE) Indice n (4-7): 4=UI400-UI431, 5=UI500-UI531, 6=UI600-UI631, 7=UI700-UI731 Segnali di interfaccia in uscita (BIT), UO000-UO031 NOTA) L'indice n rappresenta la posizione di un bit (da 0 a 31). Segnali di interfaccia in uscita (LONG), UO000-UO031/ UO100-UO131/UO200-UO231/UO300-UO331 NOTA) Indice n (da 0 a 3): 0 = UO000-UO031, 1 = UO100-UO131, 2 = UO200-231, 3 = UO300-UO331 Segnali di interfaccia in uscita (BIT), UO400-UO431 NOTA) L'indice n rappresenta la posizione di un bit (da 32 a -63). Segnali di interfaccia in uscita (LONG), UO400-UO431/ UO500-UO531 / UO600-UO631 / UO700-UO731 NOTE) Indice n (4-7): 4=UO400-UO431, 5=UO500-UO531, 6=UO600-UO631, 7=UO700-UO731 #1000-#1031 [#_UI[n]] R #1032-#1035 [#_UIL[n]] R #1036-#1067 [#_UI[n]] R #1068-#1071 [#_UIL[n]] R #1100-#1131 [#_UO[n]] R/W #1132-#1135 [#_UOL[n]] R/W #1136-#1167 [#_UO[n]] R/W #1168-#1171 [#_UOL[4]][#_UOL[7]] R/W - 390 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Valori delle correzioni utensili M Memoria A delle correzioni utensili Numero della variabile #2001-#2200 Nome della variabile [#_OFS[n]] Attributo R/W #10001-#10999 Descrizione Correzioni utensile Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Se i correttori sono più di 200, possono essere utilizzati anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Memoria B delle correzioni utensili quando il bit 3 (V15) del parametro N. 6000 è 0 Numero della Nome della Attributo Descrizione variabile variabile #2001-#2200 [#_OFSW[n]] R/W [#_OFSG[n]] R/W #10001-#10999 #2201-#2400 #11001-#11999 Correzioni utensili (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice H, geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Memoria B delle correzioni utensili quando il bit 3 (V15) del parametro N. 6000 è 1 Numero della Nome della Attributo Descrizione variabile variabile #2001-#2200 [#_OFSG[n]] R/W [#_OFSW[n]] R/W #10001-#10999 #2201-#2400 #11001-#11999 Correzioni utensili (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice H, usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). - 391 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Memoria C delle correzioni utensili quando il bit 3 (V15) del parametro N. 6000 è 0 Numero della Nome della Attributo Descrizione variabile variabile #2001-#2200 [#_OFSHW[n]] R/W [#_OFSHG[n]] R/W #12001-#12999 [#_OFSDW[n]] R/W #13001-#13999 [#_OFSDG[n]] R/W #10001-#10999 #2201-#2400 #11001-#11999 Correzioni utensili (codice H, usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice H, geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice D, usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensile (codice D, geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Memoria C delle correzioni utensili quando il bit 3 (V15) del parametro N. 6000 è 1 Numero della Nome della Attributo Descrizione variabile variabile #2001-#2200 [#_OFSHG[n]] R/W [#_OFSHW[n]] R/W [#_OFSDG[n]] R/W [#_OFSDW[n]] R/W #10001-#10999 #2201-#2400 #11001-#11999 #2401-#2600 #12001-#12999 #2601-#2800 #13001-#13999 Correzioni utensili (codice H, geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice H, usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice D, geometria) (Nota 1) L'indice n rappresenta un numero di correttore (da 1 a 200). Nota 1) Abilitate quando il bit 5 (D15) del parametro N. 6004 è 1. Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzioni utensili (codice D, usura) (Nota 1) L'indice n rappresenta un numero di correttore (da 1 a 200). Nota 1) Abilitate quando il bit 5 (D15) del parametro N. 6004 è 1. Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). - 392 - PROGRAMMAZIONE B-64484IT/02 Numero della variabile #21001-#21999 Memoria C delle correzioni utensili Variabili di sistema non dipendenti dal bit 3 (V15) del parametro N. 6000 Nome della Attributo Descrizione variabile [#_CORR_G[n]] #22001-#22999 R/W R/W [#_CORR_W[n]] - 16.MACROISTRUZIONI Compensazione raccordo (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Compensazione raccordo (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Valori delle correzioni utensili T Numero della variabile #2001-#2064 Senza distinzione tra correzione geometria e correzione usura Nome della Attributo Descrizione variabile [#_OFSX[n]] R/W [#_OFSZ[n]] R/W [#_OFSR[n]] R/W [#_OFST[n]] R/W [#_OFSY[n]] R/W #10001-#10999 #2101-#2164 #11001-#11999 #2201-#2264 #12001-#12999 #2301-#2364 #13001-#13999 #2401-#2449 #14001-#14999 Correzione lungo l'asse X (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione lungo l'asse Z (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Compensazione raggio utensile Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Posizione della punta immaginaria Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione lungo l'asse Y (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 49). Se i correttori sono più di 49, possono essere utilizzati anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). (*1) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base Numero della variabile #2001-#2064 Con distinzione tra correzione geometria e correzione usura Nome della Attributo Descrizione variabile [#_OFSXW[n]] R/W [#_OFSZW[n]] R/W #10001-#10999 #2101-#2164 #11001-#11999 Correzione lungo l'asse X (usura) (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione lungo l'asse Z (usura) (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). - 393 - 16.MACROISTRUZIONI Numero della variabile #2201-#2264 PROGRAMMAZIONE Nome della variabile Attributo Descrizione [#_OFSRW[n]] R/W [#_OFST[n]] R/W [#_OFSYW[n]] R/W [#_OFSYG[n]] R/W [#_OFSXG[n]] R/W [#_OFSZG[n]] R/W [#_OFSRG[n]] R/W Compensazione raggio utensile (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Posizione della punta immaginaria Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione lungo l'asse Y (usura) (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 49). Se i correttori sono più di 49, possono essere utilizzati anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione lungo l'asse Y (geometria) (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 49). Se i correttori sono più di 49, possono essere utilizzati anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione lungo l'asse X (geometria) (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 49). Se i correttori sono più di 49, possono essere utilizzati anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 49). Correzione lungo l'asse Z (geometria) (*1) Nota) L'indice n rappresenta un numero di correttore (da 1 a 49). Se i correttori sono più di 49, possono essere utilizzati anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Compensazione raggio utensile (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 64). Se i correttori sono più di 64, è possibile utilizzare anche i numeri di sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). #12001-#12999 #2301-#2364 #13001-#13999 #2401-#2449 #14001-#14999 #2451-#2499 #19001-#19999 #2701-#2749 #15001-#15999 #2801-#2849 #16001-#16999 #2901-#2964 #17001-#17999 B-64484IT/02 (*1) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base - 394 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Correzioni utensile quando è abilitata la funzione correzioni utensile per lavorazioni complesse M Numero della variabile #2001-#2200 #10001-#10999 #2201-#2400 #11001-#11999 #12001-#12999 #13001-#13999 Numero della variabile #2001-#2200 Quando il bit 3 (V15) del parametro N. 6000 è 0 Nome della Attributo Descrizione variabile [#_OFSHW[n]] R/W Correzione utensile lungo l'asse Z (usura) oppure (Vecchio nome: Correzione utensile (codice H, usura) [#_OFSZW[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSHG[n]] R/W Correzione utensile lungo l'asse Z (geometria) oppure (Vecchio nome: Correzioni utensili (codice H, geometria) [#_OFSZG[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSDW[n]] R/W Compensazione raggio utensile (usura) oppure (Vecchio nome: Correzione utensile (codice D, usura) [#_OFSRW[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). [#_OFSDG[n]] R/W Compensazione raggio utensile (geometria) oppure (Vecchio nome: Correzione utensile (codice D, geometria) [#_OFSRG[n]] Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Quando il bit 3 (V15) del parametro N. 6000 è 1 Nome della Attributo Descrizione variabile R/W [#_OFSHG[n]] Correzione utensile lungo l'asse Z (geometria) oppure [#_OFSZG[n]] #10001-#10999 #2201-#2400 [#_OFSHW[n]] oppure [#_OFSZW[n]] R/W [#_OFSDG[n]] oppure [#_OFSRG[n]] R/W [#_OFSDW[n]] oppure [#_OFSRW[n]] R/W #11001-#11999 #2401-#2600 #12001-#12999 #2601-#2800 #13001-#13999 (Vecchio nome: Correzione utensile (codice H, geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione utensile lungo l'asse Z (usura) (Vecchio nome: Correzione utensile (codice H, usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 200). Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Compensazione raggio utensile (geometria) (Nota 1) (Vecchio nome: Correzione utensile (codice D, geometria) L'indice n rappresenta un numero di correttore (da 1 a 200). Nota 1: Abilitate quando il bit 5 (D15) del parametro N. 6004 è 1. Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Compensazione raggio utensile (usura) (Nota 1) (Vecchio nome: Correzione utensile (codice D, usura) L'indice n rappresenta un numero di correttore (da 1 a 200). Nota 1: Abilitate quando il bit 5 (D15) del parametro N. 6004 è 1. Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). - 395 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 #21001-#21999 Variabili di sistema non dipendenti dal bit 3 (V15) del parametro N. 6000 Nome della Attributo Descrizione variabile R/W [#_CORR_G[n]] Compensazione raccordo (geometria) #22001-#22999 [#_CORR_W[n]] R/W #23001-#23999 [#_OFST[n]] R/W Numero della variabile #135001-#135999 [#_OFSXW[n]] R/W #136001-#136999 [#_OFSYW[n]] R/W #137001-#137999 [#_OFSXG[n]] R/W #138001-#138999 [#_OFSYG[n]] R/W Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Compensazione raccordo (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Posizione della punta immaginaria Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione utensile lungo l'asse X (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione utensile lungo l'asse Y (usura) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione utensile lungo l'asse X (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Correzione utensile lungo l'asse Y (geometria) Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). T Valgono le stesse regole delle variabili di sistema convenzionali. - Traslazione del sistema di coordinate del pezzo T Numero della variabile Nome della variabile Attributo #2501 #2601 #100751-#100800 [#_WKSFTX] [#_WKSFTZ] [#_WZ_SFT [n]] R/W R/W R/W Descrizione Traslazione lungo l'asse X Traslazione lungo l'asse Z Traslazione del pezzo lungo l'ennesimo asse Nota) L'indice n rappresenta un numero asse (da 1 a 50) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base - Funzionamento automatico e simili Numero della variabile Nome della variabile Attributo Descrizione Allarme macro Clock 1 (ms) Clock 2 (ore) Abilita o disabilita la soppressione dell'arresto in blocco singolo. Abilita o disabilita l'attesa del segnale di completamento della funzione ausiliaria. Abilita o disabilita la soppressione dell'arresto in blocco singolo. Abilita o disabilita l'attesa del segnale di completamento della funzione ausiliaria. Abilita o disabilita feed hold. Abilita o disabilita la regolazione della velocità di avanzamento. Abilita o disabilita il controllo dell'arresto esatto. Abilita o disabilita feed hold. Abilita o disabilita la regolazione della velocità di avanzamento. Abilita o disabilita il controllo dell'arresto esatto. Lettura/scrittura dei dati di impostazione #3000 #3001 #3002 #3003 [#_ALM] [#_CLOCK1] [#_CLOCK2] [#_CNTL1] W R/W R/W R/W #3003 bit 0 [#_M_SBK] R/W #3003 bit 1 [#_M_FIN] R/W #3004 [#_CNTL2] R/W #3004 bit 0 #3004 bit 1 [#_M_FHD] [#_M_OV] R/W R/W #3004 bit 2 #3005 [#_M_EST] [#_SETDT] R/W R/W - 396 - Numero della variabile #3006 #3007 #3008 - Nome della variabile [#_MSGSTP] [#_MRIMG] [#_PRSTR] #3011 #3012 Nome della variabile [#_DATE] [#_TIME] #3018 #3019 Arresto con un messaggio Stato dell'immagine speculare (DI e impostazione) Ripartenza/non ripartenza del programma Attributo Descrizione R R Anno/mese/giorno Ore/minuti/secondi Nome della variabile - Attributo R/W Descrizione Numero di canale del parametro da leggere o da scrivere Nome della variabile [#_PATH_NO] Attributo R Descrizione Numero del canale nel quale viene eseguita una macro Numero di pezzi Numero della variabile #3901 #3902 - W R R Numero del canale nel quale viene eseguita una macro Numero della variabile - Descrizione Numero di canale del parametro da leggere o da scrivere Numero della variabile - Attributo Tempo Numero della variabile - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Nome della variabile [#_PRTSA] [#_PRTSN] Attributo Descrizione R/W R/W Numero totale di pezzi Numero richiesto di pezzi Memoria delle correzioni utensili M Numero della variabile #3980 - [#_OFSMEM] Attributo Descrizione R Informazioni sulla memoria delle correzioni utensili Numero del programma principale Numero della variabile #4000 - Nome della variabile Nome della variabile [#_MAINO] Attributo R Descrizione Numero del programma principale Dati modali M Numero della variabile Nome della variabile Attributo Descrizione Dati modali validi per i blocchi caricati nel buffer (codice G) Nota) L'indice n rappresenta il numero del gruppo di codici G. Dati modali validi per i blocchi caricati nel buffer (codice B) Dati modali validi per i blocchi caricati nel buffer (codice D) Dati modali validi per i blocchi caricati nel buffer (codice E) Dati modali validi per i blocchi caricati nel buffer (codice F) Dati modali validi per i blocchi caricati nel buffer (codice H) Dati modali validi per i blocchi caricati nel buffer (codice M) #4001-#4030 [#_BUFG[n]] R #4102 #4107 #4108 #4109 #4111 #4113 [#_BUFB] [#_BUFD] [#_BUFE] [#_BUFF] [#_BUFH] [#_BUFM] R R R R R R - 397 - 16.MACROISTRUZIONI Numero della variabile Nome della variabile PROGRAMMAZIONE B-64484IT/02 Attributo Descrizione Dati modali validi per i blocchi caricati nel buffer (numero di sequenza) Dati modali validi per i blocchi caricati nel buffer (numero programma) Dati modali validi per i blocchi caricati nel buffer (codice S) Dati modali validi per i blocchi caricati nel buffer (codice T) Dati modali validi per i blocchi caricati nel buffer (numero del sistema addizionale di coordinate del pezzo) Dati modali validi per il blocco attualmente in esecuzione (codice G) Nota) L'indice n rappresenta il numero del gruppo di codici G. Dati modali validi per il blocco attualmente in esecuzione (codice B) Dati modali validi per il blocco attualmente in esecuzione (codice D) Dati modali validi per il blocco attualmente in esecuzione (codice E) Dati modali validi per il blocco attualmente in esecuzione (codice F) Dati modali validi per il blocco attualmente in esecuzione (codice H) Dati modali validi per il blocco attualmente in esecuzione (codice M) Dati modali validi per il blocco attualmente in esecuzione (numero di sequenza) Dati modali validi per il blocco attualmente in esecuzione (numero programma) Dati modali validi per il blocco attualmente in esecuzione (codice S) Dati modali validi per il blocco attualmente in esecuzione (codice T) Dati modali validi per il blocco attualmente in esecuzione (numero del sistema addizionale di coordinate del pezzo) Dati modali validi per i blocchi interrotti (codice G) Nota) L'indice n rappresenta il numero del gruppo di codici G. Dati modali validi per i blocchi interrotti (codice B) Dati modali validi per i blocchi interrotti (codice D) Dati modali validi per i blocchi interrotti (codice E) Dati modali validi per i blocchi interrotti (codice F) Dati modali validi per i blocchi interrotti (codice F) Dati modali validi per i blocchi interrotti (codice M) Dati modali validi per i blocchi interrotti (numero di sequenza) Dati modali validi per i blocchi interrotti (numero programma) Dati modali validi per i blocchi interrotti (codice S) Dati modali validi per i blocchi interrotti (codice T) Dati modali validi per i blocchi interrotti (numero del sistema addizionale di coordinate del pezzo) #4114 [#_BUFN] R #4115 [#_BUFO] R #4119 #4120 #4130 [#_BUFS] [#_BUFT] [#_BUFWZP] R R R #4201-#4230 [#_ACTG[n]] R #4302 [#_ACTB] R #4307 [#_ACTD] R #4308 [#_ACTE] R #4309 [#_ACTF] R #4311 [#_ACTH] R #4313 [#_ACTM] R #4314 [#_ACTN] R #4315 [#_ACTO] R #4319 [#_ACTS] R #4320 [#_ACTT] R #4330 [#_ACTWZP] R #4401-#4430 [#_INTG[n]] R #4502 #4507 #4508 #4509 #4511 #4513 #4514 #4515 #4519 #4520 #4530 [#_INTB] [#_INTD] [#_INTE] [#_INTF] [#_INTH] [#_INTM] [#_INTN] [#_INTO] [#_INTS] [#_INTT] [#_INTWZP] R R R R R R R R R R R - 398 - PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI T Numero della variabile Nome della variabile Attributo Descrizione Dati modali validi per i blocchi caricati nel buffer (codice G) Nota) L'indice n rappresenta il numero del gruppo di codici G. Dati modali validi per i blocchi caricati nel buffer (codice E) Dati modali validi per i blocchi caricati nel buffer (codice F) Dati modali validi per i blocchi caricati nel buffer (codice M) Dati modali validi per i blocchi caricati nel buffer (numero di sequenza) Dati modali validi per i blocchi caricati nel buffer (numero programma) Dati modali validi per i blocchi caricati nel buffer (codice S) Dati modali validi per i blocchi caricati nel buffer (codice T) Dati modali validi per i blocchi caricati nel buffer (numero del sistema addizionale di coordinate del pezzo) Dati modali validi per il blocco attualmente in esecuzione (codice G) Nota) L'indice n rappresenta il numero del gruppo di codici G. Dati modali validi per il blocco attualmente in esecuzione (codice E) Dati modali validi per il blocco attualmente in esecuzione (codice F) Dati modali validi per il blocco attualmente in esecuzione (codice M) Dati modali validi per il blocco attualmente in esecuzione (numero di sequenza) Dati modali validi per il blocco attualmente in esecuzione (numero programma) Dati modali validi per il blocco attualmente in esecuzione (codice S) Dati modali validi per il blocco attualmente in esecuzione (codice T) Dati modali validi per il blocco attualmente in esecuzione (numero del sistema addizionale di coordinate del pezzo) Dati modali validi per i blocchi interrotti (codice G) Nota) L'indice n rappresenta il numero del gruppo di codici G. Dati modali validi per i blocchi interrotti (codice E) Dati modali validi per i blocchi interrotti (codice F) Dati modali validi per i blocchi interrotti (codice M) Dati modali validi per i blocchi interrotti (numero di sequenza) Dati modali validi per i blocchi interrotti (numero programma) Dati modali validi per i blocchi interrotti (codice S) Dati modali validi per i blocchi interrotti (codice T) Dati modali validi per i blocchi interrotti (numero del sistema addizionale di coordinate del pezzo) #4001-#4030 [#_BUFG[n]] R #4108 #4109 #4113 #4114 [#_BUFE] [#_BUFF] [#_BUFM] [#_BUFN] R R R R #4115 [#_BUFO] R #4119 #4120 #4130 [#_BUFS] [#_BUFT] [#_BUFWZP] R R R #4201-#4230 [#_ACTG[n]] R #4308 [#_ACTE] R #4309 [#_ACTF] R #4313 [#_ACTM] R #4314 [#_ACTN] R #4315 [#_ACTO] R #4319 [#_ACTS] R #4320 [#_ACTT] R #4330 [#_ACTWZP] R #4401-#4430 [#_INTG[n]] R #4508 #4509 #4513 #4514 #4515 #4519 #4520 #4530 [#_INTE] [#_INTF] [#_INTM] [#_INTN] [#_INTO] [#_INTS] [#_INTT] [#_INTWZP] R R R R R R R R - 399 - 16.MACROISTRUZIONI - PROGRAMMAZIONE Dati relativi alla posizione Numero della variabile #5001-#5020 Nome della variabile Attributo [#_ABSIO[n]] R [#_ABSMT[n]] R [#_ABSOT[n]] R [#_ABSKP[n]] R #100001-#100050 #5021-#5040 #100051-#100100 #5041-#5060 #100101-#100150 #5061-#5080 #100151-#100200 - B-64484IT/02 Descrizione Punto finale del blocco precedente (sistema di coordinate del pezzo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Posizione attuale specificata (sistema di coordinate della macchina) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Posizione attuale specificata (sistema di coordinate del pezzo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Posizione di salto (sistema di coordinate del pezzo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione lunghezza utensile M Numero della variabile #5081-#5100 Nome della variabile [#_TOFS[n]] Attributo R #100201-#100250 - Descrizione Compensazione lunghezza utensile Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore della correzione T Numero della variabile #5081, #100201 #5082, #100202 #5083, #100203 #5084 - #5100 Nome della variabile Attributo [#_TOFSWX] [#_TOFSWZ] [#_TOFSWY] [#_TOFS[n]] R [#_TOFSGX] [#_TOFSGZ] [#_TOFSGY] [#_TOFSG[n]] R #100204-#100250 #5121, #100901 #5122, #100902 #5123, #100903 #5124 - #5140 #100904-#100950 Descrizione Correzione utensile lungo l'asse X (usura) Correzione utensile lungo l'asse Z (usura) Correzione utensile lungo l'asse Y (usura) Correzione utensile (usura) per l'ennesimo asse Nota) L'indice n rappresenta un numero asse (da 4 a 20) Correzione utensile (usura) per l'ennesimo asse Nota) L'indice n rappresenta un numero asse (da 4 a 50) Correzione utensile lungo l'asse X (geometria) Correzione utensile lungo l'asse Y (geometria) Correzione utensile lungo l'asse Z (geometria) Correzione utensile (geometria) per l'ennesimo asse Nota) L'indice n rappresenta un numero asse (da 4 a 20) Correzione utensile (geometria) per l'ennesimo asse Nota) L'indice n rappresenta un numero asse (da 4 a 50) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base - 400 - PROGRAMMAZIONE B-64484IT/02 - Errore di posizione del servosistema Numero della variabile #5101-#5120 Nome della variabile [#_SVERR[n]] Attributo R #100251-#100300 - #5121-#5140 Nome della variabile Errore di posizione del servosistema Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) [#_MIRTP[n]] Attributo R #100651-#100700 Descrizione Interruzione del volantino Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Distanza da percorrere Numero della variabile #5181-#5200 Nome della variabile [#_DIST[n]] Attributo R #100801-#100850 - Descrizione Interruzione del volantino Numero della variabile - 16.MACROISTRUZIONI Descrizione Distanza residua Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Offset dello zero pezzo, offset aggiuntivi dello zero pezzo M Numero della variabile #5201-#5220 Nome della variabile [#_WZCMN[n]] Attributo R/W #5221-#5240 [#_WZG54[n]] R/W #5241-#5260 [#_WZG55[n]] R/W #5261-#5280 [#_WZG56[n]] R/W #5281-#5300 [#_WZG57[n]] R/W #5301-#5320 [#_WZG58[n]] R/W #5321-#5340 [#_WZG59[n]] R/W #100301-#100350 [#_WZCMN[n]] R/W #100351-#100400 [#_WZG54[n]] R/W #100401-#100450 [#_WZG55[n]] R/W #100451-#100500 [#_WZG56[n]] R/W #100501-#100550 [#_WZG57[n]] R/W #100551-#100600 [#_WZG58[n]] R/W Descrizione Offset esterno dello zero pezzo Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G54 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G55 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G56 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G57 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G58 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G59 Nota) L'indice n rappresenta un numero asse Offset esterno dello zero pezzo Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G54 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G55 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G56 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G57 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G58 Nota) L'indice n rappresenta un numero asse - 401 - (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 50) 16.MACROISTRUZIONI Numero della variabile #100601-#100650 Nome della variabile [#_WZG59[n]] #7001-#7020 [#_WZP1[n]] #7021-#7040 [#_WZP2[n]] : : #7941-#7960 : : [#_WZP48[n]] #14001-#14020 [#_WZP1[n]] #14021-#14040 [#_WZP2[n]] : : #19981-#20000 : : [#_WZP300[n]] #101001-#101050 [#_WZP1[n]] #101051-#101100 [#_WZP2[n]] : : #115901-#115950 : : [#_WZP299[n]] #115951-#116000 [#_WZP300[n]] PROGRAMMAZIONE Attributo B-64484IT/02 Descrizione R/W Offset dello zero pezzo G59 Nota) L'indice n rappresenta un numero asse Offset aggiuntivi dello zero pezzo R/W Offset dello zero pezzo G54.1P1 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P2 Nota) L'indice n rappresenta un numero asse : : : : R/W Offset dello zero pezzo G54.1P48 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P1 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P2 Nota) L'indice n rappresenta un numero asse : : : : R/W Offset dello zero pezzo G54.1P300 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P1 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P2 Nota) L'indice n rappresenta un numero asse : : : : R/W Offset dello zero pezzo G54.1P299 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P300 Nota) L'indice n rappresenta un numero asse (da 1 a 50) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 50) T Numero della variabile #5201-#5220 Nome della variabile [#_WZCMN[n]] Attributo R/W #5221-#5240 [#_WZG54[n]] R/W #5241-#5260 [#_WZG55[n]] R/W #5261-#5280 [#_WZG56[n]] R/W #5281-#5300 [#_WZG57[n]] R/W #5301-#5320 [#_WZG58[n]] R/W #5321-#5340 [#_WZG59[n]] R/W #100301-#100350 [#_WZCMN[n]] R/W #100351-#100400 [#_WZG54[n]] R/W #100401-#100450 [#_WZG55[n]] R/W Descrizione Offset esterno dello zero pezzo Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G54 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G55 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G56 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G57 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G58 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G59 Nota) L'indice n rappresenta un numero asse Offset esterno dello zero pezzo Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G54 Nota) L'indice n rappresenta un numero asse Offset dello zero pezzo G55 Nota) L'indice n rappresenta un numero asse - 402 - (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 50) (da 1 a 50) (da 1 a 50) PROGRAMMAZIONE B-64484IT/02 Numero della variabile - Nome della variabile #100451-#100500 [#_WZG56[n]] #100501-#100550 [#_WZG57[n]] #100551-#100600 [#_WZG58[n]] #100601-#100650 [#_WZG59[n]] #7001-#7020 [#_WZP1[n]] #7021-#7040 [#_WZP2[n]] : : #7941-#7960 : : [#_WZP48[n]] #101001-#101050 [#_WZP1[n]] #101051-#101100 [#_WZP2[n]] : : #115901-#115950 : : [#_WZP299[n]] #115951-#116000 [#_WZP300[n]] Attributo Descrizione R/W Offset dello zero pezzo G56 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G57 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G58 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G59 Nota) L'indice n rappresenta un numero asse Offset aggiuntivi dello zero pezzo R/W Offset dello zero pezzo G54.1P1 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P2 Nota) L'indice n rappresenta un numero asse : : : : R/W Offset dello zero pezzo G54.1P48 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P1 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P2 Nota) L'indice n rappresenta un numero asse : : : : R/W Offset dello zero pezzo G54.1P299 Nota) L'indice n rappresenta un numero asse R/W Offset dello zero pezzo G54.1P300 Nota) L'indice n rappresenta un numero asse (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 20) (da 1 a 20) (da 1 a 20) (da 1 a 50) (da 1 a 50) (da 1 a 50) (da 1 a 50) Posizione di salto (unità di retroazione) Numero della variabile #5421-#5440 Nome della variabile [#_SKPDTC[n]] Attributo R #100701-#100750 - 16.MACROISTRUZIONI Descrizione Posizione di salto (unità di retroazione) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione dinamica rotazione tavola M Numero della variabile Nome della variabile Attributo #5500 [#_FOFSP] R #5501-#5520 [#_FOFSVAL[n]] R #117001-#117050 #5521-#5540 #117051-#117100 [#_FOFS1[n]] R/W Descrizione Numero del correttore dell'attrezzo di fissaggio attualmente selezionato (P) Valore del correttore dell'attrezzo di fissaggio attualmente selezionato Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione di riferimento dell'attrezzo di fissaggio (primo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) - 403 - 16.MACROISTRUZIONI Numero della variabile #5541-#5560 Nome della variabile PROGRAMMAZIONE Attributo R/W Compensazione di riferimento dell'attrezzo di fissaggio (secondo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) [#_FOFS3[n]] R/W [#_FOFS4[n]] R/W [#_FOFS5[n]] R/W [#_FOFS6[n]] R/W [#_FOFS7[n]] R/W [#_FOFS8[n]] R/W Compensazione di riferimento dell'attrezzo di fissaggio (terzo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione di riferimento dell'attrezzo di fissaggio (quarto gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione di riferimento dell'attrezzo di fissaggio (quinto gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione di riferimento dell'attrezzo di fissaggio (sesto gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione di riferimento dell'attrezzo di fissaggio (settimo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) Compensazione di riferimento dell'attrezzo di fissaggio (ottavo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 20) Possono essere utilizzati anche i numeri a sx Nota) L'indice n rappresenta un numero asse (da 1 a 50) #117151-#117200 #5581-#5600 #117201-#117250 #5601-#5620 #117251-#117300 #5621-#5640 #117301-#117350 #5641-#5660 #117351-#117400 #5661-#5680 #117401-#117450 Descrizione [#_FOFS2[n]] #117101-#117150 #5561-#5580 B-64484IT/02 - 404 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Seconda correzione geometria utensile T Numero della variabile #5801-#5832 Nome della variabile Attributo [#_OFSX2G[n]] R/W [#_OFSZ2G[n]] R/W [#_OFSY2G[n]] R/W #27001-#27999 #5833-#5864 #28001-#28999 #5865-#5896 #29001-#29999 - Descrizione Entità della seconda correzione geometria utensile lungo l'asse X Nota) L'indice n rappresenta un numero di correttore (da 1 a 32). ISe i correttori sono più di 32, è possibile utilizzare anche i numeri a sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Entità della seconda correzione geometria utensile lungo l'asse Z Nota) L'indice n rappresenta un numero di correttore (da 1 a 32). ISe i correttori sono più di 32, è possibile utilizzare anche i numeri a sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Entità della seconda correzione geometria utensile lungo l'asse Y Nota) L'indice n rappresenta un numero di correttore (da 1 a 32). ISe i correttori sono più di 32, è possibile utilizzare anche i numeri a sinistra. Nota) L'indice n rappresenta un numero di correttore (da 1 a 999). Valore di riferimento della compensazione dinamica dell'utensile M Numero della variabile Nome della variabile Attributo #118051-#118100 [#_DOFS1[n]] R/W #118101-#118150 [#_DOFS2[n]] R/W #118151-#118200 [#_DOFS3[n]] R/W #118201-#118250 [#_DOFS4[n]] R/W #118251-#118300 [#_DOFS5[n]] R/W #118301-#118350 [#_DOFS6[n]] R/W #118351-#118400 [#_DOFS7[n]] R/W Descrizione Valore di riferimento della compensazione dinamica dell'utensile (primo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore di riferimento della compensazione dinamica dell'utensile (secondo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore di riferimento della compensazione dinamica dell'utensile (terzo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore di riferimento della compensazione dinamica dell'utensile (quarto gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore di riferimento della compensazione dinamica dell'utensile (quinto gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore di riferimento della compensazione dinamica dell'utensile (sesto gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Valore di riferimento della compensazione dinamica dell'utensile (settimo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) - 405 - 16.MACROISTRUZIONI Numero della variabile #118401-#118450 - #100851-#100900 [#_DOFS8[n]] Attributo R/W Descrizione Valore di riferimento della compensazione dinamica dell'utensile (ottavo gruppo) Nota) L'indice n rappresenta un numero asse (da 1 a 50) Nome della variabile [#_ROVLP [n]] Attributo R/W Descrizione Riduzione della velocità di avanzamento per la sovrapposizione dei movimenti in rapido Nota) L'indice n rappresenta un numero asse (da 1 a 50) Mandrino seriale Numero della variabile #100951-#100954 - Nome della variabile B-64484IT/02 Riduzione della velocità di avanzamento per la sovrapposizione dei movimenti in rapido Numero della variabile - PROGRAMMAZIONE Nome della variabile [#_SPSTAT[n]] Attributo R Descrizione Stato di ciascun mandrino Nota) L'indice n rappresenta un numero di mandrino (da 1 a 4). Costanti di sistema Numero della costante #0, #3100 #3101 #3102 Nome della costante [#_EMPTY] [#_PI] [#_E] Attributo R R R Descrizione Nulla Costante circolare π = 3.14159265358979323846 Base dei logaritmi naturali e =2.71828182845904523536 Spiegazioni R, W, e R/W sono gli attributi delle variabili ed indicano che sono abilitate solo la lettura, solo la scrittura, la lettura e la scrittura, rispettivamente. - Segnali di interfaccia #1000-#1031, #1032, #1033-#1035 (Attributo: R) #1100-#1115, #1132, #1133-#1135 (Attributo: R/W) [Segnali in ingresso] Leggendo le variabili di sistema #1000 - #1032 è possibile ottenere lo stato dei segnali di interfaccia in ingresso. Numero della variabile Nome della variabile Punti #1000 #1001 #1002 #1003 #1004 #1005 #1006 #1007 #1008 #1009 #1010 #1011 #1012 [#_UI[0]] [#_UI[1]] [#_UI[2]] [#_UI[3]] [#_UI[4]] [#_UI[5]] [#_UI[6]] [#_UI[7]] [#_UI[8]] [#_UI[9]] [#_UI[10]] [#_UI[11]] [#_UI[12]] 1 1 1 1 1 1 1 1 1 1 1 1 1 - 406 - Segnale UI000 UI001 UI002 UI003 UI004 UI005 UI006 UI007 UI008 UI009 UI010 UI011 UI012 (20) (21) (22) (23) (24) (25) (26) (27) (28) (29) (210) (211) (212) PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI Numero della variabile Nome della variabile Punti Segnale #1013 #1014 #1015 #1016 #1017 #1018 #1019 #1020 #1021 #1022 #1023 #1024 #1025 #1026 #1027 #1028 #1029 #1030 #1031 #1032 #1033 #1034 #1035 [#_UI[13]] [#_UI[14]] [#_UI[15]] [#_UI[16]] [#_UI[17]] [#_UI[18]] [#_UI[19]] [#_UI[20]] [#_UI[21]] [#_UI[22]] [#_UI[23]] [#_UI[24]] [#_UI[25]] [#_UI[26]] [#_UI[27]] [#_UI[28]] [#_UI[29]] [#_UI[30]] [#_UI[31]] [#_UIL[0]] [#_UIL[1]] [#_UIL[2]] [#_UIL[3]] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 32 32 32 32 UI013 (213) UI014 (214) UI015 (215) UI016 (216) UI017 (217) UI018 (218) UI019 (219) UI020 (220) UI021 (221) UI022 (222) UI023 (223) UI024 (224) UI025 (225) UI026 (226) UI027 (227) UI028 (228) UI029 (229) UI030 (230) UI031 (231) UI000-UI031 UI100-UI131 UI200-UI231 UI300-UI331 Valore della variabile Segnale in ingresso 1.0 0.0 Contatto chiuso Contatto aperto Dato che il valore letto è sempre 1.0 o 0.0 indipendentemente dal sistema di unità, il sistema di unità deve essere tenuto in considerazione durante la scrittura della macro. Mediante le variabili #1032 - #1035 è possibile leggere simultaneamente 32 punti di ingresso. 30 #1032 = ∑ # [1000 + i] × 2 −#1031× 2 i 31 i =0 ∑ {2 × V }− 2 30 # [1032 + n] = i i 31 × V31 i =0 Dove, se UIni = 0, Vi = 0. Dove, se UIni = 1, Vi = 1. n = 0-3 [Segnali in uscita] Assegnando valori appropriati alle variabili #1100 - #1132 è possibile attivare i segnali di interfaccia in uscita. Numero della variabile Nome della variabile Punti #1100 #1101 #1102 #1103 #1104 #1105 [#_UO[0]] [#_UO[1]] [#_UO[2]] [#_UO[3]] [#_UO[4]] [#_UO[5]] 1 1 1 1 1 1 - 407 - Segnale UO000 UO001 UO002 UO003 UO004 UO005 (20) (21) (22) (23) (24) (25) 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Numero della variabile Nome della variabile Punti Segnale #1106 #1107 #1108 #1109 #1110 #1111 #1112 #1113 #1114 #1115 #1116 #1117 #1118 #1119 #1120 #1121 #1122 #1123 #1124 #1125 #1126 #1127 #1128 #1129 #1130 #1131 #1132 #1133 #1134 #1135 [#_UO[6]] [#_UO[7]] [#_UO[8]] [#_UO[9]] [#_UO[10]] [#_UO[11]] [#_UO[12]] [#_UO[13]] [#_UO[14]] [#_UO[15]] [#_UO[16]] [#_UO[17]] [#_UO[18]] [#_UO[19]] [#_UO[20]] [#_UO[21]] [#_UO[22]] [#_UO[23]] [#_UO[24]] [#_UO[25]] [#_UO[26]] [#_UO[27]] [#_UO[28]] [#_UO[29]] [#_UO[30]] [#_UO[31]] [#_UOL[0]] [#_UOL[1]] [#_UOL[2]] [#_UOL[3]] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 32 32 32 32 UO006 (26) UO007 (27) UO008 (28) UO009 (29) UO010 (210) UO011 (211) UO012 (212) UO013 (213) UO014 (214) UO015 (215) UO016 (216) UO017 (217) UO018 (218) UO019 (219) UO020 (220) UO021 (221) UO022 (222) UO023 (223) UO024 (224) UO025 (225) UO026 (226) UO027 (227) UO028 (228) UO029 (229) UO030 (230) UO031 (231) UO000-UO031 UO100-UO131 UO200-UO231 UO300-UO331 Valore della variabile Segnale in ingresso 1.0 0.0 Contatto chiuso Contatto aperto Mediante le variabili #1132 - #1135 è possibile scrivere simultaneamente 32 punti di uscita. E' anche possibile leggere lo stato dei segnali. 30 #1132 = ∑ # [1000 + i] × 2 −#1131× 2 i 31 i =0 ∑ {2 × V }− 2 30 # [1132 + n] = i i 31 × V31 i =0 Dove, se UIni = 0, Vi = 0. Dove, se UIni = 1, Vi = 1. n = 0-3 - 408 - B-64484IT/02 PROGRAMMAZIONE 16.MACROISTRUZIONI NOTA 1 Se alle variabili #1100 - #1131 viene assegnato un valore diverso da 1.0 e da 0.0, avviene quanto segue: <nulla> viene trattato come 0. Qualsiasi valore diverso da <nulla> e da 0 viene trattato come 1. Un valore minore di 0.00000001 è "indefinito". 2 Se si desidera utilizzare uno qualsiasi dei gruppi UI016 - UI031, UI100 - UI131, UI200 - UI231, UI300 - UI331, UO016 - UO031, UO200 - UO231 o UO300 UO331. mettere a 1 il bit 0 (MIF) del parametro N. 6001. - 409 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Esempio Struttura degli ingressi digitali 2 15 2 14 2 13 2 Utilizzati per altri scopi 12 2 11 Segno 2 10 2 10 9 2 8 2 7 2 6 2 2 10 5 2 4 2 3 2 2 1 10 2 1 2 0 2 1 2 0 0 Struttura delle uscite digitali 8 2 Non utilizzati 2 7 2 6 2 5 2 4 2 Utilizzati per altri scopi 3 2 2 Indirizzo <1> Il valore dell'indirizzo D specificato viene inviato alle uscite digitali e vengono lette e memorizzate nella variabile #100 tre cifre BCD con il segno. Istruzione di richiamo della macro G65 P9100 D (Indirizzo); Il corpo della macro è il seguente: O9100 ; #1132 = #1132 AND 496 OR#7 ; G65 P9101 T60 ; (#3001). #100 = BIN[#1032 AND 4095] ; IF [#1012 EQ 0] GOTO 9100 ; #100 = -#100 N9100 M99 : Invio dell'indirizzo : Macro di temporizzazione. Per i dettagli, riferirsi all'esempio di clock : Lettura di 3 cifre BCD : Viene aggiunto il segno. <2> Otto tipi di valori dell'indirizzo D specificato vengono inviati alle uscite digitali e vengono letto e memorizzato nella variabile #101 un numero BCD di sei cifre (3 interi e 3 decimali) con il segno. Struttura sul lato macchina Se DO 20 = 0: Se DO 20 = 1: Se DO 23 ~ 21 = 000: Se DO 23 ~ 21 = 001: : Se DO 23 ~ 21 = 111: Dato con 3 posizioni decimali Dato con parte intera di 3 cifre Dato N. 1 quando #1 = 0 Dato N. 2 quando #2 = 0 Dato N. 8 quando #8 = 0 Istruzione di richiamo della macro G65 P9111 D (numero dato); Il corpo della macro è il seguente: O9111 ; G65 P9100 D[#7*2+1] ; #101 = #100 ; G65 P9100 D[#7*2] ; #101 = #101 + #100/1000 ; M99; : Richiama la macro O9100 del punto <1> - 410 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Segnali di interfaccia - indirizzi R #1036 - #1067, #1068, #1069 - #1071 (Attributo: R) #1136 - #1167, #1168, #1169 - #1171 (Attributo: R/W) Questa funzione si abilita mettendo a 1 il bit 2 (IFR) del parametro N. 6020. Impostare l'indirizzo iniziale di ciascuna area R nei parametri N. 6093 o 6094. Vengono assegnati 128 ingressi o 128 uscite a partire dall'indirizzo iniziale impostato. Il valore dei parametri N. 6093 e 6094 deve essere un multiplo di 4 (0, 4, 8, ...). [Segnali in ingresso] Leggendo le variabili di sistema #1036 - #1071 è possibile ottenere lo stato dei segnali di interfaccia in ingresso dell'area R. Numero della variabile Nome della variabile Punti Segnale #1036 #1037 : #1067 #1068 #1069 #1070 #1071 [#_UI[32]] [#_UI[33]] : [#_UI[63]] [#_UIL[4]] [#_UIL[5]] [#_UIL[6]] [#_UIL[7]] 1 1 : 1 32 32 32 32 UI400 (20) UI401 (21) : UI431 (231) UI400 - UI431 UI500 - UI531 UI600 - UI631 UI700 - UI731 Valore della variabile Segnale in ingresso 1.0 0.0 Contatto chiuso Contatto aperto [Segnali in uscita] Mediante le variabili di sistema #1136 to #1171 è possibile cambiare/leggere lo stato dei segnali in uscita dell'area R. Numero della variabile Nome della variabile Punti Segnale #1136 #1137 : #1167 #1168 #1169 #1170 #1171 [#_UO[32]] [#_UO[33]] : [#_UO[63]] [#_UOL[4]] [#_UOL[5]] [#_UOL[6]] [#_UOL[7]] 1 1 : 1 32 32 32 32 UO400 (20) UO401 (21) : UO431 (231) UO400 - UO431 UO500 - UO531 UO600 - UO631 UO700 - UO731 Valore della variabile Segnale in ingresso 1.0 0.0 Contatto chiuso Contatto aperto NOTA 1 Quando i segnali UO400 - UO431 vengono gestiti mediante le variabili di sistema #1136 - #1171, non manipolare questi segnali con il ladder o altre interfacce. Specificarne la scrittura può generare un conflitto fra la lettura e la scrittura dei segnali e causarne variazioni inattese. - 411 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 NOTA 2 Per i segnali UO400 - UO731, vengono utilizzati gli indirizzi R, mentre per i segnali UO000 - UO331 vengono utilizzati gli indirizzi F. Quindi, per gestire questi segnali con il ladder, è necessario considerare la sincronizzazione dei segnali I/O. Per i dettagli, riferirsi alla sottosezione 1.4.5, “Sincronizzazione dei segnali I/O”, nel manuale di programmazione del PMC (B-64513). - Valori delle correzioni utensili #2001-#2800, #10001-#13999, #21001-#22999 (Attributo: R/W) M I valori delle correzioni utensili possono essere ottenuti leggendo le variabili di sistema #2001 - #2800, #10001 - #13999, o #21001 - #22999, che corrispondono ai correttori utensile. E' anche possibile cambiare le correzioni assegnando a queste variabili i valori desiderati. <1> Memoria A delle correzioni utensili • Quando i correttori sono 200 o meno Numero correttore Numero della variabile 1 2 3 : 199 200 • Nome della variabile #2001 #2002 #2003 : #2199 #2200 [#_OFS[1]] [#_OFS[2]] [#_OFS[3]] : [#_OFS[199]] [#_OFS[200]] Quando i correttori sono più di 200 (per i correttori fino al numero 200 possono essere usate anche le variabili #2001 - #2200). Numero correttore Numero della variabile 1 2 3 : 998 999 Nome della variabile #10001 #10002 #10003 : #10998 #10999 [#_OFS[1]] [#_OFS[2]] [#_OFS[3]] : [#_OFS[998]] [#_OFS[999]] <2> Memoria B delle correzioni utensili • Quando i correttori sono 200 o meno Quando il bit 3 (V15) del parametro N. 6000 è 0 Usura Numero correttore 1 2 3 : 199 200 Numero della variabile #2001 #2002 #2003 : #2199 #2200 Nome della variabile [#_OFSW[1]] [#_OFSW[2]] [#_OFSW[3]] : [#_OFSW[199]] [#_OFSW[200]] - 412 - Geometria Numero della Nome della variabile variabile #2201 #2202 #2203 : #2399 #2400 [#_OFSG[1]] [#_OFSG[2]] [#_OFSG[3]] : [#_OFSG[199]] [#_OFSG[200]] PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI Quando il bit 3 (V15) del parametro N. 6000 è 1 Usura Numero correttore 1 2 3 : 199 200 • Numero della variabile #2201 #2202 #2203 : #2399 #2400 Nome della variabile [#_OFSW[1]] [#_OFSW[2]] [#_OFSW[3]] : [#_OFSW[199]] [#_OFSW[200]] Geometria Numero della Nome della variabile variabile #2001 #2002 #2003 : #2199 #2200 [#_OFSG[1]] [#_OFSG[2]] [#_OFSG[3]] : [#_OFSG[199]] [#_OFSG[200]] Quando i correttori sono più di 200 (per i correttori fino al numero 200 possono essere usate anche le variabili #2001 - #2400). Quando il bit 3 (V15) del parametro N. 6000 è 0 Numero correttore 1 2 3 : 998 999 Geometria Numero della Nome della variabile variabile #11001 #11002 #11003 : #11998 #11999 [#_OFSG[1]] [#_OFSG[2]] [#_OFSG[3]] : [#_OFSG[998]] [#_OFSG[999]] Usura Numero della variabile #10001 #10002 #10003 : #10998 #10999 Nome della variabile [#_OFSW[1]] [#_OFSW[2]] [#_OFSW[3]] : [#_OFSW[998]] [#_OFSW[999]] Quando il bit 3 (V15) del parametro N. 6000 è 1 Numero correttore 1 2 3 : 998 999 Geometria Numero della Nome della variabile variabile #10001 #10002 #10003 : #10998 #10999 [#_OFSG[1]] [#_OFSG[2]] [#_OFSG[3]] : [#_OFSG[998]] [#_OFSG[999]] - 413 - Usura Numero della variabile #11001 #11002 #11003 : #11998 #11999 Nome della variabile [#_OFSW[1]] [#_OFSW[2]] [#_OFSW[3]] : [#_OFSW[998]] [#_OFSW[999]] 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 <3> Memoria C delle correzioni utensili • Quando i correttori sono 200 o meno Quando il bit 3 (V15) del parametro N. 6000 è 0 Numero correttore Codice H Geometria Numero della Nome della variabile variabile 1 #2201 2 #2202 3 #2203 : 199 : #2399 200 #2400 [#_OFSHG[1]] oppure [#_OFSZG[1]] [#_OFSHG[2]] oppure [#_OFSZG[2]] [#_OFSHG[3]] oppure [#_OFSZG[3]] : [#_OFSHG[199]] oppure [#_OFSZG[199]] [#_OFSHG[200]] oppure [#_OFSZG[200]] Usura Numero della variabile #2001 #2002 #2003 : #2199 #2200 Nome della variabile [#_OFSHW[1]] oppure [#_OFSZW[1]] [#_OFSHW[2]] oppure [#_OFSZW[2]] [#_OFSHW[3]] oppure [#_OFSZW[3]] : [#_OFSHW[199]] oppure [#_OFSZW[199]] [#_OFSHW[200]] oppure [#_OFSZW[200]] Quando il bit 3 (V15) del parametro N. 6000 è 1 Numero correttore Codice H Geometria Numero della Nome della variabile variabile 1 #2001 2 #2002 3 #2003 : 199 : #2199 200 #2200 [#_OFSHG[1]] oppure [#_OFSZG[1]] [#_OFSHG[2]] oppure [#_OFSZG[2]] [#_OFSHG[3]] oppure [#_OFSZG[3]] : [#_OFSHG[199]] oppure [#_OFSZG[199]] [#_OFSHG[200]] oppure [#_OFSZG[200]] - 414 - Usura Numero della variabile #2201 #2202 #2203 : #2399 #2400 Nome della variabile [#_OFSHW[1]] oppure [#_OFSZW[1]] [#_OFSHW[2]] oppure [#_OFSZW[2]] [#_OFSHW[3]] oppure [#_OFSZW[3]] : [#_OFSHW[199]] oppure [#_OFSZW[199]] [#_OFSHW[200]] oppure [#_OFSZW[200]] 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Numero correttore Codice D Geometria Numero della Nome della variabile variabile 1 #2401 2 #2402 3 #2403 : 199 : #2599 200 #2600 [#_OFSDG[1]] oppure [#_OFSRG[1]] [#_OFSDG[2]] oppure [#_OFSRG[2]] [#_OFSDG[3]] oppure [#_OFSRG[3]] : [#_OFSDG[199]] oppure [#_OFSRG[199]] [#_OFSDG[200]] oppure [#_OFSRG[200]] Usura Numero della variabile #2601 #2602 #2603 : #2799 #2800 Nome della variabile [#_OFSDW[1]] oppure [#_OFSRW[1]] [#_OFSDW[2]] oppure [#_OFSRW [2]] [#_OFSDW[3]] oppure [#_OFSRW [3]] : [#_OFSDW[199]] oppure [#_OFSRW [199]] [#_OFSDW[200]] oppure [#_OFSRW200]] NOTA 1 Se #2401 - #2800 vengono utilizzate per leggere o scrivere i codici D, il bit 5 (D15) del parametro N. 6004 deve essere 1. 2 Quando il bit 5 (D15) del parametro N. 6004 è 1, le variabili di sistema #2500 #2806 per l'offset dello zero pezzo non possono essere utilizzate. Utilizzare le variabili di sistema #5201 - #5324. • Quando i correttori sono più di 200 (per i correttori fino al numero 200 possono essere usate anche le variabili #2001 - #2800). Quando il bit 3 (V15) del parametro N. 6000 è 0 Numero correttore Codice H Geometria Numero della Nome della variabile variabile 1 #11001 2 #11002 3 #11003 : 998 : #11998 999 #11999 [#_OFSHG[1]] oppure [#_OFSZG[1]] [#_OFSHG[2]] oppure [#_OFSZG[2]] [#_OFSHG[3]] oppure [#_OFSZG[3]] : [#_OFSHG[998]] oppure [#_OFSZG[998]] [#_OFSHG[999]] oppure [#_OFSZG[999]] - 415 - Usura Numero della variabile #10001 #10002 #10003 : #10998 #10999 Nome della variabile [#_OFSHW[1]] oppure [#_OFSZW[1]] [#_OFSHW[2]] oppure [#_OFSZW[2]] [#_OFSHW[3]] oppure [#_OFSZW[3]] : [#_OFSHW[998]] oppure [#_OFSZW[998]] [#_OFSHW[999]] oppure [#_OFSZW[999]] 16.MACROISTRUZIONI Numero correttore PROGRAMMAZIONE Codice D Geometria Numero della Nome della variabile variabile 1 #13001 2 #13002 3 #13003 : 998 : #13998 999 #13999 [#_OFSDG[1]] oppure [#_OFSRG[1]] [#_OFSDG[2]] oppure [#_OFSRG[2]] [#_OFSDG[3]] oppure [#_OFSRG[3]] : [#_OFSDG[998]] oppure [#_OFSRG[998]] [#_OFSDG[999]] oppure [#_OFSRG[999]] B-64484IT/02 Usura Numero della variabile #12001 #12002 #12003 : #12998 #12999 Nome della variabile [#_OFSDW[1]] oppure [#_OFSRW[1]] [#_OFSDW[2]] oppure [#_OFSRW [2]] [#_OFSDW[3]] oppure [#_OFSRW [3]] : [#_OFSDW[998]] oppure [#_OFSRW [998]] [#_OFSDW[999]] oppure [#_OFSRW [999]] Quando il bit 3 (V15) del parametro N. 6000 è 1 Numero correttore Codice H Geometria Numero della Nome della variabile variabile 1 #10001 2 #10002 3 #10003 : 998 : #10998 999 #10999 [#_OFSHG[1]] oppure [#_OFSZG[1]] [#_OFSHG[2]] oppure [#_OFSZG[2]] [#_OFSHG[3]] oppure [#_OFSZG[3]] : [#_OFSHG[998]] oppure [#_OFSZG[998]] [#_OFSHG[999]] oppure [#_OFSZG[999]] - 416 - Usura Numero della variabile #11001 #11002 #11003 : #11998 #11999 Nome della variabile [#_OFSHW[1]] oppure [#_OFSZW[1]] [#_OFSHW[2]] oppure [#_OFSZW[2]] [#_OFSHW[3]] oppure [#_OFSZW[3]] : [#_OFSHW[998]] oppure [#_OFSZW[998]] [#_OFSHW[999]] oppure [#_OFSZW[999]] Numero correttore 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Codice D Geometria Numero della Nome della variabile variabile 1 #12001 2 #12002 3 #12003 : 998 : #12998 999 #12999 [#_OFSDG[1]] oppure [#_OFSRG[1]] [#_OFSDG[2]] oppure [#_OFSRG[2]] [#_OFSDG[3]] oppure [#_OFSRG[3]] : [#_OFSDG[998]] oppure [#_OFSRG[998]] [#_OFSDG[999]] oppure [#_OFSRG[999]] Usura Numero della variabile #13001 Nome della variabile [#_OFSDW[1]] oppure [#_OFSRW[1]] [#_OFSDW[2]] oppure [#_OFSRW [2]] [#_OFSDW[3]] oppure [#_OFSRW [3]] : [#_OFSDW[998]] oppure [#_OFSRW [998]] [#_OFSDW[999]] oppure [#_OFSRW [999]] #13002 #13003 : #13998 #13999 Variabili di sistema non dipendenti dal bit 3 (V15) del parametro N. 6000 Numero correttore 1 2 3 : 998 999 - Compensazione raccordo Geometria Numero della Nome della variabile variabile #21001 #21002 #21003 : #21998 #21999 [#_CORR_G[1]] [#_CORR_G[2]] [#_CORR_G[3]] : [#_CORR_G[998]] [#_CORR_G[999]] Usura Numero della variabile #22001 #22002 #22003 : #22998 #22999 Nome della variabile [#_CORR_W[1]] [#_CORR_W[2]] [#_CORR_W[3]] : [#_CORR_W[998]] [#_CORR_W[999]] Valori delle correzioni utensili #2001-#2964, #10001-#19999 (Attributo: R/W) T I valori delle correzioni utensili possono essere ottenuti leggendo le variabili di sistema #2001 - #2964 o #10001 - #19999, che corrispondono ai correttori utensile. E' anche possibile cambiare le correzioni assegnando a queste variabili i valori desiderati. 1 Senza distinzione tra correzione geometria e correzione usura • Quando i correttori sono 64 o meno Numero correttore 1 2 3 : 63 64 1 2 3 : 63 64 Numero della variabile #2001 #2002 #2003 : #2063 #2064 #2101 #2102 #2103 : #2163 #2164 Nome della variabile [#_OFSX[1]] [#_OFSX[2]] [#_OFSX[3]] : [#_OFSX[63]] [#_OFSX[64]] [#_OFSZ[1]] [#_OFSZ[2]] [#_OFSZ[3]] : [#_OFSZ[63]] [#_OFSZ[64]] - 417 - Descrizione Correzione lungo l'asse X (*1) Correzione lungo l'asse Z (*1) 16.MACROISTRUZIONI Numero correttore 1 2 3 : 63 64 1 2 3 : 63 64 1 2 3 : 48 49 PROGRAMMAZIONE Numero della variabile #2201 #2202 #2203 : #2263 #2264 #2301 #2302 #2303 : #2363 #2364 #2401 #2402 #2403 : #2448 #2449 Nome della variabile [#_OFSR[1]] [#_OFSR[2]] [#_OFSR[3]] : [#_OFSR[63]] [#_OFSR[64]] [#_OFST[1]] [#_OFST[2]] [#_OFST[3]] : [#_OFST[63]] [#_OFST[64]] [#_OFSY[1]] [#_OFSY[2]] [#_OFSY[3]] : [#_OFSY[48]] [#_OFSY[49]] B-64484IT/02 Descrizione Compensazione raggio utensile Posizione della punta immaginaria dell'utensile Correzione lungo l'asse Y (*1) (*1) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base • Quando i correttori sono più di 64 (per i correttori fino al numero 64 possono essere usate anche le variabili #2001 - #2449). Numero correttore 1 2 3 : 998 999 1 2 3 : 998 999 1 2 3 : 998 999 1 2 3 : 998 999 1 2 3 : 998 999 Numero della variabile #10001 #10002 #10003 : #10998 #10999 #11001 #11002 #11003 : #11998 #11999 #12001 #12002 #12003 : #12998 #12999 #13001 #13002 #13003 : #13998 #13999 #14001 #14002 #14003 : #14998 #14999 Nome della variabile [#_OFSX[1]] [#_OFSX[2]] [#_OFSX[3]] : [#_OFSX[998]] [#_OFSX[999]] [#_OFSZ[1]] [#_OFSZ[2]] [#_OFSZ[3]] : [#_OFSZ[998]] [#_OFSZ[999]] [#_OFSR[1]] [#_OFSR[2]] [#_OFSR[3]] : [#_OFSR[998]] [#_OFSR[999]] [#_OFST[1]] [#_OFST[2]] [#_OFST[3]] : [#_OFST[998]] [#_OFST[999]] [#_OFSY[1]] [#_OFSY[2]] [#_OFSY[3]] : [#_OFSY[998]] [#_OFSY[999]] - 418 - Descrizione Correzione lungo l'asse X (*1) Correzione lungo l'asse Z (*1) Compensazione raggio utensile Posizione della punta immaginaria Correzione lungo l'asse Y (*1) PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI (*1) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base 2 Con distinzione tra correzione geometria e correzione usura • Quando i correttori sono 64 o meno Numero correttore 1 2 3 : 63 64 1 2 3 : 63 64 1 2 3 : 63 64 1 2 3 : 63 64 1 2 3 : 48 49 1 2 3 : 48 49 1 2 3 : 48 49 1 2 3 : 48 49 Numero della variabile Nome della variabile #2001 #2002 #2003 : #2063 #2064 #2101 #2102 #2103 : #2163 #2164 #2201 #2202 #2203 : #2263 #2264 #2301 #2302 #2303 : #2363 #2364 #2401 #2402 #2403 : #2448 #2449 #2451 #2452 #2453 : #2498 #2499 #2701 #2702 #2703 : #2748 #2749 #2801 #2802 #2803 : #2848 #2849 [#_OFSXW[1]] [#_OFSXW[2]] [#_OFSXW[3]] : [#_OFSXW[63]] [#_OFSXW[64]] [#_OFSZW[1]] [#_OFSZW[2]] [#_OFSZW[3]] : [#_OFSZW[63]] [#_OFSZW[64]] [#_OFSRW[1]] [#_OFSRW [2]] [#_OFSRW [3]] : [#_OFSRW [63]] [#_OFSRW [64]] [#_OFST[1]] [#_OFST[2]] [#_OFST[3]] : [#_OFST[63]] [#_OFST[64]] [#_OFSYW[1]] [#_OFSYW [2]] [#_OFSYW [3]] : [#_OFSYW [48]] [#_OFSYW [49]] [#_OFSYG[1]] [#_OFSYG [2]] [#_OFSYG [3]] : [#_OFSYG [48]] [#_OFSYG [49]] [#_OFSXG[1]] [#_OFSXG[2]] [#_OFSXG [3]] : [#_OFSXG [48]] [#_OFSXG [49]] [#_OFSZG[1]] [#_OFSZG[2]] [#_OFSZG[3]] : [#_OFSZG[48]] [#_OFSZG[49]] - 419 - Descrizione Correzione lungo l'asse X (usura) (*1) Correzione lungo l'asse Z (usura) (*1) Compensazione raggio utensile (usura) Posizione della punta immaginaria Correzione lungo l'asse Y (usura) (*1) Correzione lungo l'asse Y (geometria) (*1) Correzione lungo l'asse X (geometria) (*1) Correzione lungo l'asse Z (geometria) (*1) 16.MACROISTRUZIONI Numero correttore 1 2 3 : 63 64 1 2 3 : 998 999 PROGRAMMAZIONE Numero della variabile Nome della variabile #2901 #2902 #2903 : #2963 #2964 #19001 #19002 #19003 : #19998 #19999 [#_OFSRG[1]] [#_OFSRG[2]] [#_OFSRG[3]] : [#_OFSRG[63]] [#_OFSRG[64]] [#_OFSYG[1]] [#_OFSYG [2]] [#_OFSYG [3]] : [#_OFSYG[998]] [#_OFSYG[999]] B-64484IT/02 Descrizione Compensazione raggio utensile (geometria) Correzione lungo l'asse Y (geometria) (*1) (*1) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base • Quando i correttori sono più di 64 (per i correttori fino al numero 64 possono essere usate le variabili #2001 - #2964 o le variabili #10001 -#19999 ). Numero correttore 1 2 3 : 63 64 1 2 3 : 63 64 1 2 3 : 48 49 1 2 3 : 48 49 1 2 3 : 48 49 Numero della variabile Nome della variabile #2201 #2202 #2203 : #2263 #2264 #2301 #2302 #2303 : #2363 #2364 #2401 #2402 #2403 : #2448 #2449 #2451 #2452 #2453 : #2498 #2499 #2701 #2702 #2703 : #2748 #2749 [#_OFSRW[1]] [#_OFSRW [2]] [#_OFSRW [3]] : [#_OFSRW [63]] [#_OFSRW [64]] [#_OFST[1]] [#_OFST[2]] [#_OFST[3]] : [#_OFST[63]] [#_OFST[64]] [#_OFSYW[1]] [#_OFSYW [2]] [#_OFSYW [3]] : [#_OFSYW [48]] [#_OFSYW [49]] [#_OFSYG[1]] [#_OFSYG [2]] [#_OFSYG [3]] : [#_OFSYG [48]] [#_OFSYG [49]] [#_OFSXG[1]] [#_OFSXG[2]] [#_OFSXG [3]] : [#_OFSXG [48]] [#_OFSXG [49]] - 420 - Descrizione Correzione lungo l'asse X (usura) (*1) Correzione lungo l'asse Z (usura) (*1) Compensazione raggio utensile (usura) Posizione della punta immaginaria Correzione lungo l'asse Y (usura) (*1) PROGRAMMAZIONE B-64484IT/02 Numero correttore 1 2 3 : 63 64 1 2 3 : 998 999 1 2 3 : 63 64 1 2 3 : 998 999 Numero della variabile Nome della variabile #2901 #2902 #2903 : #2963 #2964 #19001 #19002 #19003 : #19998 #19999 #2901 #2902 #2903 : #2963 #2964 #19001 #19002 #19003 : #19998 #19999 [#_OFSRG[1]] [#_OFSRG[2]] [#_OFSRG[3]] : [#_OFSRG[63]] [#_OFSRG[64]] [#_OFSYG[1]] [#_OFSYG [2]] [#_OFSYG [3]] : [#_OFSYG[998]] [#_OFSYG[999]] [#_OFSRG[1]] [#_OFSRG[2]] [#_OFSRG[3]] : [#_OFSRG[63]] [#_OFSRG[64]] [#_OFSYG[1]] [#_OFSYG [2]] [#_OFSYG [3]] : [#_OFSYG[998]] [#_OFSYG[999]] 16.MACROISTRUZIONI Descrizione Correzione lungo l'asse X (geometria) (*1) Correzione lungo l'asse Z (geometria) (*1) Compensazione raggio utensile (geometria) Correzione lungo l'asse Y (geometria) (*1) (*1) Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base - Allarme #3000 (Attributo: W) Quando una macro rileva un allarme, può assegnare un valore a questa variabile, generando uno stato di allarme. Inoltre, dopo il valore numerico, è possibile specificare un messaggio lungo fino a 60 caratteri alfanumerici e racchiuso tra un control-out e un control-in. Se il messaggio non è specificato, viene utilizzato un default. Numero della variabile Nome della variabile Descrizione #3000 [#_ALM] Allarme macro Quando il bit 1 (MCA) del parametro N. 6008 è 0 #3000 = n (MESSAGGIO DI ALLARME); (n: 0-200) Sul video del CNC compare, dopo MC, un numero di allarme ottenuto sommando a 3000 il valore della variabile #3000, insieme al messaggio specificato. (Esempio) #3000 = 1 (MESSAGGIO DI ALLARME); Nella schermata degli allarmi comparirà => "MC3001 MESSAGGIO DI ALLARME". Quando il bit 1 (MCA) del parametro N. 6008 è 1 #3000 = n (MESSAGGIO DI ALLARME); (n: 0-4095) Sul video del CNC compare un numero di allarme ottenuto anteponendo i caratteri 'MC' al valore della variabile #3000, insieme al messaggio specificato. (Esempio) #3000 = 1 (MESSAGGIO DI ALLARME); Nella schermata degli allarmi comparirà=> "MC0001 MESSAGGIO DI ALLARME". - 421 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Quando #3000 viene programmata con un commento, la precedenza fra il messaggio di allarme ed il commento dipende dall'impostazione del bit 3 (NCM) del parametro N. 6020. Quando NCM è 0 Il primo elemento è il messaggio di allarme, ciò che lo segue è il commento. (Esempio) #3000 =1 (MESSAGGIO DI ALLARME) (COMMENTO 1) (COMMENTO 2); Quando NCM è 1 L'elemento finale è il messaggio di allarme, ciò che lo precede è il commento. (Esempio) #3000 =1 (COMMENTO 1) (COMMENTO 2) (MESSAGGIO DI ALLARME); - Clock #3001, #3002 (Attributo: R/W) Leggendo le variabili di sistema #3001 e #3002 è possibile ottenere il tempo di clock. I clock possono essere presettati assegnando un valore a queste due variabili. Tipo Numero della variabile Nome della variabile Unità All'accensione Condizione di conteggio Clock 1 #3001 [#_CLOCK1] 1 ms Azzerato Clock 2 #3002 [#_CLOCK2] 1 ora Come allo spegnimento Sempre Quando il segnale STL è on L'accuratezza del clock è di 16 ms. Il clock 1 ritorna a 0 dopo 2147483648 ms. Il clock 2 ritorna a 0 dopo 9544.37176 ore. [Esempio] Temporizzatore Comando di richiamo della macro G65 P9101 T (tempo di attesa) ms ; Corpo della macro O9101; #3001 = 0; Impostazione iniziale WHILE [#3001 LE #20] DO1: Arresa per il tempo specificato END1 ; M99; - Controllo dell'arresto in blocco singolo e attesa del segnale di completamento della funzione ausiliaria #3003 (Attributo: R/W) Assegnando i seguenti valori alla variabile di sistema #3003 è possibile specificare se per i blocchi successi l'arresto in blocco singolo è o non è disabilitato e se è abilitata l'attesa del segnale di completamento (FIN) delle funzioni ausiliarie (M, S, T o B) prima di passare al blocco successivo. Quando l'attesa del segnale di completamento è disabilitata, non viene emesso il segnale di fine della distribuzione (DEN). Fare attenzione a non specificare la funzione ausiliaria successiva senza attendere il segnale di completamento. Numero e nome della variabile Valore Arresto in blocco singolo Segnale FIN #3003 [#_CNTL1] 0 1 2 3 Abilitato Disabilitato Abilitato Disabilitato Atteso Atteso Non atteso Non atteso - 422 - PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI Inoltre, le seguenti variabili permettono di gestire in modo indipendente l'arresto in blocco singolo e l'attesa del segnale FIN. Nome della variabile [#_M_SBK] [#_M_FIN] Valore Arresto in blocco singolo Completamento funzioni ausiliarie 0 1 0 1 Abilitato Disabilitato - Atteso Non atteso [Esempio] Ciclo di foratura (per programmazione incrementale) (Equivalente a G81) Comando di richiamo della macro G65 P9081 L iterazioni R punto R Z punto Z; Il corpo della macro è il seguente: O9081 ; #3003 = 1 ; G00 Z#18 ; Arresto in blocco singolo disabilitato G01 Z#26 ; #18 corrisponde a R e #26 a Z. G00 Z-[ ROUND[#18] + ROUND[#26] ] ; #3003 =0 ; M99; NOTA La variabile #3003 viene azzerata da un reset. - Abilitazione di feed hold, regolazione della velocità di avanzamento ed arresto esatto #3004 (Attributo: R/W) Assegnando i seguenti valori alla variabile di sistema #3004 è possibile specificare l'abilitazione/disabilitazione di feed hold, regolazione della velocità di avanzamento ed arresto esatto nel modo G61 o con il comando G09. Numero e nome della variabile Valore Feed hold Regolazione della velocità di avanzamento Arresto esatto #3004 [#_CNTL2] 0 1 2 3 4 5 6 7 Abilitato Disabilitata Abilitato Disabilitato Abilitato Disabilitato Abilitato Disabilitato Abilitata Abilitata Disabilitata Disabilitata Abilitata Abilitata Disabilitata Disabilitata Abilitato Abilitato Abilitato Abilitato Disabilitato Disabilitato Disabilitato Disabilitato Inoltre è possibile utilizzare i seguenti nomi per abilitare o disabilitare queste tre funzioni indipendentemente le une dalle altre. Numero e nome della variabile [#_M_FHD] [#_M_OV] [#_M_EST] Valore Feed hold Regolazione della velocità di avanzamento Arresto esatto 0 1 0 1 0 1 Abilitato Disabilitato - Abilitata Disabilitata - Abilitato Disabilitato - 423 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 NOTA 1 Queste variabili di sistema sono fornite per mantenere la compatibilità con i programmi pezzo convenzionali. Per l'abilitazione/disabilitazione di feed hold, regolazione della velocità di avanzamento ed arresto esatto, si raccomanda di utilizzare le funzioni fornite da G63, G09, G61, ed altri codici G. 2 Quando viene premuto il pulsante feed hold durante l'esecuzione di un blocco per quale feed hold è disabilitato: <1> Se si tiene premuto il pulsante il ciclo si arresta dopo l'esecuzione del blocco. Però, se non è abilitato l'arresto in blocco singolo, il ciclo non si arresta. <2> Se si rilascia il pulsante, la spia feed hold lampeggia, ma il ciclo non si arresta fino alla fine del primo blocco per cui feed hold è abilitato. 3 La variabile #3004 viene azzerata da un reset. 4 Se l'arresto esatto viene disabilitato mediante la variabile #3004, la posizione originale di arresto esatto tra i blocchi in avanzamento di lavoro ed i blocchi in rapido non viene influenzata. La variabile #3004 può disabilitare temporaneamente l'arresto esatto nel modo G61, o in seguito al comando G09, tra due blocchi in avanzamento di lavoro. - Impostazioni #3005 (Attributo: R/W) E' possibile leggere e scrivere i dati di impostazione. I valori binari vengono convertiti in valori decimali. #3005 #15 #14 #13 #12 #11 #10 Impostazione Impostazione - #8 FCV #7 #9 (FCV) : #5 (SEQ) : #2 (INI) : #1 (ISO) : #0 (TVC) : #9 #6 #5 #4 #3 SEQ #2 #1 #0 INI ISO TVC Utilizzo della conversione del formato di programmazione della Serie 15. Inserimento automatico del numero di sequenza Programmazione in millimetri o in pollici Emissione in codice EIA o ISO Esecuzione del controllo TV Arresto con un messaggio #3006 (Attributo: W) Quando una macro contiene il comando "#3006=1 (MESSAGE);", il programma esegue i blocchi fino a quello immediatamente precedente e si ferma. Se è specificato il messaggio facoltativo, lungo fino a 60 caratteri alfanumerici e specificato entro i caratteri control-out e control-in, esso viene visualizzato sulla schermata dei messaggi esterni per l'operatore. Numero della variabile Nome della variabile Descrizione #3006 [#_MSGSTP] Arresto con un messaggio Quando #3006 viene programmata con un commento, la precedenza fra il messaggio ed il commento dipende dall'impostazione del bit 3 (NCM) del parametro N. 6020. Quando NCM è 0 Il primo elemento è il messaggio, ciò che lo segue è il commento. (Esempio) #3006 =1 (MESSAGGIO MACRO) (COMMENTO 1) (Commento 2); Quando NCM è 1 L'elemento finale è il messaggio, ciò che lo precede è il commento. (Esempio) #3006 =1 (COMMENTO 1) (COMMENTO 2) (MESSAGGIO MACRO); - 424 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Stato dell'immagine speculare #3007 (Attributo: R) Leggendo la variabile #3007 è possibile ottenere lo stato dell'immagine speculare (impostazione o DI) per ciascun asse al momento. Numero della variabile Nome della variabile Descrizione #3007 [#_MRIMG] Stato dell'immagine speculare I bit di questa variabile corrispondono agli assi come segue: Bit N. asse 31 32 30 31 29 30 28 29 27 28 26 27 25 26 24 25 23 24 22 23 21 22 20 21 19 20 18 19 17 18 16 17 Bit N. asse 15 16 14 15 13 14 12 13 11 12 10 11 9 10 8 9 7 8 6 7 5 6 4 5 3 4 2 3 1 2 0 1 Un bit a 0 indica che per l'asse corrispondente l'immagine speculare è disabilitata, un bit a 1 indica che è abilitata. [Esempio] Quando #3007 è 3, l'immagine speculare è abilitata per il primo e per il secondo asse. NOTA 1 Lo stato dell'immagine speculare programmabile non si riflette su questa variabile. 2 Dato che l'immagine speculare può essere specificata per lo stesso asse sia mediante un dato di impostazione sia mediante un segnale, il bit di un asse corrisponde al risultato di una OR tra il segnale ed il dato di impostazione relativi a quell'asse. 3 I segnali di attivazione dell'immagine speculare per assi diversi da quelli controllati non influenzano la variabile #3007. - Ripartenza del programma #3008 (Attributo: R) Leggendo la variabile #3008 è possibile determinare se è in corso la ripartenza del programma. Numero della variabile #3008 - Nome della variabile [#_PRSTR] Descrizione 0: Ripartenza programma non in corso 1: Ripartenza programma in corso Data e ora #3011, #3012 (Attributo: R) Leggendo le variabili #3011 e #3012 è possibile ottenere la data (anno/mese/giorno) e l'ora (ore/minuti/secondi), rispettivamente. Le variabili sono di sola lettura. Per cambiare anno/mese/giorno e ore/minuti/secondi, utilizzare la schermata corrispondente. [Esempio] 20 maggio 2004, 04:17:05 #3011 = 20040520 #3012 = 161705 - Numero di canale del parametro da leggere o scrivere #3018 (Attributo: R/W) Se deve essere letto o scritto un parametro di un altro canale, utilizzando la lettura parametri con il comando PRM o utilizzando la scrittura parametri mediante l'introduzione parametri da programma (G10L52), questa variabile di sistema si utilizza per specificare quel canale. - 425 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 La relazione fra il valore specificato ed il numero del canale è la seguente: #3018 Canale selezionato 0 1 2 : 10 Canale locale Canale 1 Canale 2 : Canale 10 Numero della variabile #3018 - Nome della variabile - Descrizione Numero di canale del parametro da leggere o da scrivere Numero del canale nel quale la macro è in esecuzione #3019 (Attributo: R) Questa variabile di sistema può essere utilizzata per leggere il numero del canale nel quale la macro è in esecuzione. Mediante questa variabile è possibile eseguire lo stesso programma in modo diverso a seconda del canale. Il numero del canale può essere letto come segue: - Canale #3019 Canale 1 Canale 2 Canale 3 : Canale 10 1 2 3 : 10 Numero della variabile Nome della variabile Descrizione #3019 [#_PATH_NO] Numero canale Numero totale di pezzi e numero richiesto di pezzi #3901 e #3902 (Attributo: R/W) Il numero richiesto di pezzi ed il numero di pezzi lavorati possono essere visualizzati utilizzando la funzione di visualizzazione del tempo di funzionamento e del numero di pezzi. Quando il numero totale di pezzi lavorati raggiunge il numero richiesto di pezzi, viene inviato alla macchina (lato PMC) un apposito segnale. Queste variabili possono essere utilizzate sia per leggere sia per scrivere il numero totale di pezzi ed il numero richiesto di pezzi. - Numero della variabile Nome della variabile Descrizione #3901 #3902 [#_PRTSA] [#_PRTSN] Numero totale di pezzi Numero richiesto di pezzi Tipo di memoria delle correzioni utensili #3980 (Attributo: R) M La variabile di sistema #3980 può essere utilizzata per leggere il tipo di memoria delle correzioni. Numero della variabile Nome della variabile Descrizione #3980 [#_OFSMEM] Tipi di memoria delle correzioni 0: Memoria A delle correzioni utensili 1: Memoria B delle correzioni utensili 2: Memoria C delle correzioni utensili - 426 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Numero del programma principale #4000 (Attributo: R) La variabile di sistema #4000 può essere utilizzata per leggere il numero del programma principale anche quando è in esecuzione un sottoprogramma, indipendentemente dal suo livello. Numero della variabile Nome della variabile Descrizione #4000 [#_MAINO] Numero del programma principale NOTA 1 Il numero del programma principale è il numero del programma avviato per primo. 2 Se durante l'esecuzione del programma principale viene specificato un numero O in MDI o viene specificato un numero O in DNC, la variabile #4000 assume il valore corrispondente al codice O specificato. Se non ci sono programmi registrati ed in DNC non è stato specificato nessun numero O, il valore di #4000 è 0. - Dati modali #4001-#4130, #4201-#4330, #4401-#4530 (Attributo: R) I dati modali specificati prima dell'esecuzione della frase macro che le legge possono essere ottenuti, con riferimento al blocco attualmente preletto, leggendo le variabili di sistema #4001 - #4130. Leggendo le variabili di sistema #4201 - #4330 è possibile ottenere i dati modali del blocco in esecuzione al momento. Leggendo le variabili di sistema #4401 - #4530 è possibile ottenere i dati modali specificati prima del blocco interrotto da un interrupt delle macroistruzioni. Valgono le unità utilizzate al momento della specifica. M (Categoria: <1> Blocco nel buffer, <2> Blocco in esecuzione, <3> Blocco interrotto) Categoria <1> <2> <3> <1> <2> <3> : <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> Numero della variabile #4001 #4201 #4401 #4002 #4202 #4402 : #4030 #4230 #4430 #4102 #4302 #4502 #4107 #4307 #4507 #4108 #4308 #4508 #4109 #4309 #4509 #4111 #4311 #4511 Nome della variabile [#_BUFG[1]] [#_ACTG[1]] [#_INTG[1]] [#_BUFG[2]] [#_ACTG[2]] [#_INTG[2]] : [#_BUFG[30]] [#_ACTG[30]] [#_INTG[30]] [#_BUFB] [#_ACTB] [#_INTB] [#_BUFD] [#_ACTD] [#_INTD] [#_BUFE] [#_ACTE] [#_INTE] [#_BUFF] [#_ACTF] [#_INTF] [#_BUFH] [#_ACTH] [#_INTH] Descrizione Dato modale (codice G: gruppo 1) Dato modale (codice G: gruppo 2) : Dato modale (codice G: gruppo 30) Dato modale (codice B) Dato modale (codice D) Dato modale (codice E) Dato modale (codice F) Dato modale (codice H) - 427 - 16.MACROISTRUZIONI Categoria <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> Numero della variabile #4113 #4313 #4513 #4114 #4314 #4514 #4115 #4315 #4515 #4119 #4319 #4519 #4120 #4320 #4520 #4130 #4330 #4530 PROGRAMMAZIONE Nome della variabile [#_BUFM] [#_ACTM] [#_INTM] [#_BUFN] [#_ACTN] [#_INTN] [#_BUFO] [#_ACTO] [#_INTO] [#_BUFS] [#_ACTS] [#_INTS] [#_BUFT] [#_ACTT] [#_INTT] [#_BUFWZP] [#_ACTWZP] [#_INTWZP] B-64484IT/02 Descrizione Dato modale (codice M) Dato modale (numero di sequenza N) Dato modale (numero programma O) Dato modale (codice S) Dato modale (codice T) Dato modale (numero del sistema addizionale di coordinate del pezzo P) T (Categoria: <1> Blocco nel buffer, <2> Blocco in esecuzione, <3> Blocco interrotto) Categoria <1> <2> <3> <1> <2> <3> : <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> <1> <2> <3> Numero della variabile #4001 #4201 #4401 #4002 #4202 #4402 : #4030 #4230 #4430 #4108 #4308 #4508 #4109 #4309 #4509 #4113 #4313 #4513 #4114 #4314 #4514 #4115 #4315 #4515 #4119 #4319 #4519 #4120 #4320 #4520 Nome della variabile [#_BUFG[1]] [#_ACTG[1]] [#_INTG[1]] [#_BUFG[2]] [#_ACTG[2]] [#_INTG[2]] : [#_BUFG[30]] [#_ACTG[30]] [#_INTG[30]] [#_BUFE] [#_ACTE] [#_INTE] [#_BUFF] [#_ACTF] [#_INTF] [#_BUFM] [#_ACTM] [#_INTM] [#_BUFN] [#_ACTN] [#_INTN] [#_BUFO] [#_ACTO] [#_INTO] [#_BUFS] [#_ACTS] [#_INTS] [#_BUFT] [#_ACTT] [#_INTT] Descrizione Dato modale (codice G: gruppo 1) Dato modale (codice G: gruppo 2) : Dato modale (codice G: gruppo 30) Dato modale (codice E) Dato modale (codice F) Dato modale (codice M) Dato modale (numero di sequenza N) Dato modale (numero programma O) Dato modale (codice S) Dato modale (codice T) - 428 - PROGRAMMAZIONE B-64484IT/02 Categoria <1> <2> <3> Numero della variabile #4130 #4330 #4530 Nome della variabile [#_BUFWZP] [#_ACTWZP] [#_INTWZP] 16.MACROISTRUZIONI Descrizione Dato modale (numero del sistema addizionale di coordinate del pezzo P) NOTA 1 Blocchi nel buffer e blocco in esecuzione Dato che il CNC legge in anticipo i blocchi successivi a quello in esecuzione, normalmente il blocco acquisito dal CNC è diverso da quello in esecuzione. Le variabili #4001 - #4130 contengono i dati modali validi per il blocco caricato nel buffer immediatamente prima di quello che le utilizza. 2 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. [Esempio] O1234 ; N10 G00 X200. Y200. ; N20 G01 X1000. Y1000. F10. ; : : N50 G00 X500. Y500. ; N60 #1 = #4001 ; Assumiamo che il CNC stia attualmente eseguendo N20. Se il CNC ha già letto e processato i blocchi fino a N60, il blocco in esecuzione è N20 ed il blocco caricato nel buffer immediatamente prima del comando che legge le variabili è N50. Sicché, mentre per il blocco in esecuzione il codice G del gruppo 01 è G01, per il blocco nel buffer questo codice è G00. Di conseguenza, se N60 #1 = #4201, #1 = 1. Di conseguenza, se N60 #1 = #4001, #1 = 0. - 429 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Dati relativi alla posizione #5001-#5080, #100001-#100200 (Attributo: R) Le variabili di sistema 5001 - #5080 o #100001 - #100200 forniscono la posizione finale del blocco precedente, la posizione attuale (nel sistema di coordinate della macchina e nel sistema di coordinate del pezzo) e la posizione del segnale di salto della lavorazione. Numero della variabile Nome della variabile Dato di posizione #5001 #5002 : #5020 #100001 #100002 : #100050 #5021 #5022 : #5040 #100051 #100052 : #100100 #5041 #5042 : #5060 #100101 #100102 : #100150 #5061 #5062 : #5080 #100151 #100152 : #100200 [#_ABSIO[1]] [#_ABSIO[2]] : [#_ABSIO[20]] [#_ABSIO[1]] [#_ABSIO[2]] : [#_ABSIO[50]] [#_ABSMT[1]] [#_ABSMT[2]] : [#_ABSMT[20]] [#_ABSMT[1]] [#_ABSMT[2]] : [#_ABSMT[50]] [#_ABSOT[1]] [#_ABSOT[2]] : [#_ABSOT[20]] [#_ABSOT[1]] [#_ABSOT[2]] : [#_ABSOT[50]] [#_ABSKP[1]] [#_ABSKP[2]] : [#_ABSKP[20]] [#_ABSKP[1]] [#_ABSKP[2]] : [#_ABSKP[50]] Punto finale del blocco (1o asse) Punto finale del blocco (2o asse) : Punto finale del blocco (20o asse) Punto finale del blocco (1o asse) Punto finale del blocco (2o asse) : Punto finale del blocco (50o asse) Posizione attuale (1o asse) Posizione attuale (2o asse) : Posizione attuale (20o asse) Posizione attuale (1o asse) Posizione attuale (2o asse) : Posizione attuale (50o asse) Posizione attuale (1o asse) Posizione attuale (2o asse) : Posizione attuale (20o asse) Posizione attuale (1o asse) Posizione attuale (2o asse) : Posizione attuale (50o asse) Posizione di salto (1o asse) Posizione di salto (2o asse) : Posizione di salto (20o asse) Posizione di salto (1o asse) Posizione di salto (2o asse) : Posizione di salto (50o asse) Sistema di coordinate Compensazione posizione/ lunghezza/ raggio utensile Lettura durante il movimento Sistema di coordinate del pezzo Non incluse Abilitata Sistema di coordinate della macchina Incluse Disabilitata Sistema di coordinate del pezzo Incluse Disabilitata Sistema di coordinate del pezzo Incluse Abilitata NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per la posizione dei primi 20 assi è sempre possibile utilizzare le variabili #5001 #5080. 3 La posizione finale (ABSIO) di un blocco G31 nel quale è pervenuto il segnale di salto è quella del segnale. Se il segnale di salto non è pervenuto, la posizione corrisponde al punto finale programmato nel blocco. 4 "La lettura durante il movimento è disabilitata" significa che non è garantita l'accuratezza della lettura durante il movimento. - 430 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Compensazione lunghezza utensile #5081-#5100, #100201-#100250 (Attributo: R) M Leggendo le variabili #5081 - #5100 o #100201 - #100250 è possibile ottenere il valore della compensazione lunghezza utensile lungo ciascun asse valido per il blocco in esecuzione al momento. Numero della variabile #5081 #5082 : #5100 #100201 #100202 : #100250 Nome della variabile [#_TOFS[1]] [#_TOFS[2]] : [#_TOFS[20]] [#_TOFS[1]] [#_TOFS[2]] : [#_TOFS[50]] Dato di posizione Lettura durante il movimento Compensazione lunghezza utensile lungo il 1o asse. Compensazione lunghezza utensile lungo il 2o asse. : Compensazione lunghezza utensile lungo il 20o asse. Compensazione lunghezza utensile lungo il 1o asse. Compensazione lunghezza utensile lungo il 2o asse. : Compensazione lunghezza utensile lungo il 50o asse. Disabilitata NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per la compensazione lunghezza utensile lungo i primi 20 assi è sempre possibile utilizzare le variabili #5081 - #5100. - Correzioni utensile #5081-#5083, #5121-#5123 (Attributo: R) #100201-#100250, #100901-#100950 T Leggendo le variabili #5081 - #5083 o #5121 - #5123 è possibile ottenere le correzioni utensile lungo ciascun asse valide per il blocco in esecuzione. (Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base) 1 Senza distinzione tra correzione geometria e correzione usura Numero della variabile #5081 #5082 #5083 #5084 : #5100 #100201 #100202 #100203 #100204 : #100250 Nome della variabile [#_TOFSWX] [#_TOFSWZ] [#_TOFSWY] [#_TOFS[4]] : [#_TOFS[20]] [#_TOFSWX] [#_TOFSWZ] [#_TOFSWY] [#_TOFS[4]] : [#_TOFS[50]] Dato di posizione Correzione utensile lungo l'asse X Correzione utensile lungo l'asse Z Correzione utensile lungo l'asse Y Correzione utensile lungo il 4o asse : Correzione utensile lungo il 20o asse Correzione utensile lungo l'asse X Correzione utensile lungo l'asse Z Correzione utensile lungo l'asse Y Correzione utensile lungo il 4o asse : Correzione utensile lungo il 50o asse - 431 - Lettura durante il movimento Disabilitata 16.MACROISTRUZIONI 2 PROGRAMMAZIONE B-64484IT/02 Con distinzione tra correzione geometria e correzione usura Numero della variabile Nome della variabile Lettura durante il movimento Dato di posizione #5081 #5082 #5083 #5084 : #5100 #100201 #100202 #100203 #100204 : #100250 [#_TOFSWX] [#_TOFSWZ] [#_TOFSWY] [#_TOFS[4]] : [#_TOFS[20]] [#_TOFSWX] [#_TOFSWZ] [#_TOFSWY] [#_TOFS[4]] : [#_TOFS[50]] Correzione utensile lungo l'asse X (geometria) Correzione utensile lungo l'asse Z (geometria) Correzione utensile lungo l'asse Y (geometria) Correzione utensile lungo il 4o asse (geometria) : Correzione utensile lungo il 20o asse (geometria) Correzione utensile lungo l'asse X (geometria) Correzione utensile lungo l'asse Z (geometria) Correzione utensile lungo l'asse Y (geometria) Correzione utensile lungo il 4o asse (geometria) : Correzione utensile lungo il 50o asse (geometria) Disabilitata #5121 #5122 #5123 #5124 : #5140 #100901 #100902 #100903 #100904 : #100950 [#_TOFSGX] [#_TOFSGZ] [#_TOFSGY] [#_TOFSG[4]] : [#_TOFSG[20]] [#_TOFSGX] [#_TOFSGZ] [#_TOFSGY] [#_TOFSG[4]] : [#_TOFSG[50]] Correzione utensile lungo l'asse X (geometria) Correzione utensile lungo l'asse Z (geometria) Correzione utensile lungo l'asse Y (geometria) Correzione utensile lungo il 4o asse (geometria) : Correzione utensile lungo il 20o asse (geometria) Correzione utensile lungo l'asse X (geometria) Correzione utensile lungo l'asse Z (geometria) Correzione utensile lungo l'asse Y (geometria) Correzione utensile lungo il 4o asse (geometria) : Correzione utensile lungo il 50o asse (geometria) Disabilitata Quando le correzioni usura e le correzioni geometria sono separate, i valori delle variabili dipendono come segue dai bit 2 (LWT) e 4 (LGT) del parametro N. 5002. Numero della variabile #5081 #5082 #5083 #5121 #5122 #5123 LWT=0 LGT=0 LWT=1 LGT=0 LWT=0 LGT=1 LWT=1 LGT=1 Correzione usura 0 Correzione usura Correzione usura Correzione geometria Correzione usura + correzione geometria Correzione geometria Correzione geometria NOTA 1 Il valore impostato viene letto come correzione utensile indipendentemente dal bit 1 (ORC) del parametro N. 5004 e dal bit 0 (OWD) del parametro N. 5040. 2 Per leggere le correzioni utensile (geometria) con le variabili #5121 - #5123, mettere a 0 il bit 2 (VHD) del parametro N. 6004. - 432 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Errore di posizione del servosistema #5101-#5120, #100251-#100300 (Attributo: R) Leggendo le variabili #5101 - #5120 o #100251 - #100300 è possibile ottenere l'errore di posizione del servosistema di ciascun asse. Numero della variabile #5101 #5102 : #5120 #100251 #100252 : #100300 Nome della variabile [#_SVERR[1]] [#_SVERR[2]] : [#_SVERR[20]] [#_SVERR[1]] [#_SVERR[2]] : [#_SVERR[50]] Dato di posizione Errore di posizione del primo asse Errore di posizione del secondo asse : Errore di posizione del ventesimo asse Errore di posizione del primo asse Errore di posizione del secondo asse : Errore di posizione del cinquantesimo asse Lettura durante il movimento Disabilitata NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per l'errore di posizione dei primi 20 assi è sempre possibile utilizzare le variabili #5101 - #5120. - Interruzione del volantino #5121-#5140, #100651-#100700 (Attributo: R) #5121 - #5140 o #100651 - #100700 è possibile ottenere l'entità del movimento di ciascun asse generato da un'interruzione del volantino. Numero della variabile #5121 #5122 : #5140 #100651 #100652 : #100700 Nome della variabile [#_MIRTP[1]] [#_MIRTP[2]] : [#_MIRTP[20]] [#_MIRTP[1]] [#_MIRTP[2]] : [#_MIRTP[50]] Dato di posizione Interruzione del volantino per il 1o asse Interruzione del volantino per il 2o asse : Interruzione del volantino per il 20o asse Interruzione del volantino per il 1o asse Interruzione del volantino per il 2o asse : Interruzione del volantino per il 50o asse Lettura durante il movimento Disabilitata NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per l'interruzione del volantino lungo i primi 20 assi è sempre possibile utilizzare le variabili #5121 - #5140. T NOTA Le variabili #5121 - #5140 sono abilitate solo quando il bit 2 (VHD) del parametro N. 6004 è 1. - 433 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Distanza residua #5181-#5200, #100801-#100850 (Attributo: R) Leggendo le variabili #5181 - #5200 o #100801 - #100850 è possibile ottenere la distanza residua lungo ciascun asse. Numero della variabile #5181 #5182 : #5200 #100801 #100802 : #100850 Nome della variabile [#_DIST[1]] [#_DIST[2]] : [#_DIST[20]] [#_DIST[1]] [#_DIST[2]] : [#_DIST[50]] Lettura durante il movimento Dato di posizione Distanza residua lungo il 1o asse Distanza residua lungo il 2o asse : Distanza residua lungo il 20o asse Distanza residua lungo il 1o asse Distanza residua lungo il 2o asse : Distanza residua lungo il 50o asse Disabilitata NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per la distanza residua lungo i primi 20 assi è sempre possibile utilizzare le variabili #5181 - #5200. - Traslazione del sistema di coordinate del pezzo #2501, #2601 (Attributo: R/W) T L'entità della traslazione del sistema di coordinate del pezzo lungo l'asse X può essere ottenuta leggendo la variabile #2501 mentre quella lungo l'asse Z si ottiene leggendo la variabile #2601. L'entità della traslazione del sistema di coordinate del pezzo può essere ottenuta dalle variabili di sistema #100751-#100800. Assegnando valori appropriati a queste variabili è possibile cambiare l'entità della traslazione. (Asse X: asse X dei tre assi base, Asse Z: asse Z dei tre assi base, Asse Y: asse Y dei tre assi base) Numero della variabile #2501 #2601 #100751 #100752 : #100800 Nome della variabile [#_WZ_SFTX] [#_WZ_SFTZ] [#_WZ_SFT[1]] [#_WZ_SFT [2]] : [#_WZ_SFT [50]] Descrizione Traslazione lungo l'asse X Traslazione lungo l'asse Z Traslazione lungo il 1o asse Traslazione lungo il 2o asse : Traslazione lungo il 50o asse NOTA 1 Il valore di una variabile corrispondente ad un asse non controllato non è definito. 2 Per l'asse base X è anche possibile utilizzare la variabile di sistema #2501, e per l'asse base Z è anche possibile utilizzare la variabile di sistema #2601. - 434 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Offset dello zero pezzo #5201-#5340, #100301-#100650 (Attributo: R/W) Leggendo le variabili #5201 - #5340 o #100301 - #100650 è possibile ottenere l'offset dello zero pezzo lungo ciascun asse. E' anche possibile cambiare gli offset assegnando a queste variabili i valori desiderati. Numero della variabile #5201 #5202 : #5220 #5221 #5222 : #5240 #5241 #5242 : #5260 #5261 #5262 : #5280 #5281 #5282 : #5300 #5301 #5302 : #5320 #5321 #5322 : #5340 Nome della variabile [#_WZCMN[1]] [#_WZCMN[2]] : [#_WZCMN[20]] [#_WZG54[1]] [#_WZG54[2]] : [#_WZG54[20]] [#_WZG55[1]] [#_WZG55[2]] : [#_WZG55[20]] [#_WZG56[1]] [#_WZG56[2]] : [#_WZG56[20]] [#_WZG57[1]] [#_WZG57[2]] : [#_WZG57[20]] [#_WZG58[1]] [#_WZG58[2]] : [#_WZG58[20]] [#_WZG59[1]] [#_WZG59[2]] : [#_WZG59[20]] Asse controllato Offset esterno lungo il primo asse Offset esterno lungo il secondo asse : Offset esterno lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Numero della variabile Nome della variabile Asse controllato #100301 #100302 : #100350 #100351 #100352 : #100400 #100401 #100402 : #100450 #100451 #100452 : #100500 [#_WZCMN[1]] [#_WZCMN[2]] : [#_WZCMN[50]] [#_WZG54[1]] [#_WZG54[2]] : [#_WZG54[50]] [#_WZG55[1]] [#_WZG55[2]] : [#_WZG55[50]] [#_WZG56[1]] [#_WZG56[2]] : [#_WZG56[50]] Offset esterno lungo il primo asse Offset esterno lungo il secondo asse : Offset esterno lungo il 50o asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse - 435 - Sistema di coordinate del pezzo Offset esterno applicato a tutti i sistemi di coordinate del pezzo G54 G55 G56 G57 G58 G59 Sistema di coordinate del pezzo Offset esterno applicato a tutti i sistemi di coordinate del pezzo G54 G55 G56 16.MACROISTRUZIONI Numero della variabile #100501 #100502 : #100550 #100551 #100552 : #100600 #100601 #100602 : #100650 Nome della variabile [#_WZG57[1]] [#_WZG57[2]] : [#_WZG57[50]] [#_WZG58[1]] [#_WZG58[2]] : [#_WZG58[50]] [#_WZG59[1]] [#_WZG59[2]] : [#_WZG59[50]] PROGRAMMAZIONE Asse controllato Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse B-64484IT/02 Sistema di coordinate del pezzo G57 G58 G59 M Quando il bit 5 (D15) del parametro N. 6004 è 0 è possibile utilizzare anche le seguenti variabili: Asse Primo asse Secondo asse Terzo asse Quarto asse Funzione Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 - 436 - Numero della variabile #2500 #2501 #2502 #2503 #2504 #2505 #2506 #2600 #2601 #2602 #2603 #2604 #2605 #2606 #2700 #2701 #2702 #2703 #2704 #2705 #2706 #2800 #2801 #2802 #2803 #2804 #2805 #2806 PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI T Per mantenere la compatibilità con i modelli precedenti, è possibile utilizzare le seguenti variabili: Asse Primo asse Secondo asse Terzo asse Quarto asse Funzione Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Offset esterno dello zero pezzo Offset dello zero pezzo G54 Offset dello zero pezzo G55 Offset dello zero pezzo G56 Offset dello zero pezzo G57 Offset dello zero pezzo G58 Offset dello zero pezzo G59 Numero della variabile #2550 #2551 #2552 #2553 #2554 #2555 #2556 #2650 #2651 #2652 #2653 #2654 #2655 #2656 #2750 #2751 #2752 #2753 #2754 #2755 #2756 #2850 #2851 #2852 #2853 #2854 #2855 #2856 NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per l'offset dello zero pezzo lungo i primi 20 assi è sempre possibile utilizzare le variabili #5201 - #5340. M NOTA Per l'utilizzo delle variabili #2500 - #2806, #5201 - #5340 e #100301 - #100650, sono necessarie le variabili opzionali per i sistemi di coordinate del pezzo. T NOTA Per l'utilizzo delle variabili #2550 - #2856, #5201 - #5340 e #100301 - #100650, sono necessarie le variabili opzionali per i sistemi di coordinate del pezzo. - Offset dello zero pezzo dei sistemi aggiuntivi di coordinate del pezzo #7001-#7960, #101001-#116000 (Attributo: R/W) - 437 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 M #14001-#20000 (Attributo: R/W) Leggendo le variabili #7001 - #7960, #14001 - #20000, #101001 - #116000 è possibile ottenere l'offset dello zero pezzo dei sistemi aggiuntivi di coordinate del pezzo. E' anche possibile cambiare gli offset assegnando a queste variabili i valori desiderati. Numero della variabile Nome della variabile [#_WZP1[1]] [#_WZP1[2]] : [#_WZP1[20]] [#_WZP2[1]] [#_WZP2[2]] : [#_WZP2[20]] [#_WZP3[1]] [#_WZP3[2]] : [#_WZP3[20]] : [#_WZP48[1]] [#_WZP48[2]] : [#_WZP48[20]] #7001 #7002 : #7020 #7021 #7022 : #7040 #7041 #7042 : #7060 : #7941 #7942 : #7960 Asse controllato Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse : Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Numero del sistema aggiuntivo di coordinate 1 (G54.1 P1) 2 (G54.1 P2) 3 (G54.1 P3) : 48 (G54.1 P48) Numero della variabile = 7000 + (numero del sistema di coordinate -1) × 20 + numero asse Numero del sistema di coordinate: da 1 a 48 Numero asse: da 1 a 20 M Numero della variabile #14001 #14002 : #14020 #14021 #14022 : #14040 #14041 #14042 : #14060 : #19981 #19982 : #20000 Nome della variabile [#_WZP1[1]] [#_WZP1[2]] : [#_WZP1[20]] [#_WZP2[1]] [#_WZP2[2]] : [#_WZP2[20]] [#_WZP3[1]] [#_WZP3[2]] : [#_WZP3[20]] : [#_WZP300[1]] [#_WZP300[2]] : [#_WZP300[20]] Asse controllato Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse : Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il ventesimo asse Numero del sistema aggiuntivo di coordinate 1 (G54.1 P1) 2 (G54.1 P2) 3 (G54.1 P3) : 300 (G54.1 P300) Numero della variabile = 14000 + (numero del sistema di coordinate -1) × 20 + numero asse Numero del sistema di coordinate: da 1 a 300 Numero asse: da 1 a 20 - 438 - PROGRAMMAZIONE B-64484IT/02 Numero della variabile #101001 #101002 : #101050 #101051 #101052 : #101100 #101101 #101102 : #101150 : #115951 #115952 : #116000 Nome della variabile [#_WZP1[1]] [#_WZP1[2]] : [#_WZP1[50]] [#_WZP2[1]] [#_WZP2[2]] : [#_WZP2[50]] [#_WZP3[1]] [#_WZP3[2]] : [#_WZP3[50]] : [#_WZP300[1 ]] [#_WZP300[2 ]] : [#_WZP300[5 0]] Asse controllato Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse : Offset lungo il primo asse Offset lungo il secondo asse : Offset lungo il cinquantesimo asse 16.MACROISTRUZIONI Numero del sistema aggiuntivo di coordinate 1 (G54.1 P1) 2 (G54.1 P2) 3 (G54.1 P3) : 300 (G54.1 P300) Numero della variabile = 101000 + (numero del sistema di coordinate -1) × 50 + numero asse Numero del sistema di coordinate: da 1 a 300 Numero asse: da 1 a 50 M NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 L'offset dello zero pezzo dei sistemi aggiuntivi di coordinate del pezzo per i primi 20 assi può sempre essere letto con le variabili #7001 - #7960 o #14001 #20000. 3 Le variabili opzionali per i 48 sistemi aggiuntivi di coordinate del pezzo sono i numeri #7001 - #7960 (G54.1 P1 - G54.1 P48). Le variabili opzionali per i 300 sistemi aggiuntivi di coordinate del pezzo sono i numeri #300 - #14001 e #20000 - #101001 (G54.116000 P1 - G54.1 P300). Insieme a queste possono essere utilizzate anche le variabili #7001 - #7960. T NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Le variabili opzionali per i 48 sistemi aggiuntivi di coordinate del pezzo sono i numeri #7001 - #7960 (G54.1 P1 - G54.1 P48). 3 Le variabili opzionali per i 300 sistemi aggiuntivi di coordinate del pezzo sono i numeri #101001 - #116000 (G54.1 P1 - G54.1 P300). Insieme a queste possono essere utilizzate anche le variabili #7001 - #7960. - 439 - 16.MACROISTRUZIONI - PROGRAMMAZIONE Posizione di salto (unità di retroazione) (Attributo: R) B-64484IT/02 #5421-#5440, #100701-#100750 Leggendo le variabili #5421 - #5440 o #100701 - #100750 è possibile ottenere la posizione di salto in unità di retroazione. I valori di queste variabili sono interi, nel sistema di coordinate del pezzo. Numero della variabile #5421 #5422 : #5440 #100151 #100152 : #100200 Nome della variabile [#_SKPDTC[1]] [#_SKPDTC[2]] : [#_SKPDTC[20]] [#_SKPDTC[1]] [#_SKPDTC[2]] : [#_SKPDTC[50]] Dato di posizione Lettura durante il movimento Posizione di salto 1o asse (unità di retroazione) Posizione di salto 2o asse (unità di retroazione) : Posizione di salto 20o asse (unità di retroazione) Posizione di salto 1o asse (unità di retroazione) Posizione di salto 2o asse (unità di retroazione) : Posizione di salto 50o asse (unità di retroazione) Disabilitata NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per la posizione di salto (in unità di retroazione) lungo i primi 20 assi è sempre possibile utilizzare le variabili #5421 - #5440. 3 Per specificare queste variabili, mettere a 1 il bit 2 (DSK) del parametro N. 6210. (Se si specifica una di queste variabili quando DSK è 0, si verifica l'allarme PS0115.) - Numero correttore attrezzo di fissaggio di riferimento selezionato #5500 (Attributo: R) M Leggendo la variabile #5500 è possibile ottenere il numero del correttore di riferimento per la compensazione dell'attrezzo di fissaggio. Numero della variabile #5500 - Nome della variabile [#_FOFSP] Descrizione Numero correttore attrezzo di fissaggio di riferimento Correzione di riferimento dell'attrezzo di fissaggio selezionata #5501-#5520, #117001-#117050 (Attributo: R) M Leggendo le variabili #5501 - #5520 o #117001 - #117050 è possibile ottenere la correzione di riferimento dell'attrezzo di fissaggio selezionata. Numero della variabile #5501 #5502 : #5520 #117001 #117002 : #117050 Nome della variabile [#_FOFSVAL[1]] [#_FOFSVAL[2]] : [#_FOFSVAL[20]] [#_FOFSVAL[1]] [#_FOFSVAL[2]] : [#_FOFSVAL[50]] Descrizione Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il ventesimo asse Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il cinquantesimo asse - 440 - PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per la compensazione dell'attrezzo di fissaggio di riferimento lungo i primi 20 assi è sempre possibile utilizzare le variabili #5501 - #5520. - Compensazioni di riferimento dell'attrezzo di fissaggio #5521-#5680, #117051-#117450 (Attributo: R/W) M Leggendo le variabili #5521 - #5680 o #117051 - #117450 è possibile ottenere i valori di riferimento della compensazione attrezzo di fissaggio utilizzati dalla funzione compensazione dinamica rotazione tavola. E' anche possibile cambiare le compensazioni assegnando a queste variabili i valori desiderati. Numero della variabile Nome della variabile #5521 #5522 : #5540 #5541 #5542 : #5560 : #5661 #5662 : #5680 #117051 #117052 : #117100 #117101 #117102 : #117150 : #117401 #117402 : #117450 [#_FOFS1[1]] [#_FOFS1[2]] : [#_FOFS1[20]] [#_FOFS2[1]] [#_FOFS2[2]] : [#_FOFS2[20]] : [#_FOFS8[1]] [#_FOFS8[2]] : [#_FOFS8[20]] [#_FOFS1[1]] [#_FOFS1[2]] : [#_FOFS1[50]] [#_FOFS2[1]] [#_FOFS2[2]] : [#_FOFS2[50]] : [#_FOFS8[1]] [#_FOFS8[2]] : [#_FOFS8[50]] Asse controllato Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il ventesimo asse Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il ventesimo asse : Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il ventesimo asse Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il cinquantesimo asse Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il cinquantesimo asse : Correzione selezionata lungo il primo asse Correzione selezionata lungo il secondo asse : Correzione selezionata lungo il cinquantesimo asse N. correttore attrezzo di fissaggio 1 (G54.2 P1) 2 (G54.2 P2) : 8 (G54.2 P8) 1 (G54.2 P1) 2 (G54.2 P2) : 8 (G54.2 P8) NOTA 1 Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. 2 Per la compensazione dell'attrezzo di fissaggio di riferimento lungo i primi 20 assi è sempre possibile utilizzare le variabili #5521 - #5580. - 441 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Valori della seconda correzione geometria utensile #5801-#5896, #27001-#29999 (Attributo: R/W) T Leggendo le variabili di sistema #5801 - #5896 e #27001 - #29999, è possibile determinare i valori della seconda correzione geometria utensile e scrivendo queste variabili è possibile cambiare quei valori. • Fino a 32 correttori • - Numero correttore Numero della variabile Nome della variabile Attributo 1 : 32 1 : 32 1 : 32 #5801 : #5832 #5833 : #5864 #5865 : #5896 [#_OFSX2G[1]] : [#_OFSX2G[32]] [#_OFSZ2G[1]] : [#_OFSZ2G[32]] [#_OFSY2G[1]] : [#_OFSY2G[32]] R/W : R/W R/W : R/W R/W : R/W Descrizione Entità della seconda correzione geometria utensile lungo l'asse X Entità della seconda correzione geometria utensile lungo l'asse Z Entità della seconda correzione geometria utensile lungo l'asse Y Oltre 32 correttori (Per i valori dei primi 32 correttori possono essere utilizzate anche le variabili #5801 - #5896.) Numero correttore Numero della variabile Nome della variabile Attributo 1 : 999 1 : 999 1 : 999 #27001 : #27999 #28001 : #28999 #29001 : #29999 [#_OFSX2G[1]] : [#_OFSX2G[999]] [#_OFSZ2G[1]] : [#_OFSZ2G[999]] [#_OFSY2G[1]] : [#_OFSY2G[999]] R/W : R/W R/W : R/W R/W : R/W Descrizione Entità della seconda correzione geometria utensile lungo l'asse X Entità della seconda correzione geometria utensile lungo l'asse Z Entità della seconda correzione geometria utensile lungo l'asse Y Valori di riferimento per la compensazione dinamica dell'utensile #118051-#118450 (Attributo: R/W) M Leggendo le variabili #118051 - #118450 è possibile ottenere i valori di riferimento della compensazione dinamica dell'utensile per macchine con testa rotante. E' anche possibile cambiare queste compensazioni assegnando alle variabili i valori desiderati. Numero della variabile #118051 #118052 : #118100 #118101 #118102 : #118150 Nome della variabile [#_DOFS1[1]] [#_DOFS1[2]] : [#_DOFS1[50]] [#_DOFS2[1]] [#_DOFS2[2]] : [#_DOFS2[50]] Asse controllato Compensazione dinamica utensile lungo il 1o asse. Compensazione dinamica utensile lungo il 2o asse. : Compensazione dinamica utensile lungo il 50o asse. Compensazione dinamica utensile lungo il 1o asse. Compensazione dinamica utensile lungo il 2o asse. : Compensazione dinamica utensile lungo il 50o asse. - 442 - Numero correttore per la compensazione dinamica dell'utensile 1 (G43.2H1) 2 (G43.2H2) PROGRAMMAZIONE B-64484IT/02 Numero della variabile #118151 #118152 : #118200 #118201 #118202 : #118250 #118251 #118252 : #118300 : #118401 #118402 : #118450 Nome della variabile [#_DOFS3[1]] [#_DOFS3[2]] : [#_DOFS3[50]] [#_DOFS4[1]] [#_DOFS4[2]] : [#_DOFS4[50]] [#_DOFS5[1]] [#_DOFS5[2]] : [#_DOFS5[50]] : [#_DOFS8[1]] [#_DOFS8[2]] : [#_DOFS8[50]] 16.MACROISTRUZIONI Numero correttore per la compensazione dinamica dell'utensile Asse controllato Compensazione dinamica utensile lungo il 1o asse. Compensazione dinamica utensile lungo il 2o asse. : Compensazione dinamica utensile lungo il 50o asse. Compensazione dinamica utensile lungo il 1o asse. Compensazione dinamica utensile lungo il 2o asse. : Compensazione dinamica utensile lungo il 50o asse. Compensazione dinamica utensile lungo il 1o asse. Compensazione dinamica utensile lungo il 2o asse. : Compensazione dinamica utensile lungo il 50o asse. : Compensazione dinamica utensile lungo il 1o asse. Compensazione dinamica utensile lungo il 2o asse. : Compensazione dinamica utensile lungo il 50o asse. 3 (G43.2H3) 4 (G43.2H4) 5 (G43.2H5) : 8 (G43.2H8) NOTA Se viene specificata una variabile che eccede il numero degli assi controllati, si verifica l'allarme PS0115, “N. VARIABILE FUORI DAI LIMITI”. - Riduzione della velocità di avanzamento per la sovrapposizione dei movimenti in rapido #100851-#100900 (Attributo: R/W) Scrivendo le variabili di sistema #100851 to #100900 è possibile variare la riduzione della velocità di avanzamento per la sovrapposizione dei movimenti in rapido. Numero della variabile #100851 #100852 : #100900 - Nome della variabile [#_ROVLP[1]] [#_ROVLP[2]] : [#_ROVLP[50]] Asse controllato Riduzione della velocità di avanzamento del primo asse Riduzione della velocità di avanzamento del secondo asse : Riduzione della velocità di avanzamento del 50o asse Stato dei mandrini seriali #100951 - #100954 (Attributo: R) Le variabili di sistema #100951 - #100954 permettono di conoscere lo stato dei mandrini seriali. La relazione fra il valore di una variabile e lo stato del mandrino corrispondente è la seguente: 1 : Funzionamento normale 2 : Orientamento 3 : Controllo sincrono 4 : Maschiatura rigida 5 : Controllo contornatura Cs Numero della variabile #100951 #100952 #100953 #100954 Descrizione Nome della variabile [#_SPSTAT[1]] [#_SPSTAT[2]] [#_SPSTAT[3]] [#_SPSTAT[4]] Stato del primo mandrino del canale Stato del secondo mandrino del canale Stato del terzo mandrino del canale Stato del quarto mandrino del canale - 443 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Commutazione tra variabili P-CODE e variabili di sistema (#10000 o successive) #8570 (Attributo: R/W) Questa variabile di sistema abilita le operazioni di lettura/scrittura delle variabili P-CODE (da #10000 a #89999) per la funzione macro executor. Per i dettagli relativi alle variabili P-CODE, riferirsi al manuale "Macro Executor - Manuale di programmazione" (B-63943-2). La variabile di sistema #8570 permette di definire le variabili da #10000 in poi come variabili P-CODE o variabili di sistema. Variabile #8570 #8570=1 #8570=0 Esempio #8570 = 0 ; #10001 =123 ; → #8570=1 ; #10001 =456 ; → Variabile specificata Variabile corrispondente #10000 : #89999 #10000 : #89999 Variabile P-CODE (#10000) : Variabile P-CODE (#89999) Variabile di sistema (#10000) : Variabile di sistema (#89999) Scrittura della variabile di sistema #10001 (compensazione utensile) Scrittura della variabile P-CODE #10001 (compensazione utensile) NOTA 1 La variabile #8570 può essere utilizzata solo se è abilitata la funzione macro executor. 2 Le variabili di sistema (#10000 o successive) corrispondono sempre alle variabili di sistema specificate con il nome, anche se #8570 is 1. 3 Se si tenta di accedere ad una variabile che non può essere utilizzata come variabile P-CODE (#10000 o successive), si verifica l'allarme PS0115, “NUMERO VARIABILE ERRATO”. - 444 - PROGRAMMAZIONE B-64484IT/02 16.3 16.MACROISTRUZIONI LETTURA E SCRITTURA DI VARIABILI DI ALTRI CANALI Premettendo (ottava e nona cifra) il numero del canale al numero della variabile è possibile leggere o scrivere una variabile comune o una variabile di sistema di un altro canale. L'elenco delle variabili che possono essere lette e scritte è fornita nel paragrafo corrispondente. Formato #ppxxxxxxx pp: Numero canale Omesso = Canale locale 1 = Canale 1 : : 10 = Canale 10 xxxxxxx : Numero della variabile Variabili comuni (#100 - #499(Nota), #500 - #999(Nota)) o variabile di sistema (1000 e successive, 10000 e successine, 100000 e successive) NOTA Le variabili comuni e le variabili di sistema disponibili variano a seconda della configurazione del sistema. Esempio Coordinate di macchina per il canale 1Coordinate di macchina per il canale 2 X1123.456 X2-123.456 Y1 45.670 Z2 78.900 Z1345.789 C2 45.000 Nel suddetto caso, se nel canale 1 viene eseguito #100=#5023, la coordinata di macchina 345.789 del terzo asse del canale 1 viene assegnata alla variabile #100. Se viene eseguito #100=#20005023, alla variabile #100 viene assegnata la coordinata di macchina 45.0 del terzo asse del canale 2. NOTA 1 I nomi delle variabili non possono essere utilizzati. 2 Se viene specificato un numero di canale fuori dai limiti, si verifica l'allarme PS0115, “NUMERO VARIABILE ERRATO”. 3 Le variabili locali di un altro canale non possono essere lette o scritte. 4 Per leggere e scrivere i dati del canale 10, mettere a 0 il bit 0 (F16) del parametro N. 6008. Se il bit 0 (F16) del parametro N. 6008 è 1, la precisione del calcolo arriva solo all'ottava cifra. Così,se devono essere letti o scritti i dati del canale 10, il calcolo di #100=#[100005000+#1], ad esempio, non può essere eseguito correttamente. 5 Se viene eseguita una macro in tempo reale, si verifica l'allarme PS0390, “VARIABILE MACRO ILLEGALE”. - 445 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Avvertenza AVVERTENZA Le variabili di sistema comprendono quelle che influenzano il funzionamento automatico (ad esempio, le variabili #3000 - #3999), quindi è possibile influenzare il funzionamento di un altro canale. Nello scriverle, fare grande attenzione. Elenco delle variabili che possono essere lette e scritte Questa funzione può leggere e scrivere le seguenti variabili di un altro canale. Per i dettagli sulle variabili di sistema, vedi la precedente sezione. R, W, e R/W sono gli attributi delle variabili ed indicano che sono abilitate solo la lettura, solo la scrittura, la lettura e la scrittura, rispettivamente. - Variabili comuni Numero della variabile #100 - #149(#199) da #200 a #499 #500 - #549(#999) - Attributo Descrizione R/W Le variabili comuni disponibili variano a seconda della configurazione del sistema. Segnali di interfaccia Numero della variabile #1000 - #1035 #1100 - #1135 - Attributo R R/W Descrizione Segnali di interfaccia in ingresso Segnali di interfaccia in uscita Valori delle correzioni utensili Numero della variabile #2001 - #2964 #10001 - - Attributo R/W Descrizione Correzioni utensile Traslazione del sistema di coordinate del pezzo T Numero della variabile #100751 - #100800 - R/W Descrizione Spostamento del sistema di coordinate del pezzo Funzionamento automatico e simili Numero della variabile - Attributo Attributo #3001, #3002 #3003 R/W R/W #3004 R/W #3005 #3007 #3008 R/W R R Descrizione Clock Controlla l'arresto in blocco singolo e l'attesa del segnale di completamento delle funzioni ausiliarie. Feed hold, regolazione della velocità di avanzamento, controllo arresto esatto Dati di impostazione. Stato dell'immagine speculare (DI e impostazione) Stato durante la ripartenza del programma Tempo Numero della variabile #3011 - #3012 Attributo R Descrizione Anno/mese/giorno, Ore/minuti/secondi - 446 - - Numero di pezzi Numero della variabile #3901 - #3902 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Attributo R/W Descrizione Numero totale di pezzi, Numero richiesto di pezzi Memoria delle correzioni utensili M Numero della variabile #3980 - Numero della variabile Numero della variabile Attributo R Descrizione Numero del programma principale Attributo R Descrizione Dati modali Dati relativi alla posizione Numero della variabile #5001 - #5020 #100001 - #100050 #5021 - #5040 #100051 - #100100 #5041 - #5060 #100101 - #100150 #5061 - #5080 #100151 - #100200 - Informazioni sulla memoria delle correzioni utensili Dati modali #4001 - #4530 - R Descrizione Numero del programma principale #4000 - Attributo Attributo Descrizione R Punto finale del blocco (sistema di coordinate del pezzo) R Posizione attuale (sistema di coordinate della macchina) R Posizione attuale specificata (sistema di coordinate del pezzo) R Posizione di salto (sistema di coordinate del pezzo) Compensazione lunghezza utensile M Numero della variabile #5081 - #5100 #100201 - #100250 - Attributo R Descrizione Compensazione lunghezza utensile Valore della correzione T Numero della variabile #5081 - #5083 #5121 - #5123 - Attributo R R Descrizione Correzioni utensile (usura) Correzioni utensile (geometria) Errore di posizione del servosistema Numero della variabile #5101 - #5120 #100251 - #100300 Attributo R Descrizione Errore di posizione del servosistema - 447 - 16.MACROISTRUZIONI - #5121 - #5140 #100651 - #100700 Attributo R Descrizione Interruzione del volantino Distanza da percorrere Numero della variabile #5181 - #5200 #100801 - #100850 - B-64484IT/02 Interruzione del volantino Numero della variabile - PROGRAMMAZIONE Attributo R Descrizione Distanza residua Offset dello zero pezzo, offset aggiuntivi dello zero pezzo M Numero della variabile #5201 - #5340 #100301 - #100650 #7001 - #7960 #14001 - #20000 #101001 - #116000 Attributo R/W R/W Descrizione Offset dello zero pezzo Offset aggiuntivi dello zero pezzo Offset dello zero pezzo T Numero della variabile #5201 - #5340 #100301 - #100650 #7001 - #7960 #101001 - #116000 - R/W R/W Descrizione Offset dello zero pezzo Offset aggiuntivi dello zero pezzo Offset dello zero pezzo Posizione di salto (unità di retroazione) Numero della variabile #5421 - #5440 #100701 - #100750 - Attributo Attributo R Descrizione Posizione di salto (unità di retroazione) Seconda correzione geometria utensile T Numero della variabile #27001 - #29999 - Attributo R/W Descrizione Seconda correzione geometria utensile Altre (#8570) Numero della variabile #8570 Attributo R/W Descrizione Commutazione variabili P-CODE/variabili di sistema (#10000 e successive) - 448 - PROGRAMMAZIONE B-64484IT/02 16.4 16.MACROISTRUZIONI OPERAZIONI ARITMETICHE E LOGICHE Sulle variabili è possibile eseguire varie operazioni. Il formato di programmazione delle operazioni aritmetiche e logiche è lo stesso di una normale espressione aritmetica. #i=<espressione> <Espressione> La parte destra di un comando aritmetico o logico può contenere costanti e/o variabili combinate da funzioni o operatori. Negli esempi che seguono, le variabili #j e #k possono essere sostituite da una costante. Se una costante utilizzata in un'espressione è senza punto decimale, viene trattata come se lo avesse alla fine. Tipo di operazione <1> Definizione o sostituzione <2> Operazioni additive <3> Operazioni moltiplicative <4> Funzioni Tabella 16.4 (a) Operazione Operazioni aritmetiche e logiche Descrizione #i=#j Definizione o sostituzione di una variabile #i=#j+#k #i=#j-#k #i=#j OR #k #i=#j XOR #k #i=#j*#k #i=#j/#k #i=#j AND #k #i=#j MOD #k Addizione Sottrazione OR logico (bit per bit di 32 bit) OR esclusivo (bit per bit di 32 bit) Moltiplicazione Divisione AND logico (bit per bit di 32 bit) Modulo (Il modulo viene calcolato dopo aver arrotondato #j e #k all'intero più vicino. Se #j è negativo, anche #i sarà negativo.) Seno (in gradi) Coseno (in gradi) Tangente (in gradi) Arcoseno Arcocoseno Arcotangente (un argomento), è possibile utilizzare ATN. Arcotangente (due argomenti), è possibile utilizzare ATN. Arcotangente (due argomenti), è possibile utilizzare ATN. Radice quadrata, è possibile utilizzare SQR. Valore assoluto Conversione da BCD a binario Conversione da binario a BCD Arrotondamento, è possibile utilizzare RND. Arrotondamento all'intero per difetto Arrotondamento all'intero per eccesso Logaritmo naturale Esponente di e (2.718...) Elevazione a potenza (#j alla #kma) Aggiunta del punto decimale #i=SIN[#j] #i=COS[#j] #i=TAN[#j] #i=ASIN[#j] #i=ACOS[#j] #i=ATAN[#j] #i=ATAN[#j]/[#k] #i=ATAN[#j,#k] #i=SQRT[#j] #i=ABS[#j] #i=BIN[#j] #i=BCD[#j] #i=ROUND[#j] #i=FIX[#j] #i=FUP[#j] #i=LN[#j] #i=EXP[#j] #i=POW[#j,#k] #i=ADP[#j] #i=PRM[#j] #i=PRM[#j,#k] #i=PRM[#j]/[#l] #i=PRM[#j,#k]/[#l] Lettura parametro (parametri comuni al sistema, canale o gruppo macchine) Lettura parametro (parametri di tipo bit comuni al sistema, canale o gruppo macchine) Lettura parametro (parametri per asse o mandrino) Lettura parametro (parametri di tipo bit per asse o mandrino) - 449 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Spiegazioni - Unità degli angoli Le unità degli angoli usati con le funzioni SIN, COS, ASIN, ACOS, TAN e ATAN sono i gradi. Ad esempio, 90 gradi e 30 minuti si rappresenta come 90.5 gradi. - Arcoseno, #i = ASIN[#j]; • • Il campo delle soluzioni è: Quando il bit 0 (NAT) del parametro N. 6004 è 0: da 270° a 90° Quando il bit 0 (NAT) del parametro N. 6004 è 1: da -90° a 90° Se #j è fuori dall'intervallo -1 .. 1, si verifica l'allarme PS0119, “VALORE ARGOMENTO FUORI DAI LIMITI”. Invece della variabile #j è possibile usare una costante. - Arcocoseno, #i = ACOS[#j]; • • • La soluzione è nell'intervallo 180° .. 0°. Se #j è fuori dall'intervallo -1 .. 1, si verifica l'allarme PS0119, “VALORE ARGOMENTO FUORI DAI LIMITI”. Invece della variabile #j è possibile usare una costante. - Arcotangente, #i = ATAN[#j]/[#k]; (due argomenti) • • ATAN[#j,#k] è equivalente a ATAN[#j]/[#k]. Dato il punto (#k, #j) nel piano X-Y, questa funzione restituisce l'arcotangente dell'angolo formato dal punto. Invece della variabile #j è possibile usare una costante. Il campo delle soluzioni è: Quando il bit 0 (NAT) del parametro N. 6004 è 0: da 0° a 360° Esempio: Dopo #1 = ATAN[-1]/[-1]; #1 è 225.0. Quando il bit 0 (NAT) del parametro N. 6004 è 1: da -180° a 180° Esempio: Dopo #1 = ATAN[-1]/[-1]; #1 è -135.0. • • • - Arcotangente, #i = ATAN[#j]; (un argomento) • Quando è specificata con un solo argomento, la funzione ATAN restituisce il valore dell'arcotangente (-90° ≤ ATAN[#j] ≤ 90°). In altre parole, questa funzione restituisce lo stesso valore di ATAN di una calcolatrice tascabile. Per utilizzare questa funzione come dividendo di una divisione, racchiuderla tra parentesi quadre ([]). Se la funzione non è messa tra parentesi quadre, viene assunta ATAN[#j]/[#k]. Esempio: #100 = [ATAN[1]]/10 ; : Divide ATAN con un argomento per 10. #100 = ATAN[1]/[10] ; : Esegue ATAN con due argomenti. #100 = ATAN[1]/10 ; : Assume ATAN con due argomenti, ma si verifica l'allarme PS1131, “MANCA PARENTESI QUADRA APERTA”, perché la coordinata X non è tra parentesi quadre ([]). • - Logaritmo naturale, #i = LN[#j]; • Se l'antilogaritmo (#j) non è maggiore di zero, si verifica l'allarme PS0119, “VALORE ARGOMENTO FUORI DAI LIMITI”. • Invece della variabile #j è possibile usare una costante. - Funzione esponenziale, #i = EXP[#j]; • Se l'esecuzione della funzione provoca un overflow, si verifica l'allarme PS0119, “VALORE ARGOMENTO FUORI DAI LIMITI”. • Invece della variabile #j è possibile usare una costante. - 450 - B-64484IT/02 - • • PROGRAMMAZIONE 16.MACROISTRUZIONI Funzione ROUND Quando è utilizzata in un comando aritmetico o logico, in una frase IF o in una frase WHILE, la funzione ROUND arrotonda alla prima posizione decimale. Esempio: Dopo #1=ROUND[#2];, se la variabile #2 contiene 1.2345, il valore della variabile #1 è 1.0. Quando è utilizzata in un comando NC, la funzione ROUND arrotonda il valore specificato in base all'incremento minimo di immissione dell'indirizzo per il quale è specificata. Esempio: Creazione di un programma che esegue un movimento di foratura in base ai valori delle variabili #1 e #2 e poi ritorna al punto iniziale Assumendo che il sistema di incrementi sia 1/1000 mm, che la variabile #1 contenga 1.2345 e che la variabile #2 contenga 2.3456, si ha: G00 G91 X-#1; Movimento di 1.235 mm in direzione negativa G01 X-#2 F300; Movimento di 2.346 mm in direzione negativa G00 X[#1+#2]; Dato che 1.2345 + 2.3456 = 3.5801 il movimento in direzione positiva è di 3.580 e non riporta l'utensile nella posizione originale. Questa differenza dipende dal fatto che l'arrotondamento è eseguito dopo la somma. Per riportare l'utensile nella posizione originale occorre specificare G00X-[ROUND[#1]+ROUND[#2]]; . - Aggiunta del punto decimale (funzione ADP) • In una macro, per aggiungere il punto decimale ad un argomento passato senza il punto decimale, è possibile programmare ADP[#n] (n = 1 - 33). Esempio: Nel sottoprogramma richiamato con G65 P_X10;, il valore di ADP[#24] è un valore con punto decimale (cioè 10.). Questa funzione è utile quando nella macro non si desidera tenere in considerazione il sistema di incrementi. Quando il bit 4 (CVA) del parametro N. 6007 è 1, però, la funzione ADP non può essere utilizzata perché gli argomenti sono convertiti in formato macro nel momento in cui vengono passati (dopo G65 P_X10;, il valore della variabile #24 è 0.01). NOTA Per mantenere la compatibilità tra i programmi, si raccomanda di non utilizzare la funzione ADP, ma di aggiungere il punto decimale alla fine degli argomenti passati nel richiamo di una macro. - Arrotondamento all'intero per eccesso e per difetto (Funzioni FUP e FIX) L'arrotondamento per eccesso ha come risultato un intero maggiore, in valore assoluto, della parte intera del numero originale. L'arrotondamento per difetto ha come risultato un intero minore, in valore assoluto, della parte intera del numero originale. Fare particolare attenzione quando si manipolano numeri negativi. Esempio: Supponiamo che #1=1.2 e #2=-1.2. Quando viene eseguito #3=FUP[#1], il valore di #3 è 2.0. Quando viene eseguito #3=FIX[#1], il valore di #3 è 1.0. Quando viene eseguito #3=FUP[#2], il valore di #3 è -2.0. Quando viene eseguito #3=FIX[#2], il valore di #3 è -1.0. - 451 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Lettura parametro (PRM) ・ Sono disponibili i seguenti formati che dipendono dal tipo di parametro e dal dato da leggere. Formato #i = PRM[#j]; #i = PRM[#j, #k]; #i = PRM[#j] /[#l]; #i =PRM[#j, #k] /[#l]; • • • ・ Note Formato per i parametri comuni al sistema, canale o gruppo macchine Formato per la specifica del numero di bit di un parametro comune al sistema, canale o gruppo macchine Formato per i parametri asse o mandrino Formato per la specifica del numero di bit di un parametro asse o mandrino Per #j, specificare il numero di un parametro. Per #k, specificare un numero di bit. Per #l, specificare un numero asse o un numero mandrino. Specificando yb numero di canale, è possibile leggere un parametro di quel canale. Questo può essere fatto in due modi. a) Anteponendo il numero del canale al numero del parametro Anteponendo il numero del canale (ottava e nona cifra) al numero del parametro specificato con l'istruzione PRM, è possibile leggere il parametro del canale specificato. #i = PRM[#j]; #j = ppxxxxxxx ; Per pp specificare il numero del canale, per xxxxxxx specificare il numero del parametro. NOTA 1 Se viene omesso il numero del canale, o se viene specificato 0, viene letto il parametro del canale locale. 2 Se viene specificato un numero di canale fuori dai limiti, si verifica l'allarme PS0115, “NUMERO VARIABILE ERRATO”. 3 Per leggere i dati del canale 10, mettere a 0 il bit 0 (F16) del parametro N. 6008. Se il bit F16 è 1, la precisione del calcolo arriva solo all'ottava cifra. Così, nel caso della lettura di un parametro del canale 10 con l'istruzione #100= PRM[100000000 +#1] non è possibile determinare il numero corretto. b) Specifica del numero del canale con una variabile di sistema Assegnando alla variabile di sistema #3018 il numero del canale desiderato, è possibile leggere un parametro di quel canale. Esempio Lettura del parametro N. 01322 del quarto asse del canale 2 #3018 =2 ; .................. Imposta il canale 2 #1 =PRM[1322] /[4] ; .. Legge il parametro N. 01322 del quarto asse del : canale 2 e lo scrive nella variabile #1 del canale locale. #3018=0 ; ................... Riporta il numero del canale a quello del canale locale. - Abbreviazione dei comandi aritmetici e logici Per specificare una funzione in un programma è possibile utilizzare solo i primi due caratteri del suo nome. Esempio: ROUND → RO FIX → FI NOTA POW non può essere abbreviata. - 452 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Priorità delle operazioni <1> Funzioni <2> Operazioni moltiplicative (*, /, AND) <3> Operazioni additive (+, -, OR, XOR) Esempio) #1=#2+#3*SIN[#4]; <1> <2> <1>, <2> e <3> indicano la sequenza delle operazioni. <3> - Annidamento delle parentesi quadre Per modificare la priorità di esecuzione delle operazioni, si usano le parentesi quadre. Possono essere annidati fino a cinque livelli di parentesi quadre, comprese quelle usate nelle funzioni. Se viene superata la profondità di cinque livelli, si ha l'allarme PS0118, “TROPPE PARENTESI ANNIDATE”. Esempio) #1=SIN [ [ [#2+#3] *#4 +#5] *#6]; <1> <2> <3> <4> <5> i numeri da <1> a <5> indicano la sequenza delle operazioni. Limitazioni • • Avvertenze relative alla riduzione della precisione Quando il bit 0 (F16) del parametro N. 6008 è 0 Addizione e sottrazione Quando ad un valore assoluto viene sommato o sottratto un altro valore assoluto, l'errore relativo può diventare maggiore o uguale a 10-15. Ad esempio, assumiamo che durante il processo di calcolo le variabili #1 e #2 vengano ad avere i seguenti valori reali: (Questi valori sono esempi di ciò che accade durante il processo di calcolo e non possono essere specificati in un programma.) #1=9876543210.987654321 #2=9876543210.987657777 L'operazione #2-#1 non può generare il risultato indicato qui sotto: #2-#1=0.000003456 Questo perché la precisione delle variabili macro è di 15 cifre decimali. Con questa precisione, i valori di #1 e di #2 diventano: #1=9876543210.987650000 #2=9876543210.987660000 (In realtà, dato che vengono processati in formato binario, i valori effettivi sono leggermente diversi.) Di conseguenza il risultato è: #2-1=0.000010000 con un errore relativamente grande. - 453 - 16.MACROISTRUZIONI • • • PROGRAMMAZIONE B-64484IT/02 Espressioni logiche E' opportuno tenere conto degli errori che possono verificarsi nell'esecuzione di espressioni condizionali quali EQ, NE, GT, LT, GE e LE in quanto esse vengono fondamentalmente processate allo stesso modo dell'addizione e della sottrazione. Ad esempio, se per decidere se le variabili #1 e #2 dell'esempio precedente sono uguali si utilizza la seguente espressione, è possibile che la decisione presa non sia corretta. IF [#1 EQ #2] Valutare invece la differenza tra le due variabili come segue: IF [ABS [#1-#2]LT 0.1] assumendo che le due variabili siano uguali se la loro differenza non eccede la tolleranza accettabile. Funzioni trigonometriche L'errore assoluto delle funzioni trigonometriche è garantito. Però, l'errore relativo è maggiore o uguale a 10-15. Fare molta attenzione alle moltiplicazioni ed alle divisioni eseguite dopo una funzione trigonometrica. Funzione FIX Quando al risultato di un'operazione si applica la funzione FIX, fare molta attenzione alla precisione. Ad esempio, alla fine della sottostante sequenza di operazioni il valore di #3 può non essere 2. N10 #1=0.002; N20 #2=#1*1000; N30 #3=FIX[#2]; Questo perché il risultato di N20 può essere non #2=2.0000000000000000 ma un valore leggermente più piccolo di 2, come: #2=1.9999999999999997 Per evitare questo tipo di errore, specificare N30 come segue: N30 #3=FIX[#2+0.001]; Normalmente, specificare la funzione FIX come segue: FIX[espressione] → FIX[espressione ±ε] (Specificare +ε quando il valore di <espressione> è positivo e specificare -ε quando è negativo; per ε specificare 0.1, 0.01, 0.001, ... come è necessario.) NOTA Il risultato della funzione esponenziale #i=EXP[#j]; va in overflow quando #j è maggiore di circa 790. Quando il bit 0 (F16) del parametro N. 6008 è 1 Quando viene eseguita un'operazione può aversi un errore. Operazione Tabella 16.4 (b) Errori di esecuzione delle operazioni Errore medio Errore massimo -10 -10 a = b*c a=b/c a= b a=b+c a=b–c 1.55×10 4.66×10-10 1.24×10-9 2.33×10-10 4.66×10 1.88×10-9 3.73×10-9 5.32×10-10 a = SIN [ b ] a = COS [ b ] 5.0×10-9 1.0×10-8 a = ATAN [ b ] / [ c ] 1.8×10-6 3.6×10-6 Tipo di errore Errore relativo(*1) ε a (*2) ε MIN b Errore assoluto(*3) ε - 454 - ε c gradi B-64484IT/02 PROGRAMMAZIONE 16.MACROISTRUZIONI NOTA 1 L'errore relativo dipende dal risultato dell'operazione. 2 Considerare il minore dei due. 3 L'errore assoluto è costante, indipendentemente dal risultato dell'operazione. 4 La funzione TAN esegue SIN/COS. 5 Notare che per il logaritmo naturale #i=LN[#j]; e per la funzione esponenziale #i=EXP[#j];, è possibile avere un errore relativo maggiore o uguale a 10-8. 6 Il risultato della funzione esponenziale #i=EXP[#j]; va in overflow quando #j è maggiore di circa 110. • • • - La precisione dei valori delle variabili è di circa 8 cifre decimali. Se vengono eseguite l'addizione o la sottrazione di numeri molto grandi, può non essere ottenuto il risultato che ci si aspetta. Esempio: Se si assegnano alle variabili #1 e #2 i seguenti valori: #1=9876543210123.456 #2=9876543277777.777 i valori delle variabili diventano: #1=9876543200000.000 #2=9876543300000.000 In questo caso, calcolando #3=#2-#1, si ottiene #3=100000.000. (Il risultato effettivo è leggermente diverso perché l'operazione è eseguita in formato binario.) Fare anche attenzione agli errori che possono verificarsi per le espressioni condizionali che utilizzano EQ, NE, GE, GT, LE e LT. Esempio: IF[#1 EQ #2] è influenzata dall'errore di #1 e #2 e può dar luogo ad una decisione errata. Quindi, invece di confrontare le due variabili, testarne la differenza con IF[ABS[#1-#2] LT 0.001]. assumendo che il valore delle due variabili sia lo stesso se la loro differenza è minore di un valore limite (in questo caso, 0.001). Fare anche attenzione nell'arrotondare un valore per difetto. Esempio: Quando si calcola #2=#1*1000 e la variabile #1 contiene 0.002, il risultato non è esattamente 2, ma è1.99999997. In questo caso, se successivamente viene eseguito #3=FIX[#2];, il valore della variabile #3 non sarà 2.0 ma 1.0. Eseguire l'arrotondamento per difetto dopo aver corretto l'errore in modo che il risultato sia maggiore del numero atteso o specificarlo come segue: #3=FIX[#2+0.001] #3=ROUND[#2] Parentesi quadre In una espressione, devono essere utilizzate le parentesi quadre([ ]). Le parentesi tonde ( ) sono utilizzate per delimitare i commenti. - Divisore Se si specifica una divisione per 0, si ha l'allarme PS0112, “DIVISORE ZERO”. - 455 - 16.MACROISTRUZIONI 16.5 PROGRAMMAZIONE B-64484IT/02 SPECIFICA INDIRETTA DEGLI INDIRIZZI ASSE Introduzione Quando sono abilitate le macro, è possibile utilizzare l'espressione AX[<numero-asse>] per specificare un asse con il suo numero anziché con il suo nome. E' anche possibile utilizzare AXNUM[<nome-asse>] per ottenere il numero asse corrispondente ad un nome asse. Spiegazioni - Funzione AX E' possibile specificare indirettamente un indirizzo asse fornendo il numero dell'asse alla funzione AX[ ]. (La funzione AX[ ] deve sempre essere seguita dal segno uguale (=).) AX[<numero-asse>] = <valore-numerico> ; <numero-asse>: Da 1 al numero di assi controllati (al numero di assi controllati per canale in un sistema a più canali) <valore-numerico>: Valore specificato per l'asse designato mediante il suo numero. Se il numero asse specificato non è valido, si verifica l'allarme PS0331, “NUMERO ASSE ILLEGALE IN AX[]”. Se viene specificato un numero con il punto decimale, il numero viene arrotondato ad un intero ed il risultato viene trattato come numero asse.) Il numero asse può anche essere specificato con una variabile (locale, comune o di sistema). Se in <numero-asse> si utilizza il nome anziché il numero della variabile, il nome deve essere messo tra parentesi quadre ([ ]). 1. 2. 3. 4. 5. 6. - AX[1]=100.0; Specifica un valore di 100.000 per il primo asse. AX[#500]=200.0; Specifica un valore di 200.000 per l'asse il cui numero è indicato dal valore della variabile #500. AX[#500+1]=300.0; Specifica un valore di 300.000 per l'asse il cui numero si ottiene sommando 1 al valore della variabile #500. SETVN 500 [ABC]; AX[#ABC]=400.0; Specifica un valore di 400.000 per l'asse il cui numero è indicato dal valore della variabile #ABC (#400.000). SETVN 500 [ABC]; AX[[#ABC]+1]=500.0; Specifica un valore di 400.000 per l'asse il cui numero si ottiene sommando 1 al valore della variabile #ABC (#500). SETVN 500 [ABC]; AX[#ABC+1]=500.0; Si verifica l'allarme PS0331. Funzione AXNUM Il numero di un asse dato il suo nome può essere ottenuto utilizzando la funzione AXNUM[ ]. AXNUM[<nome-asse>]; Se il nome asse specificato non è valido, si verifica l'allarme PS0332, “INDIRIZZO ASSE ILLEGALE IN AXNUM[]”. - 456 - B-64484IT/02 PROGRAMMAZIONE 16.MACROISTRUZIONI Quando il numero degli assi controllati è 3, il nome del primo asse è X, quello del secondo asse è Y e quello del terzo è Z. 1. 2. 3. 4. #500=AXNUM[X]; Nella variabile #500 viene registrato 1. #501=AXNUM[Y]; Nella variabile #501 viene registrato 2. #502=AXNUM[Z]; Nella variabile #502 viene registrato 3. #503=AXNUM[A]; Si verifica l'allarme PS0332. Esempio Quando il nome del primo asse è X, quello del secondo asse è Y e quello del terzo è Z. N10 N20 N30 N40 N50 N60 N70 N80 N90 SETVN 500[AXIS1,AXIS2,AXIS3] ; [#AXIS1]=AXNUM[X] ; [#AXIS2]=AXNUM[Y] ; [#AXIS3]=AXNUM[Z1] ; G92 AX[#AXIS1]=0 AX[#AXIS2]=0 AX[#AXIS3]=0 ; G90G01F1000. ; AX[#AXIS1]=100.0 AX[#AXIS2]=100.0 AX[#AXIS3]=100.0 ; G02 AX[#AXIS1]=100. 0 AX[#AXIS2]= 0.0 R50.0 ; M02; Limitazioni Le funzioni AX e AXN non possono essere utilizzate per i nomi asse estesi. AXN è l'abbreviazione di AXNUM. - 457 - 16.MACROISTRUZIONI 16.6 PROGRAMMAZIONE B-64484IT/02 LETTURA DEI PARAMETRI Introduzione La funzione PRM permette di leggere i parametri. Formato #i = PRM[ #j, #k ] ; #i = PRM[ #j, #k ] / [ #l ] ; Note Per i parametri non di tipo asse Per i parametri di tipo asse Spiegazioni - Lettura di un parametro #i=PRM[#j,#k] #i=PRM[#j,#k]/[#l] • Per #j, introdurre il numero di un parametro. Se il parametro non può essere letto, si verifica l'allarme PS0119, "VALORE ARGOMENTO FUORI DAI LIMITI". Per #k, specificare il numero (da 0 a 7) del bit che interessa nel caso di un parametro di tipo bit. Se viene specificato #k, viene letto il bit corrispondente. Se il numero di bit non è specificato, vengono letti tutti i bit. Per i parametri non di tipo bit, il numero di bit viene ignorato. Per #l, specificare il numero asse (da 1 a 8) nel caso di un parametro per asse. Se il parametro da leggere è un parametro per asse e #l non viene specificato, si verifica l'allarme PS0119. Per i parametri non di tipo per asse, #1 può essere omesso insieme alla '/'. • • Esempio 1. Lettura del bit 0 (MIR) del parametro di tipo bit per asse N. 0012 del terzo asse Se parametro N. 0012 (terzo asse) = 10010001 #2=12 ; Numero del parametro #3=0 ; Numero del bit #4=3 ; Numero dell'asse Lettura di tutti i bit #1=PRM[#2]/[#4] ; #1=10010001 Lettura del bit specificato #1=PRM[#2, #3]/[#4] ; #1=1 2. Lettura del parametro di tipo per asse N. 1322 del quarto asse #2=1322 ; Numero del parametro #4=4 ; Numero dell'asse #1=PRM[#2]/[#4] ; 3. Lettura del bit 2 (SBP) del parametro di tipo bit N. 3404 Se parametro N. 0012 (terzo asse) = 01010000 #2=3404 ; Numero del parametro #3=2 ; Numero del bit Lettura di tutti i bit #1=PRM[#2] ; #1=1010000 Lettura del bit specificato #1=PRM[#2,#3] ; #1=0 - 458 - PROGRAMMAZIONE B-64484IT/02 16.7 16.MACROISTRUZIONI FRASI MACRO E FRASI NC I seguenti blocchi sono frasi macro: • Blocchi contenenti un'operazione aritmetica o logica (=) • Blocchi contenenti una frase di controllo (come GOTO, DO, END) • Blocchi contenenti un comando di richiamo macro (come G65, G66, G66.1, G67, richiamo macro con codice G o M)) Tutti gli altri blocchi sono frasi NC. Spiegazioni - Differenze fra le frasi macro e le frasi NC • Per le frasi macro, anche se è attivo il modo blocco singolo, la macchina non si arresta. Però, se il bit 5(SBM) del parametro N. 6000 è 1, l'arresto in blocco singolo viene eseguito anche per le frasi macro. I blocchi macro non sono visti come blocchi senza movimento nel modo compensazione raggio utensile. • - Frasi NC aventi le stesse proprietà delle frasi macro • Se un blocco contiene il richiamo di un sottoprogramma (M98, un codice M che richiama un sottoprogramma o un codice T che richiama un sottoprogramma) e non contiene altri indirizzi oltre a O, nome file, N, P o L, quel blocco ha le stesse proprietà di una frase macro. Se un blocco contiene M99 e nessun altro indirizzo oltre a O, nome file, N, P o L, quel blocco ha le stesse proprietà di una frase macro. • 16.8 SALTI E RIPETIZIONI Il flusso del programma può essere controllato usando frasi come GOTO e IF. Si possono usare tre tipi di salti e ripetizioni: Salti e ripetizioni 16.8.1 GOTO (salto incondizionato) IF (salto condizionato: se ..., allora...) WHILE (ripetizione mentre ...) Salto incondizionato (frase GOTO) Può essere comandato un salto ad uno specifico numero di sequenza (n). Se il numero di sequenza specificato è fuori dall'intervallo 1..99999999, si ha l'allarme PS1128, “NUMERO DI SEQUENZA FUORI DAI LIMITI”. Il numero di sequenza può essere specificato usando un'espressione. GOTOn ; n: Numero di sequenza (da 1 a 99999999) Esempio: GOTO 1; GOTO #10; PERICOLO Non specificare più blocchi con lo stesso numero di sequenza in un solo programma. La specifica di tali blocchi può essere molto pericolosa perché in tal caso la destinazione della frase GOTO è indefinita. - 459 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 NOTA 1 Un salto all'indietro richiede più tempo di un salto in avanti. 2 Nella destinazione di GOTOn, cioè nel blocco che ha il numero di sequenza n, il numero di sequenza deve essere all'inizio del blocco. Se il numero di sequenza non è all'inizio del blocco, il salto diventa impossibile. 16.8.2 Frase GOTO con numeri di sequenza memorizzati Ogni volta che in una macro viene eseguita una frase GOTO, il numero di sequenza viene cercato ad alta velocità tra quelli memorizzati alla precedente esecuzione dei blocchi corrispondenti. Come "numero di sequenza memorizzato durante la precedente esecuzione del blocco corrispondente" viene memorizzato un numero di sequenza unico all'interno dello stesso programma o del sottoprogramma nel quale è stato eseguito. Il tipo di memorizzazione dipende dal valore dei seguenti parametri. (1) Quando il bit 1 (MGO) del parametro N. 6000 è 1 • Tipo fisso: Vengono memorizzati fino a 20 numeri di sequenza dall'inizio del funzionamento. I numeri di sequenza sono memorizzati quando vengono eseguiti i blocchi corrispondenti. (2) Quando il bit 4 (HGO) del parametro N. 6000 è 1 • Tipo variabile: Vengono memorizzati fino a 30 numeri di sequenza specificati prima dell'esecuzione della frase GOTO. I numeri di sequenza sono memorizzati quando vengono eseguiti i blocchi corrispondenti. • Tipo storico: Vengono memorizzati fino a 10 numeri di sequenza. I numeri di sequenza sono memorizzati durante la ricerca eseguita precedentemente in seguito ad una frase GOTO. I numeri di sequenza memorizzati vengono cancellati nei seguenti casi: • Immediatamente dopo l'accensione • Dopo un reset • Esecuzione del programma dopo la registrazione o l'editazione (comprese l'editazione in background e l'editazione in MDI) PERICOLO Non specificare più blocchi con lo stesso numero di sequenza in un solo programma. E' molto pericoloso specificare il numero di sequenza utilizzato come destinazione del salto prima e dopo la specifica della frase GOTO: quando la GOTO viene eseguita, la destinazione del salto varia come è indicato qui sotto. Quando il bit 1 (MGO) o il bit 4 (HGO) del parametro N. 6000 sono 1 N10; : GOTO10; : N10; Quando il bit 1 (MGO) e il bit 4 (HGO) del parametro N. 6000 sono 0 : N10; Viene eseguito un salto al numero di sequenza N10 che precede la GOTO. GOTO10; : N10; Viene eseguito un salto al numero di sequenza N10 successivo alla GOTO. Quando il bit 1 (MGO) o il bit 4 (HGO) del parametro N. 6000 sono 1 e viene eseguita la frase GOTO, è possibile che il numero di sequenza di destinazione non sia compreso tra quelli memorizzati precedentemente. In questo caso, viene eseguito un salto al numero di sequenza N10 che segue la frase GOTO (come quando ambedue i bit sono 0). - 460 - PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI NOTA Per i programmi esterni letti ed eseguiti in DNC la memorizzazione dei numeri di sequenza non ha luogo. Per i programmi residenti in memoria ed eseguiti in seguito ad un richiamo di sottoprogrammi, ha luogo la memorizzazione dei numeri di sequenza. AVVERTENZA In base alle limitazioni della frase GOTO, non possono essere eseguiti salti a numeri di sequenza contenuti in un ciclo DO-END. Se viene eseguito un programma per il quale si verifica un salto ad un numero di sequenza interno ad un ciclo, l'esecuzione può essere diversa a seconda che sia o non sia utilizzata la frase GOTO con numeri di sequenza memorizzati. 16.8.3 Salto condizionato (Frase IF) Dopo IF, specificare un'espressione condizionale. IF[<espressione condizionale>]GOTOn Se la condizione specificata è soddisfatta, viene eseguito un salto al numero di sequenza indicato. Se la condizione non è soddisfatta, viene eseguito il blocco successivo. Se il valore della variabile #1 è maggiore di 10, viene eseguito un salto al numero di sequenza N2. Se la condizione non è soddisfatta IF [#1 GT 10] GOTO 2 ; Processo Se la condizione è soddisfatta N2 G00 G91 X10.0 ; : IF[<espressione condizionale>]THEN Se la condizione è soddisfatta, viene eseguita la frase macro specificata immediatamente dopo THEN. E' possibile condizionare una sola frase macro. Se le variabili #1 e #2 hanno lo stesso valore, alla variabile #3 viene assegnato zero. IF[#1 EQ #2] THEN#3=0 ; Se #1 e #2 sono uguali ed anche #3 e #4 sono uguali, alla variabile #5 viene assegnato zero. IF[[#1 EQ #2] AND [#3 EQ #4]] THEN#5=0 ; Se #1 e #2 sono uguali oppure sono uguali #3 e #4, alla variabile #5 viene assegnato zero. IF[[#1 EQ #2] OR [#3 EQ #4]] THEN#5=0 ; Spiegazioni - Espressioni condizionali> Le espressioni condizionali possono essere "semplici" o "complesse". In un'espressione condizionale semplice, tra le due variabili o tra la variabile e la costante da confrontare figura uno degli operatori relazionali descritti nella Fig. 16.8.3 (a). In luogo di una variabile è possibile utilizzare una <espressione>. In un'espressione condizionale complessa vengono eseguite una AND ( AND logico), una OR (OR logico) o una XOR (OR esclusivo) tra i risultati di più espressioni condizionali semplici. - 461 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Operatori relazionali Gli operatori logici sono costituiti da due lettere e si usano per confrontare due valori allo scopo di determinare se sono uguali o se uno è più grande o più piccolo dell'altro. Il segno uguale (=) ed i segni maggiore/minore (>, <) non possono essere utilizzati come operatori relazionali. Operatore Fig. 16.8.3 (a) Operatori relazionali Significato EQ NE GT GE LT LE Uguale a (=) Non uguale a (≠) Maggiore di (>) Maggiore di o uguale a (≥) Minore di (<) Minore di o uguale a (≤) Esempio di programma Il seguente esempio, trova la somma dei numeri da 1 a 10. O9500; #1=0; ................................ Valore iniziale della variabile usata per il risultato #2=1; ................................ Valore iniziale della variabile usata come addendo N1 IF[#2 GT 10] GOTO 2; ... Salto a N2 se l'addendo è maggiore di 10 #1=#1+#2; ........................ Calcolo per trovare la somma #2=#2+1; .......................... Addendo successivo GOTO 1; .......................... Salto incondizionato al blocco N1 N2 M30; ............................... Fine programma 16.8.4 Ripetizione (Frase While) Dopo WHILE, specificare un'espressione condizionale. Finché è soddisfatta la condizione specificata, viene eseguita la porzione di programma da DO a END. Quando la condizione non è soddisfatta, l'esecuzione del programma continua dal blocco immediatamente successivo a END. WHILE [espressione condizionale] DO m ; (m=1,2,3) Se la condizione non è soddisfatta Se la condizione è soddisfatta Processo END m : ; Spiegazioni Finché è soddisfatta la condizione specificata, viene eseguita la porzione di programma da DO a END. Quando la condizione non è soddisfatta, l'esecuzione del programma continua dal blocco immediatamente successivo a END. Si applica lo stesso formato della frase IF. Il numero che segue DO e END identifica il ciclo. Si possono usare i numeri 1, 2 e 3. Se si usa un numero diverso da 1, 2 o 3, si ha l'allarme PS0126, “NUMERO DI LOOP ILLEGALE”. - Annidamento I numeri di identificazione (da 1 a 3) in un ciclo DO - END possono essere usati tante volte quante sono necessarie. Però, se un programma include dei cicli incrociati (cicli DO-END sovrapposti), si ha l'allarme PS0124, “MANCA FRASE END”. - 462 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 1. I numeri di identificazione (1, 2 o 3) possono essere usati tante volte quanto è necessario. WHILE [ … ] DO 1 ; 3. I cicli DO possono essere annidati fino a tre livelli. WHILE [ … ] DO 1 ; : Processo WHILE [ … ] DO 2 ; : END 1 ; : WHILE [ … ] DO 3 ; Processo WHILE [ … ] DO 1 ; Processo END 3 ; : END 1 ; : END 2 ; : 2. I cicli DO non possono intersecarsi. END 1; 4. Il controllo può essere trasferito all'esterno del ciclo. WHILE [ … ] DO 1 ; WHILE [ … ] DO 1 ; Processo IF [ … ] GOTO n ; WHILE [ … ] DO 2 ; : END 1; END 1; Nn 5. Non può essere eseguito un salto dall'esterno all'interno di un ciclo. IF [ … ] GOTO n ; : Processo END 2 ; WHILE [ … ] DO 1 ; : Nn … ; END 1; Limitazioni - Cicli infiniti Se viene specificato DO n senza specificare WHILE, si ha un ciclo DO-END infinito - Tempo di elaborazione Quando viene eseguita una frase GOTO, viene cercato il numero di sequenza specificato. Per questa ragione, il salto all'indietro richiede più tempo del salto in avanti. L'uso della frase WHILE per comandare le ripetizioni riduce il tempo di esecuzione del programma. - Variabili non definite Nelle espressioni condizionali che usano EQ e NE, i valori <nulla> e zero sono diversi. Nelle altre espressioni condizionali, il valore <nulla> è visto come zero. Esempio di programma Il seguente esempio, trova la somma dei numeri da 1 a 10. O0001 ; #1=0; #2=1; WHILE[#2 LE 10]DO 1; #1=#1+#2; #2=#2+1; END 1; M30 ; - 463 - 16.MACROISTRUZIONI 16.8.5 PROGRAMMAZIONE B-64484IT/02 Specifica della precisione per gli operatori relazionali Nell'eseguire un confronto utilizzando un operatore relazionale in una macro, è possibile specificare il numero di posizioni decimali dei due valori da confrontare. I valori vengono confrontati dopo essere stati arrotondati al numero specificato di posizioni decimali. Questa funzione si abilita mettendo a 1 il bit 5 (EDP) del parametro N. 6019. Il numero delle posizioni decimali significative si specifica con il parametro N. 6100. Operatori relazionali La specifica della precisione è valida per i seguenti operatori relazionali. Operatore EQ NE GT GE LT LE Significato Uguale a (=) Non uguale a (≠) Maggiore di (>) Maggiore di o uguale a (≥) Minore di (<) Minore di o uguale a (≤) Limitazioni La specifica della precisione è valida per le seguenti funzioni: • Macroistruzioni • Macro executor NOTA La specifica della precisione non è valida per le macro in tempo reale. - 464 - PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI Esempio Programma macro O1000 ; #100=1.2344567 #101=1.2345678 N10 IF[#100 EQ ... N20 ; N30 IF[#100 NE ... N40 ; ... ; ; #101] GOTO 20 ; #101] GOTO 40 ; Per l'esecuzione del confronto vengono utilizzati valori arrotondati, ma i valori reali non vengono arrotondati. #100=1. 2344567 ^ ^ ^ Il numero di cifre significative è 3. ^ Arrotondato. 1. Quando la specifica della precisione per gli operatori relazionali delle macro è disabilitata Il bit 5 (EDP) del parametro N. 6019 è 0. I valori di #100 e #101 vengono confrontati così come sono. Nel blocco N10, non viene eseguito il salto a N20. Nel blocco N30, viene eseguito il salto a N40. 2. Quando la specifica della precisione per gli operatori relazionali delle macro è alitata - 1 Il bit 5 (EDP) del parametro N. 6019 è 1 ed il parametro N. 6100 è 2. Il valore arrotondato di #100, 1.23, viene confrontato con il valore arrotondato di #101, 1.23. I valori reali di #100 e #101 non cambiano. Nel blocco N10, viene eseguito il salto a N20. Nel blocco N30, non viene eseguito il salto a N40. 3. Quando la specifica della precisione per gli operatori relazionali delle macro è alitata - 2 Il bit 5 (EDP) del parametro N. 6019 è 1 ed il parametro N. 6100 è 3. Il valore arrotondato di #100, 1.234, viene confrontato con il valore arrotondato di #101, 1.235. I valori reali di #100 e #101 non cambiano. Nel blocco N10, non viene eseguito il salto a N20. Nel blocco N30, viene eseguito il salto a N40. Se valori delle variabili sono negativi, l'elaborazione viene eseguita come segue: Programma macro O1000 ; #100=-1.2344 ; #101=-1.2345 ; N10 IF[#100 EQ #101] GOTO 20 ; ... N20 ; ... #100=- 1. 2345 ^ ^ ^ Il numero di cifre significative è 3. ^ Arrotondato. 1. Quando la specifica della precisione per gli operatori relazionali delle macro è alitata Il bit 5 (EDP) del parametro N. 6019 è 1 ed il parametro N. 6100 è 3. Il valore arrotondato di #100, -1.234, viene confrontato con il valore arrotondato di #101, -1.235. I valori reali di #100 e #101 non cambiano. Nel blocco N10, non viene eseguito il salto a N20. - 465 - 16.MACROISTRUZIONI 16.9 PROGRAMMAZIONE B-64484IT/02 RICHIAMO DELLE MACRO Un programma macro può essere richiamato usando uno dei seguenti metodi. Questi metodi possono essere grossolanamente divisi in due tipi: richiami macro e richiami sottoprogramma Un programma macro può anche essere richiamato durante il funzionamento in MDI utilizzando gli stessi metodi. Richiamo macro Richiamo semplice (G65) Richiamo modale (G66, G66.1, G67) Richiamo macro con codice G Richiamo macro con codice M Richiamo Richiamo sottoprogramma con codice M sottoprogramma Richiamo sottoprogramma con codice T Richiamo sottoprogramma con codice S Richiamo sottoprogramma con il codice della seconda funzione ausiliaria Richiamo sottoprogramma con uno specifico codice Limitazioni - Annidamento di richiami I richiami macro possono essere annidati fino a cinque livelli ed i richiami sottoprogramma possono essere annidati fino a dieci livelli; complessivamente è possibile arrivare fino a 15 livelli di annidamento. - Differenze fra richiamo macro e richiamo sottoprogramma Le differenze fra il richiamo macro (G66, G66.1, Ggg, o Mmm) ed il richiamo sottoprogramma (ad esempio M98, Mmm, o Ttt) sono le seguenti: • Un richiamo macro può includere argomenti (dati passati alla macro), mentre un richiamo sottoprogramma non può. • Se un blocco contenente un richiamo macro contiene anche altri comandi NC (come G01, X100, G65 Pp), si verifica l'allarme PS0127, “COMANDO MACRO E COMANDO NC SPECIFICATI NELLO STESSO BLOCCO”. • Se un blocco contenente un richiamo sottoprogramma contiene anche altri comandi NC (come G01, X100, M98 Pp), il sottoprogramma viene richiamato dopo l'esecuzione degli altri comandi. • La macchina non si ferma in blocco singolo alla fine dei blocchi di richiamo macro. Se un blocco contenente un richiamo sottoprogramma contiene anche altri comandi NC (come G01, X100, M98 Pp), nel modo blocco singolo la macchina si ferma alla fine dell'esecuzione del blocco. • Con un richiamo macro, il livello delle variabili locali cambia. Con un richiamo sottoprogramma, il livello delle variabili locali non cambia. (Vedi "Livelli delle variabili locali" in Limitazioni della sottosezione “Richiamo semplice (G65)”.) - Programma richiamato e cartelle oggetto della ricerca L'ordine nel quale vengono esaminate le cartelle dipende dal metodo di richiamo del sottoprogramma. Le cartelle vengono esaminate in sequenza e viene richiamata la prima ricorrenza del programma che viene trovata. Per i dettagli riferirsi al capitolo "Gestione dei programmi". - 466 - 16.9.1 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Richiamo semplice (G65) Quando viene specificato G65, viene richiamata la macro specificata con l'indirizzo P. E' possibile passare dei dati (argomenti) alla macro. G65 Pp Ll <specifica-argomenti> ; P : Numero del programma da richiamare l : Numero di ripetizioni (1 per default) Argomenti : dati passati alla macro O9010 #3=#1+#2 ; IF [#3 GT 360] GOTO 9 ; G00 G91 X#3 ; N9 M99 ; O0001 ; : G65 P9010 L2 A1.0 B2.0 ; : M30 ; Spiegazioni - Richiamo • • Dopo G65, specificare con l'indirizzo P il numero del programma macro da richiamare. Se è richiesto un numero di ripetizioni, specificarlo dopo l'indirizzo L (1 .. 999999999). Se L è omesso, viene assunto 1. Se sono specificati degli argomenti, i rispettivi valori sono assegnati alle corrispondenti variabili locali. • - Specifica degli argomenti Sono disponibili due tipi di specifica degli argomenti. La specifica di tipo I usa le lettere diverse da G, L, O, N e P una volta ciascuna. La specifica di tipo II usa le lettere A, B e C una volta ciascuna e le lettere I, J e K fino a 10 volte. Il tipo di specifica è riconosciuto automaticamente in base alle lettere utilizzate. • Specifica argomenti I Indirizzo A B C D E F H • • • Variabile numero #1 #2 #3 #7 #8 #9 #11 Indirizzo I J K M Q R S Variabile numero #4 #5 #6 #13 #17 #18 #19 Indirizzo T U V W X Y Z Variabile numero #20 #21 #22 #23 #24 #25 #26 Gli indirizzi G, L, N, O e P non possono essere utilizzati. Gli indirizzi non necessari possono essere omessi. Il valore delle variabili locali corrispondenti agli indirizzi omessi è "nullo". Non è necessario specificare gli indirizzi in ordine alfabetico. Essi sono conformi al formato degli indirizzi parola. I, J e K devono, però, essere specificati in ordine alfabetico. Se il bit 7 (IJK) del parametro N. 6008 è 1, per I, J e K viene utilizzata sempre la specifica argomenti I. Esempio - Se il bit 7 (IJK) del parametro N. 6008 è 0, I_J_K_ significa sempre che I = #4, J = #5 e K = #6 mentre K_J_I_ significa K = #6, J = #8 e I= #10 perché è utilizzata la specifica argomenti II. - Se il bit 7 (IJK) del parametro N. 6008 è 1, K_J_I_ significa che I = #4, J = #5 e K = #6, che è come I_J_K_, perché è utilizzata la specifica argomenti I. - 467 - 16.MACROISTRUZIONI • B-64484IT/02 Specifica argomenti II La specifica argomenti II usa le lettere A, B e C una volta ciascuna e usa le lettere I, J e K fino a 10 volte. La specifica argomenti II si usa per passare come argomenti valori quali le coordinate tridimensionali. Indirizzo A B C I1 J1 K1 I2 J2 K2 I3 J3 • PROGRAMMAZIONE Variabile numero #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 #11 Indirizzo IK3 I4 J4 K4 I5 J5 K5 I6 J6 K6 I7 Variabile numero #12 #13 #14 #15 #16 #17 #18 #19 #20 #21 #22 Indirizzo J7 K7 I8 J8 K8 I9 J9 K9 I10 J10 K10 Variabile numero #23 #24 #25 #26 #27 #28 #29 #30 #31 #32 #33 Gli indici delle lettere I, J e K usati nella tabella per indicare l'ordine di specifica dell'argomento non devono essere scritti nel programma. NOTA Se il bit 7 (IJK) del parametro N. 6008 è 1, non è possibile utilizzare argomento II. Limitazioni - Formato G65 deve essere specificato prima degli argomenti. - Uso contemporaneo delle specifiche argomenti I e II Il CNC identifica internamente la specifica argomenti I e la specifica argomenti II. Se vengono usate entrambe contemporaneamente, il tipo di specifica usato per ultimo ha la precedenza. [Esempio] G65 A1.0 B2.0 I-3.0 I4.0 D5.0 P1000 ; (Variables) #1:1.0 #2:2.0 #3: #4:-3.0 #5: #6: #7:4.0 5.0 Se, come in questo esempio, sono specificati ambedue gli argomenti I4.0 e D5.0, corrispondenti alla variabile #7, è valido il secondo, D5.0. - Posizione del punto decimale Le unità degli argomenti passati senza punto decimale corrispondono all'incremento minimo di immissione di ciascun indirizzo. AVVERTENZA Il valore di un argomento passato senza punto decimale può essere diverso a seconda della configurazione del sistema. E' buona pratica usare il punto decimale per mantenere la compatibilità dei programmi. - 468 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Nome asse esteso L'indirizzo asse di un nome asse esteso non può essere specificato come argomento. In tal caso si verifica l'allarme PS0129, “USO DI 'G' COME ARGOMENTO”. M Se viene specificato un valore senza il punto decimale, il numero delle posizioni decimali viene determinato come segue: Indirizzo Non indirizzo asse D, E, H, M, S, o T QoR A, C, I, J, K, X, Y, o Z B, U, V(NOTA 1), or W Seconda funzione ausiliaria Indirizzo asse 0 (NOTA 2) α α (NOTA 2) 0 γ (NOTA 4) Indirizzo β (NOTA 3) (NOTA 3) β Programmazione in millimetri F (modo G93) F (modo G94) F (modo G95) Programmazione in pollici 3 0 2 4 (NOTA 5) 2 (NOTA 5) NOTA 1 Quando V viene utilizzato in un richiamo con un codice specifico, il numero delle posizioni decimali viene determinato in base all'impostazione dell'asse di riferimento. 2 α viene determinato in base al sistema di incrementi dell'asse di riferimento (l'asse specificato con il parametro N. 1031), come è indicato nella tabella della NOTA 3. 3 β viene determinato in base al sistema di incrementi dell'indirizzo asse corrispondente, come è indicato nella seguente tabella. Sistema di incrementi Asse lineare (programmazione in millimetri) Asse lineare (programmazione in pollici) Asse rotativo IS-A IS-B IS-C IS-D IS-E 2 3 4 5 6 3 4 5 6 7 2 3 4 5 6 Quando il bit 7 (IPR) del parametro N. 1004 è 1, vengono utilizzati i suddetti valori diminuiti di 1. Però, se il sistema di incrementi di un asse è IS-A, l'impostazione del bit 7 (IPR) del parametro N. 1004 non ha effetti. Per gli assi che usano la notazione del punto decimale tipo calcolatrice tascabile (il bit 0 (ADX) del parametro N. 3455 è 1), il numero delle posizioni decimali è 0. Se il bit 7 (EAP) del parametro N. 3452 è 1, però, questo tipo di notazione del punto decimale non ha effetto ed il numero delle posizioni decimali è quello indicato nella soprastante tabella. 4 γ viene determinato in base al sistema di incrementi dell'asse di riferimento (l'asse specificato con il parametro N. 1031), come è indicato nella sottostante tabella. (Se il bit 7 (BDX) del parametro N. 3450 è 1, anche γ è determinato allo stesso modo.) - 469 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 NOTA Sistema di incrementi dell'asse di riferimento AUP (No.3450#0) =0 IS-A IS-B IS-C IS-D IS-E AUP(3450#0) = 1 AUX (No.3405#0) = 0 AUX (No.3405#0) = 1 mm pollici mm pollici 2 3 4 5 6 0 2 3 4 5 6 3 4 5 6 7 5 Se il bit 1 (FR3) del parametro N. 1405 è 1, i valori indicati in tabella devono essere aumentati di 1. 6 Se è utilizzata la notazione del punto decimale tipo calcolatrice tascabile (il bit 0 (DPI) del parametro N. 3401 è 1), il numero delle posizioni decimali è 0. T Se viene specificato un valore senza il punto decimale, il numero delle posizioni decimali viene determinato come segue: Indirizzo Non indirizzo asse H, M, Q, S, o T D R A, B, C, I, J, K, U, V, W, X, Y, o Z Seconda funzione ausiliaria Indirizzo asse 0 α Indirizzo 0 o α (NOTA 6) (NOTA 1) α (NOTA 3) γ β (NOTA 2) Programmazione in millimetri Programmazione in pollici 0 (NOTA 4) 4 E, F (modo G98) E, F (modo G99) 2 (NOTA 4) 6 NOTA 1 α viene determinato in base al sistema di incrementi dell'asse di riferimento (l'asse specificato con il parametro N. 1031), come è indicato nella tabella della NOTA 2. 2 β viene determinato in base al sistema di incrementi dell'indirizzo asse corrispondente, come è indicato nella seguente tabella. Sistema di incrementi Asse lineare (programmazione in millimetri) Asse lineare (programmazione in pollici) Asse rotativo IS-A IS-B IS-C IS-D 2 3 4 5 3 4 5 6 2 3 4 5 IS-E 6 7 6 Quando il bit 7 (IPR) del parametro N. 1004 è 1, vengono utilizzati i suddetti valori diminuiti di 1. Però, se il sistema di incrementi di un asse è IS-A, l'impostazione del bit 7 (IPR) del parametro N. 1004 non ha effetti. Per gli assi che usano la notazione del punto decimale tipo calcolatrice tascabile (il bit 0 (ADX) del parametro N. 3455 è 1), il numero delle posizioni decimali è 0. Se il bit 7 (EAP) del parametro N. 3452 è 1, però, questo tipo di notazione del punto decimale non ha effetto ed il numero delle posizioni decimali è quello indicato nella soprastante tabella. - 470 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 NOTA 3 γ viene determinato in base al sistema di incrementi dell'asse di riferimento (l'asse specificato con il parametro N. 1031), come è indicato nella sottostante tabella. (Se il bit 7 (BDX) del parametro N. 3450 è 1, anche γ è determinato allo stesso modo.) Sistema di incrementi dell'asse di riferimento AUP (No.3450#0) =0 IS-A IS-B IS-C IS-D IS-E AUP(3450#0) = 1 AUX (No.3405#0) = 0 AUX (No.3405#0) = 1 mm pollici mm pollici 2 3 4 5 6 0 2 3 4 5 6 3 4 5 6 7 4 Se il bit 2 (FM3) del parametro N. 1404 è 1, i valori indicati in tabella devono essere aumentati di 3. 5 Se è utilizzata la notazione del punto decimale tipo calcolatrice tascabile (il bit 0 (DPI) del parametro N. 3401 è 1), il numero delle posizioni decimali è 0. 6 Se il bit 2 (DPD) del parametro N. 6019 è 0, il numero di posizioni decimali è 0, e se DPD è 1, esso è α. - Annidamento di richiami I richiami macro possono essere annidati fino ad una profondità di cinque livelli, inclusi i richiami semplici (G65) e i richiami modali (G66/G66.1). Complessivamente, i richiami macro ed i richiami sottoprogramma possono arrivare a 15 livelli. Un programma macro può anche essere richiamato durante il funzionamento in MDI utilizzando gli stessi metodi. - Livelli di variabili locali • • • Per l'annidamento sono disponibili le variabili locali per i livelli da 0 a 5. Il livello del programma principale è il livello 0. Ogni volta che viene richiamata una macro (con G66, G66.1, Ggg, o Mmm), il livello delle variabili locali aumenta di 1. I valori delle variabili locali del livello precedente sono salvati nel CNC. Quando in una macro viene eseguito M99, il controllo ritorna al programma richiamante, il livello delle variabili locali diminuisce di uno e i valori delle variabili locali precedentemente salvati sono ripristinati. • - 471 - 16.MACROISTRUZIONI Programma principale (livello 0) PROGRAMMAZIONE Macro (livello 1) Macro (livello 2) B-64484IT/02 Macro (livello 3) Macro (livello 4) O0001 ; : #1=1 ; G65 P2 A2 ; : : M30 ; O0002 ; : : G65 P3 A 3; : : M99; O0003 ; : : G65 P4 A4 ; : : M99; O0004 ; : : G65 P5 A5 ; : : M99; Variabili locali (livello 0) (Livello 1) (Livello 2) (Livello 3) 1 #1 : : : #33 Variabili comuni #1 : : #33 #100-, #500- 2 #1 : : #33 : 3 #1 : : #33 : #1 : : #33 : O0006 : : : : : M99; O0005 ; : : G65 P6 A6 ; : : M99; (Livello 4) 4 Macro (livello 5) 5 : (Livello 5) #1 : : #33 6 : Variabili che possono essere lette e scritte da macro a livelli diversi Esempio di programma (cerchio di fori equidistanti) M Viene creata una macro che esegue H fori a intervalli di B gradi dopo un angolo iniziale A lungo la circonferenza un cerchio di raggio I. Il centro del cerchio è (X, Y). I comandi possono essere specificati in incrementale o in assoluto. Per eseguire i fori in senso orario, specificare un valore negativo per l'indirizzo B. H=2 H=3 H=4 H=1 B B A Centro (X,Y) Raggio I - Formato del richiamo G65 P9100 X Y Z R F I A B H Xx Yy Zz Rr Ff Ii Aa Bb Hh ; : Coordinata X del centro del cerchio (programmazione assoluta o incrementale).......................... (#24) : Coordinata Y del centro del cerchio (programmazione assoluta o incrementale).......................... (#25) : Profondità del foro ......................................................................................................................... (#26) : Coordinata del punto di avvicinamento ......................................................................................... (#18) : Velocità di avanzamento .................................................................................................................. (#9) : Raggio del cerchio ........................................................................................................................... (#4) : Angolo iniziale ................................................................................................................................. (#1) : Angolo incrementale (esecuzione dei fori in senso orario se è negativo) ........................................ (#2) : Numero dei fori .............................................................................................................................. (#11) - 472 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Programma che richiama la macro O0002; G90 G92 X0 Y0 Z100.0; G65 P9100 X100.0 Y50.0 R30.0 Z-50.0 F500 I100.0 A0 B45.0 H5; M30; - Programma macro (programma richiamato) O9100; #3=#4003; ................................ Salva il codice G del gruppo 3. G81 Z#26 R#18 F#9 K0; (Nota) .. Ciclo di foratura. Nota: Si può usare anche L0. IF[#3 EQ 90]GOTO 1; .............. Nel modo G90 salta a N1. #24=#5001+#24; ...................... Calcola la coordinata X del centro. #25=#5002+#25; .................... Calcola la coordinata Y del centro. N1 WHILE[#11 GT 0]DO 1; ..... Finché il numero dei fori residui non diventa 0 #5=#24+#4*COS[#1]; .............. Calcola una posizione di foratura sull'asse X. #6=#25+#4*SIN[#1]; ................ Calcola una posizione di foratura sull'asse Y. G90 X#5 Y#6;........................... Esegue il posizionamento e la foratura. #1=#1+#2; ................................ Aggiorna l'angolo. #11=#11-1; ............................... Decrementa il numero dei fori. END 1; G#3 G80;.................................. Ripristina il codice G originale. M99; Significato delle variabili: #3: Memorizza il codice G del gruppo 3. #5: Coordinata X del foro successivo #6: Coordinata Y del foro successivo Esempio di programma (Ciclo di foratura) T Muovere l'utensile lungo gli assi X e Z per posizionarlo sul punto iniziale del ciclo. Richiamare la macro specificando la profondità del foro con gli indirizzi Z o W, la profondità di taglio con l'indirizzo K e la velocità di avanzamento per la foratura con l'indirizzo F. Z W K Lavoro Rapido - 473 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Formato del richiamo G65 P9100 Zz Ww Kk Ff ; Z W K F : : : : Profondità del foro (assoluto) Profondità del foro (incrementale) Profondità di taglio Velocità di avanzamento - Programma che richiama la macro O0002; G50 X100.0 Z200.0 ; G00 X0 Z102.0 S1000 M03 ; G65 P9100 Z50.0 K20.0 F0.3 ; G00 X100.0 Z200.0 M05 ; M30 - N1 N2 N9 N8 Programma macro (programma richiamato) O9100; #1=0 ; ................................................... Azzera il dato relativo alla profondità del foro corrente. #2=0 ; ................................................... Azzera il dato relativo alla profondità del foro precedente. IF [#23 NE #0] GOTO 1 ;..................... In programmazione incrementale, salta a N1. IF [#26 EQ #0] GOTO 8 ; .................... Se non sono specificati né Z né W, indica un errore. #23=#5002-#26 ; ................................. Calcola la profondità totale del foro. #1=#1+#6 ;........................................... Calcola la profondità del foro corrente. IF [#1 LE #23] GOTO 2 ; ..................... Determina se il foro da eseguire è troppo profondo. #1=#23 ; ............................................... Limita la profondità a quella del foro corrente. G00 W-#2 ; .......................................... Porta l'utensile al fondo del foro precedente. G01 W- [#1-#2] F#9 ;........................... Esegue la foratura. G00 W#1 ;............................................ Porta l'utensile al punto di inizio della foratura. IF [#1 GE #23] GOTO 9 ; .................... Controlla se la foratura è completata. #2=#1 ; ................................................. Memorizza la profondità del foro corrente. GOTO 1 ; M99 #3000=1 (NOT Z OR W COMMAND) .. Genera un allarme. - 474 - 16.9.2 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Richiamo modale: Richiamo dopo l'esecuzione di un comando di movimento (G66) Dopo il comando di richiamo modale G66, la macro specificata viene richiama alla fine di tutti i blocchi che specificano un movimento asse. Questo continua finché non viene programmato G67, che cancella il richiamo macro modale. G66 Pp Ll <specifica-argomenti> ; P : Numero del programma da richiamare l : Numero di ripetizioni (1 per default) Argomenti : dati passati alla macro O0001 ; : G66 P9100 L2 A1.0 B2.0 ; G00 G90 X100.0 ; Y200.0 ; X150.0 Y300.0 ; G67 ; : M30 ; O9100 ; : G00 Z-#1 ; G01 Z-#2 F300 ; : : : : M99; Spiegazioni - Richiamo • • • • Dopo G66, specificare con l'indirizzo P il numero del programma macro da richiamare. Se è richiesto un numero di ripetizioni, specificarlo dopo l'indirizzo L (1 .. 999999999). Come nel caso del richiamo semplice (G65), i dati da passare al programma macro si specificano come argomenti. Nel modo G66 è possibile richiamare una macro o un sottoprogramma. - Cancellazione G67 cancella il richiamo macro modale. I blocchi successivi non richiamano più la macro specificata dal precedente blocco G66. - Annidamento di richiami I richiami macro possono essere annidati fino ad una profondità di cinque livelli, inclusi i richiami semplici (G65) e i richiami modali (G66/G66.1). Complessivamente, i richiami macro ed i richiami sottoprogramma possono arrivare a 15 livelli. - Annidamento di richiami modali Per un unico richiamo modale (quando G66 viene specificato solo una volta), la macro specificata viene richiamata ad ogni esecuzione di un comando di movimento. Se vengono annidati più richiami macro modali, alla fine di un comando di movimento specificato in una macro, viene eseguita la macro del livello immediatamente superiore. Le macro vengono richiamate nell'ordine opposto a quello di specifica. Ogni volta che viene specificato G67, viene cancellata una macro, a partire da quella specificata per ultima. [Esempio] G66 P9100 ; X10.0 ; (1-1) G66 P9200 ; X15.0 ; (1-2) G67; Cancella P9200. G67; Cancella P9100. X-25.0 ; (1-3) O9100; Z50.0 ; M99 ; (2-1) O9200 ; X60.0 ; Y70.0 ; M99; (3-1) (3-2) Sequenza di esecuzione del soprastante programma (i blocchi senza movimento sono omessi) - 475 - 16.MACROISTRUZIONI (1-1) PROGRAMMAZIONE B-64484IT/02 (1-2) (2-1) (1-3) (3-1) (3-2) (2-1) * (2-1) Dopo 1-3 non ci sono richiami macro perché il modo richiamo macro è stato precedentemente cancellato. Limitazioni • • • • • I blocchi G66 e G67 devono essere programmati in coppia nello stesso programma. Se G67 viene specificato quando il modo non è G66, si verifica l'allarme PS1100, “CANCELLAZIONE SENZA RICHIAMO MODALE”. Questo allarme può essere evitato mettendo a 1 il bit 0 (G67) del parametro N. 6000. In un blocco G66 non possono essere richiamate macro. Però, vengono impostate le variabili locali (argomenti). G66 deve essere specificato prima degli argomenti. Il richiamo macro non può essere specificato in un blocco contenente un codice come quelli delle funzioni ausiliarie, che non comportano alcun movimento asse. Le variabili locali (argomenti) possono essere impostate solo nei blocchi G66. I richiami modali successivi non reimpostano le variabili locali. NOTA Se un blocco per il quale viene eseguito un richiamo modale contiene M99, questo viene eseguito dopo il richiamo. Esempio di programma M La macro di questo esempio esegue le stesse operazioni del ciclo fisso di foratura G81 e il programma pezzo esegue un richiamo modale. Per semplificare il programma, tutti i dati di foratura sono specificati in programmazione assoluta. Rapido Il ciclo fisso è costituito dalle seguenti operazioni base: Operazione 1: Posizionamento assi X e Y Operazione 2: Rapido fino al punto R Operazione 1 Operazione 2 Operazione 3: Avanzamento in lavoro fino al punto Z Operazione 4: Rapido fino ai punti R o I Avanzamento in lavoro Punto I Operazione 4 R Punto R Z=0 Operazione 3 Punto Z Z - Formato del richiamo G66 P9110 Z R F L : : : : Zz Rr Ff Ll ; Coordinata del punto Z (solo programmazione assoluta) ...................................................... (#26) Coordinata del punto R (solo programmazione assoluta) ...................................................... (#18) Velocità di avanzamento .......................................................................................................... (#9) Numero di ripetizioni - 476 - - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Programma che richiama le macro O0001; G28 G91 X0 Y0 Z0; G92 X0 Y0 Z50.0; G00 G90 X100.0 Y50.0; G66 P9110 Z-20.0 R5.0 F500; G90 X20.0 Y20.0; X50.0; Y50.0; X70.0 Y80.0; G67; M30; - Programma macro (programma richiamato) O9110; #1=#4001; .......................... Salva G00/G01. #3=#4003; ............................ Salva G90/G91. #4=#4109; ............................ Salva la velocità di avanzamento. #5=#5003; ............................ Salva la coordinata Z all'inizio della foratura. G00 G90 Z#18; .................... Posizionamento al punto R G01 Z#26 F#9;..................... Avanzamento in lavoro fino al punto Z IF[#4010 EQ 98]GOTO 1; ... Ritorno al punto I G00 Z#18; ............................ Posizionamento al punto R GOTO 2; N1 G00 Z#5;................................ Posizionamento al punto I N2 G#1 G#3 F#4; ........................ Ripristino dei dati modali. M99; Esempio di programma T Questo programma esegue una gola nella posizione specificata. U - Formato del richiamo G66 P9110 Uu Ff U F : : Profondità della gola (incrementale) Velocità di avanzamento - 477 - 16.MACROISTRUZIONI - PROGRAMMAZIONE B-64484IT/02 Programma che richiama le macro O0003 ; G50 X100.0 Z200.0 ; S1000 M03 ; G66 P9110 U5.0 F0.5 ; G00 X60.0 Z80.0 ; Z50.0 ; Z30.0 ; G67; G00 X00.0 Z200.0 M05 ; M30; - Programma macro (programma richiamato) O9110; G01 U - #21 F#9 ; ...... Lavora il pezzo. G00 U#21 ; ................. Ritira l'utensile. M99; 16.9.3 Richiamo modale: Richiamo ad ogni blocco (G66.1) Quando viene stabilito questo modo, la macro specificata viene richiamata incondizionatamente per ogni blocco contenente un comando NC. Tutti i dati diversi da O, nome file, codici N e codici G specificati in ciascun blocco non vengono eseguiti come tali, ma vengono trattati come argomenti. (Il codice G contenuto nel blocco G66.1 non è trattato come un argomento. Solo l'ultimo codice G specificato nei blocchi successivi viene utilizzato come un argomento.) Un blocco NC contenente O, nome file o N ha lo stesso effetto di un blocco con G65P specificato nella posizione successiva, gli altri blocchi NC hanno lo stesso effetto dei blocchi che iniziano con G65P. G66.1 P p L l <specifica-argomenti> ; O0001 ; : G66.1 P9100 L2 A1.0 B2.0 ; A10.0 B20.0 F300 ; A0 B-30.0 ; F1000 ; G67 ; : P : Numero del programma da richiamare l : Numero di ripetizioni (1 per default) Argomenti : dati passati alla macro O9100 ; : G00 Z-#1 ; G01 Z-#2 F#9 ; : : : : M99; [Esempio] Nel modo G66.1 P100 ; , N001 G01 G91 X100 Y200 D1 R1000 ; equivale a N001 G65 P100 G01 G91 X100 Y200 D1 R1000 ; Spiegazioni - Richiamo • • • Dopo G66.1, specificare con l'indirizzo P il numero del programma macro da richiamare. Se è richiesto un numero di ripetizioni, specificarlo dopo l'indirizzo L (1 .. 999999999). Come nel caso del richiamo semplice (G65), i dati da passare al programma macro si specificano come argomenti. Nel modo G66.1 è possibile richiamare una macro o un sottoprogramma. • - 478 - PROGRAMMAZIONE B-64484IT/02 - 16.MACROISTRUZIONI Cancellazione G67 cancella il richiamo macro modale. I blocchi successivi non richiamano più la macro specificata dal precedente blocco G66. - Annidamento di richiami I richiami macro possono essere annidati fino ad una profondità di cinque livelli, inclusi i richiami semplici (G65) e i richiami modali (G66/G66.1). Complessivamente, i richiami macro ed i richiami sottoprogramma possono arrivare a 15 livelli. - Annidamento di richiami modali Per un unico richiamo modale (quando G66.1 viene specificato solo una volta), la macro specificata viene richiamata ad ogni esecuzione di un blocco. Quando sono specificati richiami macro modali annidati, ad ogni blocco NC eseguito all'interno di una macro richiamata viene eseguita la macro del livello di annidamento immediatamente superiore. Le macro vengono richiamate nell'ordine opposto a quello di specifica. Ogni volta che viene specificato G67, viene cancellata una macro, a partire da quella specificata per ultima. [Esempio] Commutazione dei comandi asse N1 G66.1 P1000 X10.0 ; → Richiama O1000 ed esegue Y10.0. N2 X20.0 ; → Richiama O1000 ed esegue Y20.0. N3 G66.1 P2000 Y10.0 Z20.0 ; → Richiama O2000 ed esegue Y20.0 Z10.0. Poi richiama O1000 ed esegue X20.0 Z10.0. N4 X10.0 Y20.0 Z30.0 ; → Richiama O2000 ed esegue X10.0 Y30.0 Z20.0. Poi richiama O1000 ed esegue X30.0 Y10.0 Z20.0. N5 G67 ; → Cancella P2000. N6 G67 ; → Cancella P1000. O1000 X#25 Y#24 Z#26 ; M99; (Commutazione X-Y) O2000 X#24 Y#26 Z#25 ; M99; (Commutazione Y-Z) Sequenza di esecuzione del soprastante programma (i blocchi senza movimento sono omessi) Programmi richiamati Programma richiamante N1 N2 N3 N4 N5 N6 O1000 O2000 Nei blocchi N1 ed N2, viene richiamata la macro O1000 e vengono scambiati i comandi degli assi X e Y. Nei blocchi N3 ed N4, viene richiamata la macro O2000 e vengono scambiati i comandi degli assi Y e Z. Per i comandi commutati viene richiamata O1000 e vengono scambiati i comandi degli assi X e Y. Quindi i comandi specificati per gli assi X, Y e Z sono commutati in comandi per gli assi Z, X e Y. Limitazioni • • I blocchi G66.1 e G67 devono essere programmati in coppia nello stesso programma. Se G67 viene specificato quando il modo non è G66.1, si verifica l'allarme PS1100, “CANCELLAZIONE SENZA RICHIAMO MODALE”. Questo allarme può essere evitato mettendo a 1 il bit 0 (G67) del parametro N. 6000. Blocco G66.1 (a) In un blocco G66.1 viene richiamata la macro. (b) La corrispondenza tra gli indirizzi specificati come argomenti e le variabili è la stessa del richiamo semplice. - 479 - 16.MACROISTRUZIONI • PROGRAMMAZIONE B-64484IT/02 Blocchi successivi a G66.1 nei quali viene eseguito il richiamo (esclusi i blocchi G66.1). (a) Come argomenti possono essere utilizzati anche gli indirizzi G, P, e L.. L'indirizzo G corrisponde a #10; l'indirizzo L a #12; l'indirizzo P a #16. Però i valori di questi indirizzi sono soggetti alle limitazioni dei normali comandi NC. Ad esempio, ;G1000. P0.12 L-4 non può essere specificato. (b) Se un blocco contiene più codici G, solo l'ultimo viene trattato come un argomento. O, nome file, codici N e codici G non appartenenti al gruppo 00 vengono passati ai blocchi successivi. NOTA 1 Per i blocchi contenenti solo un numero O, un nome file, un numero di sequenza, un EOB, una frase macro o il comando M99, la macro non viene richiamata. 2 Se oltre agli indirizzi O, nome file o N, un blocco contiene altri comandi NC, la macro viene richiamata. Se N viene specificato dopo un indirizzo diverso da O, nome file o N, viene trattato come un argomento. In questo caso N corrisponde alla variabile #14 ed il numero di posizioni decimale ammesse è 0. 3 Se un blocco per il quale viene eseguito un richiamo modale contiene M99, questo viene eseguito dopo il richiamo. 16.9.4 Richiamo macro mediante un codice G Dopo avere definito mediante parametri i codici G utilizzati a questo scopo, specificando uno di questi codici G è possibile richiamare un programma macro allo stesso modo dei richiami semplici (G65). O0001 ; : G81 X10.0 Y20.0 Z-10.0 ; : M30 ; O9010 : : : N9 M99 ; Parametro N. 6050=81 Spiegazioni E' possibile richiamare un programma macro (da O9010 a O9019) con un codice G (da -9999 a 9999) assegnando il valore del codice G al parametro corrispondente (dal N. 6050 al N. 6059), allo stesso modo di G65. Per eseguire il richiamo dei programmi macro da O9040 a O9049 mediante codici G con il punto decimale, mettere a 1 il bit 0 (DPG) del parametro N. 6007 e specificare i codici G con i parametri da 6060 a 6069. Il numero delle posizioni decimali di un codice G è 1. Assegnare al parametro corrispondente al programma macro da richiamare il valore del codice G moltiplicato per 10. [Esempio] Quando parametro N. 6060 è 234, G23.4 richiama il programma macro O9040. Se viene impostato un codice G negativo, viene eseguito un richiamo modale. In questo caso, il bit 3 (MGE) del parametro N. 6007 permette di selezionare il tipo G66 o il tipo G66.1. Ad esempio, impostando un parametro in modo che il codice G81 richiami il programma macro O9010, è possibile richiamare un ciclo specifico dell'utilizzatore, anziché il ciclo G81 standard, senza modificare i programmi pezzo. - 480 - - Corrispondenza fra i parametri ed i numeri dei programmi richiamati Codici G senza il punto decimale Numero parametro Numero programma 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 Codici G con il punto decimale Numero parametro Numero programma 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 O9010 O9011 O9012 O9013 O9014 O9015 O9016 O9017 O9018 O9019 O9040 O9041 O9042 O9043 O9044 O9045 O9046 O9047 O9048 O9049 Ripetizioni Come nel caso dei richiami semplici, è possibile specificare il numero di ripetizioni (da 1 a 999999999) con l'indirizzo L. - Specifica degli argomenti Come nel caso dei richiami semplici, sono disponibili due tipi di specifica degli argomenti: specifica argomenti I e specifica argomenti II. Il tipo di specifica argomenti è riconosciuto automaticamente in base agli indirizzi utilizzati. Limitazioni - Annidamento dei richiami quando si utilizzano i codici G • Normalmente, per richiamare un altro programma in un programma a sua volta richiamato con un codice G è possibile utilizzare solo i comandi G65, M98, G66, o G66.1. Però, quando il bit 6 (GMP) del parametro N. 6008 è 1, è possibile utilizzare il richiamo con i codici M, T o S, con il codice della seconda funzione ausiliaria, o con uno specifico codice anche in un programma richiamato con un codice G. • 16.9.5 Richiamo macro mediante un codice G (con specifica del numero di codici G utilizzabili) Impostando il numero del primo codice G utilizzato per richiamare una macro, il numero del primo programma macro richiamato ed il numero di definizioni, è possibile definire il numero desiderato di codici G che richiamano una macro. Spiegazioni Il numero delle macro richiamabili mediante codice G, corrispondente al numero dei codici G utilizzati per il richiamo, si specifica con il parametro N. 6040. Il valore numerico assegnato al parametro N. 6038 indica il primo dei codici G utilizzati ed il numero programma specificato con il parametro N. 6039 indica il primo programma richiamato. Per disabilitare questa funzione, assegnare 0 al parametro N. 6040. Se il codice G specificato con il parametro N. 6038 è negativo, i richiami sono modali. In questo caso, il bit 3 (MGE) del parametro N. 6007 permette di selezionare il tipo G66 o il tipo G66.1. Il numero di ripetizioni e gli argomenti si specificano come per i richiami macro mediante codici G. - 481 - 16.MACROISTRUZIONI PROGRAMMAZIONE B-64484IT/02 [Esempio] Assegnare 900 al parametro N. 6038, 10000000 al parametro N. 6039 e 100 al parametro N. 6040. G900 → O1000 G901 → O1001 G902 → O1002 : G999 → O1099 Questo esempio definisce 100 richiami macro (semplici). Se il valore del parametro N. 6038 fosse invece -900, i 100 richiami macro definiti sarebbero modali. NOTA 1 I richiami definiti con questa impostazione diventano tutti non validi nei seguenti casi: <1> Uno dei valori assegnati ai suddetti parametri è fuori dal campo di validità del parametro. <2> (N. 6039 + N. 6040 - 1) > 99999999 2 Non è possibile mischiare richiami semplici e richiami modali. 3 Se uno dei codici G specificati con i parametri N. 6050 - 6059 rientra nel gruppo di codici G determinato da questa impostazione, quel codice G richiama il programma corrispondente al parametro 6050 - 6059 in cui è specificato. 16.9.6 Richiamo macro mediante codici G con il punto decimale (con specifica del numero di codici G utilizzabili) Quando il bit 0 (DPG) del parametro N. 6007 è 1, impostando il numero del primo codice G con il punto decimale utilizzato per il richiamo, il numero del primo programma richiamato ed il numero delle coppie codice G - programma, è possibile definire il numero desiderato di codici G con il punto decimale che richiamano un programma macro. Spiegazioni Il numero delle macro richiamabili mediante codice G con il punto decimale, corrispondente al numero dei codici G utilizzati per il richiamo, si specifica con il parametro N. 6043. Il valore numerico assegnato al parametro N. 6041 indica il primo dei codici G con il punto decimale utilizzati ed il numero programma specificato con il parametro N. 6042 indica il primo programma richiamato. Per disabilitare questa funzione, assegnare 0 al parametro N. 6043. Se il codice G specificato con il parametro N. 6041 è negativo, i richiami sono modali. In questo caso, il bit 3 (MGE) del parametro N. 6007 permette di selezionare il tipo G66 o il tipo G66.1. Il numero di ripetizioni e gli argomenti si specificano come per i richiami macro mediante codici G. [Esempio] Assegnare 900 al parametro N. 6041, 2000 al parametro N. 6042 e 100 al parametro N. 6043. G90.0 → O2000 G90.1 → O2001 G90.2 → O2002 : G99.9 → O2099 Questo esempio definisce 100 richiami macro (semplici). Se il valore del parametro N. 6041 fosse invece -900, i 100 richiami macro definiti sarebbero modali. - 482 - PROGRAMMAZIONE B-64484IT/02 16.MACROISTRUZIONI NOTA 1 I richiami definiti con questa impostazione diventano tutti non validi nei seguenti casi: <1> Uno dei valori assegnati ai suddetti parametri è fuori dal campo di validità del parametro. <2> (N. 6042 + N. 6043 - 1) > 99999999 <3> Il bit 0 (DPG) del parametro N. 6007 viene messo a 0 (questa impostazione disabilita il richiamo macro mediante codici G con il punto decimale). 2 Non è possibile mischiare richiami semplici e richiami modali. 3 Se uno dei codici G specificati con i parametri N. 6060 - 6069 rientra nel gruppo di codici G determinato da questa impostazione, quel codice G richiama il programma corrispondente al parametro 6060 - 6069 in cui è specificato. 16.9.7 Richiamo macro mediante codici M Tramite parametri è possibile specificare il richiamo non modale (come G65) di specifiche macro tramite codici M O0001 ; : M50 A1.0 B2.0 ; : M30 ; O9020 ; : : : M99; Parametro N. 6080=50 Spiegazioni E' possibile richiamare un programma macro da O9020 a O9029 con un