首页 理论教育 数控车削45°反锯齿形螺纹,3.8.10°进阶技巧

数控车削45°反锯齿形螺纹,3.8.10°进阶技巧

时间:2023-06-28 理论教育 版权反馈
【摘要】:作者把锯齿朝左和朝右分别称为反锯齿形螺纹和正锯齿形螺纹。图3-14所示为一种有0°、45°反锯齿形螺纹的工件简图。图3-14 一种有0°、45°反锯齿形外螺纹的工件简图粗、精车分别使用刀尖圆弧半径0.8mm和0.4mm的左偏车刀,主轴反转,从左往右车。图3-15 一种0°、45°反锯齿形外螺纹分N刀粗车编程用图编制这类程序时一定要用假想刀尖点的坐标值。调用一次宏程序,就能车完一整层。宏程序N4段中的27.2是各层假想刀尖点的右边界值。

数控车削45°反锯齿形螺纹,3.8.10°进阶技巧

把工件装夹在车床上后锯齿有两种朝向。作者把锯齿朝左和朝右分别称为反锯齿形螺纹和正锯齿形螺纹(只是为区分而这样称呼)。

图3-14所示为一种有0°、45°反锯齿形螺纹的工件简图。螺纹的螺距P=10mm。牙高h1可从标准中查得,为5.75mm。牙底圆弧半径从标准中查得为1.24mm,但通过图上捕捉更精确,值应为1.237mm。本螺纹外径为ϕ72mm。

978-7-111-56182-8-Chapter03-15.jpg

图3-14 一种有0°、45°反锯齿形外螺纹的工件简图

粗、精车分别使用刀尖圆弧半径0.8mm和0.4mm的左偏车刀,主轴反转,从左往右车。取卡爪端面与主轴中心线的交点为工件Z向原点(即Z向编程原点)。

先讨论粗车。粗车分N层(这里N=6),每层分若干刀。某层分刀数的多少与Z向切削量(这里取0.3mm)有直接关系。图3-15所示为此例的粗车编程用图。

先选定两侧的精车留量d,这里取0.3mm。通过槽底圆心点P作水平线,粗车最后一层时刀尖圆心就在这条水平线上。P点到外圆线的距离等于牙高减去牙底半径,此处为4.513mm。实际粗车总深还要加上刀尖圆弧半径,此处为5.313mm。粗车总深除以分层数得每层厚,此处为0.8855mm。

在每层左起第一刀前必须加切一刀(见图3-15),否则整层的第一刀切去的面积会比后面各刀大得多(会打刀尖)。加刀的深度最好取层厚乘以2的平方根值的一半(即乘以0.707),在此处是0.626mm。

978-7-111-56182-8-Chapter03-16.jpg

图3-15 一种0°、45°反锯齿形外螺纹分N刀粗车编程用图

编制这类程序时一定要用假想刀尖点的坐标值(当然X向指令值应乘以2)。A点和H点分别是第0层的Z向起点和终点,B点和I点分别是第1层Z向的起点和终点……最后一层的Z向起点和终点分别是G点和N点。上述各点的数据已标注在图中,各层前加一刀的数据也有标注。

把每层前加的那一刀称为半层,编写的主程序O308及其调用子程序O309如下:

O308;

N01 #104=0.3; (#104代表每层共用的Z向切削量)

N02 G54 T0101 S400 M04;

N03 G00 X100;

N04 Z22.057;

N05 G92 X70.748 Z102 F10;

N06 G65 P309 A70.229 B22.317; (车第1层)

N07 G00 X100 Z22.943

N08 G92 X68.977 Z102;

N09 G65 P309 A68.458B23.203; (车第2层)

N10 G00 X100 Z23.858;

N11 G92 X67.206 Z102;

N12 G65 P309 A66.687 B24.088; (车第3层)

N13 G00 X100 Z24.714;

N14 G92 X65.435 Z102;

N15 G65 P309 A64.916 B24.973; (车第4层)

N16 G00 X100 Z25.599;

N17 G92 X63.664 Z102;

N18 G65 P309 A63.145 B25.858; (车第5层)

N19 G00 X100 Z26.485;

N20 G92 X61.893 Z102;

N21 G65 P309 A61.374 B26.744; (车第6层)

N22 G00 X150 Z200 M05;

N22 M30;

O309;

N1 G00 X100 Z#2; (到达本刀循环的起始点)

N2 G92 X#1 Z70 F10; (车一刀)

N3 #2=#2+#104; (计算下一刀的Z坐标值)

N4 IF[#2LT27.2]GOTO1; (如未到右边界就转上去车下一刀)

N5 G00 X100 Z27.2; (到达末刀循环的起始点)

N6 G92X#1Z70; (车最后一刀)

N7 M99;

O308程序是主程序,其中车每一层又各调用一次O309宏程序。主程序中的#104代表各层共用的Z向切削量,此处取0.3mm。由于它是公共变量,所以其值在宏程序O309中仍有效。用G65调用宏程序段中的程序字A值代表本层的X值(直径指定),它给宏程序中的#1赋值。同段中的程序字B值代表本层左起第一刀起始处假想刀尖点的Z坐标值,也就是第一刀循环起始点的Z坐标值。调用一次宏程序,就能车完一整层。

宏程序N4段中的27.2是各层假想刀尖点的右边界值。此值与粗车右轮廓线的Z坐标值相同。宏程序中的N5段和N6段用于本层的最后一刀,这样编程可使最后一刀正好到达边界。

这种编程方法比较好理解,但通用性不好。

同样是用作本例的粗车,下面的这组程序通用性就相对好一些,而且主程序也减少8句。

O310;

N1 #101=72 ;(#101代表螺纹外径值)

N2 #102=10; (#102代表螺距P值)

N3 #103=21.431; (此处#103代表0层刀位点的起始Z值)

N4 #104=0.3; (#104代表每层共用的Z向切削量)

N5 G54 T0101 S400 M04;

N6 #101=#101-0.626∗2; (此处#101代表本半层的X指令值)

N7 #103=#103+0.626; (此处#103代表本半层起始刀位点的Z值)

N8 G00 X100 Z#103; (到达车半层一刀的循环起点)

N9 G92 X#101 Z70 F#102; (车半层一刀)

N10 #101=#101-0.2595∗2; (此处#101代表本层的X指令值)

N11 #103=#103+0.2595; (此处#103代表本层起始刀位点的Z值)

N12 G65 P311 A#103; (调用宏程序车本整层)

N13 IF[#101 GT 61.374]GOTO6; (如果没到最后一层就转上去车下一个半层和整层)

N14 G00 X150 Z100 M05;

N15 M30;

O311;

N1 G00 X100 Z#1; (到达本刀循环起始点)

N2 G92 X#101 Z70 F#102; (执行本刀循环)

N3 #1=#1+#104; (为下一刀准备起始点的Z值)

N4 IF[#1LT27.2]GOTO1; (如下一刀仍在边界左边就转上去执行)

N5 G00 X100 Z27.2; (否则就到达最后一刀循环起始点)

N6 G92 X#101 Z70F#102; (执行本层的最后一刀循环)

N7 M99;

执行O310程序和O311程序的结果与执行上组程序的结果相同。O310程序和O311程序是为下组通用宏程序铺垫的,或者说它们可以升级为下组通用宏程序。

O312程序是用装35°菱形刀片的左偏刀从左向右分层粗车0°、45°反锯齿形外螺纹宏程序组中的主(宏)程序,而O313程序是该宏程序的子宏程序。

O312;

N01 #1=72; (#1代表螺纹外径值)

N02 #2=10; (#2代表螺距P值)

N03 #3=5.75; (#3代表牙高h1,可查到)

N04 #4=1.237; (#4代表牙底半径,可查到)

N05 #5=0.3; (#5代表所取的精车留量d

N06 #6=6; (#6代表粗车分层数N

N07 #7=0.8; (#7代表刀尖圆弧半径值)

N08 #8=20; (#8代表总起点的Z值,见图3-15)

N09 #9=0.3; (#9代表每层共用的Z向切削量)

N10 #19=400; (#19代表主轴转速S)

N11 #20=0101; (#20代表刀位号和刀补号)

N12 #120=102; (#120代表切削终点的Z值)(www.xing528.com)

N13 #124=150; (#124代表刀具最后退刀点的X指令值)

N14 #126=200; (#126代表刀具最后退刀点的Z值)

N15 #100=#3-#4+#7; (#100代表粗车总厚度)

N16 #101=#100/#6; (#101代表粗车每层的厚度)

N17 #102=#8+#5+#7∗[1+TAN[22.5]]; (此处#102代表0层起始刀位点的Z值)

N18 #103=#8+0.75∗#2-#5; (#103代表各层最终刀位点的Z值)

N19 G54 T#20 S#19 M04;

N20 #104=#2; (把螺距值转赋给公共变量#104)

N21 #105=#9; (把每层共用的Z向切削量转赋给公共变量#105)

N22 #109=#1; (把螺纹外径值保存在公共变量#109中)

N23 #110=#1; (#110代表本层的X指令值,赋0层初始值)

N24 #110=#110-0.707∗#101∗2; (此处#110代表本半层的X指令值)

N25 #102=#102+0.707∗#101; (此处#102代表本半层起始刀位点的Z值)

N26 G00 X[#110+30]; (到达本半层一刀循环起点X位)

N27 Z#102; (到达本半层一刀循环起点Z位)

N28 G92 X#110 Z#120 F#2; (车本半层一刀)

N29 #110=#110-0.293∗#101∗2; (此处#110代表本层的X指令值)

N30 #102=#102+0.293∗#101; (此处#102代表本层起始刀位点的Z值)

N31 #65P313 A#102 B#104; (调用车削本层的宏程序并给其中的#1变量和#2变量赋值)

N32 IF[#110 GT[#0109-2∗#100]]GOTO24; (如条件成立就转上去车下半层和下一层)

N33 G00 X#124 Z#12 6M05; (退到最后退刀点)

N34 M30;

O313;

N1 G00 X[#110+30]Z#1; (到达本刀循环起点)

N2 G92 X#110Z#120F#2; (执行本刀循环)

N3 #1=#11+#105; (计算下一刀循环起点的Z值)

N4 IF[#1LT#103]GOTO1; (如未到右边界就接着车下一刀)

N5 G00 X[#110+30] Z#103; (到达最后一刀的起点)

N6 G92 X#110Z#120 F#2; (执行最后一刀循环)

N7 M30;

在O312中,有如下几点需要注意:

①#5代表的精车留量和#6代表的粗车分层数可根据需要选定。

②#8代表的值是图3-14中Q点的Z坐标值,它与Z向原点取在何处有关。

③其他语句在程序中已有注释。

这组程序中,0°、45°反向锯齿形螺纹的数据和加工所用的数据都用了变量代替,所以通用性很好。读者即使暂时没有看懂这组宏程序也可以直接拿来用。当然,对程序头部14个变量要赋正确的值。使用时不必再用作图来获取数据。

图3-16所示为执行这组按本例赋值的宏程序后的仿真截屏。执行前两组程序的结果与此完全相同。截屏图中右侧牙型线与轴线垂直线的夹角不是0°的原因是,在此仿真软件中装35°菱形刀片的车刀中没有左偏车刀(只能用对称刀代替)。在实际加工时,加工出的右牙型线与轴线垂直线的夹角为0°。

978-7-111-56182-8-Chapter03-17.jpg

图3-16 一种反锯齿形螺纹的粗车仿真截屏

再讨论此例中螺纹的精车,如图3-17所示。

这里使用35°菱形刀片,其刀尖圆弧半径为0.4mm。先车45°斜面,后车0°垂直面。图3-17中的A点和C点分别是车左侧时(假想刀尖点)的起点和终点,E点和V点分别是车右侧时(假想刀尖点)的起点和终点。C点的指令值可从图上获取。

978-7-111-56182-8-Chapter03-18.jpg

图3-17 一种0°、45°反锯齿形外螺纹精车编程用图

a)车45°和0°牙侧面数据

978-7-111-56182-8-Chapter03-19.jpg

图3-17 一种0°、45°反锯齿形外螺纹精车编程用图(续)

b)车牙底圆弧数据(例中分4刀) c)车牙底圆弧示意图(例中分4刀)

现在讨论底部圆弧部分的加工。圆弧轮廓为TK段,半径为1.237mm,加工时相应的假想刀尖点轨迹为CV段,半径为0.837mm。编程时应注意以W点为圆心的这段圆弧。先决定底部分几刀车(由于底部不是配合面所以可车得略粗糙),这里选用分4刀车。将∠VWC5等分(注意等分数应为分刀数加1),4条角平分线与圆弧VC的4个交点就是这4刀的编程位置点。分别标出这4点的坐标值(X向乘以2),供编程时直接使用。下面是用于此例的精车程序。

O314;

N01 #1=72; (#1代表螺纹外径,赋初始值)

N02 #2=20.566; (#2代表图上A点的Z坐标值)

N03 #103=0.15; (#103代表共用吃刀量)

N04 G54 T0202 S400 M04; (用2号刀和2号刀补)

N05 G00 X100 Z#2; (到达本刀循环起点)

N06 G92 X#1 Z102 F10; (执行本刀循环即车一刀)

N07 #1=#1-2∗#103; (计算下一刀的X指令值)

N08 #2=#2+#103; (计算下一刀的Z坐标值)

N09 IF[#1GT 60.991]GOTO05; (如未到下限就转上去车下一刀)

N10 G00 X100 Z26.071; (到达最后一刀的循环起点)

N11 G92 X60.991 Z102; (执行最后一刀循环)

N12 G00 X100 Z26.404; (到达底部左一刀的循环起点)

N13 G92 X60.58Z102; (车底部左起第1刀)

N14 G00 X100Z 26.794; (到达底部左二刀的循环起点)

N15 G92 X60.518 Z102; (车底部左起第二刀)

/N16 T0212; (仍用2号刀但改用12号刀补)

/N17 #1=72; (#1代表螺纹外径,赋初始值)

/N18 G00 X100 Z27.5; (到达本刀循环的起点)

/N19 G92 X#1 Z102; (执行本刀循环)

/N20 #1=#1-2∗#103; (计算下一刀的X指令值)

/N21 IF[#1GT62.175]GOTO18; (如未到下限就转上去车下一刀)

/N22 G00 X100 Z27.5; (到达最后一刀的循环起点)

/N23 G92 X62.175 Z102; (执行最后一刀循环)

/N24 G00 X100 Z27.409; (到达底部右一刀的循环起点)

/N25 G92 X61.415 Z102; (车底部右起第一刀)

/N26 G00 X100 Z27.155; (到达底部右二刀的循环起点)

/N27 G92 X60.82 Z102; (车底部右起第二刀)

N28 G00 X150 Z150M05;

N29 M30;

在此程序中有以下几点需要注意:

①#2代表与工件表面接触第1刀刀位点的起始Z值,它等于Q点的Z值加上刀尖圆弧半径,再加上刀尖圆弧半径乘以45°的半角的正切值(这是计算假想刀尖点位置的公式)。

②N10和N11段用于车斜面的最后一刀(这刀也是圆弧底左起第0刀)。

③N16段用于改刀补号,即左右两侧虽用同一把刀但用不同的刀补号(目的是让车出的槽宽度可调)。

④N22和N23段用于车右侧面(垂直面)的最后一刀(这刀也是圆弧底右起第0刀)。

⑤其他段的含义在程序中都有注释。

⑥N16~N27段前加跳步符的目的是使修车时只修车斜面、不修车直面。因为直面是配合面(即滑动面),修车后的表面质量一般没有一次精车成的表面质量好。遇到类似加工时,可参照上述作图方法和编程方法来编写精车程序。

图3-18所示为先粗车后用O314程序精车后的仿真截屏。图中右侧牙型线与轴线夹角不是0°的原因同粗车仿真,实际加工时车出的右侧牙型线与轴线垂直线的夹角是0°。

这个精车宏程序有一定的通用性,但通用性还不高,因为使用时有些数据还要通过作图来得到。若要提高通用性,可把刀尖圆弧半径、W点和C点的坐标值、CV圆弧的半径值、车底分刀数用变量替代。但这样一来,宏程序就复杂多了。

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

我要反馈