通常使用加工中心进行加工操纵时,均希看加工运算在同一的加工坐标系中进行,但在某些加工情况下,使用一些坐标变换的技巧,结合子程序调用指令可以使加工编程更为简洁轻易。笔者常年从事数控加工工作,在工作中针对实际加工中出现的各类题目,回纳了一些解决方法。本文中各指令均为参照OKUMA数控系统,在坐标选择指令、坐标平移(旋转)和空间坐标转换指令的格式上与其他数控系统有些区别。
一、加工中心常用坐标指令
加工中心数控系统常用到的与坐标相关的指令有以下几种(各种数控系统在个别功能指令的定义上和使用的指令代码有些差别,但功能一样):
G15-坐标系选择;
G90-尽对坐标编程方式;
G91-相对坐标编程方式;
G92-坐标系平移功能;
G11、 G10-坐标系平移旋转, G11为坐标系平移旋转指令, G10为G11的取消指令;
G69、G68-空间坐标系转换功能,G68为坐标系转换指令,G68为G69的取消指令。
利用G11/G10指令可以在所选择的加工平面中,将当前加工坐标系进行平移和旋转,产生一个局部坐标系。
G69/G68指令常用于配有坐标转换功能的设备的数控中,如五面加工中心等。用于对x-Y平面以外平面上的加工部位进行加工编程。利用此指令可以把任何方向的加工平面转化为X-Y平面的正方向来处理,解决了任意方向平面加工变更中的复杂易错的题目。
G91指令在加工计算在增量方式下进行。G92指令能在程序中改变当前坐标系的位置,造成坐标原点平移。这两条指令使用要谨慎,尤其G92,使用不慎可能造成加工坐标系丢失,使全部加工失往了基准。但如使用得当,则可达到其他指令难以做到的效果。
G91指令在加工计算在尽对方式下进行,即所有加工指令值均是以当前工件坐标系或局部坐标系为参照的。这是一个模态指令。
二、坐标指令的使用
图1
图1是一个虚拟的零件示意图,我们可以利用这个箱体模型的加工程序来阐释一下坐标指令的几种用法。假设图1零件需要加工以下几个部位:
铣顶面两个方形窗口平面,两处平面加工尺寸相同,使用刀具为面铣刀;
铣前面两孔端面,使用刀具为面铣刀;
钻前面两孔之法兰端面上的两组四个孔,每组孔的阵列方式相同,刀具为麻花钻;
精镗前面两个孔,刀具为精镗刀。
图2中的坐标系O是工件的加工坐标系,坐标系序号为1。由于工件的加工部位中有转面内容,因此我们假设使用的设备为五面加工中心。
图2
这几处加工当然可以在工件坐标系O中,使用最直接的方法编程。
(1)对于顶面窗口的加工在G91模式下,利用尽对指令值,写出加工两处平面各加工程序。
(2)对于前面的加工部位 此处加工处于Z-X平面中,需先选择Z-X平面,然后在所选平面中分别写出两处加工部位的加工程序。需要留意的是,这时的第一坐标轴是Z轴而非X轴,这在固定循环指令和某些数学计算功能中非常重要,需特别留意,否则会错。
在这里我们不用上述方法,而是采用几种坐标变换的方法,来处理这几处加工内容,看看是否比用上述方法更为便利。下面是每加工部位采用的编程方法简述:
(1)铣前面两孔端面,使用刀具为面铣刀 首先,加工部位位于Z-X平面内,考虑先利用坐标系转换指令将此加工平面转为X-Y平面,如图2所示的坐标系O1,更符合操纵和编程习惯。可以把坐标转换写成子程序,以便编制相同面所有其他加工部位程序时调用。在这里使用了G68/G69指令。
铣两个法兰端面,两处加工内容相似,可以考虑使用子程序。由于两处加工面不处于相同高度,可以使用增量编程方式解决这一题目。
(2)钻前面两孔之法兰端面上的两组四个孔,每组孔的阵列方式相同,刀具为麻花钻 两组孔均在Z-X平面,因此可以调用使用坐标转换子程序。两组孔的阵列方式相同,因此可以使用同一个孔位子程序。阵列中心的不一致,可以用G11、G10坐标平移指令解决。
(3)精镗前面两个孔,刀具为精镗刀 同样要用到坐标转换子程序,加工编程在坐标系O1中进行。精镗两个孔要用到G76精镗孔循环指令。此条指令中要用到孔底让刀参数:I、J、K,分别对应X、Y、Z三个坐标轴方向。具体向哪一轴方向让刀,要看具体镗刀刀尖的方向。在这里,假如不使用坐标转换指令,编程仍在工件坐标系O中进行,则加工平面为Z-X平面的负方向,精镗孔循环中让刀参数地址应为K和I,进给轴为Y轴,编程较易出错。现在调用坐标系转换程序后,加工平面和送给方向均转换为一般加工所熟悉的方向,即X-Y平面之正向为加工平面,精镗孔循环中让刀参数地址为I和J,Z轴负方向为送给方向,编程就轻易多了。这是使用坐标系转换指令的好处之一。
(4)铣项面两个方形窗口平面 因两处加工平面尺寸相同,所以考虑编制一个同一的铣面子程序,采用调用于程序的方法简化加工程序。这里两处加工面虽在相同的方向上,但不在同一平面内,所以不能使用坐标平移,不存在转面题目,所以也不能用坐标转换功能。
这里我们可以采用G92坐标平移指令实现两处加工面的转换。由于G92指令要改变当前工件坐标系在机床坐标系中的位置,使用时一定要慎重。具体方法是在主程序中先指令刀具运动到一个相对于目的加工面的特定位置,然后调用面加工子程序。
子程序的内容为:先用G15坐标系选择指令选择另外序号的一个坐标系(此坐标系在本程序中不作其他用途),然后用G92指令将当前点设为新坐标系中的一个特定的点,这样就完成了加工坐标系的平移。剩下的铣面程序就可以在此坐标系下编制了。完成铣面动作程序后,必须先返回原加工坐标系,然后退出铣面子程序。
用同样方法反复调用这个铣面子程序,可以完成多处相同的加工。
三、加工程序示例
在这里,我们可以将前述加工内容写成如下加工程序:
O0001(EXAMPLE PROGRAM OF USING COD COMMAND) | |
N10(FACEING T1) | 铣面程序 |
T1 | 调刀指令 |
M6 | 换刀指令 |
G15 H1 | 选择一号工件坐标系为当前加工坐标系 |
CALL OB VC20=2 VC10=1 | 调用坐标转换子程序OB,使用坐标系O1 |
MODIN OFAC | 调用子程序OFAC:此指令为每碰到一组坐标值,刀具移动此点后,调用一次子程序。子程序调用结束 |
X x1 Y y1 | |
X x2 Y y2 | |
MODOUT | |
CALL OCAN | 调用坐标转换取消子程序 |
N20(DRILLING T2) | 钻孔程序 |
T2 | 调刀指令 |
M6 | 换刀指令 |
CALL OB VC20=2 VC10=2 | 调用坐标转换子程序OB,使用坐标系O1 |
NCYL G81 Z z1 R r1 F100 S350 | 钻孔固定循环,当前点不执行 |
G11 X x1 Y y1 | 坐标系平移指令,原点平移至1孔中心 |
CALL OP4 | 调用孔位子程序 |
G10 | 坐标系平移结束 |
G11 X x2 Y y2 | 坐标系平移指令,原点平移到2孔中心 |
CALL OP | 调用孔位子程序 |
G10 | 坐标系平移结束 |
G80 | 结束固定循环 |
CALL OCAN | 调用坐标转换取消子程序 |
N30(FINISH BORING T3) | 精镗孔程序 |
T3 | 调刀指令 |
M6 | 换刀指令 |
CALL OB VC20=2 VC10=2 | 调用坐标转换子程序OB,使用坐标系O1 |
NCYL G76 Z zZ R rl1-0.5 Ff60 S300 | 精镗孔循环,X轴负方向为退刀方向 |
X x1 Y y1 | |
X x2 Y y2 | |
G80 | 精镗孔循环结束 |
CALL OCAN | 调用坐标转换取消子程序 |
...... | |
N40(FACING TOP SIDE T4) | 铣顶面程序 |
T4 | 调刀指令 |
M6 | 换刀指令 |
G15H1 | 选用一号坐标系为当前工件坐标系 |
G56 Z... H4 | 在Z方向加刀长补偿 |
GO X xa X ya Z za | 刀具快进到第一个矩形加工面中心上方100mm处 |
CALL OFT | 调用铣矩形面子程序 |
GO X Xb X yb Z zb | 刀具快进到第二个矩形加工面中心上方100mm处 |
CALL OFF | 调用铣矩形面子程序 |
M2 | 主程序结束 |
子程序(SUBPROGRAMM) | |
/ | |
OCAN | 坐标转换取消子程序 |
GO Z360 M5 | |
G68 | 坐标转换取消一次 |
G68 | 坐标转换取消两次 |
G334 | 取消附件头补偿(五面加工中心) |
RTS | |
/ | |
OB前面坐标系转换子程序 | |
G333 PAC=90 PAT=VC20 H=VC10 | 五面加工中心附件头转向前加工面,同时加上刀具长度补偿和附件头补偿 |
GO Y… X…Z… | 将刀具运行到适于转换的位置 |
G69 X… Y… Z… R90 | 坐标系转换指令:加工坐标系从O转换到O1 |
GO XO YO Z100 | 将刀具送给刀预备位置 |
RTS | 返回 |
/ | |
OFAC(FACING ROUND) | 铣法兰面子程序 |
GO Z Z2 | 刀具送给到加工深度 |
S500 | 主轴转速 |
G91 G1 Y-A F100 M3 | 改用增量方式走刀,刀具切进加工部位 |
G2 JA | 圆弧插补,铣法兰面 |
G1 YA F500 | 刀具退出加工部位 |
G90 GO Z100 M5 | 恢复到尽对方式,刀具退回预备位置 |
RTS | 返回 |
/ | |
OP4(POSITION OF 4 HOLES) | 孔位置子程序 |
BHC XO YO I r1 J45 K4 | 用数学计算式计算孔位;圆形阵列,中心为坐标原点,半径为r1,起始角为45度,共4孔 |
RTS | 返回 |
/ | |
OFT(FACING SQUARE) | 铣矩形子程序 |
G15H5 | 调用5号坐标系为当前加工坐标系(临时) |
G92 X0Y0Z100 | 将当前所在点设为当前加工坐标系的(0,0,100)点 |
G0Z0 | 矩形面加工过程程序 |
…… | |
(铣面加工指令) | |
…… | |
GO Z100 | 刀具退出 |
G15 H1 | 将当前加工坐标系返回到1号坐标系 |
RTS | 返回 |
使用子程序调用方式处理相似的加工内容,可以使加工中心的程序简单易读易于编辑,减少出错的可能性。处理这类题目时,首先要找出要加工不同部位的相同处和不同处,公用的子程序体现的是不同加工部位的加工内容的共性。处理加工题目时,某些相似加工部位的不同处,通过对数控系统加工指令的灵活运用,也可转化为共性特征,这样就可以用公用的子程序来处理了。我们上面提到的几种坐标指个恰可用来完成某些这种转化,以方便我们利用子程序解决这类加工题目。