您现在的位置:

研究宏程序 用好循环指令

内容提要:本文叙述了通过对车削循环的宏程序实现源代码的研究后,对车削循环指令的执行细节有更深的了解,对指令参数的理解加深了,对编程时关键点的坐标的确定方法更加清楚了,澄清了一些问题。纠正了一些错误的认识,使我们能更好地运用好车削循环指令。
关键词:宏程序、指令、正负号、切深、坐标

在数控编程的教学中,我们一般较少涉及宏程序,见到一大堆的井号,我们不免生畏,但一些车削循环指令在具体应用时出现一些问题,很多教材交待不清,交待不够。比如:华中数控G71指令中ABX坐标的确定问题。一些参数的确定的方法运用的效果不好。比如:华中数控G80G81指令中的IK的正负号的确定,学生运用起来,总是容易糊涂。

近日来,既是网上下载,又是到数控车间联接机床电脑上拷贝文件、打印,忙得不亦乐乎,研究了一些车削循环的宏程序实现源代码。虽然颇费了一番力气,但也颇有收获。宏程序源代码将循环指令执行过程中的许多秘密,一览无佘展现在你的眼前,解开了以往的许多疑虑。现细说一、二,与大家分享。

车削循环的宏程序实现源代码来源于网上华中世纪星车床数控系统HNC-21/22T编程说明书,或数控车间联接机床电脑上的STATICCY文件,提供了G80G81G82G71G72G73G76指令的宏程序实现源代码。这些指令分别与FANUC系统的G90G94G92G71G72G73G76指令相对应。

下面仅以华中G80G81G71G72指令为例进行说明,并不直接描述宏程序,只是讲一讲宏程序给我们的一些启发。


1 G80G81路线图

1 华中G80指令(见图1上半部)

程序为;G00 XA ZA
G80 XC ZC I F

I
的正负号按教材上的判定方法不好用,省略。G80执行路线为:

A(XA,ZA)——B(XB,ZA)——C(XC,ZC)——D(XA,ZC)——A(XA,ZA)
。其中XB=XC+I,指令中的I用以确定B点位置,XB是用B相对CX向的位置I来确定的,沿着这一思路,XB=XC+IB相对C而言,往主轴中心线里面走,XB相对XC减小了,则I为负号,反之为正。这样确定I的符号非常直观。不容易忘记和混淆。

G82
中的I 值同G80中的I值的分析。

2
华中G81指令(见图1的下半部)

程序为;G00 XA ZA
G81 XC ZC K F

同理,ZB=ZC+KZB是用B相对CZ向位置K来确定的,BC的左边,ZB相对ZC减小了,K为负,反之为正。

3
华中G71指令(见图2上半部)


2 G71G72路线中ABC的位置关系图

程序为;G00 XA ZA
G71 U
ΔdRrP(ns) Q(nf) X(Δx) Z(Δz) F

讨论XAXB的确定问题:

原先存在的两个错误是:

1)、第一刀粗切线位置与XB无关,只与XA有关。
2)、XC=XA+ΔX,若XC-2(Δd+r)-2N-1Δd >XB’=X毛坯,则开头N次粗切为空切,即A

到毛坯的X向距离很大时,开始会有较多的空走的粗切刀。

但实际情况是XB=X毛坯,若XB

多段线B1——B向右偏Δz,向中心线外偏ΔX/2,得多段线B1’——B’ 同理,A偏到C,若XC-2(Δd+r)>XB’则第一刀切到直线X=XB’

XC-2(Δd+r)≤XB’则第一刀切到直线X= XC-2(Δd+r)位置。

第一刀线X1MIN=X毛坯-2Δd

XCMIN=X毛坯+2r

XAMIN=X
毛坯+2r-ΔX,计算见图3的上半部。

2r-ΔX很小,主要是r值取得小,XAMIN≈X毛坯=XB,此式在r稍大时不合适,如果这样的话,

第一刀切深(Δd+r)- ΔX/2会比Δd大。

4
、华中G72指令(见图2的下半部)

程序为;G00 XA ZA
G72 W
ΔdRrP(ns) Q(nf) X(Δx) Z(Δz) F

同理,ZB=Z毛坯右,ZC-2(Δd+r)>ZB’则第一刀切到直线Z=ZB’

ZC-2(Δd+r)≤ZB’则第一刀切到直线 Z= ZC-2(Δd+r)位置。

第一刀线Z1MIN=Z毛坯右-Δd

ZCMIN=Z毛坯+r

ZAMIN=Z
毛坯右+r-ΔZ,计算见图3的下半部。

r-ΔZ很小,主要是r值取得小,ZAMIN≈Z毛坯右=XB,此式在r稍大时不合适,如果这样的话,第一刀切深(Δd+r)- ΔZ会比Δd大。


3 XAZA的计算图

以上所分析的思路,对其他相关指令仍然适用,读者可自行总结。众所周知,由于宏程序中使用了各种变量、运算指令和控制指令,从而大大的简化了程序,而且可以通过设置不同的变量,实现粗、精加工和达到所要求的加工精度,所以宏程序在数控加工中有着广泛的应用。

参考文献:
1
华中世纪星车床数控系统HNC-21/22T编程说明书,华中数控公司,2002年。
2
华中数控车削系统提供的STATICCY文件。