首页 理论教育 圆柱内螺纹铣削专用宏程序:分粗铣和精逆铣两刀实现

圆柱内螺纹铣削专用宏程序:分粗铣和精逆铣两刀实现

时间:2023-06-28 理论教育 版权反馈
【摘要】:本章中的O611程序是适用于发那科系统的用整硬螺纹铣刀分粗铣(顺铣)和精铣(逆铣)两刀铣成右旋圆柱内螺纹的通用宏程序,其中有有关工件、刀具、工艺参数、坐标系等需要赋值的变量14个、过渡变量2个,还有1个变量#100是用于试切和加工时调节铣出螺纹直径大小的。把经这样整理后的程序重新命名为O617。将程序段顺序号重新编排,并将经这样整理后的程序名重新命名为O618。

圆柱内螺纹铣削专用宏程序:分粗铣和精逆铣两刀实现

本章中的O611程序是适用于发那科系统的用整硬螺纹铣刀分粗铣(顺铣)和精铣(逆铣)两刀铣成右旋圆柱内螺纹的通用宏程序,其中有有关工件、刀具、工艺参数、坐标系等需要赋值变量14个、过渡变量2个(#21和#22),还有1个变量#100是用于试切和加工时调节铣出螺纹直径大小的。除此之外,程序中还有许多算式。

还是加工例2中的M16粗牙螺纹。使用其上有4条排屑槽的M16×2铣刀,螺纹深20mm。单向精铣量取0.2mm,粗铣和精铣每排刃口每转进给量分别取0.04mm和0.03mm,所用铣刀刃尖回转半径是6mm,粗铣和精铣主轴转速分别取1200r/min和1600r/min,刀具补偿号用1,在XY平面内螺纹孔中心与工件坐标系原点重合。试切前#100变量的值设为0。

把这些值代入O611程序中后得到O6110程序(O6110程序开头15段的内容在前面已列出)。再用这些具体值把N21~N44段中的变量和大部分算式替换掉,这时N02~N15段就可删去了。把经这样整理后的程序重新命名为O617。适用于本例的专用宏程序O617如下:

O617;

N01 #100=0; (#100代表铣螺纹半径修正量,试切前初始设为0)

N21 G54 G90 G95 G40 G00 X0 Y0; (设定工件坐标系,用每转进给,平移到工件XY平面原点)

N22 S1200 M03; (主轴按粗铣的指定转速正转)

N23 G52 X0 Y0; (建立局部坐标系)

N24 X0 Y0; (铣刀平移到螺纹孔中心)

N25 G43 H1 Z100; (激活刀具长度补偿,铣刀底面下降到准备点)

N26 Z0; (铣刀底面下降到工件上平面)

N27 Z-22; (铣刀底刃齿下降到粗铣入刀段起点所在平面)

N28 G01 X-0.92 F0.8; (铣刀底刃齿平移到粗铣入刀段起点)

N29 #21=1.36+#100/2; (#21代表粗铣入刀段和出刀段的半径)

N30 G03 X[1.8+#100]Z-21 R#21 F0.032; (粗铣螺旋上升入刀)

N31 Z-19I[-1.8-#100]F0.16; (粗铣螺旋上升铣一整圈)

N32 X-0.92Z-18R#21F0.32; (粗铣螺旋上升出刀)

N33 G00 X0 Y0 S1600; (铣刀平移到刀中心与螺纹孔中心重合,主轴按精铣的指定转速转动)

N35 G01 X-0.92F0.8; (铣刀平移到底刃齿精铣入刀段起点)

N36 #22=1.46+#1/2; (#22代表精铣入刀段和出刀段的半径)

N37 G02 X[2+#100]Z-19R#22F0.024; (精铣螺旋下降入刀)

N38 Z-21I[-2-#1]F0.12; (精铣螺旋下降铣一整圈)

N39 X-0.92 Z-22R#22F0.24; (精铣螺铣下降出刀)

N40 G00 X0 Y0; (铣刀平移到刀中心与螺纹孔中心重合)

N41 G49 Z100; (撤销长度补偿,铣刀底面上升到准备点)

N42 G52 X0 Y0; (取消局部坐标系)

N43 X0 Y0 M05; (铣刀平移到工件坐标系原点之上)

N44 M30;

在O617程序中还有3个变量:1个调节铣出螺纹直径大小的变量#100,2个过渡变量#21和#22。#100是不能去掉的,但可以把它改成#1,#21和#22还可以去掉。将程序段顺序号重新编排,并将经这样整理后的程序名重新命名为O618。只含1个变量的适用于本例的专用宏程序O618如下:

O618;

N01 #1=0; (#1代表铣螺纹半径修正量,试切前初始设为0)

N02 G54 G90 G95 G40 G00 X0 Y0; (设定工件坐标系,用每转进给,平移到工件XY平面原点)

N03 S1200 M03; (主轴按粗铣的指定转速正转)

N04 G52 X0 Y0; (建立局部坐标系)

N05 X0 Y0; (铣刀平移到螺纹孔中心)

N06 G43 H1 Z100; (激活刀具长度补偿,铣刀底面下降到准备点)

N07 Z0; (铣刀底面下降到工件上平面)

N08 Z-22; (铣刀底刃齿下降到粗铣入刀段起点所在平面)

N09 G01 X-0.92F0.8; (铣刀底刃齿平移到粗铣入刀段起点)

N10 G03 X[1.8+#1]Z-21R[1.36+#1/2]F0.032; (粗铣螺旋上升入刀)

N11 Z-19I[-1.8-#1]F0.16; (粗铣螺旋上升铣一整圈)

N12 X-0.92 Z-18 R[1.36+#1/2]F0.32; (粗铣螺旋上升出刀)

N13 G00 X0 Y0 S1600; (铣刀平移到刀中心与螺纹孔中心重合,主轴按精铣的指定转速转动)

N14 G01 X-0.92 F0.8; (铣刀平移到底刃齿精铣入刀段起点)

N15 G02 X[2+#1]Z-19R[1.46+#1/2]F0.024; (精铣螺旋下降入刀)

N16 Z-21I[-2-#1]F0.12; (精铣螺旋下降铣一整圈)

N17 X-0.92 Z-22 R[1.46+#1/2]F0.24; (精铣螺铣下降出刀)

N28 G00 X0 Y0; (铣刀平移到刀中心与螺纹孔中心重合)

N19 G49 Z100; (撤销长度补偿,铣刀底面上升到准备点)

N20 G52 X0Y0; (取消局部坐标系)

N21 X0 Y0 M05; (铣刀平移到工件坐标系原点之上)

N22 M30;

O618程序、O617程序与O6110程序的加工效果是完全一样的。当然,它们的仿真轨迹与图6-23中O6110的仿真轨迹也是一样的。

此外,也可以把阅读和理解O618程序和O617程序作为阅读和理解O611程序的第一步。(www.xing528.com)

从理论上说,O618程序中的#1也可以去掉。将去掉#1后的程序重新命名为O619,内容如下:

O619;

N02 G54 G90 G95 G40 G00 X0 Y0; (设定工件坐标系,用每转进给,平移到工件XY平面原点)

N03 S1200 M03; (主轴按粗铣的指定转速正转)

N04 G52 X0Y0; (建立局部坐标系)

N05 X0 Y0; (铣刀平移到螺纹孔中心)

N06 G43 H1 Z100; (激活刀具长度补偿,铣刀底面下降到准备点)

N07 Z0; (铣刀底面下降到工件上平面)

N08 Z-22; (铣刀底刃齿下降到粗铣入刀段起点所在平面)

N09 G01 X-0.92F0.8; (铣刀底刃齿平移到粗铣入刀段起点)

N10 G03 X1.8Z-21R1.36F0.032; (粗铣螺旋上升入刀)

N11 Z-19 I-1.8 F0.16; (粗铣螺旋上升铣一整圈)

N12 X-0.92 Z-18 R1.36 F0.32; (粗铣螺旋上升出刀)

N13 G00 X0 Y0 S1600; (铣刀平移到刀中心与螺纹孔中心重合,主轴按精铣的指定转速转动)

N14 G01 X-0.92F0.8; (铣刀平移到底刃齿精铣入刀段起点)

N15 G02 X2 Z-19 R1.46 F0.024; (精铣螺旋下降入刀)

N16 Z-2 1I-2 F0.12; (精铣螺旋下降铣一整圈)

N17 X-0.92 Z-22 R1.46 F0.24; (精铣螺铣下降出刀)

N28 G00 X0 Y0; (铣刀平移到刀中心与螺纹孔中心重合)

N19 G49 Z100; (撤销长度补偿,铣刀底面上升到准备点)

N20 G52 X0 Y0; (取消局部坐标系)

N21 X0 Y0 M05; (铣刀平移到工件坐标系原点之上)

N22 M30;

O619程序编制方便,但使用麻烦。程序中8个有下划线的数据是试切前确定的初始值。试切出第一件并检测后,如果要把下一件的中径扩大0.08mm(即半径Δr取+0.04mm),那么N10中的1.8和1.36应分别改为1.84和1.38,N11中的-1.8应改为-1.84,N12段中的1.36应改为1.38,N15段中的2和1.46应分别改为2.04和1.48,N16段中的-2应改为-2.04,N17段中的1.46就改为1.48。每一次都要把这8个数据改一遍,而且有2个是+Δr、2个是-Δr,还有4个是+Δr/2,非常麻烦,所以不推荐使用。这里介绍是为说明此例用不含变量的NC程序也能加工。

在用O618程序做试切的过程中,每修正一次加工出的螺纹中径,就要改一次程序(N01段中的#1赋值)。对于发那科系统,还有一种可以不修改程序中的数据来修正螺纹中径的方法。这种方法的第一步是把O618程序修改为如下的O620程序。

O620;

N01 #1=-#12001; (#12001代表运行时1号刀补栏内刀具半径磨耗设定值)

N02 G54 G90 G95 G40 G00 X0 Y0; (设定工件坐标系,用每转进给,平移到工件XY平面原点)

N03 S1200 M03; (主轴按粗铣的指定转速正转)

N04 G52 X0 Y0; (建立局部坐标系)

N05 X0 Y0; (铣刀平移到螺纹孔中心)

N06 G43 H1 Z100; (激活刀具长度补偿,铣刀底面下降到准备点)

N07 Z0; (铣刀底面下降到工件上平面)

N08 Z-22; (铣刀底刃齿下降到粗铣入刀段起点所在平面)

N09 G01 X-0.92 F0.8; (铣刀底刃齿平移到粗铣入刀段起点)

N10 G03 X[-1.8+#1]Z-21R[1.36+#1/2]F0.032; (粗铣螺旋上升入刀)

N11 Z-19I[-1.8-#1]F0.16; (粗铣螺旋上升铣一整圈)

N12 X-0.92 Z-18R[1.36+#1/2]F0.32; (粗铣螺旋上升出刀)

N13 G00 X0 Y0 S1600; (铣刀平移到刀中心与螺纹孔中心重合,主轴按精铣的指定转速转动)

N14 G01 X-0.92F0.8; (铣刀平移到底刃齿精铣入刀段起点)

N15 G02 X[2+#1]Z-19R[1.46+#1/2]F0.024; (精铣螺旋下降入刀)

N16 Z-21I[-2-#1]F0.12; (精铣螺旋下降铣一整圈)

N17 X-0.92Z-22R[1.46+#1/2]F0.24; (精铣螺铣下降出刀)

N28 G00 X0 Y0; (铣刀平移到刀中心与螺纹孔中心重合)

N19 G49 Z100; (撤销长度补偿,铣刀底面上升到准备点)

N20 G52 X0 Y0; (取消局部坐标系)

N21 X0 Y0 M05; (铣刀平移到工件坐标系原点之上)

N22 M30;

程序中的#12001是个系统变量,它代表(执行时提取)1号刀补栏内刀具半径磨损(D)格内的设定值,如图6-29所示。

978-7-111-56182-8-Chapter06-31.jpg

图6-29 使用O620程序时可用改变磨损(D)设定值来修正铣出的螺纹中径

使用O620程序时,可以用改变此格内的设定值来修正加工出的螺纹中径。试切前把此格内的值置零。试切出第一件并检测后如果把下一件的中(直)径扩大0.08mm,那么只要在试切第二件前把此格内改设-0.04值即可。注意这里要扩大中径用负值,要减小中径用正值,这样反着来是有意设计的(程序中#12001前加了个负号),目的是与使用G41/G42时的习惯一致。注意此程序实际上并没有用G41或G42指令,可以说只是借用了一下#12001变量。

#12001的后三位代表所用的刀补号。假如用5号刀补栏内刀具半径磨损(D)格内的值的设定来修正加工出的螺纹中径,那么程序中的#12001应改成#12005,依此类推。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈