2.2手工程序编制 二、程序编制的标准规定和代码 (五)准备功能(G)和辅助功能(M)
与插补有关的准备性工艺指令,也称为“G功能指令”,简称G功能、G指令或G代码。 该指令的作用主要是指定数控机床的加工方式,为数控装置的插补运算、刀补运算、固定循环等作好准备。 G指令由字母G和后续的2位数字组成,从G00到G99共有100种。 G指令有两种 非模态指令:这种G代码只在被指定的程序段才有意义。 模态指令:在同组其它G代码出现以前一直有效。
使刀具在工件坐标系中快速定位到指令指定的位置。 不同组的G代码在同一程序段中可以指定多个,如果在同一程序段中指定了两个或两个以上的同组G代码,则后指定的有效。 (1)定位(快速)指令(G00) 指令格式: G90/G91 G00 α- β- γ- ; 功能: 使刀具在工件坐标系中快速定位到指令指定的位置。 绝对编程时,表示终点坐标值 增量编程时, 表示刀具运动的距离
不能用F指令快速进给速度。 刀具运动路线可以用参数选择两种方式: 刀具以各轴单独的快速进给速度运动,其轨迹一般是折线; 非插补定位轨迹 刀具轨迹同直线插补(G01)一样。 直线插补定位轨迹
开始时加速到指定的快进速度,在接近程序段终点时进行减速,并且确认到达定位位置后转入下个程序段。 注意: 即使有直线插补定位方式,为了安全,仍然要使用非插补定位方式。
(2)直线插补指令(G01) 功能: 该指令使刀具沿直线(或斜线)进行插补。 指令格式: G90/G91 G01 α- β- γ- F-; 执行G01 指令时,刀具以设定的进给速度F运动到指令的终点。 速度F为模态指令。 速度F沿着刀具轨迹方向度量。 没有指定F指令,被看做是零速度。
直线插补指令的应用举例: 直线轴插补 G91G01 X2000.0 Y1000.0 F200; 旋转轴插补 G91 G01 C-90.0 F300;
(3)圆弧插补指令(G02,G03) 功能: 使刀具沿着圆弧运动。 顺时针圆弧插补:G02 逆时针圆弧插补:G03 指令格式: G17 { G02 / G03 } X__ Y__ { ( I__ J__ ) / R__ } F__ ; G18 { G02 / G03 } X__ Z__ { ( I__ K__ ) / R__ } F__ ; G19 { G02 / G03 } Y__ Z__ { ( J__ K__ ) / R__ } F__ ;
顺、逆圆弧的判断: 从垂直于圆弧所在平面的坐标轴的负向看,顺时针旋转的圆弧即谓顺时针圆弧,反之即为逆时针圆弧。
圆弧的终点由地址X、Y和Z来确定。 绝对值模态下,地址X、Y、Z给出了圆弧终点在当前坐标系中的坐标值; 增量值模态下,地址X、Y、Z给出的则是在各坐标轴方向上当前刀具所在点到终点的距离。
I、J、K 分别为在X、Y、Z三个坐标方向圆心相对圆弧起点的距离,符号由它们的方向来确定。
还可用给定半径和终点位置的方法对一段圆弧进行编程,用地址R来给定半径值。 编程一个整圆只能使用给定圆心的方法。 圆弧插补的几点限制: ①当I、J、K和R同时被指令时,则用R指令的圆弧优先,其它被忽略。
② 如果指令了圆弧插补平面不存在的轴,将有报警显示。 ③ 当指令了一个圆弧的中心角接近180°的圆弧时,计算圆心坐标将产生误差,这时圆心要用I、J和K指令。
车圆弧时,不可能一刀就把圆弧车好,这样吃刀量太大,容易打刀。 可以先车一个圆锥,再车圆弧。 注意:车锥时起点和终点的确定,若确定不好则可能损伤圆弧表面,也有可能将余量留得太大。 对于较复杂的圆弧,用车锥法较复杂,可用车圆法。
螺旋线插补指令(G02,G03) G02 表示顺时针螺旋线插补 G03 表示逆时针螺旋线插补 功能:在进行圆弧插补的同时,沿垂直于插补平面的坐标方向做同步运动,构成螺旋线插补运动。 螺旋线插补的进给速度F为圆弧插补与直线运动的合成速度。 通常设置为数控铣床的选择功能,可用于圆柱螺旋槽的加工。
编程格式: G17 G02/G03 X_Y_Z_R(I、 J)_E_F_; 螺旋线导程 说明: ① YZ 、ZX平面内螺旋线插补指令的格式基本相同,但I、J、K等表示形式随坐标平面不同。 ② 螺旋线的终点坐标X、Y必须在螺旋线上。 ③ 半径补偿对螺旋线插补不起作用。 ④ 在螺旋线插补的程序段中,刀具长度补偿不能使用。
G03 X0 Y0 Z50.0 I20.0 J0 E25.0 F80; G02 X40.0 Y0 Z50.0 I-20.0 J0 E25.0 F80;
注意: 螺旋线插补指令可在其它情况下,通过巧妙安排,解决生产中的一些问题。 如立铣刀加工内腔或沟槽,沿螺旋线进行插补,会收到“事半功倍”的效果。
(4)暂停指令(G04) 功能:下一个程序段延迟规定的时间后执行。该指令格式为: G04 X(P) ; 其中:X —指定的时间(允许带小数点,暂停的时间单位为秒); P —指定的时间 (不允许带小数点,暂停的时间单位为毫秒)。 应用: 在棱角加工时,为了保证棱角尖锐,使用暂停指令; 对不同孔加工作深度控制时,在刀具进给到规定深度后,用暂停指令停止进刀,得主轴转一转以上后退刀,以使孔底平整; 镗孔完毕后要退刀时,为避免留下螺纹划痕而不影响光洁度,应使主轴停止转动,并停留1~3秒;待主轴完全停止转动后再退刀; 横向车削时,应使主轴转过一转以后再退刀,可用暂停指令; 在车床上倒角或打中心孔,为使倒角表面和中心孔锥面平整,可用暂停指令等等。
⑸G06抛物线插补 也是一种轮廓控制方式,它通过一个或两个程序中信息产生抛物线的弧线,形成这段弧线的各坐标轴上的速度变化有数控装置控制。 ⑹G08、G09自动加减速指令 G08表示从当前的静止或运动状态以指数函数加速到程序规定的速度; G09表示在接近程序规定位置时,开始从程序规定的速度以指数函数自动减速。
(7)极坐标尺寸指令(G10,G11) 刀具运动所达到点的坐标值可用半径和角度的极坐标表示。 极坐标平面用G17、G18或G19指令选择,例如XY平面,第一轴(X)指令半径,第二轴(Y)指令角度。 角度的方向以所选择坐标平面第一轴的正方向为基准,逆时针方向旋转为正,顺时针方向旋转为负。
绝对、增量指令 坐标平面选择 G10为极坐标编程的快速运动; G11为极坐标编程的直线插补(西门子系统中采用),使用G11时要给定F。 格式:G90 G10 X_ Y_ P_ A_ LF G91 G11 式中,X、Y——点群中心点M的坐标(mm),(可以是绝对值或增量值); P——矢径(mm); A——孔中心点或直线交点与点群中心点连线同水平轴的夹角(度)。 绝对、增量指令 坐标平面选择
G90,工件坐标系的零点是极坐标系的原点,并以此度量半径 X_Y_,指定所选极坐标平面的轴地址,第一轴指令半径,第二轴指令角度。
当用局部坐标系(G52)时,局部坐标系的原点成为极坐标系的中心点(极点),被编程的半径用局部坐标系的中心点到指令点的距离表示。
注意:在极坐标指令方式下,规定圆弧插补指令、螺旋线切削指令的半径用R。 下面指令不能作为极坐标指令的一部分: 暂停(G04) 编程数据输入(G10) 设置局部坐标系(G52) 改变工件坐标系(G92) 选择机床坐标系(G53) 存储行程校验(G22) 比例缩放(G51)
例:加工P24图2.2.5的六边形,用绝对值坐标(G90),编程如下: N12 G90 G10 X50.0 Y35.0 P20.0 A0.0 LF N13 G11 A60.0 F750.0 LF N14 A120.0 LF N15 A180.0 LF N16 A240.0 LF N17 A300.0 LF N18 A0.0 LF M P6 P5 P4 P3 P2 P1 N12 X O Y 70 50 35 图2.2.5 极坐标编程
G18 (8)坐标平面设定指令(G17,G18,G19) G19 G17
⑼G22、G23存储行程极限 刀具运动范围可用下述两个方法限制: 第一,存储行程限位1,用参数设定边界,设定的边界之外为禁止区,通常有机床制造厂设定,并设定在机床的最大行程处,即软件限位; 第二,存储行程限位2,用参数或指令规定,规定区域的内侧或外侧为禁止区,具体为内侧还是外侧有参数定。 用G22指令建立或改变禁区,G23指令用来解除禁区。 格式:G22 X_ Y_ Z_ I_ J_ K_ * 式中,X、Y、Z——坐标轴的上限尺寸(大尺寸); I、J、K——与之对应坐标的下限尺寸(小尺寸)。
G22和G23指令只能在单独程序段中指定,刀具进入禁区就会产生报警,此时只能向反向移动。有的系统用G25和G26指令设定可编程安全区。G25设定某坐标平面的安全下限尺寸(小尺寸),G26设定上限尺寸(大尺寸)。 格式:G25 X_ Z_ LF G26 X_ Z_ LF 上面格式中,X、Z坐标尺寸为安全区的下限尺寸;下面格式中,X、Z坐标尺寸为安全的上限尺寸。
(10)关于参考点的G代码 参考点是机床上的固定点。它是用参数在机床坐标系中设置参考点坐标的方法而设定的,最多可以设置四个参考点。 一般作为换刀点和坐标系测量零点等使用,通过参考点返回功能可以便刀具很容易移动到参考点上。
有两种方法可以使刀具移动到参考点: 手动返回参考点 数控机床接通电源后 自动返回参考点 在加工过程中换刀 (1)返回参考点校验指令(G27) 校验刀具是否正确地返回到用指令设置的参考点位置。 指令格式: G27α- β- γ- δ-;
执行该指令时,刀具快速运动,在被指令的位置上定位。 如果到达的位置是参考点,则返回参考点指示灯亮;如果只有一个轴正确地返回到参考点,则相对应轴的参考点指示灯亮。 若刀具到达的位置不是参考点,在定位之后报警显示。
执行时,各轴以快速定位到指令轴的中间点,然后再快速移到参考点位置。 一般在自动换刀时使用。 自动返回参考点指令(G28) 指令格式: G28α- β- γ- δ-; 中间点 执行时,各轴以快速定位到指令轴的中间点,然后再快速移到参考点位置。 一般在自动换刀时使用。 为了安全,在执行这个指令之前,取消刀具半径补偿和刀具长度补偿。
G28指令中的坐标值将被NC作为中间点存储,另一方面,如果一个轴没有被包含在G28指令中,NC存储的该轴的中间点坐标值将使用以前的G28指令中所给定的值。例如: N1 X20.0 Y54.0; N2 G28 X-40.0 Y-25.0;中间点坐标值(-40.0,-25.0) …… N10 G28 Z31.0;中间点坐标值(-40.0,-25.0,31.0)
(3)返回到第二、第三或第四参考点指令(G30) 指令格式: G30 P2 α- β- γ- δ-; G30 P3 α- β- γ- δ-; G30 P4 α- β- γ- δ-; 注意: 该指令只能在自动返回第一参考点(G28)或手动返回参考点以后使用。 当换刀点位置与第一参考点不同时,G30指令被用于运动到自动换刀(ATC)点。
第二参考点也是机床上的固定点,它和机床参考点之间的距离由参数给定。 第二参考点作用: 主要用于换刀。 因此,零件加工程序中,在自动换刀之前必须编写G30,否则执行M06指令时会产生报警。 被指令轴返回第二参考点完成后,该轴的参考点指示灯将闪烁,表示返回第二参考点的完成。
机床X和Y轴的第二参考点出厂时的设定值与机床参考点重合,Z轴不同。 自动从参考点返回指令(G29) 该指令使刀具从参考点经过中间点按指令的坐标轴以各轴的快速运动速度自动地返回到设定点。 一般在G28或G30后使用G29指令,指令格式: G29 α- β- γ- δ-; 目的点坐标
同样的操作对G30也适用。 G28 G90 X1000.0 Y700.0;*(由A到B程序) T1111;
(11)工件坐标系设定指令(G92或G50) 功能:通过确定对刀点距工件坐标系原点的距离,而设定工件坐标系。 加工时,因工件的装夹位置是相对于机床而固定的,所以工件原点在机床坐标系中的位置也就确定了。 通过对刀,获得工件原点在机床坐标系中的位置数据,用指令(G92或G50)的方式确定工件坐标系与当前刀具位置的关系。这样在工件坐标系中编制的程序便能在机床坐标系中运行了。
指令格式: (G90)G92(G50) X- Y- Z-γ- δ-; 如: N12 G92 X400.0 Z250.0;
如:N10 G92 X180.0 Y150.0;
该指令建立一个新的工件坐标系,使得在这个工件坐标系中,当前刀具所在点的坐标值为X- Y- Z- 指令的值。 G92指令是一条非模态指令,但由该指令建立的工件坐标系却是模态的。实际上,该指令也是给出了一个偏移量,这个偏移量是间接给出的,它是新工件坐标系原点在原来的工件坐标系中的坐标值。 从G92的功能可以看出,这个偏移量也就是刀具在原工件坐标系中的坐标值与X- Y- Z-指令值之差。
使用预置的工件坐标系(G54~G59) 在机床中,可以预置六个工件坐标系,通过在面板上的操作,设置每一个工件坐标系原点相对于机床坐标系原点的偏移量,然后使用G54~G59指令来选用它们。
坐标值尺寸G代码 绝对值和增量值编程指令(G90,G91) 表示刀具(或机床)运动位置的坐标值,都是相对于固定的坐标原点给出的 绝对坐标 表示的刀具(或机床)运动位置的坐标值是相对于前一位置的,而不是相对于固定的坐标原点给出的 增量(相对)坐标
指令格式: G90 X- Y- Z- ;绝对指令 G91 X- Y- Z- ;相对指令 相对坐标与运动方向有关,有的系统也使用第二坐标U、V、W表示增量坐标,且U、V、W分别与X、Y、Z平行且同向。
数控机床编程时,可采用绝对值编程、增量值编程或二者混合编程。 用G90指定绝对坐标,G91指定增量坐标时,同一条程序段中只能用一种,不能混用。 绝对坐标值的尺寸字地址符用X、Y、Z,增量坐标值的尺寸字地址符用U、V、W时,同一程序段中绝对坐标和增量坐标可以混用,这种方法叫混合编程。 例如: G00 X100.0 W-20.0;
⒀G31跳步指令 该指令和G01一样,能够进行直线插补,若在此指令执行过程中,从外部输入跳步信号,则中断本程序段中的剩余部分,开始执行下一程序段。G31指令是非模态的,即仅在本程序段起作用,输入跳步信号后,下一个程序段的运动终点取决于该程序段指令是增量的,还是绝对的。如P27图2.2.7为跳步指令应用的例子。
a)图程序 G91 G31 X100.0 * G01 Y50.0 * b)图程序 G90 G31 X300.0 * G 01 X400.0 Y280.0 * 图中,实线为输入跳步信号的刀具轨迹,虚线为不输入跳步信号的刀具轨迹G31用于移动量不明确的场合,如磨床的定尺寸进给,实现定量进给或刀具相对于工件定位。 (b) X Y O 400 300 280 200 100 跳步信号输入处 (a) 50 图2.2.7 跳步指令
(14)切削螺纹指令(G33) 功能: 加工固定导程的等距直螺纹。 螺纹切削指令格式: G33 X(U)- Z(W)- F(E)- Q-;
例如,加工螺纹的长度10mm,螺距1.5mm,指令为: G33 G91 Z-10.0 F1.5; 注意: ① 在螺纹粗加工和精加工过程中,不能使用“进给速度倍率”调节速度,进给速度倍率应固定在100%。 ② 螺纹加工时“进给速度保持”无效。此时按下进给保持按钮,使机床在螺纹加工后的下一个程序段终点停止。
FANUC的某些系统还采用G33、G34/G35/G36代码作为等导程螺纹切削指令和变导程螺纹切削指令,指令格式分别为: 格式:G34(G36) X_ Z_ I_ K_ F_ Q_ * 或 G35(G36) X_ Z_ R_ F_ Q_ * 式中,G35——顺时针圆弧螺纹指令; G36——逆时针圆弧螺纹指令; X、Z、I、K、R——圆弧插补参数,其它符号意义同上。 编制螺纹加工程序时,空转无效;不能使用进给保持功能;不能使用“恒表面速度”指令;切削螺纹的最大螺距,换算成每分进给速度时,不能超过系统允许的最大进给速度。
⒂G60、G61为准确定位 G60为“高精度”的准确定位指令,其指令格式同G00 G60可以实现“单向趋进”,用参数设定定位方向和过冲量,过冲量是定位方向与运动方向不一致时,坐标轴运动超过给点距离,冲过这段距离后,再反向定位到给定点,在一般数控系统单向定位时,即使坐标运动方向与定位方向一致时,也要在到达终点前的“过冲量”处停一下,然后在定位到给定点; G61为“中等精度”的准确定位指令。 在一个程序段序列中,如果一开始使用了G61,则每个程序段终点都要减速到0,才能开始执行下一个程序段,直到遇到G64指令(结束G61指令的指令),才能结束这种状态。
⒃ G65、G66为调用宏指令开始和调用宏指令结束 该指令在程序的开始,坐标系设置之前,用单独的程序段设定。 其格式: G70;英制输入 G71:公制输入