下面为椭圆倒圆角编程,椭圆中心为XY坐标0点,上顶面为坐标轴Z0点;如果椭圆中心为XY坐标0点,可通过G52建立局部坐标系;Z向刀心编程,XY轮廓编程,刀半径补偿值#7通过G10指令动态赋给G42X30D2;语句中的D2,不断改变#6的值,则#7的值随之而变,从而改变刀心偏离编程轨迹的不同距离,以实现倒圆角。
O1011
#4=4;(指形刀球头半径r)
5=5;(需倒圆角半径R)
G54G90G17G40G21G80;
G0X0Y0;
M3S2000;
G1Z20F2000M8;
X35Y-5;
G1Z-5F200;
#6=0;(刀心与圆角中心连线与+X夹角,初值为0)
WHILE[#6LE90]DO1;
#3=5-9*SIN[#6];(刀心的Z坐标值)
G1Z-#3F200;
#7=9*COS[#6]-5.;(动态刀半径值)
G10L12P2R[#7];(预置刀半径值,其他系统格式会有所不同)
G1X35Y-5;
G42X30Y-3D2;
Y0;(建立刀补后再走一段直线与椭圆相切)
#9=0;
WHILE[#9LE360]DO2;(该循环为椭圆轨迹,若用IF…GOTO语句走刀则不够顺畅)
#11=30*COS[#9];(假设椭圆长半轴为30mm)
#12=20*SIN[#9];(假设椭圆短半轴为20mm)
G1X#11Y#12;
#9=#9+5;
END2;
G1Y2F2000;
G40X35;
Y-5;
#6=#6+5;
END1;
G0Z20M9;
X0Y0M30;