全功能的数控车床基本上都具有刀具补偿功能。刀具补偿又分为刀具位置补偿和刀尖半径补偿。刀具功能指令(TXXXX)中后两位数字所表示的刀具补偿号从01开始,00表示取消刀补,编程时一般习惯于设定刀具号和刀具补偿号相同。
1.刀具位置补偿
在机床坐标系中,显示器上显示的X、Z坐标值是刀架左侧中心相对机床原点的距离;在工件坐标系中,X、Z坐标值是车刀刀尖(刀位点)相对工件原点的距离,而且机床在运行加工程序时,数控系统控制刀尖的运动轨迹。这就需要进行刀具位置补偿。
刀具位置补偿包括刀具几何尺寸补偿和刀具磨损补偿,前者用于补偿刀具形状或刀具附件位置上的偏差,后者用于补偿刀具的磨损。
在实际加工工件时,使用一把刀具一般不能满足工件的加工要求,通常要使用多把刀具进行加工。作为基准刀的1号刀刀尖点的进给轨迹如图3-12所示(图中各刀具无刀位偏差)。其他刀具的刀尖点相对于基准刀刀尖点的偏移量(即刀位偏差)如图3-13所示(图中各刀具有刀位偏差)。在程序里使用M06指令使刀架转动,实现换刀,T指令则使非基准刀刀尖点从偏离位置移动到基准刀刀尖点的位置(点A),然后再按编程轨迹进给,如图3-13的实线所示。
2.刀尖半径补偿
图3-12 基准刀
图3-13 刀具位置补偿
数控车床编程时可以将车刀刀尖看作一个点,按照工件的实际轮廓编制加工程序。但实际上,为保证刀尖有足够的强度和提高刀具寿命,车刀的刀尖均为半径不大的圆弧。一般粗加工所使用车刀的圆弧半径R为0.8mm;精加工所使用车刀的圆弧半径R为0.4mm或0.2mm。以假想刀尖点P来编程时,数控系统控制点P的运动轨迹如图3-14所示。而切削时,实际起作用的切削刃是刀尖圆弧的各切点。切削工件右端面时,车刀圆弧的切点A与假想刀尖点P的Z坐标值相同;车削外圆柱面时,车刀圆弧的切点B与点P的X坐标值相同,因此,切削出的工件轮廓没有形状误差和尺寸误差。
当切削圆锥面和圆弧面时,刀具运动过程中与工件接触的各切点轨迹为图3-14所示的无刀具补偿时的轨迹。该轨迹与工件的编程轨迹之间存在着切削误差(阴影部分),直接影响工件的加工精度,而且刀尖圆弧半径越大,切削误差越大。可见,对刀尖圆弧半径进行补偿是十分必要的。当程序中采用刀尖半径补偿时,切削出的工件轮廓与编程轨迹是一致的。
对于采用刀尖半径补偿的加工程序,在工件加工之前,要把刀尖半径补偿的有关数据输入刀补存储器中,以便执行加工程序时,数控系统对刀尖圆弧半径所引起的误差自动进行补偿。
为使系统能正确计算出刀具中心的实际运动轨迹,除要给出刀尖圆弧半径R以外,还要给出刀具的理想刀尖位置。数控车削使用的刀具有很多种,不同类型的车刀的刀尖圆弧所处的位置不同,如图3-15所示。点A为假想的刀尖点,刀尖方位参数共有8个(1~8),当使用刀尖圆弧中心编程时,可以选用0或9。图3-15(a)为刀架前置的数控车床假想刀尖的位置,图3-15(b)为刀架后置的数控车床假想刀尖的位置。
3.子程序的应用
在编制车削中心的加工程序时,经常会遇到需要在加工端面上均分的孔和圆弧槽或在圆周上均分的径向孔等,对于零件上几处相同的几何形状,编程时为了简化加工程序,通常要使用子程序。具体的方法是将加工相同几何形状的重复程序段,按规定的格式编写成子程序,并存储在数控系统的子程序存储器中。主程序在执行过程中,如果需要某一子程序,可以通过子程序调用指令调用该子程序,子程序执行完后返回主程序,继续执行后面的程序段。
图3-14 刀尖圆弧半径切削时的轨迹
图3-15 车刀的形状和位置与刀尖方位参数的关系
(a)刀架前置;(b)刀架后置
1)子程序的组成格式
OXXXX;子程序号
N_…;子程序的加工内容
…
N_…;
N_M99;子程序结束指令
说明:
①子程序必须在主程序结束指令后建立;
②子程序的作用如同一个固定循环,供主程序调用。
2)子程序的调用
子程序是从主程序或上一级的子程序中调出并执行的。调用子程序的格式为
M98PXXXXX;
或M98 P___L___;
第一种格式中的M98是调用子程序的指令,地址P后面的第一位数字表示重复调用子程序的次数,后四位数字为子程序号。如果只调用一次子程序,P后面的第一位数字可以省略不写。第二种格式中的M98是调用子程序的指令,地址P后边的数字为子程序的号码,L后边的数字为子程序调用的次数。当L被省略时,表示子程序被调用一次。
在使用子程序时,不但可以从主程序中调用子程序,而且可以从子程序中调用其他子程序,这称为子程序的嵌套。注意:子程序的嵌套不是无限次的,一般多用二重嵌套。子程序的嵌套及执行顺序如图3-16所示。
(www.daowen.com)
图3-16 子程序的嵌套
3)子程序使用时的注意事项
(1)主程序中的模态G代码可被子程序中同一组的其他G代码所更改。如主程序中的G90被子程序中同一组的G91更改,从子程序返回时主程序也变为G91状态了。
(2)最好不要在刀具补偿状态下的主程序中调用子程序,否则很容易出现过切等错误。
(3)子程序与主程序编程时的区别是子程序结束时的代码用“M99”,主程序结束时的代码用“M30”或“M02”。子程序不能单独运行。
使用子程序编程的加工实例如图3-17所示。
图3-17 使用子程序编程的加工实例
图示零件的毛坯直径为φ42mm,长度为77mm,01号刀为外圆车刀(刀尖圆弧半径为0.8mm),03号刀为车槽刀(刀尖圆弧半径为0.2mm),其宽度为2mm。加工到所要求的尺寸后切断工件。
加工程序为
O0033;
N02 G50 X150.0 Z100.0; 设定工件坐标系
N04 S800 M03 T0101; 主轴正转,转速800r/min,调01号刀
N06 G00 X45.0 Z0 M08; 快进至车端面的起始点,切削液开
N08 G01 X-1.6 F0.2; 车削右端面,进给速度0.2mm/r
N10 G00 Z2.0; Z向退刀
N12 X40.0; X向退刀
N16 G01 X-55.0; 车40外圆
N18 G00 X150.0 Z100.0 T0100; 返回换刀点
N20 T0303; 调03号刀
N22 G00 X42.0 Z0;
N24 M98 P22501; 调用程序号为2501的子程序两次,切4处φ30×2槽
N26 G00 W-12.0;
N28 G01 X-0.4; 车断工件(刀尖圆弧半径为0.2mm)
N30 G00 X150.0Z100.0 T0300 M09; 返回换刀点,切削液关
N32 M05; 主轴停转
N34 M30; 程序结束
O2501; 子程序号
N10 G00 W-12.0;
N11 G01 U-12.0 F0.15; 从右侧起车削第一个槽
N12 G04 X2.0; 在槽底停留2s
N13 G00 U12.0; 退出车槽刀
N14 W-8.0;
N15 G01 U-12.0; 车削第二个槽
N16 G04 X2.0;
N17 G00 U12.0;
N18 M99; 子程序结束
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。