Fanuc Custom Macro B - Sphere Cavity finish milling

GIANG THE TOOL
GIANG THE TOOL
11.5 هزار بار بازدید - 9 سال پیش - This macro allows user to
This macro allows user to finish milling a sphere cavity on the stock. I use 3D step over instead of depth cut, so you can well control shallow area.

User need input:
Sphere Radius
Cutting tool (ball end mill) radius
Sphere Center Heigh from origin (top of stock)
3D step over
Speed & Feed

This macro need to be improved for safety. Thanks for watching
===============
%
O0911 ( SPHERE FINISHING MACRO)
( BY GIANGTHETOOL)

(==== USER INPUT HERE====)
#1=30 (SPHERE  RADIUS )
#2= 5 (TOOL  RADIUS)
#3=10 (SPHERE CENTER HEIGHT)
#4=1 (3D STEP OVER)
#11= 6000 (SPINDLE SPEED)
#12=500  (PLUNGE FEED RATE)
#13=2000  (CUTTING FEED RATE)
(======== END INPUT======)

(===== DO NOT MODIFY FOLLOWING BLOCKS===)
#5=0 (SPHERE  RADIUS AT CURRENT PASS)
#6=0 (CURENT CONTACT DEPTH)
#7=0 (CURRENT TOOL TIP - X COORDINATE)
#8=0 (CURRENT TOOL TIP - Z COORDINATE)
#9= 0 (COUNTING VAR.)
#10=0  (CURRENT ANGLE)

(====CALCULATION=====)
#14=2*[#1]*3.14159 (SPHERE PERIMETER)
#15= ASIN[#3/[#1]]   (INITIAL ARC ANGLE)
#16= [#15]/360*[#14]   (INITIAL ARC LENGTH)
#17= #14/4 (END ARC LENGTH)
#20= 0  (STEP OVER FOR FIRST PASS)

N1
T1 M6
G0G90G54X0Y0.S[#11] M3
M08
G43 H1 Z[#4]

WHILE[#16 LT #17] DO1
IF[#16NE[#15/360*#14]]THEN#20=#4 (CONDITION FOR NEXT PASSES)
#18=#16+#20 ( CALCULATE CURRENT ARC LENGTH )
#10=[#18/#14]*360 ( CALCULATE CURRENT ANGLE )
#5=[#1* COS[#10]] ( CALCULATE CURRENT RADIUS)
#6=[#1]*SIN[#10]-#3 ( CALCULATE CURRENT CONTACT DEPTH)
#7=[1-[#2]/[#1]]*#5 (CALCULATE CURRENT TOOL CENTER X COORDINATE)
#8=#6-[#2*SIN[#10]]+#2 (CALCULATE CURRENT TOOL CENTER Z COORDINATE)

IF[#20EQ0]THEN GOTO11 (LEAD-IN FOR 1ST PASS )
IF[#20NE0]THEN GOTO12 (NO LEAD-IN FOR NEXT PASSES)

N11 G0 X[#7-#2] Z-[#8-#2] (LEAD-IN FOR 1ST PASS)
N12 G1 X[#7] Z-[#8] F[#12]
G3 I-[#7] J0. F[#13]
#16=[#16+#4]
END1
G0 Z5.
G91 G28 Z0.
M5
M19
M30
9 سال پیش در تاریخ 1394/06/08 منتشر شده است.
11,574 بـار بازدید شده
... بیشتر