数控编程的功能指令准备功能指令准备功能G指令是使数控机床建立起某种加工方式的指令,为插补运算、刀具补偿、固定循环等作好准备。
G指令由地址符G和其后的两位数字组成,从G00~G99共100种。
JB/T3028—1999标准规定见表2-2所示。
G指令(代码)有两种:模态指令(代码)和非模态指令(代码)。
模态代码又称续效代码,表内标有a、c、d…字母的表示所对应的第一列的G代码为模态代码,字母相同的为一组,同组的任意两个G代码不能同时出现在一个程序段中。
模态代码一经在一个程序段中指定,便保持到以后程序段中直到出现同组的另一代码时才失效。
表内标有“*”的表示对应的G代码为非模态代码,非模态代码只有在所出现的程序段有效。
对于同一台数控机床的数控装置来说,它所具有的G功能指令只是标准中的一部分,而且各机床由于性能要求不同,也各不一样。
下面对常用的G指令及其编程方法作一介绍。
表2-2准备功能G代码(JB/T3208—1999)注:1.“#”号表示如选作特殊用途,必须在程序格式说明中说明。
2.如在直线切削控制中没有刀具补偿,则G43到G52可指定作其他用途。
3.在表中左栏括号中的字母(d)表示:可以被同栏中没有括号的字母d所注销或替代,也可被有括号的字母(d)所注销或替代。
4.G45到G52的功能可用于机床上任意两个预定的坐标。
5.控制机上没有G53到G59、G63功能时,可以指定其他用途。
(1)坐标系有关指令①绝对尺寸与增量尺寸指令(G90/G91)G90表示程序段中的尺寸字为绝对尺寸,G91表示程序段中的尺寸字为增量尺寸。
G90是以各轴移动的终点位置坐标值编程,G91是以各轴的移动量直接编程。
它们均为续效指令。
注意:有些数控系统没有绝对和增量尺寸指令,当采用绝对尺寸编程时,尺寸字用X、Y、Z表示;当采用增量尺寸编程时,尺寸字用U、V、W表示。
②平面选择指令(G17、G18、G19)G17、G18、G19分别表示在XY、ZX、YZ坐标平面内进行加工,常用于确定圆弧插补平面、刀具半径补偿平面,它们均为续效指令。
有的数控机床(如数控车床)只在一个平面内加工,则在程序中不必加入平面选择指令。
立式数控铣床大都在XY平面内加工,故G17可以省略。
③工件坐标系设定指令(G92/G50)G92指令是规定工件坐标系原点的指令,工件坐标系原点又称编程零点。
当用绝对尺寸编程时,必须先建立一坐标系,用来确定刀具起点在坐标系中的坐标值。
格式:G92 X__ Y__ Z__;(数控铣床、加工中心)G50 X__ Z__;(数控车床)坐标值X、Y、Z为刀位点在工件坐标系中的初始位置。
执行G92指令时,机床不动作,即X、Y、Z轴均不移动,但CRT显示器上的坐标值发生了变化。
注意:有些数控机床直接采用零点偏置指令(G54~G59)来设定工件坐标系。
④零点偏置指令(G54~G59)G54~G59可设定的零点偏置给出工件零点在机床坐标系中的位置(工件零点以机床零点为基准的偏移量)。
工件装夹到机床上后,通过对刀求出偏移量,并通过操作面板输入到规定的数据区,程序可以通过选择相应的功能G54~G59激活此值。
图2-9所示是工件坐标系与机床坐标系之间的关系,假设编程人员使用G54设定工件坐标系编程,并要求刀具运动到工件坐标系中X100.0 Y50.0 Z200.0的位置,程序可以写成:G90 G54 G00 X100.0 Y50.0 Z200.0;图2-9工件坐标系快速点定位指令(G00)G00指令用于命令刀具以点定位控制的方式从刀具所在点用最快的速度运动到程序上规定的位置,运动中无轨迹要求。
不同的坐标轴运动可以不协调。
格式:G00 α__ β__ γ__;式中,α、β、γ分别是X、Y、Z或U、V、W。
注意:G00是续效指令,只有后面的指令给定了G01、G02或G03时,G00才无效。
指定G00的程序段无需指定进给速度指令F,如果指定了,无效。
G00移动的速度已由生产厂家设定好,一般不允许修改。
(3)直线插补指令(G01)G01用以指令两个坐标(或三个坐标)以联动的方式,按程序段中规定的进给速度F,插补加工出任意斜率的直线。
刀具的当前位置是直线的起点,在程序段中指定的是终点的尺寸字。
在G01程序段中必须指定进给速度F,且G01与F都是续效指令。
格式:G01 α__ β__ γ__ F__;式中,α、β、γ意义同上,F指令指定移动速度。
(4)圆弧插补指令(G02/G03)圆弧插补指令G02、G03分别指令刀具相对于工件顺时针及逆时针运动进行圆弧加工。
顺、逆圆弧的判别方法是:在圆弧插补中沿垂直于要加工圆弧所在平面的坐标轴由正方向向负方向看,刀具相对于工件的转动方向是顺时针方向为G02,逆时针方向为G03,如图2-10(数控车床)及图2-11(数控铣床与加工中心)所示。
在数控车床中,如从上往下看,顺、逆方向正好与常规的相反,在编程中必须注意这一点。
圆弧插补程序段应包括圆弧的顺逆圆插补指令、圆弧的终点坐标以及圆心坐标(或半径)。
图2-10 数控车床的G02与G03 图2-11 数控铣床(加工中心)的G02与G03格式:G17 G02/G03 X__ Y__ R__(或I__ J__) F__;(XY平面圆弧)G18 G02/G03 X__ Z__ R__(或I__ K__) F__;(XZ平面圆弧)G19 G02/G03 Y__ Z__ R__(或J__ K__) F__;(YZ平面圆弧)在数控车床中,G18可省略;在数控铣床(或加工中心)中,G17可省略。
X、Y、Z是圆弧终点坐标值,其值可以用绝对尺寸也可以用增量尺寸。
R是圆弧半径,当圆弧所对应的圆心角小于180°时,R取正值;当圆心角等于或大于180°时,R取负值。
I、J、K分别表示圆心相对于圆弧起点在X、Y、Z轴方向的坐标增量,其值与G90无关。
注意:I、J、K为零时可以省略;在同一程序段中,如I、J、K与R同时出现时,R有效。
用R编程时,不能加工整圆(即封闭圆),加工整圆时,只能用圆心坐标I、J、K编程。
(5)暂停(延迟)指令(G04)G04指令可以使刀具暂时停止进给(但主轴仍然在转动),经过指令的暂停时间后再继续执行下一程序段。
此指令常用于切槽、钻孔到孔底、锪平底孔等对表面粗糙度有要求的场合。
格式:G04 ?ψ__;式中,ψ为地址符,常用X或P表示。
后面的暂停时间单位为s或ms,也可以是刀具或工件的转数,具体参见数控系统的规定。
(6)刀具半径补偿指令(G41/G42、G40)在加工曲线轮廓时,利用刀具补偿指令可不必求出刀具中心的运动轨迹,只按被加工工件的轮廓曲线编程,同时在程序中给出刀具半径补偿指令,就可加工出具有轮廓曲线的工件,使编程工作大大简化。
另外,当刀具磨损或刀具重磨以及中途更换刀具后,使刀具直径变小,这时利用刀具半径补偿功能,只需在控制面板上用刀补开关或键盘手工输入方式改变刀具半径补偿值即可(可不必修改已编好的程序)。
G41为左偏刀具半径补偿指令,即沿刀具运动方向看(设工件不动),刀具位于工件轮廓的左边;G42为右偏刀补指令;G40为刀具半径补偿注销指令,即使用该指令后,让G41或G42指定的刀补无效,使刀具中心与编程轨迹重合。
图2-12为刀具半径补偿示例。
利用刀具半径补偿功能可用同一程序、同一把刀具进行粗精加工。
设精加工余量为Δ,则粗加工时手工输入的刀具补偿量为r+Δ(r为刀具半径),精加工时输入的刀具补偿量为r,如图2-13所示。
此外,利用刀补功能还可进行阴、阳模具的加工。
用G42指令得到阳模轨迹,用G41指令得到阴模轨迹。
这样,使用同一加工程序可以加工基本尺寸相同的内外两种轮廓的模具。
图2-12刀具半径补偿示例图2-13刀具半径补偿功能示例格式:G00(或G01)G41 X__ Y__ D__;(左刀补)G00(或G01)G42 X__ Y__ D__;(右刀补)G00(或G01)G40 X__ Y__;(刀补注销)式中D为补偿号,即存放刀补值的存储器地址号。
刀补号和对应的补偿值可用MDI输入。
(7)刀具长度补偿指令(G43/G44)刀具长度补偿指令一般用于刀具的轴向补偿。
其作用是使刀具在轴向的实际位移量大于或小于程序给定值,即输入的补偿量与程序给定的坐标值相加(G43)或相减(G44)。
给定的程序坐标值与输入的补偿值都可正可负,由需要而定。
格式:G43/G44 Z__ H__;式中的Z值是程序中的指令值;H为补偿代号,是刀具补偿存储器的地址号,在该存储器的补偿地址号中存储着补偿值。
执行G43或G44指令的结果如图2-14所示。
G43时:Z实际值=Z指令值+(H__)G44时:Z实际值=Z指令值-(H__)刀具长度补偿可采用取消刀补指令G40或用G43 H00和G44 H00注销。
(8)固定循环指令在G功能代码中,常选用G80~G89作为固定循环指令。
有些数控车床,采用G33~G35与G70~G79作为固定循环指令。
固定循环指令可简化程序,提高编程质量。
例如车螺纹时,刀具切入、切螺纹、刀具径向(可斜向)退出再快速返回四个固定的连续动作,只需用一条固定循环指令去执行,这样可使程序段数减少三辅助功能指令辅助功能M指令是用于指定主轴的旋转方向、启动、停止、冷却液的开关、工件或刀具的夹紧或松开等功能。
辅助功能指令由地址符M和其后的两位数字组成。
JB/T3028—1999标准中规定如表2-3。
M指令常因生产厂家及机床的结构和规格不同而各异。
下面对一些常用的M功能指令作一说明。
表2-3辅助功能M代码(JB/T3208—1999)注:1.“#”号表示如选作特殊用途,必须在程序说明中说明。
2.M90~M99可指定为特殊用途。
(1)程序停止指令(M00)M00实际上是一个暂停指令。
当执行有M00指令的程序段后,主轴停转、进给停止、切削液关、程序停止。
程序运行停止后,模态(续效)信息全部被保存,利用机床的“启动”键,便可继续执行后续的程序。
该指令经常用于加工过程中测量工件的尺寸、工件调头、手动变速等操作。
(2)计划(选择)停止指令(M01)该指令的作用与M00相似,但它必须是在预先按下操作面板上的“选择停止”按钮并执行到M01指令的情况下,才会停止执行程序。
如果不按下“选择停止”按钮,M01指令无效,程序继续执行。
该指令常用于工件关键性尺寸的停机抽样检查等,当检查完毕后,按“启动”键可继续执行以后的程序。
(3)程序结束指令(M02、M30)该指令用在程序的最后一个程序段中。
当全部程序结束后,用此指令可使主轴、进给及切削液全部停止,并使机床复位。
M30与M02基本相同,但M30能自动返回程序起始位置,为加工下一个工件作好准备。