高速钢粗皮铣刀磨齿专机程序(未验证,较简易,仅提供工艺步骤,及原理供各位大侠参考)8 A8 O k9 _* `( z3 Y
说明:这套磨齿程序为高速钢粗皮铣刀加工使用,原机器是20年前的老机器,: U3 o+ k( c# K# \# r9 n, I) e
使用法兰克系统,具备雷尼绍探头,; B" y6 n7 s( ]( g
可测量刀具起始长度位置X向,刀齿位置A轴角度方向(已开槽的高速钢铣刀半成品毛坯料)
+ ~# v Q& q" |; S/ }$ ~因此机床系统老旧,经常故障,且维修备件难以寻找,工厂仅此一台机器可用,所以决定业余时间摸清楚加工工艺,再设计一台机器替换它,
# A3 g7 c. U5 _& E% u使用新代或者西门子4轴数控系统(X,Y,Z,A),增加左旋刀具的磨齿功能,所以就编写了如下程序。4 q. H3 l4 a* v! L6 Z. @0 v
L011(测量子程序,左右旋刀具) L012(一齿磨削子程序,左右旋刀具) MAIN01(磨削主程序,左右旋刀具) L013(修整砂轮程序)(R圆弧砂轮修整,两轴插补,较简单,未编写,注意必须机内修整) 后来因老板缩减开支,旧机器用用修修可勉强支撑,就不愿投资此项目,没有机会验证程序的使用效果。 工程图截屏举例以4刃铣刀为例,齿距4mm(实际很少有这种,纯粹为方便画图)
( _; E2 y6 w: a: G" ]& w本来想G代码发文档贴上了,为避免各位下载要积分,直接贴在帖子里了。各位复制保存就好。L011(测量子程序,左右旋刀具) N0010 MSG(“刀齿长度及A轴角度测量”) N0020 G90 G94 G00 Y(R110)Z(R111);测头中心对准棒料中心 N0030 MWAS=1 G91 G01 X-(R118) F500;测头在X方向搜索距离内探测棒料 N0040 IF $AC_MEA[0]==0 GOTOF MEASERR;测量失败,减少探测搜索距离 N0050 R150=$AA_MW[X];记录碰撞当前X绝对坐标值,赋值到R150中 N0051 IF R155=1 GOTOF N0170;测量X,对准X和Y坐标位置 N0060 G91 G01 X2 F500;测头脱离棒料 N0070 Z(R119/2-0.5);测头抬高沟槽内部0.5mm处,准备测齿位置 N0080 X-(2+R154);测头进入沟槽内部1mm处,准备测齿位置 N0081 IF R159=0 GOTOB N0090;跳转右旋测齿 N0082 IF R159=1 GOTOB N0142;跳转左旋测齿 N0090 MWAS=1 G91 G01 A-(360/R103)F500;测头在A方向搜索距离内找齿 N0100 IF $AC_MEA[0]==0 GOTOF MEASERR;测量失败,检查测头是否进入沟槽 N0110 R151=$AA_MW[A];记录碰撞当前A绝对坐标值,赋值到R151中 N0120 G91 GO1 A5 F500;测头脱离沟槽A向5°(右旋刀具) N0130 Z5;测头脱离沟槽Z向抬高5mm N0140 A(R153-5);刀齿回测头接触角度,偏移R153到磨削所需角度,A对准 N0141 GOTOB N0150;跳过左旋测齿程序 N0142 MWAS=1 G91 G01 A(360/R103)F500;测头在A方向搜索距离内找齿 N0143 R151=$AA_MW[A];记录碰撞当前A绝对坐标值,赋值到R151中 N0144 G91 GO1 A-5 F500;测头脱离沟槽A向-5°(左旋刀具) N0145 Z5;测头脱离沟槽Z向抬高5mm N0145 A(R153+5);刀齿回测头接触角度,偏移R153到磨削所需角度,A对准 N0150 G90 G00 Y(R112);刀具中心线运行到砂轮正下方,Y对准 N0160 G91 G01 X(2+R154+R152);棒料前端运行到砂轮下方,X对准 N0170 G90 G00 X(R150+R152)Y(R112);棒料运行到砂轮下方,X,Y对准 N0171 G90 G00 Z(R108);Z轴起始位置,方便上下料,测量及对刀结束 N0180 M02测量程序结束 N0190 MEASERR:MSG("测量失败!探针未在有效距离内触发!") 6 E/ t+ T) [& J: F) k& R
L012(一齿磨削子程序,左右旋刀具) N001 MSG(“单个磨齿程序”) N002 R156=(360×R104×TanR099)/(3.14×R119×R103);A螺旋角补偿角 N010 G91 G01 Z(-R100)F300;Z轴运行到磨削起始位置 N011 IF R159=0 GOTOB N0020;跳转右旋磨齿 N012 IF R159=1 GOTOB N0052;跳转左旋磨齿 N020 Z(-R101) A-(R102) F200;右旋刀具磨齿 N030 Z(R101+R100+R158)F500;磨完1齿,抬起Z轴,R158补偿下一齿高低 N040 A-(360/R103-R102+R156)F500;A轴负向分度运行到下一齿起始位置 N050 X-(R104/R103)F300;X轴负向进刀距离,错开磨削下一个齿 N051 GOTOB N060;跳过左旋磨齿程序,直接结束 N052 Z(-R101) A(R102) F200;左旋刀具磨齿 N053 Z(R101+R100+R158)F500;磨完1齿,抬起Z轴,R158补偿下一齿高低 N054 A(360/R103-R102+R156)F500;A轴正向分度运行到下一齿起始位置 N055 X-(R104/R103)F300;X轴负向进刀距离,错开磨削下一个齿 N060 M02;一齿磨削完成,下一齿磨削位置对准
% \# T" \7 Y1 h8 v! T0 P! eMAIN01(磨削主程序,左右旋刀具) N010 G90 G94 G01 X(R106)Y(R107)Z(R108)F600;快进到换料位置 N011 IF R114=0 GOTOF N014;不需要重新测量,直接磨削 N012 IF R114=1 GOTOF N013;需要重新测量,才能磨削,重新赋值 N013 L011;调用测量程序,找到刀齿X,A位置,摆正对齐 N014 G90 G00 X(R150+R152)Y(R112);根据上次赋值棒料X,Y对准 N015 A(R151+R153);根据上次探测赋值,摆正A轴对准 N021 M7 M13;磨头启动,冷却启动 N022 R109=1;磨齿开始计数 N030 L012;调用一齿磨削子程序 N040 R109=R109+1;磨齿计数加一, N041 MSG(“已磨削齿数R109”) N050 IF R109<R105/(R104/R103) GOTOB N030;齿数不到,继续 N051 M15 M9;磨头停止,冷却停止 N060 G90 G01 G00 Z(R108)F600;磨削完成,先退Z轴 N070 Y(R107)F600;磨削完成,退Y轴 N080 X(R106)F600;磨削完成,退X轴 N090 M2;程序结束 L012(测量子程序,左旋刀具) N0010 MSG(“刀齿长度及A轴角度测量”) N0020 G90 G94 G00 Y(R110)Z(R111);测头中心对准棒料中心, N0030 MWAS=1 G91 G01 X-(R118) F500;测头在X方向搜索距离内探测棒料 N0040 IF $AC_MEA[0]==0 GOTOF MEASERR;测量失败,减少探测搜索距离 N0050 R150=$AA_MW[X];记录碰撞当前X绝对坐标值,赋值到R150中 N0051 IF R155=1 GOTOF N0170;测量X,对准X和Y坐标位置 N0060 G91 G01 X2 F500;测头脱离棒料 N0070 Z(R119/2-0.5);测头抬高沟槽内部0.5mm处,准备测齿位置 N0080 X-(2+R154);测头进入沟槽内部1mm处,准备测齿位置 N0090 MWAS=1 G91 G01 A-(360/R103)F500;测头在A方向搜索距离内找齿 N0100 IF $AC_MEA[0]==0 GOTOF MEASERR;测量失败,检查测头是否进入沟槽 N0110 R151=$AA_MW[A];记录碰撞当前A绝对坐标值,赋值到R151中 N0120 G91 GO1 A5 F500;测头脱离沟槽A向5° N0130 Z5;测头脱离沟槽Z向抬高5mm N0140 A(R153-5);刀齿回测头接触角度,偏移R153到磨削所需角度,A对准 N0150 G90 G00 Y(R112);刀具中心线运行到砂轮正下方,Y对准 N0160 G91 G01 X(2+R154+R152);棒料前端运行到砂轮下方,X对准 N0170 G90 G00 X(R150+R152)Y(R112);棒料运行到砂轮下方,X,Y对准 N0171 G90 G00 Z(R108);Z轴起始位置,方便上下料,测量及对刀结束 N0180 M02测量程序结束 N0190 MEASERR:MSG("测量失败!探针未在有效距离内触发!")
( W+ J6 B7 U- j# R5 P% r6 |: D
6 \1 U" x- R ~7 V! f4 G$ g) Q& G" \5 m' o$ R) X/ P) M: A
' K. p# |# x! s' n( L7 m, j$ C7 h
) w1 z3 I1 p3 [( t! ]% p8 [补充内容 (2018-1-9 08:00):
2 ?! Y: ?8 c* T) _+ ^2 H加工分布步骤:
* S7 d+ Z& Q7 ?- d2 K1判断左旋刀右旋刀
) S1 ^& n/ O1 u2 d) y2测量刀具长度位置,测量刀具刀齿位置5 G3 @: c) D' l% `2 O
3磨削加工波浪齿型 |