iCAx开思网
标题:
加工中心编程技巧小结
[打印本页]
作者:
sap302
时间:
2005-12-17 11:24
标题:
加工中心编程技巧小结
一般编程技巧
cnc加工中心中几组常用指令的区别及编程技巧
随着科技的发展和社会的进步,人们对产品的性能和质量要求越来越高,从而使数控机床应
用已得到一定程度的普及,而高性能高效率的加工中心也逐渐成为社会所需。通过几年的加工
中心实际应用和教学实践及摸索,笔者将自己的体会和经验总结出来,希望对广大读者有所启
迪。
1. 暂停指令
G04X(U)_/P_ 是指刀具暂停时间(进给停止,主轴不停止),地址P或X后的数值是暂停时
间。X后面的数值要带小数点,否则以此数值的千分之一计算,以秒(s)为单位,P后面数值
不能带小数点(即整数表示),以毫秒(ms)为单位。
例如,G04 X2.0;或G04 X2000; 暂停2秒
G04 P2000;
但在某些孔系加工指令中(如G82、G88及G89),为了保证孔底的精糙度,当刀具加工至孔底
时需有暂停时间,此时只能用地址P表示,若用地址X表示,则控制系统认为X是X轴坐标值进行
执行。
例如,G82X100.0Y100.0Z-20.0R5.0F200P2000;钻孔(100.0,100.0)至孔底暂停2秒
G82X100.0Y100.0Z-20.0R5.0F200X2.0; 钻孔(2.0,100.0)至孔底不会暂停。
2. M00、M01、M02和M30的区别与联系
M00为程序无条件暂停指令。程序执行到此进给停止,主轴停转。重新启动程序,必须先回?
絁OG状态下,按下CW(主轴正转)启动主轴,接着返回AUTO状态下,按下START键才能启动程序
。
M01为程序选择性暂停指令。程序执行前必须打开控制面板上OP STOP键才能执行,执行后的
效果与M00相同,要重新启动程序同上。
M00和M01常常用于加工中途工件尺寸的检验或排屑。
M02为主程序结束指令。执行到此指令,进给停止,主轴停止,冷却液关闭。但程序光标停在
程序末尾。
M30为主程序结束指令。功能同M02,不同之处是,光标返回程序头位置,不管M30后是否还有
其他程序段。
3. 地址D、H的意义相同
刀具补偿参数D、H具有相同的功能,可以任意互换,它们都表示数控系统中补偿寄存器的地
址名称,但具体补偿值是多少,关键是由它们后面的补偿号地址来决定。不过在加工中心中,
为了防止出错,一般人为规定H为刀具长度补偿地址,补偿号从1~20号,D为刀具半径补偿地
址,补偿号从21号开始(20把刀的刀库)。
例如,G00G43H1Z100.0;
G01G41D21X20.0Y35.0F200;
4. 镜像指令
镜像加工指令M21、M22、M23。当只对X轴或Y轴进行镜像时,切削时的走刀顺序(顺铣与逆铣
),刀补方向,圆弧插补转向都会与实际程序相反,如图1所示。当同时对X轴和Y轴进行镜像
时,走刀顺序,刀补方向,圆弧插补转向均不变。
注意:使用镜像指令后必须用M23进行取消,以免影响后面的程序。在G90模式下,使用镜像
或取消指令,都要回到工件坐标系原点才能使用。否则,数控系统无法计算后面的运动轨迹,
会出现乱走刀现象。这时必须实行手动原点复归操作予以解决。主轴转向不随着镜像指令变化
。
图1 镜像时刀补、顺逆变化
5. 圆弧插补指令
G02为顺时针插补,G03为逆时针插补,在XY平面中,格式如下:G02/G03X_Y_I_K_F_或G02/G
03 X_Y_R_F_,其中X、Y为圆弧终点坐标,I、J为圆弧起点到圆心在X、Y轴上的增量值,R为圆
弧半径,F为进给量。
在圆弧切削时注意,q≤180°,R为正值;q>180°,R为负值;I、K的指定也可用R指定,当
两者同时被指定时,R指令优先,I、K无效;R不能做整圆切削,整圆切削只能用I、J、K编程
,因为经过同一点,半径相同的圆有无数个,如图2所示。
图2 经过同一点的圆
当有I、K为零时,就可以省略;无论G90还是G91方式,I、J、K都按相对坐标编程;圆弧插补
时,不能用刀补指令G41/G42。
6. G92与G54~G59之间的优缺点
G54~G59是在加工前设定好的坐标系,而G92是在程序中设定的坐标系,用了G54~G59就没有
必要再使用G92,否则G54~G59会被替换,应当避免,如表1所示。
表1 G92与工作坐标系的区别
注意:(1)一旦使用了G92设定坐标系,再使用G54~G59不起任何作用,除非断电重新启动
系统,或接着用G92设定所需新的工件坐标系。(2)使用G92的程序结束后,若机床没有回?
紾92设定的原点,就再次启动此程序,机床当前所在位置就成为新的工件坐标原点,易发生事
故。所以,希望广大读者慎用。
7. 编制换刀子程序。
在加工中心上,换刀是不可避免的。但机床出厂时都有一个固定的换刀点,不在换刀位置,
便不能够换刀,而且换刀前,刀补和循环都必须取消掉,主轴停止,冷却液关闭。条件繁多,
如果每次手动换刀前,都要保证这些条件,不但易出错而且效率低,因此我们可以编制一个换
刀程序保存谙低衬诖婺冢诨坏妒保贛DI状态下用M98调用就可以一次性完成换刀动作。
以PMC-10V20加工中心为例,程序如下:
O2002; (程序名)
G80G40G49 ; (取消固定循环、刀补)
M05; (主轴停止)
M09; (冷却液关闭)
G91G30Z0; (Z轴回到第二原点,即换刀点)
M06; (换刀)
M99; (子程序结束)
在需要换刀的时候,只需在MDI状态下,键入“T5M98P2002”,即可换上所需刀具T5,从而避
免了许多不必要的失误。广大读者可根据自己机床的特点,编制相应的换刀子程序。
8.其他
程序段顺序号,用地址N表示。一般数控装置本身存储器空间有限(64K),为了节省存储空
间,程序段顺序号都省略不要。N只表示程序段标号,可以方便查找编辑程序,对加工过程不
起任何作用,顺序号可以递增也可递减,也不要求数值有连续性。但在使用某些循环指令,跳
转指令,调用子程序及镜像指令时不可以省略。
9.同一条程序段中,相同指令(相同地址符)或同一组指令,后出现的起作用。
例如,换刀程序,T2M06T3; 换上的是T3而不是T2;
G01G00X50.0Y30.0F200;执行的是G00(虽有F值,但也不执行G01)。
不是同一组的指令代码,在同一程序段中互换先后顺序执行效果相同。
G90G54G00X0Y0Z100.0;
G00G90G54X0Y0Z100.0;
以上各项均在PMC-10V20(FANUC SYSTEM)加工中心上运行通过。在实际应用中,只有深刻理
解各种指令的用法和编程规律,
作者:
wuhai0512
时间:
2005-12-17 21:18
好文章,谢谢
作者:
BBSA
时间:
2005-12-19 16:27
好,
猛顶
作者:
xingbing767
时间:
2005-12-20 17:47
不错。谢谢
作者:
@断刀客
时间:
2005-12-20 19:08
标题:
好文章!
真是好文章!狂顶!!
对于CNC技术员简直是精髓!
作者:
longzhouxx
时间:
2005-12-21 13:36
非常感谢!!!
作者:
WOACHAO
时间:
2005-12-21 22:05
支持!
作者:
qiuling
时间:
2005-12-22 11:41
不错
作者:
196117087
时间:
2005-12-22 13:00
标题:
可以
你们多来点
作者:
ZNYV5088
时间:
2005-12-22 13:09
辛苦了!
作者:
luo2004jim
时间:
2005-12-22 16:44
不错,不过每个系统是有差异的,如果能针对不同系统的指令比较总结,那就好上加好了
作者:
数控千里
时间:
2005-12-24 19:42
没有多大的实用性
作者:
liguojun1983
时间:
2005-12-24 23:07
我最怕这样的长篇大论
作者:
884535
时间:
2006-1-6 18:44
很好,OK:
作者:
hongchangmao
时间:
2006-1-8 00:17
标题:
哈哈哈哈……
那也拿出来献丑!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
作者:
模人
时间:
2006-1-8 11:41
图呢?
作者:
vme3721
时间:
2006-1-8 12:00
新手,谢谢
作者:
e1843t
时间:
2006-1-8 14:43
可以的話多寫一些謝謝
作者:
lovesorry
时间:
2006-1-8 16:37
谢谢1
作者:
yjhjohn
时间:
2006-1-8 18:01
不错!
作者:
longzhouxx
时间:
2006-1-9 10:22
thanks ding
作者:
13912853929
时间:
2006-1-13 10:46
ding!
作者:
hxlowei
时间:
2006-1-13 11:40
真是好文.有帮助呀.顶.
作者:
szxinnte
时间:
2006-1-16 18:52
好文章。
作者:
KKYO4034
时间:
2006-1-16 23:56
好嘢
作者:
HURCOBMC
时间:
2006-1-18 11:11
加工中心换刀要编子程序?用MDI方式状态下用M98调用换刀子程序?那还是加工中心吗?加工中心换刀是编在程序自动执行的。你做的这种加工中心要用MDI方式状态下用M98调用换刀子程序才能换刀我从没见过,还不如买台数控铣要便宜多了。
作者:
qq5677849
时间:
2006-1-30 06:26
支持
作者:
要求上进的人
时间:
2006-2-28 12:51
非常感谢!有时间多研究一下。
作者:
关木
时间:
2006-2-28 21:07
有心人,不错,多谢!
作者:
sz_qch
时间:
2006-3-4 17:58
非常感谢!楼主。
作者:
wang-zu-jun
时间:
2006-3-4 23:23
好东东!谢谢!
作者:
apen
时间:
2006-3-5 00:20
好东西!!!谢了
作者:
lrqliulrq
时间:
2006-3-7 13:35
ding
作者:
wanghui328
时间:
2006-3-7 15:19
樓主發的這個好像是手動操機的吧?暂停指令 基本上每台機都有單節鍵吧?
作者:
罗卜
时间:
2006-3-23 12:48
抄得很累吧,来,喝杯水吧。
作者:
blipmode
时间:
2006-3-24 10:45
支持!
作者:
sz_qch
时间:
2006-4-2 04:53
辛苦了!
作者:
chengqian
时间:
2006-4-2 06:18
上次在这论坛里学了”单节执行“的
哇塞,真的好使得不得了啊
省了好多好多时间,一个字“爽”
操机时还有什么好的方法,大家献献计啦
作者:
skaigt
时间:
2007-10-20 18:49
放点水,积累些分!!!
作者:
mousewen
时间:
2008-4-7 11:43
初学编程的用处
大!
作者:
y.shu
时间:
2008-4-26 20:48
支持////
作者:
guijianqiong
时间:
2008-4-27 20:04
看;了 一般
欢迎光临 iCAx开思网 (https://www.icax.org/)
Powered by Discuz! X3.3