浅谈数控铣床编程中的旋转指令
[摘要]随着职业技术教育不断被重视,全国各地每年都在组织各类数控技能比赛,大到全国数控技能大赛,小到各省、市、区、县的数控技能比赛,这类比赛都要求参赛选手必须使用手工编程来加工零件,因此,目前全国各类职业技术院校相关专业的师生,为了参赛都在学习手工编程方法,本文结合作者的实践经验,针对目前市场上某些数控铣床手工编程书籍,介绍编程指令不全面的缺点,补充说明了旋转指令的使用方法和应该注意的问题。
[关键词]数控铣床 手工编程 旋转
一、绪论
目前,市场上关于数控铣床手工编程的书籍很多,但有些书介绍编程指令过于简单,至于具体如何应用,没有详细介绍。有些书虽然介绍比较详细,但是运用某些指令编程时,某些容易出错而又不容易被发现的细节之处没有提到。因此往往会造成以下两种现象:一、即使知道了各个指令的含义,还是不会编程;二、编程格式完全正确,但是把程序输入机床,一经校验,发现刀具轨迹错误,可想而知,如果直接运行程序,不但前面加工好的表面会破坏,甚至也有可
能造成撞刀的严重后果。以上两种现象都应“归功”于这些书的一个共性:点到为止,介绍不够全面。要想真正掌握各个指令的编程方法,还需要自己花大量的时间去慢慢琢磨。
下面我想谈谈个人对使用旋转指令时的一些心得,希望能对初学数控铣床手工编程的人员带来一点帮助。
二、旋转指令概念与编程格式
数控铣床的系统较多,应用比较广泛的有:FANUC、华中世纪星、SIEMENS等,不同的系统,编程的格式、指令代码也略有不同,现在以华中世纪星系统为例,谈谈旋转指令的使用方法。
旋转指令主要用于加工某些围绕中心旋转得到的特殊轮廓加工,如果根据旋转后的实际加工轨迹进行编程,就可能使坐标计算的工作量大大增加,而通过图形旋转功能,可以大大简化编程的工作量。
指令格式:G17G68 X_Y_P_;
G69;
格式中的G17表示选择加工平面是XY平面,其中G68表示图形旋转生效,而指令G69表示图形旋转取消.格式中的X、Y值用于指定图形旋转的中心,P图形旋转的角度,该角度一般取0-360°的正值,旋转角度的零度方向为第一坐标轴的正方向,逆时针方向为角度旋转的正向。不足1°的角度以小数点表示,如10°54’用10.9°表示。例如,G68X15.0Y20.0P30.0;该指令表示图形以坐标点(15,20)作为旋转中心,逆时针旋转30°。
三、旋转指令使用方法
初步掌握了旋转指令的使用范围以及编程格式后,如何来应用该指令编程加工,对初学者来说还是比较困难,因为在加工时,如果加工深度比较大,往往不能一次加工成型,这就需要调用若干个子程序进行分层加工,下面以粗加工图1所示的4个φ12的孔为例,介绍本人使用旋转指令时的一种编程方法。
方法:选用φ8的键槽铣刀进行加工,而4个孔的有效深度有6mm,考虑到刀具的强度,所以每次切削深度可定为3mm,这就需要分两层加工,粗加工后留孔的精加工半径余量为0.5mm。
主程序调用两个子程序,主程序中编写旋转指令,子程序1中做好孔加工前的定位准备,子程序2用来分层加工。
该方法的粗加工程序可编写如下:
O0001;(主程序)
G90G54G00X0Y0;
M03S2000;
Z5;
M98P0002;
G68X0Y0P90;
M98P0002;
G68X0Y0P180;
M98P0002;
G68X0Y0P270;
M98P0002;
G69;
G90G00Z100;
X0Y0;
M30;
O0002;(子程序1)
G90G00Y31
G01Z–6F50;
M98P0003L2;
G90G00Z5;
X0Y0;
M99;
O0003;(子程序2)
G91G01Z-3F35;
Y1.5;
G02I0J-1.5F100;
G01Y-1.5;
M99m98调用子程序格式;
四、使用旋转指令加工时碰到的问题以及解决方法
问题一:程序运行到旋转指令时,运行轨迹错误
程序校验,加工第一个孔(即Y轴正向上的孔)时,加工轨迹正常,等该孔加工完毕,正要用旋转指令加工第二个孔时(即X轴负方向的孔),加工轨迹出错,即刀具不在第二孔的位
置加工。仔细检查程序,并请教了其他几位专业老师,但始终不出程序的错误。更令我费解的是,以前用旋转指令加工类似的零件很顺利,现在怎么会出错呢?正当百思不得其解的时候,就查了以前用旋转指令编写的程序,仔细对照新旧程序,发现新程序中的子程序O0002第一段和以前的程序段相比,略有不同,即:现在的这段程序G90G00Y31省略了X0,以前的程序中没有省略这个X坐标字,原则上铣刀从X0Y0移动到X0Y31的位置X坐标没有变化,是可以省略该坐标的,但是在旋转程序中,为什么一省略,轨迹就出错了呢?
在不知道原因的情况下,先试着把程序段G90G00Y31改成G90G00X0Y31,一运行,发现加工轨迹完全正确。于是基本可以得出一个结论:在带有旋转指令的程序中,第一个子程序中首个含有加工平面内的坐标的程序段(如加工平面是G17,该平面中含有X、Y两个坐标,则子程序中首个含有X或Y坐标的程序段即是),无论该加工平面中的某个坐标有否变化,都不能省略任何一个坐标字,通俗一点讲就是在该程序段中应该把所有坐标字都写出来。
问题二:旋转加工中按复位健后,再重头开始运行程序发现被加工部位定位错误。
已经运行旋转指令加工时,突然发现程序有些地方要修改一下,于是按下了复位键,然后修改需要修改的程序段,再从程序第一段开始运行,发现加工第一个孔时定位就错误了,机械
回零后再重新运行程序,问题还是没得到解决。仔细分析刚才的情形:按复位键时,程序正在运行旋转指令,而G68是个模态指令,即如果不用G69取消,那么G68指令一直有效,而复位后加工第一个孔不需要用旋转指令,因此导致加工该孔时定位出错,相当于把第一个孔的位置旋转了某个角度后再去加工。
那么用什么方法可以避免这种问题呢?想到一种很简单的方法:在主程序首段,即G90G54G00X0Y0中插入G69来取消旋转指令,即:G90G54G69X0Y0。再重新运行程序,发现轨迹完全正确。
五、结语
在编程时,除了使用旋转指令时会碰到以上两个问题外,同样使用镜像指令时一样,因此,无论是用旋转指令还是用镜像指令加工零件,都应注意两点:(1)第一个子程序中首个含有加工平面中的坐标的程序段中坐标字都不能省略。(2)用旋转或镜像指令编程时,最好在主程序开头写上取消旋转指令G69和取消镜像指令G25,可以避免因复位后重新运行程序导致轨迹错误。总之,手工编写数控程序时,应耐心、仔细,碰到问题时冷静分析、多思考、多总结,很多问题就能迎刃而解。
参考文献:
[1]徐宏海,谢富春.数控铣床.化学工业出版社,2003,10.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论