Modifica sottoprogramma M6 (fanuc 310i)

Sezione dedicata esclusivamente a macchine professionali CNC quali Torni cnc, Fresatrici cnc, Brocciatrici cnc, Centri di lavoro cnc, ecc.
Subforum:
Programmazione CNC
Fanuc
Mitsubishi
Heidenhain
Siemens
Haas
Osai
Selca
Fidia
Fagor
WinMax
Mazatrol
Rispondi
vincenzoquovadis
Newbie
Newbie
Messaggi: 44
Iscritto il: giovedì 1 gennaio 2009, 19:17
Località: Puglia - Barletta

Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da vincenzoquovadis » venerdì 23 novembre 2012, 12:32

Vi faccio subito un esempio:

Ho sul mandrino il T12, in preparazione il T10.

Avvio il programma dal suo utensile per riprendere la lavorazione

T12
M6(PUNTA....)
T10
G0X0Y0M3S200F100
Z10

A questo punto il mandrino si dirige fisicamente verso il punto di cambio utensile, subito dopo esegue G0X0Y0M3S200F100 e Z10.
Ecco non voglio questo movimento inutile verso il punto di cambio utensile, ma deve partire da dove si trova verso G0X0Y0 visto che ha già  montato il T richiesto.

Questo è il sottoprogramma:

%
O9001(M6)
G0G40G80M9
G30G91Z0M20
G30G91X0Y0
M6
G90
G4
G4
G4
#983=#4120
F0G90G80
IF[#983EQ#0]GOTO9
IF[#983NE0]GOTO10
N9#3000=6( ASSOCIARE H IN TAB. UT.)
N10G4
#199=#[11000+#983]
#198=#[10000+#983]
G4
#199=#199+#198
IF[#199GT0]GOTO20
#3000=7( LUNG. UT = 0 IN OFFSET H )
N20#891=#5043
G4
#891=#891-#199
G4
G43H#983Z#891
D#983
M99

Come noterete, c'è il caricamento automatico del correttore dell'utensile sul mandrino....
Io lo modificherei in questo modo:

%
O9001(M6)
IF[#983EQ#4120]GOTO5(-modifica-)
G0G40G80M9
G30G91Z0M20
G30G91X0Y0
M6
N5(-----------modifica-)
G90
G4
G4
G4
#983=#4120
F0G90G80
IF[#983EQ#0]GOTO9
IF[#983NE0]GOTO10
N9#3000=6( ASSOCIARE H IN TAB. UT.)
N10G4
#199=#[11000+#983]
#198=#[10000+#983]
G4
#199=#199+#198
IF[#199GT0]GOTO20
#3000=7( LUNG. UT = 0 IN OFFSET H )
N20#891=#5043
G4
#891=#891-#199
G4
G43H#983Z#891
D#983
M99

Credo che in questo modo eviterei il movimento verso il punto di cambio utensile, con solamente un aggiornamento del correttore.

Gradirei dei vostri commenti prima di provare la modifica e fare qualche danno....

Buona giornata

riky56
Newbie
Newbie
Messaggi: 35
Iscritto il: giovedì 8 dicembre 2011, 15:40
Località: Verona

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da riky56 » venerdì 23 novembre 2012, 18:16

se ho capito bene secodo me basta che metti m6 nella stessa riga del'utensile
es:
T12 M6
G0 x y z

Forse è anche una questione di orientamento mandrino

vincenzoquovadis
Newbie
Newbie
Messaggi: 44
Iscritto il: giovedì 1 gennaio 2009, 19:17
Località: Puglia - Barletta

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da vincenzoquovadis » mercoledì 28 novembre 2012, 19:35

Scusate il ritardo....
No, è esattamente uguale.

Nessuno può darmi una mano?

aspen4
Junior
Junior
Messaggi: 55
Iscritto il: mercoledì 20 giugno 2012, 14:16
Località: bologna

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da aspen4 » giovedì 29 novembre 2012, 9:24

basta togliere il blocco M6 dopo il T12.
T12
G0X0Y0M3S200F100T10
Z10
tutte le volte che lanci M6 fai partire un sottoprogramma (9001) che posiziona il mandrino per il cambio utensile.
nel tuo caso si posiziona ma non cambia per il semplice motivo che il T12 e gia presente sul mandrino.

bob3m
Junior
Junior
Messaggi: 88
Iscritto il: domenica 9 gennaio 2011, 17:44
Località: Gorizia

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da bob3m » giovedì 29 novembre 2012, 9:30

Ciao,
come dice aspen4 basta togliere l'M6. O se per vari motivi, come un richiamo, non puoi toglierlo... l'struzione IF potrebbe essere una soluzione. Se le variabili #983 #4120 per il controllo utensile montato sul mandrino sono corrette, il salto condizionato funziona.

Ciao
Massimo
p.s. sempre all'occhio quando si modificano macro del costruttore!

vincenzoquovadis
Newbie
Newbie
Messaggi: 44
Iscritto il: giovedì 1 gennaio 2009, 19:17
Località: Puglia - Barletta

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da vincenzoquovadis » domenica 2 dicembre 2012, 14:35

Grazie per gli interventi, ho provato il sottoprogramma modificato, e funziona alla grande.

Alla prossima...

Avatar utente
huliofane
Senior
Senior
Messaggi: 1069
Iscritto il: mercoledì 29 ottobre 2008, 15:18
Località: Prov. Verona
Contatta:

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da huliofane » domenica 2 dicembre 2012, 14:48

io sul lavoro ho un victor,e per fare il cambio utensile aveva un vero e proprio "casino" perchè iper farlo la tavola deve essere verso l'operatore di almeno 300 dal fono corsa...
ho risolto così:

Il programma parte con la preperazione del primo utensile poi il cambio ut e via con le lavorazioni:
%
:O0001(ESEMPIO)
T1
G6T2
G0G90G54X...Y....


iL CAMBIO UTENSILE L'HO CREATO IN MODO CHE SE LA Y è DA TOT MISURA IN SU(OSSIA IN AREA OK) ME LO FA DIRETTAMENTE,SE INVECE LA Y è A MENO DI TOT,SI SPOSTA E POI FA IL CAMBIO UTENSILE.



%
:9010(CAMBIO UTENSILE)
M5
M9
G91G28Z0
M19
IF[#5022GE-95]GOTO22
N33M6
T#20
M99

N22
G91G30Y0
GOTO33
M99
%

comunque così mi va e non ho problemi
Quando smonto una cosa,per quel piccolo lasso di tempo,entro nella testa di chi l'ha creata

Avatar utente
Roby29789
Junior
Junior
Messaggi: 82
Iscritto il: giovedì 5 aprile 2012, 19:07
Località: sam genesio

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da Roby29789 » sabato 8 dicembre 2012, 12:08

non capisco che c'entra la y sul cambio utensile.Io x e y non le considero metto il cambio utensile sull punto 0 della z e la macchina lo esegue senza problemi.

Avatar utente
huliofane
Senior
Senior
Messaggi: 1069
Iscritto il: mercoledì 29 ottobre 2008, 15:18
Località: Prov. Verona
Contatta:

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da huliofane » sabato 8 dicembre 2012, 13:29

nel mio centro di lavoro ha le carterature che ingombrano per il cu,quindi per farlo,il cnc si deve essere ad almeno -95 day tutto verso la colonna,in pratica da y tutto a - ,deve andare in +di 95 per essere in una zona fuori ostacoli,cioè è sempre in una posizione idonea tranne quando è a zeroY , in quella macro,c'è scritto se sei in una zona adata fallo,ma se non lo sei,vai in una zona idonea per farlo.
l'unica osa in piu è quella...potevo fare che il mandrino si orienta mentre va a Z zero,ma non me lo prende,ma dove lavoro io,non siamo con i tempi così stretti con il centro,anzi,rimane spento anche per giorni,lo usiamo per fare attrezzature o piccole partite di pezzi.
Quando smonto una cosa,per quel piccolo lasso di tempo,entro nella testa di chi l'ha creata

menni
Newbie
Newbie
Messaggi: 39
Iscritto il: sabato 12 febbraio 2011, 10:27
Località: novara

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da menni » venerdì 28 dicembre 2012, 21:42

è normale che faccia ritorno al punto di cambio con la macro che ha scritto, puoi inserire una condizione di controllo in modo che se legge lo stesso utensile montato di quello che deve usare prosegua da dove si trova, ti dico però che lo lo trovo pericoloso tanto in rapido cosa vui che ci mette a tornare al riferimento e a riprendere considerando che avviene solo nella prova programma, valuta tu

badade
Junior
Junior
Messaggi: 166
Iscritto il: mercoledì 5 gennaio 2011, 11:45
Località: Varese

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da badade » domenica 24 febbraio 2013, 19:35

Questo è un argomento interessante!
Di solito coloro che si trovano in questa situazione (movimento degli assi verso il punto di cambio utensile
anche in presenza nel mandrino dell'utensile chiamato) agiscono sulla #4120 (ultimo codice T richiamato).
Ne ho visti tanti di programmi del genere, con differenti sfacettature. Funziona? E' a prova di bomba?
Alla prima domanda possiamo rispondere di si, alla seconda decisamente di no!

Chiariamo con un esempio (utensile 1 nel mandrino).

T1M6 viene eseguito il programma O9001 (che non è da confonfdere con la funzione M6) la cui prima riga è:

IF[#983EQ#4120]GOTO5(-modifica-)

Dato che #983 non perde il valore anche dopo lo spegnimento, dato che il programma le assegna il valore di #4120,
ci si aspetta che #983 possieda il valore corrispondente all'utensile in macchina. In questo modo non avviene lo spsostamento assi (che è ciò che si voleva).
In sintesi questa è l'affermazione che la macro funziona!

Adesso riflettiamo sul fatto che essendo #983 una variabile globale, può essere usata per scopi generali.
Eseguiamo quindi il seguente programma (utensile 1 nel mandrino)

#983=345
T1M6

Viene eseguito il programma O9001, non essendo soddisfatto il confronto, avremo lo spostamento verso il punto di cambio utensile anche se è già  presente nel mandrino.
Questo fatto si ripeterà  ogni qual volta viene usata #983.

E' chiaro che il problema non è perpetuo, lo spostamento avverrà  la prima volta, successivamente la #983 verrà  impostata correttamente.
Questa è invece l'affermazione che il programma non è a prova di bomba.

Ora, è chiaro che a volte si può accettare qualche compromesso, a volte no!
Nella seguente situazione direi che è accettabile, ma qualche considerazione in più si può effettuare.

Desideravo riflettere sul "modo esatto" di intervenire in questi casi.... un programma a prova di bomba!
Le variabili di sistema da #1000 a #1135 rappresentano i segnali di interfaccia di ingresso ed uscita.
In poche parole la cnc deve conoscere la condizione macchina e questo avviene attraversso questi segnali, in particolare i segnali presenti in #1000-->>1032. Non mi dilungo sugli aspetti tecnici ma dirò che anche l'utensile nel mandrino è presente in questi segnali. Allora, la cosa migliore da farsi è quella di analizzare questi segnali, conoscere la presenza dell'utensile ed agire di conseguenza. Supponendo che #1022 sia la variabile riferita all'utensile in macchina il gioco è fatto. Sembra semplice vero? C'è solo un inconveniente: i segnali non sono standard
ma l'implementazione è a carico del costruttore. Questo fa si che dovete eseguire una ricerca per verificare il significato dei segnali.... una volta trovato il segnale, la macro, oltre che funzionare sarà  a prova di bomba.
Buona ricerca!

vincenzoquovadis
Newbie
Newbie
Messaggi: 44
Iscritto il: giovedì 1 gennaio 2009, 19:17
Località: Puglia - Barletta

Re: Modifica sottoprogramma M6 (fanuc 310i)

Messaggio da vincenzoquovadis » martedì 26 febbraio 2013, 11:24

menni ha scritto:è normale che faccia ritorno al punto di cambio con la macro che ha scritto, puoi inserire una condizione di controllo in modo che se legge lo stesso utensile montato di quello che deve usare prosegua da dove si trova, ti dico però che lo lo trovo pericoloso tanto in rapido cosa vui che ci mette a tornare al riferimento e a riprendere considerando che avviene solo nella prova programma, valuta tu
Tutto condivisibile, ma ogni azienda ha le sue "abitudini".

Esempio col T10 sfioro il piano Z0.
Leggo in assoluto Z0.2.
Per tarare l'utensile diminuisco il correttore in tabella di 0.2.

Bene su tutti gli altri centri in azienda (840d e plasmawin) in MDI digito T10M6 e senza che si muova un asse ho l'aggiornamento del correttore e visiono nelle assolute se la correzione è stata fatta bene.
Far cambiare queste procedure a un paio di persone solitamente non porta problemi, ma quando ne sono più di venti è meglio personalizzare il CNC.




E sempre un piacere leggere i tuoi interventi.
Effettivamente la modifica non è a prova di bomba, ma il CNC purtroppo utilizza altre variabili utente "sensibili" (qualifica Renishaw, sonda laser per rottura utensile).
Le abbiamo tutte dirottate nelle #970-#999.
Ovviamente è d'obbligo non utilizzarle mai.
Nel caso specifico però, il tuo consiglio lo accetto, e cercherò la variabile di sistema corretta.
Magari è la stessa della tua macchina visto che il costruttore è OKK (800 e 1000 nel mio caso).
Saluti..
Ultima modifica di girasole il martedì 26 febbraio 2013, 15:13, modificato 1 volta in totale.
Motivazione: eliminato riporto inutile

Rispondi

Torna a “Macchine utensili professionali CN/CNC”