Macro g33 FANUC filettatura trapezia

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
Avatar utente
Skyzzo
Junior
Junior
Messaggi: 120
Iscritto il: martedì 1 marzo 2011, 20:35
Località: Brescia

Macro g33 FANUC filettatura trapezia

Messaggio da Skyzzo » venerdì 16 marzo 2012, 20:01

Salve a tutti volevo confrontarmi con qualcuno riguardo all'idea di voler da parte mia costruire una macro per filettature trapeziodale lavorando e su entrambi i lati alternati. #-o

bric
Newbie
Newbie
Messaggi: 26
Iscritto il: venerdì 24 febbraio 2012, 7:52
Località: Reggio Emilia

Re: Macro g33 FANUC filettatura trapezia

Messaggio da bric » sabato 17 marzo 2012, 9:47

Ciao, guarda se queste 2 ti possono aiutare,sono per FANUC

%
O0001(FILETTATURA TRAPEZIA EST.)
(A PIU' PRINCIPI)
(CODICI G TIPO B)
(FANUC / CUSTOM MACRO B)
#500=#24(X)
#501=#4(I)
#502=#3(C)
#503=#17(Q ** SE Q1 = 100 PER 100)
#504=#8(E)
#505=#23(W)
#506=#26(Z)
#507=#9(F)
#508=#7(D)
#509=#11(H)
#510=#22(V)
#511=#1(A)
#520=#2(B)
#531=#500-#501
#530=#4119
#529=#530*#507
#525=[#500-#501]/2
#526=TAN[#511]
#527=#525*#526
#527=#527*2
#528=#509-#527
IF[#511GT80]GOTO9990
IF[#510GT#528]GOTO9991
IF[#500GE#508]GOTO9992
IF[#504GT#502]GOTO9993
IF[#501GT#500]GOTO9994
IF[#502GT#531]GOTO9995
IF[#529GT5000]GOTO9996
#521=#507/#520(MODIFICA PER ALLARME 517)
IF[#521GT#507]GOTO9997
#522=#500
#523=#509
#524=#502
N899IF[#520EQ0]GOTO920
#505=#505+#521
N900#512=SIN[#511]
#513=COS[#511]
#512=#512/#513
#518=#500-#501
#518=#518*#512
#519=#509-#518
#518=#518/2
#518=#505+#518
#517=0
#500=#500-#502
N901#513=#502*#512
#509=#509-#513
#513=#513/2
N902#505=#513+#505
#514=#509/#510
#514=FIX[#514]
#513=#505
#101=0
N903G0Z#513
X#500
G33Z#506F#507
X#508F#507
#513=#513+#510
#101=#101+1
IF[#514NE#101]GOTO903
#513=#513-#510
#513=#505+#509
#513=#513-#510
G0Z#513
X#500
G33Z#506F#507
X#508F#507
IF[#517GT0.5]GOTO919
#502=#503*#502
IF[#502GT#504]GOTO916
#502=#504
N916#500=#500-#502
IF[#500GT#501]GOTO901
#517=1
#505=#518
#509=#519
#513=0
#500=#501
GOTO902
N919G0Z#505
#520=#520-1
#500=#522
#509=#523
#502=#524
GOTO899
N920M99
N9990#3000=10(ANG. UT. > 80 GRADI)
N9991#3000=11(LARGH. UT. ECCESSIVA)
N9992#3000=12(DIA. RITORNO ERRATO)
N9993#3000=13(VAL. MIN. PASS. ERRATO)
N9994#3000=14(DIAM. INT. > DIA. EST.)
N9995#3000=15(PROF. PASSATA ERRATA)
N9996#3000=16(S*P > DI 5000 MM/MIN.)
N9997#3000=17(NUM. PRINCIPI ERRATO)

O0002 (FILETTATURA TRAPEZIA INT.)
(A PIU' PRINCIPI)
(CODICI G TIPO B)
(FANUC / CUSTOM MACRO B)
#500=#24(X)
#501=#4(I)
#502=#3(C)
#503=#17(Q ** SE Q1 = 100 PER 100)
#504=#8(E)
#505=#23(W)
#506=#26(Z)
#507=#9(F)
#508=#7(D)
#509=#11(H)
#510=#22(V)
#511=#1(A)
#520=#2(B)
#531=#501-#500
#530=#4119
#529=#530*#507
#525=[#501-#500]/2
#526=TAN[#511]
#527=#525*#526
#527=#527*2
#528=#509-#527
IF[#511GT80]GOTO9990
IF[#510GT#528]GOTO9991
IF[#508GE#500]GOTO9992
IF[#504GT#502]GOTO9993
IF[#500GT#501]GOTO9994
IF[#502GT#531]GOTO9995
IF[#529GT5000]GOTO9996
#521=#507/#520(MODIFICA PER ALLARME 517)
IF[#521GT#507]GOTO9997
#522=#500
#523=#509
#524=#502
N899IF[#520EQ0]GOTO920
#505=#505+#521
N900#512=SIN[#511]
#513=COS[#511]
#512=#512/#513
#518=#501-#500
#518=#518*#512
#519=#509-#518
#518=#518/2
#518=#505+#518
#517=0
#500=#500+#502
N901#513=#502*#512
#509=#509-#513
#513=#513/2
N902#505=#513+#505
#514=#509/#510
#514=FIX[#514]
#513=#505
#101=0
N903G0Z#513
X#500
G33Z#506F#507
X#508F#507
#513=#513+#510
#101=#101+1
IF[#514NE#101]GOTO903
#513=#513-#510
#513=#505+#509
#513=#513-#510
G0Z#513
X#500
G33Z#506F#507
X#508F#507
IF[#517GT0.5]GOTO919
#502=#503*#502
IF[#502GT#504]GOTO916
#502=#504
N916#500=#500+#502
IF[#501GT#500]GOTO901
#517=1
#505=#518
#509=#519
#513=0
#500=#501
GOTO902
N919G0Z#505
#520=#520-1
#500=#522
#509=#523
#502=#524
GOTO899
N920M99
N9990#3000=10(ANG. UT. MAGG. 80 GRADI)
N9991#3000=11(LARGH. UT. ECCESSIVA)
N9992#3000=12(DIA. RITORNO ERRATO)
N9993#3000=13(VAL. MIN. PASS. ERRATO)
N9994#3000=14(DIAM. INT. MAGG. DIA. FONDO)
N9995#3000=15(PROF. PASSATA ERRATA)
N9996#3000=16(S*P MAGG. DI 5000 MM/MIN.)
N9997#3000=17(NUM. PRINCIPI ERRATO)

Avatar utente
Skyzzo
Junior
Junior
Messaggi: 120
Iscritto il: martedì 1 marzo 2011, 20:35
Località: Brescia

Re: Macro g33 FANUC filettatura trapezia

Messaggio da Skyzzo » sabato 17 marzo 2012, 11:52

In settimana inizio a buttarne giù una bozza....
2 domande:

_perché ti appoggi su variabili comuni e non usi direttamente le locali?

_puoi darmi la descrizione di come utilizzi le locali in questa macro , cioè a cosa fai corrispondere ogni locale usata altrimenti non riesco a tradurla.

Grazie

Avatar utente
Skyzzo
Junior
Junior
Messaggi: 120
Iscritto il: martedì 1 marzo 2011, 20:35
Località: Brescia

Re: Macro g33 FANUC filettatura trapezia

Messaggio da Skyzzo » sabato 17 marzo 2012, 13:35

Ho cercato di tradurre un po' la macro , vedi un po' se corrisponde a qualcosa:

#24= esterno iniziale
#4= esterno finale
#3= profondità  passata (radiale/diametrale ?)
#8= passata minima
#23= Z iniziale
#26= Z finale
#17= coefficiente di riduzione
#9= passo
#2= n.principi
#7= diametro esterno uscita filetto
#1= angolo utensile
#22= larghezza utensile
#530= legge n. Giri rotazione

#11= ????

Avatar utente
Skyzzo
Junior
Junior
Messaggi: 120
Iscritto il: martedì 1 marzo 2011, 20:35
Località: Brescia

Re: Macro g33 FANUC filettatura trapezia

Messaggio da Skyzzo » martedì 20 marzo 2012, 12:36

Unico blocco di programmazione:

G105 E/I Z W R D C (F) (T) M A




Spiegazione degli indirizzi:

E/I = nome del filetto( es. M20 esterno = E20 , es. 1"1/2 interno = I1.12 )
Z = punto iniziale del filetto in Z
W = punto finale del filetto in Z
R = numero principi
D = passo in millimetri
C = coefficiente di riduzione sulla profondità  delle varie passate
F = se a 1 attiva solo ciclo di finitura
T = se a 1 attiva ciclo a zig zag
M = senso di rotazione
A = angolo del filetto 30-55-60


Sto preparando una macro che con il solo blocco iniziale esegua un filetto senza l'utilizzo di quote e privo di posizionamento , movimento di lavoro e svincolo esterno o interno.

Badade che ne pensi?!?!?!?

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

Re: Macro g33 FANUC filettatura trapezia

Messaggio da badade » mercoledì 21 marzo 2012, 0:08

Direi che hai compreso il concetto di macro: creare una "nuova" funzione: G105!
Scrivere una macro di flettatura ex novo (senza usare le funzioni che il controllo possiede) è arduo, poiché esistono problemi di sincronizzazione. Ma appoggiandosi alle esistenti funzioni la macro si riduce alla logica di controllo della funzione stessa. La scelta dei parametri è libera cosi come il numero (meno sono meglio è): dipende da te. La scelta della funzione di filettatura che userai, anche questa è a tua scelta e dipende dalle funzionalità  che vorrai dare alla macro. Secondo gli argomenti da te scelti vuoi eseguire filettature esterne ed interne, a più passate o semplicemente per finire. La filettatura puo essere destra o sinistra ed a più principi. Direi che puoi incominciare a scrivere! Naturalmente non si realizza una macro per puro divertimento ma per esigenze concrete. Se ti è di aiuto, se ti facilita la programmazione e lo sviluppo del programma, se aggiunge qualcosa di nuovo, non solo alternativo di qualcosa che già  esiste, ma migliore.
Se le risposte sono positive allora prosegui altrimenti desisti! Non sonon certo io a scoraggiarti, al contrario ti incito, ma ritengo onesto una preventiva analisi per
non sprecare il proprio tempo e talento in un programma che potrebbe non essere digerito da molti. Detto ciò direi che hai gia le idee chiare sul come impostare la macro, quindi non mi resta che vedere la sua realizzazione. Qualche consiglio? Si parte sempre dal tutto, ovvero dalla funzione che comprende le altre.
Inutile scrivere due procedure di filettatura, una per più principi ed una per singolo: la prima comprende l'altra. Inutile scrivere due procedure una parallela ed una conica: hanno lo stesso principio. Gli argomenti devono essere solo gli essenziali, se possibile multi scopo (è più facile ricordarlo). Devi analizzare attentamente se i tuoi argomenti (il numero associato) descrivono tutte le configurazioni ossibili: fallo prima della scrittura al fine di ovviare ai problemi collaterali che ne scaturiranno (cosa cambia con intero ed esterno? abbiamo necessità  di due parametri? il numero associato al parametro
permette di effettuare qualsiasi filetto? il passo espresso in mm o inch? ...). Infine direi: considera gli altri! A meno che la macro non la usi solo tu, considera che altre persone potrebbero avere una visione differente dalla tua. Personalmente (in modo indiretto) cerco di capire come gli altri reagirebbero alla scrittura di una macro. Chiedi sempre, cerca di capire se gli argomenti da te scelti rispecchiano la mentalità  altrui. Parte del lavoro di un programmatore dovrebbe rispecchiare anche questo aspetto. Forse ti ho annoiato, forse volevi altre risposte... Scrivi e facci sapere, siamo qua per aiutarci.

Rispondi

Torna a “Macchine utensili professionali CN/CNC”