机械社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 2687|回复: 8

高速钢粗皮铣刀磨齿专机程序(未验证,仅供参考)编程语法如有错误,实属抱歉

[复制链接]
发表于 2018-1-8 14:22:46 | 显示全部楼层 |阅读模式
高速钢粗皮铣刀磨齿专机程序(未验证,较简易,仅提供工艺步骤,及原理供各位大侠参考)
- K- R  Q  b) K  ^7 _) W. v说明:这套磨齿程序为高速钢粗皮铣刀加工使用,原机器是20年前的老机器,! ^+ J# m$ S) n* B% L, E9 O
使用法兰克系统,具备雷尼绍探头,
2 p! d$ H; a9 z3 k5 f6 |( [3 a) s4 V可测量刀具起始长度位置X向,刀齿位置A轴角度方向(已开槽的高速钢铣刀半成品毛坯料)* v" k$ d: s' w; \) ~3 V" e. Q
因此机床系统老旧,经常故障,且维修备件难以寻找,工厂仅此一台机器可用,所以决定业余时间摸清楚加工工艺,再设计一台机器替换它,
2 h9 v3 r# Q, U; z* V4 `2 \使用新代或者西门子4轴数控系统(X,Y,Z,A),增加左旋刀具的磨齿功能,所以就编写了如下程序。
+ o' [2 f: }4 O! d8 N2 k* q! i
L011(测量子程序,左右旋刀具)
L012(一齿磨削子程序,左右旋刀具)
MAIN01(磨削主程序,左右旋刀具)
L013(修整砂轮程序)(R圆弧砂轮修整,两轴插补,较简单,未编写,注意必须机内修整)
后来因老板缩减开支,旧机器用用修修可勉强支撑,就不愿投资此项目,没有机会验证程序的使用效果。
工程图截屏举例以4刃铣刀为例,齿距4mm(实际很少有这种,纯粹为方便画图)5 N& m& ^3 x8 V/ [" i7 S4 R% M$ C7 a
本来想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("测量失败!探针未在有效距离内触发!")
) {3 [( k: ?  p( }4 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;一齿磨削完成,下一齿磨削位置对准

' F8 W4 Z1 ~" M' F
MAIN01(磨削主程序,左右旋刀具)
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("测量失败!探针未在有效距离内触发!")

! K4 L. K: b5 N6 U! h6 [6 [2 z8 p
2 V$ d( V& o3 j* ?- }) V5 |
3 m$ U6 C) N# K& @
9 {( o/ y6 P) J$ T
* z+ r: G1 Q  G  ~) [- y( a补充内容 (2018-1-9 08:00):
5 V* X0 E& S+ B3 S加工分布步骤:
) X  s# ?. @. G3 E; }. N1判断左旋刀右旋刀
% f% D) i! P" `) Q# h2测量刀具长度位置,测量刀具刀齿位置
: r% K" h7 X- i/ W' I( B3磨削加工波浪齿型

4轴机床结构参考

4轴机床结构参考

R参数表

R参数表

R参数表

R参数表

粗皮铣刀

粗皮铣刀

机床布局

机床布局
主视图探齿.png
俯视图探齿.png
4条周刃上的第一个完整齿型.png
R圆弧机内修整插补轨迹.png

评分

参与人数 2威望 +6 收起 理由
韩寒11 + 1
狙击手 + 5

查看全部评分

回复

使用道具 举报

发表于 2018-1-8 16:47:21 | 显示全部楼层
佩服的五体投地
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-8 18:04:57 | 显示全部楼层
只有快乐 发表于 2018-1-8 16:47* D5 E$ [  @/ k+ ?' O- i) j1 Q* a
佩服的五体投地

8 R+ e. O5 K: }( x+ ?1 _大侠不要太夸张~~~
; w3 P4 P5 N4 v: R
回复 支持 反对

使用道具 举报

发表于 2018-1-8 18:34:04 | 显示全部楼层
楼主如能亲自搞定这样程序也算是厉害了
回复 支持 反对

使用道具 举报

发表于 2018-1-8 18:43:11 | 显示全部楼层
好像不是完整的磨削程序,是程序过程表。
' [$ u# |9 U5 w确实是有心人。赞一个!
回复 支持 反对

使用道具 举报

发表于 2018-1-8 20:45:10 | 显示全部楼层
楼主这宏程序编得有一套,费了不少心思吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-9 07:53:11 | 显示全部楼层
xiaobing86203 发表于 2018-1-8 18:343 J9 Y. N0 w% I" l
楼主如能亲自搞定这样程序也算是厉害了
/ W; E; F( b; A( @) D1 I
呵呵,以后有机会再验证效果% f- L( x1 o4 D, c% h+ X
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-9 07:55:26 | 显示全部楼层
狙击手 发表于 2018-1-8 18:431 [, W$ L# j& Q( @  z
好像不是完整的磨削程序,是程序过程表。
- W" B4 o6 Q) v' z* F9 A确实是有心人。赞一个!

0 g8 t8 W& o. Q9 H+ r是的,主要是加工的动作过程,机器没有做出来,所以一些进给速度,转速等信息没有完善。
  z1 P3 o& B5 B# D! g, w( z$ ~2 U/ s7 s- @$ u; k" n. }
# y1 k0 e- L4 x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-1-9 07:56:54 | 显示全部楼层
韩寒11 发表于 2018-1-8 20:451 |/ M  o9 a3 X+ R1 R# L, `
楼主这宏程序编得有一套,费了不少心思吧

# p2 g. z: y: x2 Y3 }* o7 }花了一两天时间,对着西门子编程手册边想边改~~~
, i; w) {3 C8 L2 B
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

小黑屋|手机版|Archiver|机械社区 ( 京ICP备10217105号-1,京ICP证050210号,浙公网安备33038202004372号 )

GMT+8, 2024-12-18 23:43 , Processed in 0.062118 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表