该指令可以使编程形状旋转,如图3-94所示。通过使用这一功能,在安装的工件处在相对于机床旋转的位置上这样的情况,即可通过旋转指令来进行补偿。此外,当存在使一个形状旋转的图形时,通过编写一个形状子程序,在使其旋转后调用该子程序,就可以缩短编程所需的时间和程序长度。
指令格式:
图3-94 坐标系旋转
G17、G18、G19:选择包含要旋转的形状的平面。
X_Y_Z_:用于X、Y、Z轴中的两个轴的绝对指令,这两个轴与当前所指定的平面选择指令(G17~G19之一)对应。
此指令为相对于G68以后的指令值的旋转中心坐标值。
R_:角度位移,正值表示逆时针旋转方向的旋转角度,参数No.5400#0=0,旋转角度R用绝对坐标指令;No.5400#0=1,旋转角度R用G90绝对或G91增量指令。单位:0.001°,指令范围为-360.000~360.000。
图3-95 坐标系旋转
注释:如图3-95所示,当在旋转角度指令R中使用小数点时,小数点的位置以度为单位。分、秒都要转换成以度为单位的数值。例如28°48′,化成28.8°,编程为R28800或R28.8。
说明:
1)平面选择G代码。G17、G18或G19用于平面选择的指令G代码(G17、G18、G19)可在含有坐标旋转的指令G代码(G68)的程序段前面指定。在坐标系旋转方式下,不应指定G17、G18或G19。
2)坐标系旋转方式下的增量指令。针对在指定G68后在绝对指令之前的增量指令,指定了G68时的刀具位置即被认为是旋转中心(见图3-95)。
3)旋转中心。在没有指定旋转中心(α,β)的情况下,指定G68时刀具的位置就成为旋转中心。
4)旋转角度指令。当省略旋转角度指令R_时,在参数No.5410中设定的值被认为是角度。
旋转角度指令R_,在将参数No.11630#0设定为“1”时,可以采用0.00001°为单位。这种情况下的指令范围为-36000000≤R≤36000000。
5)坐标旋转取消。坐标旋转取消指令的G代码为G69,可以与别的指令一起指定在相同的程序段中。
6)刀具补偿。刀具半径补偿、刀具长度补偿、刀具位置偏置和其他补偿操作在坐标旋转后进行。
7)与返回参考点/坐标系相关的指令。在坐标旋转方式下,不能指定与参考点有关的G代码(G27~G30等)和用来改变坐标系的指令(G52~G59、G92等)。在指定这些G代码时,请先取消坐标旋转方式。没有取消坐标旋转方式就指令时,会发出报警PS0412。
8)增量指令。紧跟在坐标旋转取消G69之后的最初的移动指令必须用绝对值来指定。如果是增量指令,就不会进行正确的移动。
9)坐标旋转的1轴指令的注意事项(MD型号)。通过如下参数,可以选择在绝对方式下指令了1轴时的移动位置。2轴指令的情况下,与参数设定无关地移动到相同的位置。因此,在G68有效的情况下,建议编写2轴的移动指令。
参数No.11600#5:坐标旋转方式下,在绝对方式下指令了1轴的情形。
值为“0”:首先,由旋转前的坐标系计算指令位置,使坐标旋转。
值为“1”:首先,坐标系旋转,然后在该坐标系上移动到指令位置。
由于本参数,尚未指令的轴的坐标的操作将会变化,所以移动的位置不同。
【例3-34】
G90 G00 X0 Y0;
G01 X10.Y10.F600;
G68 X0 Y0 R45.; 坐标旋转指令
Y14.142; 仅编写了1个轴的指令①
G69;
参数No.11600#5=0的情形:
由旋转前的坐标系(XY)计算指令位置,使坐标旋转。因此,①中的指令下,尚未指令的X轴的位置成为X10,指令位置成为(X10,Y14.142)。然后,移动到使其旋转45°的移动位置(X-2.929,Y17.071)。如图3-96所示。
图3-96 坐标旋转的1轴指令示例一
参数No.11600#5=1的情形:
在①中的指令下,变换为使坐标旋转指令前的坐标值(X10,Y10)旋转45°后的坐标系(X′Y′)中的坐标值(X′14.142,Y′0)。然后,移动到指令位置(X′14.142,Y′14.142),也即移动到位置(X0,Y20),如图3-97所示。
图3-97 坐标旋转的1轴指令示例二
【例3-35】 绝对/增量指令,如图3-98所示。
图3-98 坐标旋转方式下的绝对/增量指令
G92 X-500.Y-500.;
G69 G17;
G68 X700.Y300.R60.;
N3 G90 G01 X0 Y0 F200;(G91 X500.Y500.);
G91 X1000.;
G02 Y1000.R1000.;
G03 X-1000.I-500.J-500.;
G01 Y-1000.;
G69 G90 X-500.Y-500.;
M30;
10)刀具半径补偿和坐标旋转,如图3-99所示。
图3-99 刀具补偿和坐标旋转
也可以在刀具半径补偿方式下指定G68和G69,旋转平面必须与刀具半径补偿平面的平面一致。
【例3-36】
N1 G92 X0 Y0 G69;
N2 G01 G42 G90 X1000.Y1000.D01 F1000;
N3 G68 R-30.;
N4 G91 X2000.;
N5 G03 Y1000.R1000.J500.;
N6 G01 X-2000.;
N7 Y-1000.;
N8 G69 G40;
G90 X0 Y0;
M30;
11)比例缩放和坐标旋转。如果在比例缩放G51方式下指定坐标旋转,则旋转中心的坐标值(α,β)也将被比例缩放。但是,旋转角度R不会被比例缩放。针对移动指令,首先使用比例缩放,然后进行坐标旋转。
在刀具半径补偿方式G41、G42和比例缩放方式G51,不能指定坐标旋转指令G68。坐标旋转指令始终应在设定刀具半径补偿方式之前被指定。
①当系统没有处在刀具半径补偿方式下时,按下述顺序指定:
G51;比例缩放开始
G68;坐标旋转方式开始
……
G69;坐标旋转方式取消
G50;比例缩放方式取消
②当系统处在刀具半径补偿方式下时,按下述顺序指定,如图3-100所示(刀具半径补偿取消):
G51;比例缩放开始
G68;坐标旋转方式开始(www.xing528.com)
……
G41/G42;刀具半径补偿方式开始
……
图3-100 在刀具半径补偿方式下的比例缩放和坐标旋转
【例3-37】 程序如下:
G92 X0 Y0;
G51 X300.Y150.P500;
G68 X200.Y100.R45.;
G01 G91 X400.Y100.F300;
Y100.;
X-200.;
Y-100.;
X200.;
G69;
G50;
③同时指令比例缩放和坐标旋转时,首先执行比例缩放,然后进行坐标旋转。此时,比例缩放对于旋转中心同样有效,如图3-101所示。
指令时,按照比例缩放→坐标旋转的顺序进行;要取消时,按照与之相反的顺序指令。
【例3-38】 主程序如下:
图3-101 比例缩放和坐标旋转
12)反复指定的坐标旋转。可以事先存储一个程序作为子程序,通过改变角度来调用该子程序,如图3-102所示。
参数No.5400#0设定为1,旋转角度按照指定了绝对/增量指令(G90/G91)时的程序。
【例3-39】 程序如下:
G92 X0 Y0;
G69 G17;
G01 H01 Z100.;
Z2.;
G01 Z-1.F60;
M98 P2100;
M98 P72200;
G00 G90 Z1.;
G69;
G00 G90 X0 Y0;
M30;
O2200; 子程序
G68 X0 Y0 G91 R45.;
G90 M98 P2100;
M99;
O2100; 子程序
G90 G01 G42 X0 Y-10.F200;
X4.142;
X7.071 Y-7.071;
G40;
M99;
图3-102 坐标旋转的子程序调用
13)镜像下的旋转角度,如图3-103所示。
【例3-40】 如果想把图形①②③④分别以现在的坐标系下的(20,20),(-20,20),(-20,-20),(20,-20)为旋转中心沿逆时针方向旋转30°,则程序编写为:
图3-103 镜像下的旋转角度
注意:在这种情况下,如果设旋转角度为θ,则对应第一、二、三、四象限,程序里编写旋转角度分别为θ,(180-θ),θ,(180-θ),而不是θ,-θ,θ,-θ。
14)G68平面旋转指令对立式加工中心加装的第4旋转轴A轴有影响。如果在G68有效的情况下指定了A轴的旋转,则刀具只会在指定坐标系的原点进行加工,而不执行在G17平面内以指定的点为中心的旋转,在G69旋转无效的情况下,正常加工。
先在A轴旋转后,G68再有效的情况下能进行无误地加工。
15)有时会碰到这样的情况:A夹具原来装夹在工作台的中间或略偏的位置,当加工完一定批量的工件后,需要拆下。安装B夹具后,加工了一些工件后,用夹具A装夹的工件也来了订单,要求生产一批。经过测量,发现A、B夹具可以同时安装在工作台上,但固定夹具的螺栓的间距不同于机床上T形槽的间距,需要把夹具在XY平面旋转一定的角度后,才能安装上。安装后经过测量,使用G54坐标系的A夹具需要以原坐标系原点旋转90.5°,使用G55坐标系的B夹具需要以原坐标系零点旋转0.5°,分别对好坐标系原点,程序如下:
O0096;
N1;
G40 G49 G80 G69 G15 G21 G50 G17; 程序初始化
G90 G10 L2 P0 X_Y_Z_A_; 设定EXT坐标系
G10 L2 P1 X_Y_Z_A_; 设定G54坐标系
G10 L2 P2 X_Y_Z_A_; 设定G55坐标系
G91 G30 Z0; 返回Z轴第二参考点(换刀点)
/G30 X0;(或G30 X0 Y0;) 如工件高且刀具长,可以选择执行
#1=90.5; A夹具需要旋转的角度
#2=0.5; B夹具需要旋转的角度
T 01(注释); 注释包括如刀具类型、直径等信息
注释:
①在这个程序开头的程序段,有一连串的初态指令,许多手工编程人员经常这么编写开头。有人觉得是废话连篇,其实不然。每次换刀前这么编写,有利于减少误操作时的报警信息。当然,如果整个程序里没有用G51、G51.1,就不需要用G50、G50.1。
②接下来的3段设定坐标系的指令可以根据需要选择使用或不使用。
③有些人一看到带有“#”符号的就以为是宏变量,其实不然,这里只是作为A、B两套夹具所需要旋转的角度。有人问,既然是旋转角度,直接编写在G68指令里不就行了吗?根本没有必要代入的。说得很对,但装夹后,如果根据测量,A夹具旋转的角度不是90.5°,B夹具旋转的角度也不是0.5°,或下一次夹具装夹时的旋转角度不是这两个角度,则程序下文的旋转角度值一一都要修改;如果在此以“#1=90.5;#2=0.5;”赋值指定,修改起来非常简单,下文旋转角度的相关数值都会随之更新。
④对刀具注释,有利于编程人员和操作者分辨刀具。例如可以把ϕ60mm的镗刀注释为“60BORING”,把ϕ80mm的面铣刀注释为“80 FACE”,把ϕ6.8mm钻头注释为“6.8 DRILL”……操作者根据注释内容很容易分辨识别程序里的刀具和换到主轴上的刀具是否是同一把刀具。
⑤程序中的第一把刀具,可以在程序结尾时备选;程序中的第一把刀具加工时,可以备选下一把刀具。虽然刀具在前文的程序中已经预先备选,但换刀时仍然要编写“T;M06;”,再次确认的目的是为了避免手动干预对程序的影响。试想,如果在自动加工时,备选刀具之后,对刀库进行了手动旋转,换刀时程序里编写的只是“M06;”,刀具就被换错了,危险即将发生,且不可预知!
⑥在每一把刀具交换前编写N_,由于程序段短,醒目且易查找。通过搜索N、H、T字符,可以快速找到所需的刀具,单独运行某一把刀具的加工程序。如果某一把刀具突然破损,或缺少某一把刀具,可以方便地用“GOTO n”语句跳跃。
⑦注意:如果在加工完用夹具A装夹的工件后而未加工至用夹具B装夹的工件时,停主轴测量,发现某一处尺寸未加工到位,比如某一处公差孔通规较难塞入,如果在调整镗刀尺寸前已经按下了RESET键,请勿直接在调整后,手动方式旋转主轴,以编辑方式找到坐标系的程序段,直接在自动方式下运行。因为RESET键会使机床丢失对自动连续加工状态下的旋转角度的记忆,“G68 X_Y_R#2;”会被执行为“G68 X_Y_R0;”,如果这个旋转角度很小,旋转半径也较小,仅凭眼力是不容易分辨并判断这个工件是废品的。应该在编辑状态下按RESET键,单段 方式自动运行至机床读完两个旋转角度的程序段,然后转编辑方式,翻页移动或搜索使光标到所需加工的“N_”程序段上,转为自动方式,按循环启动就行了。而如果编写的是“G68 X_Y_R0.5;”,就不会出现上述情况。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。