Programma per filettatura tramite fresatura

Sezione dedicata al G-code, postate qui dubbi o i Vs. lavori in formato G-code.
Rispondi
Avatar utente
progress
Senior
Senior
Messaggi: 1604
Iscritto il: domenica 28 novembre 2010, 12:35
Località: Varese

Re: Programma per filettatura tramite fresatura

Messaggio da progress » mercoledì 24 giugno 2015, 13:43

sei un grande Walgri!

Avatar utente
walgri
God
God
Messaggi: 4735
Iscritto il: giovedì 13 gennaio 2011, 18:37
Località: Cagliari

Re: Programma per filettatura tramite fresatura

Messaggio da walgri » mercoledì 24 giugno 2015, 16:18

Grazie, ma 'saggeeeraaato, Progress !

Da tempo mi gira in testa di scrivere un piccolo sistema per il templating di Gcode, alla fine basta una particolare concidenza astrale e il lavoro inizia da solo :D

Mi e vi chiedo se questo tipo di lavorazione si effettui con più affondi di ampiezza costante, o se vi sia una serie di passate di sgrosso e una finitura, o cos'altro.

Ho visto poi che Gino entra nel pezzo in interpolazione: molto più "elegante" !

Sto architettando una estensione al codice che ho pubblicato accetti che molti più comandi G, al limite tutti (sto pensando ai decoratori - in italiano vedi ad esempio qui o qui).

Il motivo per cui mi interessa questa cosa è che la flessibilità di un vero linguaggio di programmazione non si batte (e quella di Python ancora meno - a mio parere). Basta pensare ad esempio che i dati per queste lavorazioni potrebbero essere prese direttamente da una tabella, o anche direttamente dal cad. Potrebbero essere concatenate in un insieme di altre lavorazioni, pur mantenendo il controllo fine delle singole parti. Peraltro non c'è altra scelta se il nostro controllo non è tanto forbito dal punto di vista GCode.

Lo svantaggio è che occorre installare un ulteriore programma, l'interprete Python, cosa che a me non dispiace affatto: l'ho installato perfino nel cellulare :D
...stop chasing shadows, just enjoy the ride.
Aìna pantografoTelemetria per KFlopBlenderCAM STL + DXF

gino
Senior
Senior
Messaggi: 1774
Iscritto il: domenica 11 ottobre 2009, 18:12

Re: Programma per filettatura tramite fresatura

Messaggio da gino » mercoledì 24 giugno 2015, 17:13

E si Walgri,
il Pyton e`veramente un ottimo programma (sembra odiernemente il piu usato)
complimenti per il tuo programmino!

..sto da tempo cercando di dare una rotazione alla tavola (XY)
per fare asole circolari programmandone solo una.
il programma e fatto ma il G-code non scambia gli assi
quando deve farlo a 90 gradi. (a 180 gradi funziona)
ma credo dipenda dall G-code rs274 del colibri
che non puo gestirla. (cosa che in professionali si fanno senza intoppi)
..ma questa e la realta hobbistica.
con Mach3 non ho ancora provato se funziona usando G68 e G69.
..in tutti i modi bel progr.!
sotto il progr per asole.

luigi

G90 G54
t1m6
s10000m3f500
#300=30 (raggio centro asola)
#310=15 (angolo di diramazione POSITIVO)
#311=[0-#310] (angolo di diramazione NEGATIVO)
#320=4 (raggio asola)
#750=4 (numero asole )
#130=1 (valore z incrementale)
#325=[#320/2] (meta raggio asola ;per attacco curvo)
#330=[#300+#320] (raggio maggiore)
#340=[#300-#320] (raggio minore)
#1100=360
#1110=[#1100/#750]
#1000=0 (serve per calcoli)
#2000=0
#2500=#1110(gradi asole)
m98p200l#750 (L=numero asole)
g90
m2 (****************************************************)
o200
#200=[#300*cos[#310+#2000]]
(raggio mezzeria x coseno POSIZIONAMENTO===)
#210=[#300*sin[#310+#2000]]
(raggio mezzeria x sinus POSIZIONAMENTO=== )
#400=[[#300-#320]*cos[#310+#2000]]
(raggio interno x coseno_____ COORDINATA X)
#410=[[#300-#320]*sin[#310+#2000]]
(raggio interno x sinus_____ COORDINATA Y )
#500=[[#300+#320]*cos[#310+#2000]]
(raggio esterno x coseno _____ COORDINATA X)
#510=[[#300+#320]*sin[#310+#2000]]
(raggio esterno x sinus_____ COORDINATA Y )
#700=#400
#710=[#1000-#410]
#800=#500
#810=[#1000-#510]
g0x#200y#210
g0z1
#2000=[#2000+#2500]
M98 P101L1(L=valore profondita)
g0Z1
m99
o100 (esecuzione asola)
g1x#200y#210 (ATTACCO -POSIZIONAMENTO )
g3x#500y#510r#325 (RAGGIO DI ATTACCO===)
g3x#400y#410r#320 (RAGGIO LARGHEZZA ASOLA==)
g2y#710r#340 (RAGGIO INTERNO===)
g3x#800y#810r#320 (RAGGIO LARGHEZZA ASOLA==)
g3x#500y#510r#330 (RAGGIO ESTERNO===)
g3x#200y#210r#325 (RAGGIO DISTACCO==)
m99
o101
M98 p100 L1 (L=valore z incrementale)
g91
g1Z[#1000-#130]
G90
M99
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

Avatar utente
walgri
God
God
Messaggi: 4735
Iscritto il: giovedì 13 gennaio 2011, 18:37
Località: Cagliari

Re: Programma per filettatura tramite fresatura

Messaggio da walgri » giovedì 25 giugno 2015, 23:55

Interessante Gino e grazie per i complimenti !

Python sta godendo di una certa diffusione, ma non è così diffuso, secondo certe statistiche viaggia attorno al 8° posto. Certo è che è molto potente ed edpressivo, facile da imparare, supportato da un vasto ecosistema di librerie.


Mi sfugge come mai hai deciso di operare una rotazione del sistema di riferimento e costruire asole simmetriche rispetto all'asse X, piuttosto che inserire un parametro in più che rappresenta la posizione polare dell'asola inserendolo nella chiamata alla procedura.

In questi giorni sto giocherellando con un'altra routine che interpreta i G2/G3 e li "espande" in G1. Visto che mi pare abbastanza correlato a questo topic, lo pubblicherò qui. Caso mai ci si ragiona assieme.

Ciao!
...stop chasing shadows, just enjoy the ride.
Aìna pantografoTelemetria per KFlopBlenderCAM STL + DXF

gino
Senior
Senior
Messaggi: 1774
Iscritto il: domenica 11 ottobre 2009, 18:12

Re: Programma per filettatura tramite fresatura

Messaggio da gino » sabato 27 giugno 2015, 16:30

ciao Walgri, quello che intendevo fare col progr asole
postato precedentemente era programmazione parametrica di un asola sola
che posso girare in 360° a scelta in numero , grandezza ,distanza da centro, larghezza e profondita.
che pero` ho tentato di fare per Colibri.(purtroppo non gestisce la rotazione)
i punti di attacco li trova tutti ma dopo sballano le X+X- Y+Y- quando deve girare.

ho avuto un po di tempo e lo modificato per Mach3
che gestisce la rotazione (con G68 G 69)
e li sembra funzionare bene (ho solo una versione demo Mach3)

questo e`il programma....forse lo puo provare qualcuno che usa mach3.



g90 g54 (programma per asole su circonferenza)
(------programma funzionante su mach3-----)
t1m6 (FRESA DIA 3.0 MD)
s10000m3f800
#300=60 (raggio centro asola DA X0 Y0)
#310=10 (angolo di diramazione POSITIVO)
#311=[0-#310] (angolo di diramazione NEGATIVO)
#320=4 (raggio asola)
#750=8 (numero asole )
#130=1 (valore z incrementale)
#30=10 (PROFONDITA-ASOLA)
#325=[#320/2] (meta raggio asola ;per attacco curvo)
#330=[#300+#320] (raggio maggiore)
#340=[#300-#320] (raggio minore)
#1100=360
#1110=[#1100/#750]
#1000=0 (serve per calcoli)
#2000=0 (angolo di INIZIO LAVORAZIONE)
m98p300l#750
g69 (DISATTIVAZIONE ROTAZIONE)
G0 g90 Z50 m5
m30
(********FINE PROGRAMMA*********************************)

o300 ( SUB RIPETIZIONI--ASOLE)
#2000=[#2000+#1110]
g68x0y0r#2000 (G68 ANGOLO DI ROTAZIONE; #2000 INCREMENTALE)
m98p200l1
m99
(******************************)
o200 (SUB CALCOLI )
#200=[#300*cos[#310]]
#210=[#300*sin[#310]]
#400=[[#300-#320]*cos[#310]]
#410=[[#300-#320]*sin[#310]]
#500=[[#300+#320]*cos[#310]]
#510=[[#300+#320]*sin[#310]]
#700=#400
#710=[#1000-#410]
#800=#500
#810=[#1000-#510]
g0x#200y#210
g0z1
M98 P100L#30 (L=valore #profondita)
g0Z1
m99
(****************************************)
o100 (SUB ESECUZIONE ASOLA)
g1x#200y#210 (ATTACCO -POSIZIONAMENTO )
g3x#500y#510r#325 (RAGGIO DI ATTACCO===)
g3x#400y#410r#320 (RAGGIO LARGHEZZA ASOLA==)
g2y#710r#340 (RAGGIO INTERNO===)
g3x#800y#810r#320 (RAGGIO LARGHEZZA ASOLA==)
g3x#500y#510r#330 (RAGGIO ESTERNO===)
g3x#200y#210r#325 (RAGGIO DISTACCO==)
g91
g1Z[#1000-#130]
G90
#1000=[#1000+#1000]
m99
Non hai i permessi necessari per visualizzare i file e le foto allegati in questo messaggio. Per visualizzare tali file devi registrarti ed effettuare il Login

Rispondi

Torna a “G-code”