7°、45°的锯齿形螺纹是一种英制螺纹。图3-23所示为一种深井用的被称为“液缸”件上的这种7°、45°锯齿形内螺纹。
图3-23 一种实际零件上的7°、45°锯齿形内螺纹及其粗车用刀
此螺纹的螺距大,达1in(25.4mm),使用成形车刀车削时不但磨刀的要求高,而且加工时振动大。这里粗、精车都采用装35°菱形刀片的标准外圆偏刀来加工。粗车用刀尖圆弧半径为1.2mm的刀片,精车用刀尖圆弧半径为0.8mm的刀片。精车采用从里往外切削方式,所以用左偏外圆车刀,(刀片)朝天装;而精车采用从外往里切削方式,所以用右偏外圆车刀,趴着装。粗车时主轴反转,精车时主轴正转。粗、精车各用一种自制的刀夹。图3-24所示为这两种刀夹的头部形状。杆部的形状根据所用机床的刀架来定。此刀夹对应的外圆刀杆尺寸是25mm×25mm。如果工件内径只有一百多毫米,可改用20mm×20mm刀方的外圆车刀,此时应减小相应的刀夹尺寸。
先介绍粗车。粗车分11层、每层又分若干刀。每层前还需要加1刀(作者把它称为半层)。
图3-25a所示为螺旋槽剖面放大图。左、右精车留量都取0.6mm。图中的粗实线是左、右粗车轮廓线。左、右粗虚线分别是每层用于编程的假想刀尖点的左、右极限线,各层前加出那一刀的假想刀尖点都落在左粗实线上。
图3-24 两种自制刀夹的头部形状
a)刀片向上装时刀夹的头部形状(此例中用于粗车) b)趴着装时刀夹的头部形状(此例中用于精车)
图3-25b中右部的标注尺寸是各层的X指令值,左部的标注尺寸是各层前加出那一刀的X指令值。这里半层距取层距的2/2倍,目的是使加出这刀的去除面积与各层第1刀的去除面积相等。
图3-26中的轮廓是图3-23中Ⅱ处的放大。图中下部的标注尺寸是各层第1刀假想刀尖点到工件端面间的距离,右部的标注尺寸是各层最后一刀假想刀尖点到工件端面间的距离,顶部的标注尺寸是各层前加出那刀假想刀尖点到工件端面间的距离。
这些编程要用的数据是在精车余量、刀尖圆弧半径和精车分层数确定后用作图法得到的。这种作图的方法具有通用性。
图3-25 7°、45°锯齿形螺纹粗车编程用图(一)
a)粗车左、右轮廓线和左、右编程极限线 b)粗车各层和各半层的X指令值
O318程序和O319程序是用前面得到的数据编制的一组粗加工程序,其中前者是主程序,后者是主程序中调用的子程序(宏程序)。
O318;
N01 #104=0.3; (#104代表每层共用的Z向切削量)
N02 G54 T0101 S150 M04;
N03 G00 X120 Z50; (到达位于工件端面右侧的准备点)
图3-26 7°、45°锯齿形螺纹粗车编程用图(二)
N04 Z-96.269; (到达第1层前加1刀的循环起点)
N05 G92 X209.708 Z30F25.4;(车第1层前加1刀)
N06 G65 P319 A210.301 B-95.973 C-80.500; (调用O319宏程序车第1层)
N07 G00 X120 Z-95.259;(到达第2层前加1刀的循环起点)
N08 G92 X211.729 Z30;(车第2层前加1刀)
N09 G65 P319 A212.322 B-94.962 C-80.624; (调用O319宏程序车第2层)
N10 G00 X120 Z-94.248; (到达第3层前加1刀的循环起点)
N11 G92 X213.750 Z30; (车第3层前加1刀)
N12 G65 P319 A214.343 B-93.952 C-80.748; (调用O319宏程序车第3层)
N13 G00 X120 Z-93.238; (到达第4层前加1刀的循环起点)
N14 G92 X215.771Z30; (车第4层前加1刀)
N15 G65 P319 A216.364 B-92.941 C-80.872; (调用O319宏程序车第4层)
N16 G00 X120 Z-92.227; (到达第5层前加1刀的循环起点)
N17 G92 X217.792 Z30; (车第5层前加1刀)
N18 G65 P319 A218.385 B-91.931 C-80.997; (调用O319宏程序车第5层)
N19 G00 X120 Z-91.217; (到达第6层前加1刀的循环起点)
N20 G92 X219.813 Z30; (车第6层前加1刀)
N21 G65 P319 A220.405 B-90.920 C-81.121; (调用O319宏程序车第6层)
N22 G00 X120 Z-90.206; (到达第7层前加1刀的循环起点)
N23 G92 X221.833 Z30; (车第7层前加1刀)
N24 G65 P319 A222.426 B-89.910 C-81.245; (调用O319宏程序车第7层)
N25 G00 X120 Z-89.196; (到达第8层前加1刀的循环起点)
N26 G92 X223.854 Z30; (车第8层前加1刀)
N27 G65 P319 A224.447 B-88.899 C-81.369; (调用O319宏程序车第8层)
N28 G00 X120 Z-88.185; (到达第9层前加1刀的循环起点)
N29 G92 X225.875 Z30; (车第9层前加1刀)
N30 G65 P319 A226.468 B-87.889 C-81.493; (调用O319宏程序车第9层)
N31 G00 X120 Z-87.175; (到达第10层前加1刀的循环起点)
N32 G92 X227.896Z30; (车第10层前加1刀)
N33 G65 P319 A228.489 B-86.878 C-81.617; (调用O319宏程序车第10层)
N34 G00 X120 Z-86.164; (到达第11层前加1刀的循环起点)
N35 G92 X229.917 Z30; (车第11层前加1刀)
N36 G65 P319 A230.510 B-85.868 C-81.741; (调用O319宏程序车第11层)
N37 G00 X300 Z200 M05;
N38 M30;
O319;
N1 G00 X120 Z#2; (到达本刀循环的起始点)
N2 G92 X#1 Z30 F25.4; (车一刀)
N3 #2=#2+#104; (计算下一刀的Z坐标值)
N4 IF[#2LT#3]GOTO1; (如未到右极限就转上去车下一刀)
N5 G00 X120 Z#3; (到达最后一刀循环的起始点)
N6 G92 X#1 Z30; (车最后一刀)
N7 M99;
在这组程序中,需要注意以下几点:
①N01段中的#104代表各层相邻两刀间的Z向距离(见图3-26),给它赋值时可根据需要进行调整。
②含G65指令的程序段是调用宏程序并给其中的局部变量赋初始值。其中的P319是调用O319宏程序,A、B、C程序字中的数据是分别给该宏程序中的#1、#2和#3变量赋初始值。
③在N06段中,A字中的数据代表车第1层各刀的X指令值,B字中的数据代表第1层第1刀起点的(假想刀夹点)坐标值,C字中的数据代表第1层最后一刀起点的(假想刀夹点)Z坐标值。下面10个含G65的程序段中的A、B、C字分别代表本层的X坐标值、第1刀和最后一刀的Z坐标值。
④宏程序中的N1~N4段用于车本层除最后一刀外的各刀,N5和N6段用于车本层的最后一刀。此宏程序每车一层被调用一次。各层调出后的#1、#2和#3变量由主程序中相应的调用程序段赋值。
⑤这组粗加工程序的编制方法是通用的,但程序本身不通用,大量的数据必须通过作图来获取。
下面介绍粗车左45°、右α(α可变)大锯齿形内螺纹的通用宏程序O320和O321。这种螺纹的螺距一般也比较大,可以用装35°菱形刀片的偏刀分层分刀来进行粗车。下面先列出这组程序。
O320;
N01 #101=25.4; (#101代表螺距P)
N02 #1=7; (#1代表锯齿形螺纹小夹角α)
N03 #2=13.315; (#2代表牙总高,即槽总深)
N04 #3=3.4; (#3代表槽底圆弧半径)
N05 #4=19.366; (#4代表螺纹小径处的槽宽)
N06 #102=208.28; (#102代表螺纹小径)
N07 #5=76.2; (#5代表螺纹长度)
N08 #7=23.08; (#7代表升速段δ1的初始值)
N09 #8=0.6; (#8代表精车留量)
N10 #9=11; (#9代表粗车分层数)
N11 #10=1.2; (#10代表刀尖圆弧半径)
N12 #104=0.3; (#104代表各层共用吃刀量)
N13 #19=150; (#19代表主轴转速S)
N14 #20=0101; (#20代表用刀号和刀补号)
N15 #24=300; (#24代表最后退刀位的X坐标值)
N16 #26=200; (#26代表最后退刀位的Z坐标值)
N17 #11=[#2-#3+#10]/#9; (粗车层厚)
N18 #12=0.707∗#11; (粗车半层厚)
N19 #13=#10∗[1+TAN[22.5]]; (左侧假想刀尖点偏移值)
N20 #14=#10∗[1-TAN[45-#1/2]]; (右侧假想刀尖点偏移值)
N21 #105=-#5-#7+#8+#13; (0层第1刀假想刀尖点Z坐标值)
N22 #106=-#5-#7+#4-#8+#4; (0层最末刀假想刀尖点Z坐标值)
N23 #107=#102+2∗[#2-#3+#10]; (末层的X指令值)
N24 G54T#20S#19M04;
N25 G00X[#102-90]Z50; (到达工件右侧准备点)
N26 #105=#105+#12; (下半层加刀假想刀尖点Z坐标值)
N27 #102=#102+2∗#12; (下半层加刀X坐标值)
N28 G00 X[#102-90]Z#105; (到达下半层循环起点)
N29 G92 X#102 Z#101F#101; (下半层车一刀)
N30 #105=#105+0.293∗#11; (下整层第1刀假想刀尖点Z坐标值)(www.xing528.com)
N31 #102=#102+0.586∗#11; (下整层X坐标值)
N32 #106=#106-#11∗TAN[#1]; (下整层末刀假想刀尖点Z坐标值)
N33 G65 P321 A#105 B#102 C#106; (调用车整层宏程序并赋值)
N34 IF[#102LT#107]GOTO26; (如未到末层就转上去继续车)
N35 G00 Z#101; (退刀到工件外)
N36 X#24 Z#26M05; (退到最后退刀位)
N37 M30;
O321;
N1 G00 X[#2-90]Z#1; (到达本刀循环的起始点)
N2 G92 X#2 Z#101 F#101: (车一刀)
N3 #1=#1+#104; (计算下一刀的Z坐标值)
N4 IF[#1LT#3]GOTO1; (如未到右极限就转上去车下一刀)
N5 G00 X[#2-90]Z#3; (到达最后一刀循环的起始点)
N6 G92 X#2 Z#101 F#101; (车最后一刀)
N7 M99;
在这组程序中,需要注意以下几点:
①O320是主宏程序,O321是主程序中N33段调用的子宏程序。
②在主宏程序中,N01~N16段是用16个变量代表16个数据并赋具体值。
③前7个变量值可直接从零件图上得到。
④N08段中的#7代表的升速段值可通过作图得到,然后在不产生干涉的前提下尽可能取得长一些。
⑤N09~N14段中的变量值由工艺确定,N15段和N16段中的变量代表最后退刀位的位置。
⑥N26段和N27段分别用于计算各层前加出的那刀循环起点的Z坐标值和X坐标值。
⑦N30段和N31段分别用于计算各层第1刀循环起点的Z坐标值和X坐标值(各层其他刀循环起点的X指令值同第1刀)。
⑧N33段是调用车整层的O321宏程序,并分别给该宏程序中的#1、#2和#3变量赋初始值。
⑨子宏程序中的N1~N4段用于车本层除最后一刀外的各刀,N5段和N6段用于车本层的最后一刀。
⑩使用这组宏程序时,只要将主宏程序中前16个变量赋值即可。此处给16个变量赋的值只适用于本实例。不必像使用上组宏程序那样必须事先用作图法得到那么多数据。使用时也不必读懂主宏程序中N16段之后的内容和子宏程序的内容。
下面讨论这种左45°、右α°(α可变)大锯齿形内螺纹的精车。
图3-27所示为α°、45°锯齿形螺纹的精车编程用图。零件图上要求的螺距极限偏差是±0.08mm,如果还像粗车那样从左往右加工,那么初始升速段的长度小于螺距,左端螺纹的螺距误差会超出公差范围。所以精车采用从右往左车,主轴反转,车刀趴着装。使用刀尖圆弧半径为0.8mm的刀片。先加工左侧面和槽底圆弧的左半部分,再加工右侧面和槽底圆弧的右半部分。
图3-27 α°、45°锯齿形螺纹的精车编程用图
图中A和B点分别是左斜面的起点和终点,而且B点也是槽底圆弧的左起点。A′点是车左斜面第1刀(刚接触实体)时车削循环的起点,B′点是车槽底圆弧左起第1刀时车削循环的起点。C点和D点分别是右斜面的起点和终点,而且D点也是槽底圆弧的右起点。C′点是车右斜面第1刀时车削循环的起点,D′点是车槽底圆弧右起第1刀时车削循环的起始点。图中P点是槽底圆弧的圆心,Q点是车槽底圆弧假想刀尖点轨迹(圆弧)的圆心。假想刀尖点轨迹圆弧的半径等于槽底圆弧半径减去刀尖圆弧半径。
锯齿形螺纹的小角度面(这里是右侧面)是工作面,45°面是非工作面。为保证工作面的表面质量,应将它一次车成。而非工作面允许修车(为保螺距精度一般避免不了修车)。下面是精车左45°、右α(α可变)大锯齿形内螺纹的通用宏程序O322。
O322;
N01 #1=208.28; (#1代表螺纹小径,赋初始值)
N02 #2=76.2; (#2代表螺纹长度)
N03 #3=25.4; (#3代表螺距P值)
N04 #4=7; (#4代表锯齿形螺纹小夹角α)
N05 #5=13.315; (#5代表牙总高即槽总深)
N06 #6=3.4; (#6代表槽底圆弧半径)
N07 #7=19.366; (#7代表槽宽)
N08 #8=14.723; (#8代表槽底圆心到槽边端距离)
N09 #9=0.8; (#9代表刀尖圆弧半径)
N10 #10=53.12; (#10代表升速段δ1的初始值)
N11 #11=20; (#11代表降速段δ2的值)
N12 #12=11; (#12代表车槽底时的分刀数)
N13 #13=0.15; (#13代表右侧吃刀量)
N14 #19=200; (#19代表主轴转速S)
N16 #20=0202; (#20代表车左侧用刀号和刀补号)
N17 #24=300; (#24代表最后退刀位的X坐标值)
N18 #26=200; (#26代表最后退刀位的Z坐标值)
N19 #14=#10+#8; (#14代表槽底圆心处的δ1值,即Z值)
N20 #15=#1+2∗[#5-#6]; (#15代表槽底圆心处的X坐标值)
N21 #16=#14+#9; (#16代表图中Q点的δ1值,即Z值)
N22 #17=#15+2∗#9; (#17代表图中Q点的X坐标值)
N23 #18=#6-#9; (#18代表车槽底假想刀尖点所在的圆弧半径)
N24 #21=#10+#9∗[1+TAN[22.5]]; (#21代表左侧首刀假想刀尖点A′的δ1值,即Z值)
N25 #22=#17+2∗#18∗SIN[135]; (#22代表左侧末刀假想刀尖点B′的X坐标值)
N26 #23=#16+#18∗COS[135]; (#23代表左侧末刀假想刀尖点B′的δ1值,即Z值)
N27 #25=#10+#7+#9∗[1-TAN[45-#4/2]]; (#25代表右侧首刀假想刀尖点C′的δ1值,即Z值)
N28 #27=#17+2∗#18∗SIN[#4]; (#27代表右侧末刀假想刀尖点D′的X指令值)
N29 #28=#16+#18∗COS[#4]; (#28代表右侧未刀假想刀尖点D′的δ1值,即Z值)
N30 #29=[135-#4]/[#12-1]; (#29代表车槽底时相邻两刀间的夹角)
N31 #30=#1; (把#1值转存入#30中)
N32 G54 T#20S#19M03; (用2号刀和2号刀补)
N33 G00 X[#1-90]Z#21; (先车左侧,到达本刀循环起点)
N34 G92 X#1Z-[#2+#11]F#3; (执行本刀循环即车一刀)
N35 #21=#21+1.2∗#13; (计算下一刀的Z坐标值)
N36 #1=#1+2∗1.2∗#13; (计算下一刀的X坐标值)
N37 IF[#1LT#22]GOTO33; (如未到左侧末刀就转上去车下一刀)
N38 #31=135; (#31代表动点的角度,此处赋左初始值)
N39 G00X[#1-80]Z[#16+#18∗COS[#31]]; (到达左侧最后一刀的循环起点)
N40 G92X[#17+2∗#18∗SIN[#31]]Z-[#2+#11]; (执行左侧最后一刀,即底圆首刀循环)
N41 #31=#31-#29; (计算下一刀的角度值)
N42 IF[#31GE90]GOTO39; (如未到第1象限就转上去车下一刀)
/N43 T[#20+10]; (仍用2号刀但改用12号刀补)
/N44 G00X[#30-90]Z#25; (再车右侧,到达本刀循环起点)
/N45 G92X#30Z-[#2+#11]F#3; (执行本刀循环即车一刀)
/N46 #25=#25-#13∗TAN[#4]; (计算下一刀的Z坐标值)
/N47 #30=#30+2∗#13; (计算下一刀的X坐标值)
/N48 IF[#30LT#27]GOTO44; (如未到右侧末刀就转上去车下一刀)
/N49 #31=#4; (#31代表动点的角度,此处赋右初始值)
/N50 G00 X[#30-80]Z[#16+#18∗COS[#31]]; (到达右侧最后一刀的循环起点)
/N51 G92 X[#17+2∗#18∗SIN[#31]]Z-[#2+#11];(执行左侧最后一刀,即底圆首刀循环)
/N52 #31=#31+#29;(计算下一刀的角度值)
/N53 IF[#31LE90]GOTO50;(如未到第2象限就转上去车下一刀)
N54 G00 X#24 Z#26 M05; (退到最后退刀位)
N55 M30;
在这个宏程序中,需要注意以下几点:
①N01~N18段是用18个变量代表18个数据并赋具体值,其中前8个变量的值可直接从零件图上得到。
②N09段中的#9值由所用的刀具决定。
③N10段中#10代表升速段的值,此处不能随意取(否则会与粗车对不上螺纹)。此值与螺纹长度和粗车中的δ1值(此例中是23.08)相加后得到的值应是螺距的整数倍(详见图3-27)。此处取53.12(也可取78.52)。
④N11段中#11代表降速段,其取值以不发生干涉为原则,此处取20mm。
⑤N13段中#13代表车右侧(工作面)时,相邻两刀间的横向距离。
⑥N32~N37段用于车左斜面。此时相邻两刀间的横向距离和纵向距离都取车工作面时相应横向距离的1.2倍(在N35段和N36段中体现出来)。
⑦N38~N42段是车圆弧槽底的左半部分。
⑧N43段是更改刀补号,目的是通过改变刀具Z向补偿值来调节第一轮切削出的槽宽。
⑨N44~N48段是车右斜面。
⑩N49段是恢复动点角度的初始值。
(11)N50~N53段是车圆弧槽底的右半部分。
(12)N54段是使刀具退到最后退刀位。
使用这个宏程序时,只要将前18个变量赋值即可。此处给18个变量的赋值只适用于本实例,用户使用时可以不必读懂N18段以后的程序。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。