首页 百科知识 二、基本编程指令的应用

二、基本编程指令的应用

时间:2022-10-15 百科知识 版权反馈
【摘要】:这一指令通常出现在程序的第一段。这一点在重复加工中应予注意。G54~G59指令是通过执行程序前在系统中设定的工件加工坐标系。G92指令程序段只是设定加工坐标系,而不产生任何动作;G54~G59指令程序段则可以和G00、G01指令组合在选定的加工坐标系中进行位移。G02、G03是按指定进给速度的圆弧运动。

二、基本编程指令的应用

FANUC-0i-Mate-C系统的编程指令是比较丰富的,这节主要介绍在加工中常使用的一些基本指令。

(一)绝对尺寸与增量尺寸指令——G90、G91

尺寸字指令的实质是坐标尺寸,坐标尺寸又分为绝对坐标尺寸和增量坐标尺寸两种。绝对坐标尺寸是指在指定的坐标系中,机床运动位置的坐标值是相对于坐标原点给出;增量坐标尺寸是指机床运动位置的坐标值是相对于前一位置给出的。在加工程序中,绝对尺寸与增量尺寸有两种表达方式。第一类是用G指令作规定,一般用G90指令表示绝对尺寸,用G91指令表示增量尺寸,这是一对模态(续效)指令。这类表达方式有两个特点:第一,绝对尺寸与增量尺寸在同一程序段内只能用一种,不能混用;第二,无论是绝对尺寸还是增量尺寸,在同一轴向的尺寸字的地址符要相同,如X向都用X。第二类不是用G指令作规定,而直接用地址符来区分是绝对尺寸还是增量尺寸。例如,X、Y、Z向的绝对尺寸字地址分别用X、Y、Z表示,而增量尺寸字地址分别用U、V、W表示。这类表达方式也有两个特点:第一,不但在同一程序段中,绝对尺寸与增量尺寸可以混用,这给编程带来方便;第二,两种尺寸指令属于哪一种一目了然,而无须去看它前面的是G90还是G91,这样可以减少错误。

(二)坐标系设定指令

坐标系的设定是编程计算的第一步,应根据不同的加工要求和编程的方便性进行恰当的选择。

1.G92——设定加工坐标系

该指令的作用是通过该指令设定起刀点即程序开始运动的起点,从而建立加工坐标系。应该注意的是,该指令只是设定坐标系,机床(刀具或工作台)并未产生任何运动。这一指令通常出现在程序的第一段。

编程格式:G92 X_ Y_ Z_式中,X、Y、Z尺寸字是指定起刀点相对于加工原点的位置。

G92指令执行后,系统按指令给定的X、Y、Z值作为当前刀具位置的坐标值,从而建立坐标系,后序所有坐标字指定的坐标都是该加工坐标系中的位置。

例如,加工开始前,将刀具置于一个合适的开始点,执行程序的第一段为:

G92 X20 Y10 Z10(该系统可省略小数点)则建立了如图3-16所示的加工坐标系,即加工坐标系位于起刀点左方20mm、前方10mm、下方10mm的位置。故用这种方式设置的加工原点是随刀具起始点位置的变化而变化的。这一点在重复加工中应予注意。

img103

图3-16 设置加工坐标系

2.G53——选择机床坐标系

该指令使刀具快速定位到机床坐标系中的指定位置上。在XK6150数控铣床上,机床坐标原点的位置是确定的。G53指令指定坐标字的坐标值为机床坐标系中的位置。

编程格式:G53 G90 X_ Y_ Z_式中,X、Y、Z为机床坐标系中的坐标值。

例如:加工程序中出现下述程序段G53 G90 X-100 Y-100 Z-20

则执行后刀具在机床坐标系中的位置如图3-17所示。

img104

图3-17 G53机床坐标系

3.G54、G55、G56、G57、G58、G59——选择工件加工坐标系

这些指令可以分别用来选择相应的工件加工坐标系。

编程格式:G54 G90 G00/G01 X_ Y_ Z_ (F)

该指令执行后,所有坐标字指定的尺寸坐标都为选定的工件加工坐标系中的位置。这6个工件加工坐标系是在对刀后通过操作面板设定的。

例如,在图3-18中,我们在系统中设定了两个工件加工坐标系:

G54:X-50 Y-50 Z-10

G55:X-100 Y-100 Z-20

这时,建立了原点在O′的G54工件加工坐标系和原点在O′的G55工件加工坐标系,则执行了下述程序段:

N10 G53 G90 X0 Y0  Z0

N20 G54 G90 G01 X50 Y0 Z0 F100

N30 G55 G90 G01 X100 Y0 Z0 F100

刀尖点的运动轨迹如图3-18中OAB所示。

G92指令与G54~G59指令都是用于设定工件加工坐标系的,但它们在使用中是有区别的;G92指令是通过程序(起刀点的位置)来设定工件加工坐标系的;G92所设定的加工坐标原点是与当前刀具所在位置有关的,这一加工原点在机床坐标系中的位置是随当前刀具位置的不同而改变的。G54~G59指令是通过执行程序前在系统中设定的工件加工坐标系。一经设定,加工坐标原点在机床坐标系中的位置是不变的,它与刀具的当前位置无关,除非再通过操作面板更改。G92指令程序段只是设定加工坐标系,而不产生任何动作;G54~G59指令程序段则可以和G00、G01指令组合在选定的加工坐标系中进行位移。

另外,在采用G54方式时,通过G92指令编程后,也可建立一个新的工件加工坐标系,如图3-19所示。在G54方式时,当刀具定位于XOY坐标平面中的(200,160)点时,执行程序段:

G92 X100 Y100

就由向量A偏移产生了一个新的工件坐标系X′O′Y′坐标平面。

img105

图3-18 设定加工坐标系

img106

图3-19 重新设定X′O′Y′坐标平面

(三)坐标平面选择指令——G17、G18、G19

坐标平面选择指令是用来选择圆弧插补平面和刀具补偿平面的。

G17指令为机床进行XY平面上的加工,G18、G19分别为ZX、YZ平面上的加工,如图3-20所示。在数控车床上一般默认为在ZX平面内加工;在数控铣床上,数控系统一般默认为在XY平面内加工。若要在其他平面上加工,则应使用坐标平面选择指令。

img107

图3-20 坐标平面选择

程序格式:G17/G18/G19

移动指令与平面选择无关,例如G17 Z,这条指令可使机床在Z轴方向上产生移动。

(四)G00——快速运动指令

G00是运动速度、运动轨迹均由系统给定的快速点定位运动指令。

编程格式:G00 X Y Z

当采用绝对方式编程时,式中X、Y、Z输入加工坐标系中定位点的坐标值。当采用增量方式编程时,式中X、Y、Z输入当前点到定位点的增量距离。

G00的运动速度可以由系统参数调整,本系统最大速度为24m/min,它的运动轨迹在一个坐标平面内是先按比例沿45°的斜线移动,再移动剩下的一个坐标方向上的直线距离。如果是要求移动一个空间距离,则先同时移动三个坐标,即空间位置的移动一般是先走一条空间的直线,再走一条平面斜线,最后沿剩下的一个坐标方向移动达到终点。

(五)G01——直线插补指令

G01是按指定进给速度的直线运动指令。

编程格式:G01 X Y Z F

当采用绝对方式编程时,式中X、Y、Z为加工坐标系中直线的终点坐标值;当采用增量方式编程时,式中X、Y、Z为当前点到直线终点的增量距离。F为进给速度,单位为mm/min。

例如:若要加工如图3-21所示的直线AB,刀具起始点在A点。

img108

图3-21

当采用绝对方式编程时,程序段为:

N20 G90 G01 X10 Y10 F100

当采用增量方式编程时,程序段为:

N20 G91 G01 X-10 Y-20 F100

(六)G02、G03——圆弧插补指令

对于铣削中心来说,编制圆弧加工程序与在数控铣床上类似,也要先选择平面,如图3-22所示。G02、G03是按指定进给速度的圆弧运动。圆弧顺、逆方向的判别方法是:沿着不在圆弧平面内的坐标轴由正方向向负方向看去,顺时针方向为G02,逆时针方向为G03,如图3-22所示。

img109

图3-22 圆弧程序的编制

程序段有两种书写方式,一种是圆心法,另一种是半径法。

1.书写格式

编程格式:

在XY平面内17Gimg110

在ZX平面内18Gimg111

在YZ平面内19Gimg112

2.圆心编程

与圆弧加工有关的指令说明见表3-5。用圆心编程的情况如图3-23所示。

表3-5

img113

img114

图3-23 圆心编程

img115

图3-24 半径编程

img116

图3-25 圆弧的坐标

3.半径编程

用R指定圆弧插补时,圆心可能有两个位置,这两个位置由R后面值的符号区分,当圆弧所夹的圆心角α≤180°时,R值为正;当圆弧所夹的圆心角α≤180°时,R值为负。

如图3-24所示为用半径编程时的情况。若编程对象为以C为圆心的圆弧时程序为:

G17 G02 X_ Y_ R+R1

若编程对象为以D为圆心的圆弧时程序为:

G17 G02 X_ Y_ R+R2

其中R1,R2为半径值。

4.编程实例

例:如图3-26所示,圆弧程序的编写如下:

1)绝对值编程

A圆心法:

G92 X200.0 Y40.0 Z0.0;   确定起刀点

G90 G03 X140.0 Y100.0 I-60.0 F300;

G02 X120.0 Y60.0 I-50.0;

B半径法:

G92 X200.0 Y40.0 Z0.0;

G90 G03 X140.0 Y100.0 R60.0 F300;

G02 X120.0 Y60.0 R50.0;

2)增量值编程

A圆心法:

G92 X200.0 Y40.0 Z0.0;

G91 G03 X-60.0 Y60.0 I-60.0 F300

G02 X-20.0 Y-40.0 I-50.0;

B半径法:

G92 X200.0 Y40.0 Z0.0;

G91 G03 X-60.0 Y60.0 R60.0 F300;

G02 X-20.0 Y-40.0 R50.0;

img117

图3-26 圆弧程序的编写

img118

图3-27 整圆程序的编写

例:如图3-27所示,整圆程序的编写如下:

1)绝对值编程

G02 X20.0 Y0 I-20.0;

2)增量值编程

G91 G02 I-20.0;

5.注意事项

当采用圆弧插补指令编程时,要注意如下几点:

1)假如漏编R,将被视为直线移动。

2)程序中给出的F值与实际速度的误差为±2%,这一速度是指沿运动轨迹切向方向的速度。

3)在编写整圆程序时,仅用I、J、K指定中心即可。例如,G02 I(整圆);若仅写入R时,则为0°圆弧,例如,G02 R(机床不运动)。

4)若写入的半径R为0时,机床报警(N023)。

5)在圆弧插补时,I0、J0、K0可省略。

(七)G04——暂停指令

G04指令编入程序后,在G04指令后的一个程序段将按指定时间被延时执行。

编程格式:G04 X(P)

式中 X、P——均为暂停时间,范围为0.001~9999.999s。其中字母X后可用小数点编程;而字母P则不允许用小数点编程,其后数字1000表示1s。

例如,暂停时间为2.5s的程序为:G04 X2.5 或  G04 P2500

(八)刀具补偿功能指令

数控机床在切削过程中不可避免地存在刀具磨损问题,例如钻头长度变短,铣刀半径变小等,这时加工出的零件尺寸也随之变化。如果系统功能中有刀具尺寸补偿功能,可通过操作面板输入相应的修正值,使加工出的零件尺寸仍然符合图样要求,否则就得重新编写数控加工程序。有了刀具尺寸补偿功能后,使数控编程大为简便,在编程时可以完全不考虑刀具中心轨迹计算,直接按零件轮廓编程。启动机床加工前,只需输入使用刀具的参数,数控系统会自动计算出刀具中心的运动轨迹坐标,为编程人员减轻了劳动强度。另外,试切和加工中工件尺寸与图样要求不符时,可借助相应的补偿加工出合格的零件。刀具尺寸补偿通常有三种:刀具位置尺寸补偿(请参见车削部分)、刀具长度尺寸补偿和刀具半径尺寸补偿。这里主要介绍铣削中常用的刀具补偿功能,又分为刀具长度尺寸补偿和刀具半径尺寸补偿。

1.刀具长度补偿指令——43G、44G、49G

为了简化零件的数控加工编程,现代CNC系统都具有刀具长度补偿(too1 1ength compensation)功能。刀具长度补偿使刀具垂直于走刀平面(比如XY平面,由G17指定)偏移一个刀具长度修正值,因此编程过程中无需考虑刀具长度。

刀具长度补偿在发生作用前,必须先进行刀具参数的设置。设置的方法有机内试切法、机内对刀法、机外对刀法和编程法。有的数控系统补偿的是刀具的实际长度与标准刀具的差,如图3-28(a)所示。有的数控系统补偿的是刀具相对于相关点的长度,如图3-28(b)、(c)所示,其中图(c)是圆弧刀的情况。

img119

图3-28 刀具长度补偿

编程格式:

G01img120

……

G01 G49

式中,43G——刀具长度正补偿,即将H中的值加到Z坐标的尺寸字后,按其结果进行Z轴的移动;44G——刀具长度负补偿,即从Z坐标的尺寸字中减去H中的值后,按其结果进行Z轴的移动;49G——撤销刀具长度补偿;H代码指定偏置号,偏置号可为H00~H200,偏置量与偏置号相对应,通过操作面板预先输入在存储器中;与偏置号00即H00相对应的偏置量,始终意味着零,不能设定与H00相对应的偏置量。

以钻孔为例,使用43G/44G指令时刀具实际位置与编程位置的情况如图3-29所示。

例如,当运行下列程序时,刀具的运动情况如图3-29所示。

N10 G92 X0 Y0 Z30

N20 G90 G01 Z15 F100

N25 G01 X30

N30 G43 G01 Z15 H01

N35 G01 X60

N40 G43 G01 Z15 H02

N50 G49 G01 Z30

N60 M30

设置 H01=5,H02=-5。

img121

图3-29 刀具长度补偿

2.二维刀具半径补偿指令——G41、G42、G40

二维刀具半径补偿仅在指定的二维进给平面内进行,进给平面由G17、G18和G19指定,刀具半径或刀刃半径值则通过调用相应的刀具半径偏置存储器号码(用H或D指定)来取得。二维刀具半径补偿为B类和C类。B类补偿是只能实现在本程序段内的刀具半径补偿,而对于程序段间的过渡不予处理;对外轮廓(外拐角)要增加尖角过渡辅助程序段,对内轮廓(内拐角)不能使用刀具补偿B功能。对这类补偿我们不作详细介绍。C类补偿可实现自动地尖角过渡,只要给出零件轮廓的程序数据,数控系统能自动地进行拐角处的刀具中心轨迹交点的计算;因此C类补偿可用于内、外拐角轮廓的加工,而在程序中不考虑其尖角过渡。以下我们所讲的刀具补偿都是指C类补偿。

编程格式:

img122

G01 G40 X_ Y_

式中,G41——刀具半径左补偿(cutter radius compensation 1eft);

G42——刀具半径右补偿(cutter radius compensation right);

G40——取消刀具半径补偿;

X、Y——建立或取消刀具半径补偿的终点坐标值;

D##——刀具半径偏置存储器号;

H——刀具偏置代号地址字,后面一般为两位数字的代号。

(1)刀具半径补偿的目的 在数控铣床上进行轮廓的铣削加工时,由于刀具半径的存在,刀具中心(刀心)轨迹和工件轮廓不重合。如果数控系统不具备刀具半径自动补偿功能,则只能按刀心轨迹进行编程,即在编程时给出刀具中心运动轨迹,如图3-30所示的点划线轨迹,其计算相当复杂,尤其当刀具磨损、重磨或换新刀而使刀具直径变化时,必须重新计算刀心轨迹,修改程序,这样既繁琐,又不易保证加工精度。当数控系统具备刀具半径补偿功能时,只需按工件轮廓进行编程,如图3-30中的粗实线轨迹,数控系统会自动计算刀心轨迹,使刀具偏离工件轮廓一个半径值,即进行刀具半径补偿。

img123

图3-30 刀具半径补偿

(2)刀具半径补偿功能的应用

1)刀具因磨损、重磨、换新刀而引起刀具直径改变后,不必修改程序,只需在刀具参数设置中输入变化后的刀具直径。如图3-31所示,1为未磨损刀具,2为磨损后刀具,两者直径不同,只需将刀具参数表中的刀具半径r1改为r2,即可适用同一程序。

2)用同一程序、同一尺寸的刀具,利用刀具半径补偿,可进行粗精加工。如图3-32所示,刀具半径r,精加工余量Δ。粗加工时,输入刀具直径D=2(r+Δ),则加工出点划线轮廓;精加工时,用同一程序,同一刀具,但输入刀具直径D=2r,则加工出实线轮廓。

img124

1-未磨损刀具 2-磨损后刀具

图3-31 刀具直径变化,加工程序不变

img125

P1-粗加工刀心位置 P2-精加工刀心位置

图3-32 利用刀具半径补偿进行粗精加工

(3)判断刀具半径左、右补偿的方法

假设工件不动,沿着刀具运动方向向前看,刀具位于零件左侧的刀具半径补偿,称为刀具半径左补偿;假设工件不动,沿着刀具运动方向向前看,刀具位于零件右侧的刀具半径补偿,称为刀具半径右补偿。如图3-33所示。

(4)刀具半径补偿的过程

刀具补偿过程的运动轨迹分为三个组成部分:形成刀具补偿的建立补偿程序段、零件轮廓切削程序段和补偿撤销程序段。

1)刀具半径补偿建立 数控系统一启动,总是处在补偿撤销状态。刀具由起刀点(start point,位于零件轮廓及零件毛坯之外,距离加工零件轮廓切入点较近)以进给速度接近工件,刀具半径补偿偏置方向由G41(左补偿)或G42(右补偿)确定。

img126

图3-33 刀具半径补偿指令

(a)刀具半径左补偿 (b)刀具半径右补偿

img127

图3-34 建立刀具半径补偿

在图3-34中,建立刀具半径左补偿的有关指令如下:

N10 G90 G92 X-10.0Y-10.0Z0; /*定义程序原点,起刀点2点为(-10.0,-10.0)

N20 S900 M03;  /*启动主轴

N30 G17 G01 G41 X0 Y0 D01;/*建立刀具半径左补偿,刀具半径偏置存储器号为D01

N40 Y50.0;   /*定义首段零件轮廓

其中,D01为调用D01号刀具半径偏置存储器中存放的刀具半径值。

建立刀具半径右补偿的有关指令如下:

N30 G17 G42 X0 Y0 D01; /*建立刀具半径右补偿

N40 X50.0;   /*定义首段零件轮廓

2)刀具半径补偿取消 刀具撤离工件,回到退刀点,取消刀具半径补偿。与建立刀具半径补偿过程类似,退刀点也应位于零件轮廓之外,退出点距离加工零件轮廓较近,可与起刀点相同,也可以不相同。如图3-34所示,假如退刀点与起刀点相同的话,其刀具半径补偿取消过程的程序如下:

N100 G01 X0 Y0;  /*加工到工件原点

N110 G01 G40 X-10.0 Y-10.0; /*取消刀具半径补偿,退回到起刀点

N110也可以这样写:

N110 G01 G41 X-10.0 Y-10.0 D00;或N110 G01 G42 X-10.0 Y-10.0 D00;因为D00中的偏置量永远为0。

下面举一例子来说明刀具半径补偿指令的应用。

img128

图3-35 刀具半径补偿指令应用

例3.1 加工零件如图3-35所示。选择零件编程原点在O点,刀具直径为φ12mm,铣削深度为5mm,主轴转速为600r/min,进给速度为600mm/min,刀具偏移代号为H03,程序名为00600,起刀点在(0,0,10)。程序如下:

N10 G92 X0 Y0 Z10

N20 M03 S600

N30 G90 G00 X-55 Y-60

N40 G00 Z-5 M08

N50 G41 G01 X0 Y0 H03 F600

N60 G91 G01 X40 Y40

N70 G03 X20 Y0 I10 J0

N80 G01 X10

N90 G02 X10 Y-10 I0 J-10

N100 G01 Y-30

N110 G01 X-90

N120 G90 G40 G01 X-55 Y-60 M09

N130 G00 Z10 M05

N140 G00 X0 Y0

N150 M30

参数设置:H03=6

(5)刀具半径补偿中产生过切的情况:

1)加工小于刀具半径的圆弧内侧(图3-36) 指令的圆弧半径小于刀具半径时,内侧偏置会产生过切,因此,在其前面的程序段开始之后报警停止。但是最前面的程序段停止时,因为移到了其程序段的终点,可能会产生过切。

2)加工小于刀具半径的沟槽(图3-37) 由刀具半径补偿制作的刀具中心轨迹与编入程序轨迹的方向相反时,会产生过切,因此,在其前一程序开始之后报警并停止。

img129

图3-36 加工小于刀具半径的圆弧内侧

img130

图3-37 加工小于刀具半径的沟槽

(6)使用刀具半径补偿指令需注意的是:

1)存放刀具半径值的地址由H偏置代号指定。通过操作面板手动输入;

2)从无刀具补偿状态进入刀具半径补偿方式时,移动指令只能是G01或G00,不能使用 G02和G03;

3)在撤销刀具半径补偿时,移动指令也只能是G01或G00,而不能用G02或G03;

4)若H代码中存放的偏移量为负值,那么G41与G42指令可以互相取代。

3.三维刀具半径补偿

以上所说的刀具半径补偿均是对二维轮廓加工而言的。对于多坐标数控加工,一般的CNC系统目前还没有三维刀具半径补偿功能,编程员在进行零件加工编程时必须考虑刀具半径的影响。对于同一零件,采用相同类型的刀具加工,当刀具半径不同时,必须编制不同的加工程序。但在现代先进的CNC系统中,有的已具备三维刀具半径补偿功能。

1)若干基本概念

A加工表面接触点坐标及单位法矢量 对于三维刀具半径补偿,要求已知加工表面上刀具与加工表面的接触点坐标及单位法矢量,如图3-38所示。

img131

图3-38 加工表面接触点坐标及单位法矢量

B刀具类型及刀具参数 本章所说的三维刀具半径补偿方法适用于如图3-39所示的三种刀具类型。

img132

图3-39 刀具类型及刀具参数

C刀具中心 如图3-39所示,定义球形刀(R=R1)的球心O、环形刀(R<R1)的刀刃圆环中心O、端铣刀(R1=0)的底面中心O为刀具中心。

2)功能代码设置

三维刀具半径补偿建立用G141实现。撤销三维刀具半径补偿用G40或按RESET或按MANUAL CLEAR CONTROL。G141与G41,G42,G43,G44为同一G功能代码组,当一个有效时,其余4个无效。当G141有效时,下列功能可编程:G00,G01,G04,G40,G90,G91,F,S。

3)编程格式

程序段基本格式为:

G01 X_ Y_ Z_ I_ J_ K_

刀具参数用G141设置,格式如下:

G141 R_ R1_

如果不定义R和R1,则自动将它们设置为0。

例3.2 加工如图3-40所示的内外轮廓。刀具T02为φ8mm的端铣刀,半径补偿号为D02,长度补偿号为H02。

外轮廓加工采用刀具半径左补偿,沿圆弧切线方向切入1P→2P,切出时也沿切线方向P2→P3。内轮廓加工采用刀具半径右补偿,P4→P5为切入段,P6→P4为切出段。外轮廓加工完毕取消刀具半径左补偿,待刀具至P4点,再建立刀具半径右补偿。数控程序如下:

O0010

N0010 G54 G17 G21 G90 T02;

N0020 M06;

N0030 M03 S800;

N0040 G43 G00 Z50.0 H02;

N0050 G00 X100.0 Y100.0;

N0060 G41 G01 X20.0 Y-40.0 F100 D02;

N0070 G01 Z-4.0;

N0080 X0 Y-40.0;

N0090 G02 X0 Y-40.0 I0 J40.0;

N0100 G01 X-20.0;

N0110 G00 Z50.0;

N0120 G40 G01 X-30.0 Y10.0 F110.0;

N0130 G01 X0 Y15.0;

N0140 G42 G01 X0 Y0 D02;

N0150 G01 Z-4.0;

N0160 G02 X-30.0 Y0 I-15.0 J0;

N0170 G02 X30.0 Y0 I30.0 J0;

N0180 G02 X0 Y0 I-15.0 J0;

N0190 G00 G40 X0 Y15.0;

N0200 G49 G00 Z300.0;

N0210 G28 Z100.0 M05;

N0220 M02;

img133

图3-40

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈