首页 百科知识 常用准备功能指令及用法

常用准备功能指令及用法

时间:2023-10-16 百科知识 版权反馈
【摘要】:G代码是与插补有关的准备功能指令,在数控编程中极其重要。以下介绍常用的G代码指令及其编程方法。G92指令用于实现此功能。对于机床操作者来说,必须十分清楚所选用的数控机床的上述各原点及其之间的偏移关系,不同的数控系统,程序原点设置和偏移的方法不完全相同,必须参考机床用户手册和编程手册。暂停指令在上一程序段运动结束后开始执行。G04为非模态指令仅在本程序段有效。这些指令在进行圆弧插补和刀具补偿时必须使用。

3.4.1 常用准备功能指令及用法

G代码是与插补有关的准备功能指令,在数控编程中极其重要。目前,不同数控系统的G代码并非完全一致,因此编程人员必须熟悉所用机床及数控系统的规定。以下介绍常用的G代码指令及其编程方法。

1.工件坐标系设定指令

(1)G92:编程原点设定

程序编制时,使用的是工件坐标系,当用绝对值编程时,必须先将刀具的起刀点坐标及工件坐标系的绝对坐标原点(也称编程原点)告诉数控系统。G92指令用于实现此功能。

格式:G92 X_Y_Z_式中:X、Y、Z为当前刀位点在工件坐标系中的绝对坐标,由此也就确定了工件的绝对坐标原点位置。G92指令只是设定工件原点,并不产生运动,且坐标不能用增量U、V、W表示。G92为模态指令,只有在重新设定(一个程序中允许多次设定)时,先前的设定才无效。

例如:加工开始前,刀具初始位置(起刀点)如图3-6所示,则坐标系设定指令为:

G92 X20 Y10 Z10

(2)G54、G55、G56、G57、G58、G59:编程原点偏置

img43

图3-6 工件坐标系设定

在某些零件的编程过程中,为了避免尺寸换算,需多次把工件坐标系平移。将工件坐标(编程坐标)原点平移至工件基准处,称为编程原点的偏置。

一般数控机床可以预先设定6个(G54~G59)工件坐标系,这些坐标系的坐标原点在机床坐标系中的值可用手动数据输入方式输入,存储在机床存储器内,在机床重开机时仍然存在,在程序中可以分别选取其中之一使用。如图3-7所示。

img44

图3-7 工件坐标系与机床坐标系

一旦指定了G54~G59之一,则该工件坐标系原点即为当前程序原点,后续程序段中的工件绝对坐标均为相对此程序原点的值,例如以下程序:

N01 G54 G00 G90 X30 Y40;

N02 G59;

N03 G00 X30 Y30;

执行N01句时,系统会选定G54坐标系作为当前工件坐标系,然后再执行G00移动到该坐标系中的A点(如图3-8所示);执行N02句时,系统又会选择G59坐标系作为当前工件坐标系;执行N03句时,机床就会移动到刚指定的G59坐标系中的B点(如图3-8所示)。

img45

图3-8 工件坐标系的使用

请注意比较G92与G54~G59指令之间的差别和不同的使用方法。G92指令需后续坐标值指定当前工件坐标系,因此必须单独一个程序段指定,该程序段中尽管有位置指令值,但并不产生运动。另外,在使用G92指令前,必须保证机床处于加工起始点,该点称为对刀点。

使用G54~G59建立工件坐标系时,该指令可单独指定(见上面程序N02句),也可与其他程序同段指定(见上面程序N01句),如果该段程序中有位置指令就会产生运动。使用该指令前,先用MDI方式输入该坐标系的坐标原点,在程序中使用对应的G54~G59之一,就可建立该坐标系,并可使用定位指令自动定位到加工起始点。

如图3-9所示描述了一次装夹加工三个相同零件的多程序原点与机床参考点之间的关系及偏移计算方法。

采用G92实现编程原点设置的有关程序为:

img46

img47

采用G54~G59实现编程原点偏移时,首先设置G54~G56原点偏置寄存器的值:

对于零件1:G54 X-6.0 Y-6.0 Z0

对于零件2:G55 X-10.0 Y-9.0 Z0

对于零件3:G56 X-14.5 Y-7.8 Z0

加工程序为:

img48

img49

图3-9 机床参考点向多程序原点的偏移

显然,对于多程序原点偏移,采用G54~G59原点偏置寄存器存储所有程序原点与机床参考点的偏移量,然后在程序中直接调用G54~G59进行原点偏移是很方便的。

采用程序原点偏移的方法还可实现零件的空运行试切加工,具体应用时,将程序原点向刀轴(Z轴)方向偏移,使刀具在加工过程中抬起一个安全高度即可。

对于编程员而言,一般只要知道工件上的程序原点就够了,因为编程与机床原点、机床参考点及装夹原点无关,也与所选用的数控机床型号无关(注意:与数控机床的类型有关)。对于机床操作者来说,必须十分清楚所选用的数控机床的上述各原点及其之间的偏移关系,不同的数控系统,程序原点设置和偏移的方法不完全相同,必须参考机床用户手册和编程手册。

(3)G90、G91:绝对坐标编程与增量坐标编程

G90:绝对坐标编程指令。刀具运动过程中所有的位置坐标均以固定的坐标原点为基准来给出。如图3-10(a)所示,A点坐标为XA=20,YA=32。B点坐标为XB=60,YB=77。

G91:增量坐标编程指令,又叫相对坐标编程指令。刀具运动的位置坐标是以刀具前一点的位置坐标与当前位置坐标之间的增量给出的,终点相对于起点的方向与坐标轴相同取正、相反取负。如图3-10(b)所示,加工路线为AB,则B点相对于A点的增量坐标为UB=40,VB=45。

img50

图3-10 绝对坐标与增量坐标

2.加工方式设置指令

(1)G00:快速点定位

命令刀具以点定位控制方式快速移动到指定位置,用于刀具的空行程运动。进给速度F对G00程序段无效,G00只是快速到位,运动轨迹视系统设计而定。

指令格式 :G00 X_Y_Z_

式中:X、Y、Z分别为G00目标点的坐标。

例如在图3-10中,刀具从A快速运动到B,编程方式为:

绝对方式: G90 G00 X60 Y77

增量方式: G91 G00 X40 Y45

(2)G01:直线插补

命令机床数个坐标间以联动方式直线插补到规定位置,这时刀具按指定的F进给速度沿起点到终点的连线作直线切削运动。

指令格式:G01 X_Y_Z_F_

式中:F用于指定进给速度(mm/min),X、Y、Z分别为G01的终点坐标(mm/min)。

如图3-11所示,要求刀具由O点快速移至A点,然后加工直线AB、BC、CA,最后由A点快速返回起始点。其程序如下:

img51

图3-11 直线插补G01

N001 G92 X0 Y0 ;

N002 S300 M03 ;

N003 G90 G00 X24 Y30 ;

N004 G01 X96 Y70 F100 ;

N005  X168 Y50 ;

N006  X24 Y30 ;

N007 G00 X0 Y0 ;

N008 M05 M02;

(3)G02、G03:圆弧插补指令

使机床在各坐标平面内执行圆弧运动,加工出圆弧轮廓。G02为顺时针方向圆弧插补,G03为逆时针方向圆弧插补。

圆弧的顺时针方向、逆时针方向可按图3-12所示给出的方向进行判别:

沿垂直于圆弧所在平面(如XY平面)的坐标轴向负方向(-Z)看,刀具相对于工件的转动方向是顺时针方向为G02,逆时针方向为G03。

img52

图3-12 圆弧逆顺的区分

圆弧插补程序段的格式主要有两种:(XY平面为例)

① 用圆弧终点坐标和圆心坐标表示

img53

式中:X、Y是圆弧终点坐标,可以用绝对值,也可以用终点相对于起点的增量值,取决于程序段中的 G90、G91指令。I、J是圆心坐标。一般均用圆心相对于起点的增量坐标来表示,而不受G90控制。对于XZ平面,坐标参数相应为X、Z、I、K。YZ平面则为Y、Z、J、K。

② 用圆弧终点坐标和圆弧半径R表示

img54

式中:R为圆弧半径。在同一半径R情况下,从圆弧的起点到终点存在两个圆弧的可能(如图3-13所示),为了区别,用+R表示小于等于180°的圆弧,用-R表示大于180°的圆弧。

img55

图3-13 圆弧用R编程

例如:加工沿弧AB、BC、CD(如图3-14所示),刀具起点在A点,进给速度80mm/min,两种格式编程为:

img56

img57

图3-14 圆弧加工编程图例

如图3-15所示,刀具由坐标原点O快进至a点,从a点开始沿a、b、c、d、e、f、a切削,最终回到原点O,编程如下:

img58

img59

img60

图3-15 直线、圆弧编程图例

在实际铣削加工中,往往要求在工件上加工出一个整圆轮廓,在编制整圆轮廓程序时需注意不用R编程,且圆心坐标I、J不能同时为零。否则,在执行此命令时,刀具将原地不动或系统发出错误信息。

下面以图3-16所示为例,说明整圆的编程方法。

img61

图3-16 整圆编程

用绝对值编程

G90 G02 X45 Y25 I-15 J0 F100;

用增量值编程

G91 G02 X0 Y0 I-15 J0 F100;

(4)G04:暂停指令

使刀具作短时间的暂停(延时),用于无进给光整加工,如车槽、镗孔等场合常用该指令。

指令格式:G04 P

式中:P为暂停时间,单位为毫秒或秒,视数控系统而定。暂停指令在上一程序段运动结束后开始执行。G04为非模态指令仅在本程序段有效。

例如:N055 G04 P3000(延时3秒)

(5)G17、G18、G19:坐标平面选择指令

G17指定在XY平面上加工,G18和G19分别指定在ZX和YZ平面上加工。这些指令在进行圆弧插补和刀具补偿时必须使用。当机床只有一个坐标平面时(如车床),平面选择指令可省略。在XY平面加工,一般G17可省略不写。

例如:G19 G03 Y_Z_J_K_F_  (加工YZ平面的逆圆弧)

(6)G33、G34、G35:螺蚊切削

加工螺纹时,主轴旋转和刀具进给必须同步,为此主轴上要安装位置编码器,同时利用编码器上的“零位信号”,保证螺纹加工从一固定点开始。为了保证螺纹精度。主轴速度还必须保持恒定。

切削螺纹时,X方向和Z方向的值都必须指定,螺距在位移量大的坐标上。通常,由于伺服系统的滞后,使得螺纹切削在开始和终了处导程有误差,因此指定的螺纹长度要比需要的长些。加工多头螺纹时,可在检测到主轴“零位信号”后滞后一定的角度,再开始螺纹切削。

螺纹切削的程序段格式(日本FANUC数控系统)如下:

等螺距:G33 X(U)_Z(W)_F(E)_Q_

变螺距:G34或G35 X(U)_Z(W)_F(E)_Q_K_

其中增螺距用G34,减螺距用G35。

式中:X为螺纹长度的X坐标,直径编程,半径编程时可用指令U;

Z为螺纹长度的Z坐标;

F为Z轴方向螺距;

E表示每英寸牙数;

Q是螺纹切削开始位置的偏移角度;

K为主轴一转时导程的增减值。

3.刀具补偿指令

下面介绍的G代码用于刀具的补偿。数控系统根据刀具补偿指令,可以进行刀具半径尺寸补偿、刀具轴向尺寸补偿和刀具位置偏移。

(1)G40、G41、G42:刀具半径补偿指令

用铣刀或圆头车刀等加工零件时,刀具中心轨迹应在与零件轮廓相距刀具半径的等距线上,计算非常繁琐。采用刀具半径补偿指令,编程时只需按零件轮廓编制,数控系统能自动计算刀具中心轨迹,并使刀具按此轨迹运动,使编程简化。

img62

图3-17 刀具半径补偿

如图3-17所示,其中G41表示刀具半径左补偿(左偏置),指顺着刀具前进方向观察,刀具偏在工件轮廓的左边。G42表示刀具半径右补偿(右偏置),指顺着刀具前进方向观察,刀具偏在工件轮廓的右边。G40表示注销刀具半径补偿,使刀具中心与程序段给定的编程坐标点重合。G41~G42需要与G00~G03等指令共同构成程序段,并要用G17~G19指定坐标平面。

G41、G42与G00、G01构成的指令格式(XY平面为例,Gl7省略)如下:

img63

G41、G42与G02、G03构成的指令格式如下:

img64

式中:X、Y为刀具半径补偿起始点的坐标。D(或H)为刀具半径补偿号代码,补偿号为2位数(D00~D99),补偿值由拨码盘、键盘(MDI)或程序事先输入到刀补存储器中。D(或H)代码是模态的,当刀具磨损或重磨后,刀具半径变小,只需手工输入改变刀具半径或选择适当的补偿量,而不必修改已编好的程序。

G40指令仅能与G00、G01 构成程序段,指令格式为:

img65

式中:X、Y为取消刀具半径补偿点的坐标。

注意:使用G41(或G42)当刀具接近工件轮廓时,数控装置认为是从刀具中心坐标转变为刀具外圆与轮廓相切点的坐标值,而使用G40刀具退出时则相反。如图3-18所示,在刀具接近工件和退出工件时要充分注意上述特点,防止刀具与工件干涉而过切或碰撞。

img66

图3-18 用G41、G40进刀退刀

如图3-19所示为铣刀半径补偿编程示例,图中虚线表示刀具中心运动轨迹。设刀具半径为10mm,刀具半径补偿号为D01,起刀点在原点,Z轴方向无运动,其程序为:

img67

图3-19 刀具半径补偿

img68

(2)G43、G44:刀具长度补偿指令

刀具长度补偿也称刀具长度偏置,用于补偿编程刀具和实际使用刀具之间的长度差。该功能使补偿轴的实际终点坐标值(或位移量)等于程序给定值加上或减去补偿值。

即:实际位移量 = 程序给定值±补偿值

其中,相加称为正偏置,用G43表示;相减称为负偏置,用G44表示。它们均为模态指令。 注销用G40,也可用偏置号H00。采用刀具长度补偿指令后,当刀具长度变化或更换刀具时,不必重新修改程序,只要改变相应补偿号中的补偿值即可。

img69

式中:X、Y、Z 为补偿轴的编程坐标。G17、G18、G19是与补偿轴垂直的相应坐标平面XY、ZX、YZ的代码。H(或D)为刀具长度补偿号代码,可取为H00~H99,其中H00为取消长度偏置。补偿值的输入方法与刀具半径补偿相同。

如图3-20所示,刀具对刀点在编程原点,要加工两个孔,则考虑了刀具长度补偿的加工程序如下:

img70

图3-20 刀具长度补偿

img71

若加工中刀具的实际长度比编程长度短4mm(如图3-20所示),可在刀具长度补偿号H01中输入补偿值K=-4,则上述程序可不变。如果实际使用的刀具长度比编程时的长度长4mm,可在刀具长度补偿号地址H01中输入补偿值K=4,仍可用上述程序加工。

用刀具长度补偿后,在N20 G43 Z-25 H01这一程序段中,刀具在Z方向的实际位移量将不是-25,而是Z+K=-25+(-4)=-29或Z+K=-25+4=-1,以达到补偿实际刀具长度长于或短于编程长度的目的。

4.固定循环指令

固定循环指令是为简化编程将多个程序段的指令按约定的执行次序综合为一个程序段来表示。如在数控机床上进行镗孔、钻孔、攻丝、车螺纹等加工时,往往需要重复执行一系列的加工动作,且动作循环已典型化。这些典型的动作可以预先编好程序并存贮在内存中,需要时可用固定循环的G指令进行调用,从而简化编程工作。不同数控系统所具有的固定循环指令各不相同,编程时应严格按照使用说明书的要求编写,例如FANUC 0系统的G81~G89为孔加工固定循环,G70~G76为车削加工固定循环。这部分内容详见本书第四章。

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

我要反馈