sai da quant'è che volevo farlo? ogni volta che dovevo spianare un pezzo facevo il programma specificodmoglianesi ha scritto:certo che l'appetito bien mangiando, un bel gcode per spianare? ...
ma volevo fare qualcosa di 'riutilizzabile' cambiando pochi valori
sono riuscito a fare questo, ha un paio di difetti ma per il resto dovrebbe funzionare, ancora non lo provo ma dalla simulazione con mach funziona
difetti: se la lunghezza di Y è minore di X fa dei percorsi sballati, l'altezza totale in Z da spianare diviso il passo in Z deve dare come risultato un numero intero altrimenti non arriva alla Z finale ma si ferma prima
;-----------------------------------------------------
;PROGRAMMA SPIANATURA
;lunghezza Y maggiore o uguale a X
;(Ziniziale-Zfinale)/passoZ = numero intero
;-----------------------------------------------------
#1=-30 ;angolo inferiore Sx X
#2=-20 ;angolo inferiore Sx Y
#3=100 ;lunghezza X
#4=120 ;lunghezza Y
#5=10 ;passo X Y
#6=2 ;Z iniziale
#7=-3 ;Z finale
#8=1 ;passo Z
#9=12 ;diametro fresa
#10=8000 ;rpm mandrino
#11=2000 ;avanzamento X Y
#12=500 ;avanzamento Z
;-----------------------------------------------------
#20=0
#21=0
#22=0
G80 G90 G40 G17 G21
G0 Z[#6+10] ;posiziona in rapido a +10 da Z iniziale
G0 X[#1+[#3/2]] Y[#2+[#4/2]] ;posiziona in rapido al centro dell'area
M3 S#10 ;avvia mandrino senso orario
G0 Z[#6+1] ;rapido a Z+1
G1 Z#6 F#12 ;posiziona a Z iniziale a velocità avanzamento Z
M98 P1 L[[#6-#7]/#8]
G0 Z[#6+10]
M5
M30
;----------------------
O1
G1 X[#1+[#9/2]] Y[#2+[#9/2]] Z[#6-#8-#22] F[#11/2]
#22=[#22+#8]
#20=0
#21=0
M98 P2 L[[[[#3-#9]/2]/#5]+1]
M99
;----------------------
O2
G1 Y[[[#2+#4]-[#9/2]]-#20] F#11
G1 X[[[#1+#3]-[#9/2]]-#21]
G1 Y[[#2+[#9/2]]+#20]
G1 X[[#1+[#9/2]]+#21]
G1 X[#1+[#9/2]+#5+#21] Y[#2+[#9/2]+#5+#20]
#20=[#20+#5]
#21=[#21+#5]
M99
;----------------------