子程序在数控车削中的应用

2018-03-30 02:52
现代制造技术与装备 2018年4期
关键词:程序段主程序精车

阳 涛

(达州职业技术学院 机电工程系,达州 635001)

在零件的数控加工过程中,常常会出现一些几何形状完全相同的加工轨迹,在编制的程序中,也出现固定顺序和重复模式的程序段。为了简化程序,常把这些在程序执行时重复使用的程序段写成独立程序,在适当的时候利用指令直接调用,这样的程序就是子程序。子程序编程是计算机程序设计的基本功能,现代CNC系统一般都提供调用子程序功能,这一功能为用户编制相似或相近加工工艺带来了极大的方便。下面以华中数控系统为例,说明子程序在数控车削中的应用。

1 子程序的编程格式和调用格式

1.1 子程序的编程格式

子程序的格式与主程序相似。子程序的开始是O地址指定的子程序号,子程序的结尾用M99指令结束子程序的调用,返回主程序。具体指令如下:

O××××(子程序号)

M99 (子程序结束)

1.2 子程序的调用格式

子程序是由主程序或上层子程序调用并执行的,调用子程序的指令为一程序段,华中数控系统调用子程序指令如下:

M98 P×××× L××××

其中,M98为调用子程序指令字;P后接的4位数字表示调用的子程序号;L后接的4位数字表示调用次数,省略时为调用一次,不足4位时其他位用零代替或不写。

2 子程序编程实例

2.1 切断编程实例

某零件的外形尺寸如图1所示,对其进行切断编程,切断刀宽度4mm。每个零件车削完成后,一般都要求切断,如果用切断刀直接切到工件的中心,则很容易将刀具夹断,因此一般情况下采用多次往复切深的方式切断。可以采用每次切深3mm(半径值)之后退刀回原位,然后-Z方向进给3mm(进给量小于刀具宽度),再切深3mm之后退刀,最后+Z方向进给3mm,退回到原位,以此类推,经过多次循环切削,将工件切断。

如果采用常规方式编程,则编程量太大,故采用子程序编程。而采用绝对坐标编程,则不管调用多少次子程序都只能切深3mm,不可能切断工件,所以采用增量坐标编程。为了使每次切深相同,可以选择切断起始位置的X坐标比工件的直径大2mm,则第一次切深及退刀的增量坐标(直径值)为3×2+2=8,第二次切深后的退刀量为2mm(保证刀具的刀位点比刚切的工件直径大2mm)。由于总共切深是30mm(半径值),每次切深3mm,则子程序调用次数为30÷3=10次。子程序切削示意图如图2所示。

图1 待切断的零件

图2 子程序切削示意图

子程序切削的编程如下(省略外圆车削程序段):

O1111

T0202

M03S250

G00X62Z-89M08

M98P0002L10

G00X100M09

Z100

M05

M30

O0002

G01U-8F30

U8

W-3

U-8

U2

W3

M99

2.2 切槽编程实例

某零件总共有6个槽,如图3所示,对其进行加工,切断刀宽度4mm。如果按照常规方法编程,工作量太大。考虑到相邻两槽之间的间隔都为14mm,只需要编制切第一个槽的子程序,注意子程序要用增量坐标编程,调用6次就可以完成切槽加工。

图3 切槽加工

编程如下:

O0001

T0202

M03S200

G00X32Z0M08

M98P0002L6

G00X100Z100M09

M05

M30

O0002

G01W-14F100

U-12F30

G04P2

G00U12

M99

2.3 粗精加工实例

某手柄零件的外形尺寸如图4所示,对其进行粗精加工,毛坯为直径55mm的圆钢棒料,切点坐标分别为 A(17.143,-4.849)、B(25.163,-79.699)、C(23.111,-128.779)。

这个零件可以采用内外径粗车复合循环指令G71和精车循环指令加工,但换一种思路,用子程序的方法也可以加工,只是每次走刀路线都是与精加工轮廓相似的轨迹,空行程较多。从棒料加工成手柄需要多次切削,为了保证每一次切深都切到工件并用到同一个子程序,X方向必须采用增量坐标U,Z方向仍然采用绝对坐标Z。为了保证加工精度,粗车和精车采用不同的子程序,粗车车刀采用T0101,精车车刀采用T0202。循环起点为P(55,5),粗车时主轴转速600r/min,进给速度150mm/min,背吃刀量3mm(直径值),精车时主轴转速1000r/min,进给速度80mm/min,背吃刀量1mm(直径值)。因此,粗车子程序调用次数为棒料直径减去精车余量之差再除以粗车的背吃刀量,即(55-1)÷3=18次。

图4 手柄零件粗精加工

编程如下:

O1111(主程序)

T0101

M03 S600

G00 X55 Z5 M08

M98 P2222 L18

G00 X100 Z100

T0202S1000

G00X1Z5

Z0F100

M98P3333

G00X100Z100M09

M05

M30

O2222(粗车子程序)

G01 U-3 F150

Z0

G03 U17.143 Z-4.849 R20

G03 U8.020 Z-79.699 R80

G02 U-2.052 Z-128.779 R50

G03 U16.889 Z-140

G01 Z-160.0;

U10

Z-170

U5

G00 Z5

U-55

M99

O3333(精车子程序)

G01 U-1 F80

Z0

G03 U17.143 Z-4.849 R20

G03 U8.020 Z-79.699 R80

G02 U-2.052 Z-128.779 R50

G03 U16.889 Z-140

G01 Z-160.0;

U10

Z-170

U5

G00 Z5

U-55

M99

3 结语

以上数控车削中子程序的应用,使编程人员的劳动强度大大降低,因此数控车削加工时,人们应尽量采用子程序编程。值得注意的是,为了能够在子程序循环中不断地吃刀,子程序一定要采用增量坐标编程,否则就会出错。

猜你喜欢
程序段主程序精车
基于WinCC的物料小车控制系统设计与仿真
抗压痕透明粉在精车铝轮毂上的应用研究
自动升级程序在船舶监测系统中的应用
浅谈数控铣削技术代码程序的嵌套方式研究
数控系统手轮回退功能的研究与实现*
基于MasterCAM车削模块的热轧辊精车加工
电控冰箱软件模块化设计
基于NC程序段的提高数控加工监控阈值与信号同步的方法*
针对偏薄型制动盘摩擦面精车存在的问题对车床的改进
数控铣床FANUC 0i 系统刀具半径补偿系统参数设置解析