五轴说明书编程部分.docx
《五轴说明书编程部分.docx》由会员分享,可在线阅读,更多相关《五轴说明书编程部分.docx(31页珍藏版)》请在冰豆网上搜索。
五轴说明书编程部分
五轴说明书(编程部分)
第二章编程篇
2.1准备功能G代码的种类
准备功能G代码及后数字表示,规定其所在的程序的意义。
G代码有一下两种类型:
种类
意义
非模态G代码
只在被指令的程序段有效
模态G代码
在同组其它G代码前一直有效
(例)G01和G00是同组的模态G代码
G01X______;
Z__________;G01有效
X__________;G01有效
Z__________;G00有效
注:
具体的系统参数请参考系统参数表
G代码及功能表
G代码概要
G00
快速定位
G01
直线切削
G02
顺时针圆弧/螺旋切削
G03
逆时针圆弧/螺旋切削
G04
暂停
G10
设定坐标原点
G12
顺时针圆切削
G13
逆时针圆切削
G15/G16
极坐标指
G17
选择XY平面
G18
选择XZ平面
G19
选择YZ平面
G20/G21
英制单位/公制单位
G28
返回基准点
G28.1
定义轴基准
G30
返回第二基准点
G31
直探头
(2)如果执行了G16命令设置了极坐标原点,在极坐标中使用半径和角度表示目的地,也可以使用G00X__Y__控制快速直线移动,X__是目的地相对于极坐标原点的半径,Y__则是目的地与极坐标原点连线与3点钟方向逆时针方向的夹角(也就是通常用的四象限标准)。
执行G16时的当前点坐标就是极坐标原点。
如果在程序中省略了所有的轴功能字将会产生错误。
如果启用了刀具半径补偿,刀具的移动将与上面所描述的不同(见刀具补偿)。
如果程序在同一行有G53命令,刀具的移动也同与上述不同(见绝对坐标系)。
2.1.2以进给直线切削–G01
(1)对于以进给直线切削来说,程序G01X__Y__Z__A__C__中的所有功能字,除了必须至少使用的之外其它的轴功能字都为可选。
如果当前移动模式为G01,那么G01也是可选的,刀具将以协调线形移动的方式以当前进给移动到目的地。
(2)如果执行了G16命令设置了极坐标原点,在极坐标中使用半径和角度表示目的地,也可以使用G00X__Y__控制快速直线移动,X__是目的地相对于极坐标原点的半径,Y__则是目的地与极坐标原点连线与3点钟方向逆时针方向的夹角(也就是通常用的四象限标准)。
执行G16时的当前点坐标就是极坐标原点。
如果在程序中省略了所有的轴功能字将会产生错误。
如果启用了刀具半径补偿,刀具的移动将与上面所描述的不同(见刀具补偿)。
如果程序在同一行有G53命令,刀具的移动也同与上述不同(见绝对坐标系)。
2.1.3以进给圆弧切削-G02和G03
用G02(顺时针圆弧)或G03(逆时针圆弧)来切削圆弧或螺旋,在机床坐标系中圆弧或螺旋的轴线必须与X、Y或Z轴平行。
可以用G17(Z轴,XY-平面)、G18(Y轴,XZ-平面)、G19(X轴,YZ-平面)来选择工作平面,如果圆弧是圆那么它应该位于与被选平面平行的平面上。
如果加工圆弧的代码定义了旋转轴的转动,转动轴将以恒定的速度转动,这样它会随X、Y、Z轴转动和停止,一般不使用这种程序。
如果启用了刀具半径补偿,刀具移动将与上面所描述的不同(见刀具补偿)。
圆弧的描述方法有两种,我们称它们为圆心格式和半径格式,在圆弧切削模式中半径模式和圆心模式都是可选的。
2.1.3.1半径模式圆弧切削
在半径格式圆弧切削模式中,指定被选平面内的弧线终点的坐标为圆弧半径,程序G02X___Y___Z___A___B____C___R___(或把G02换成G03)中,R表示圆弧半径,除了所选切削的角度在0-180°之间,当半径为负数时圆弧切削的角度在180-359.999°之间。
如果圆弧为螺旋线,圆弧终点在平行于螺旋线轴线的坐标平面上的坐标位置也可以指定。
如果出现下列情况将会出错:
(1)所选平面上两根轴的功能字都被忽略。
(2)圆弧的终点位置就是起点位置。
如果圆弧是圆或半圆,最好不要使用半径格式切削,因为圆弧终点很小的变化可能使圆心位置发生很大的变化(圆弧的中心也会发生很大变化)。
如果影响足够大化整误差会导致规定公差之外的切削,如果圆弧接近整圆加工情况很而劣,如果圆弧是半圆(或接近半圆)加工情况比较比较严重,其它的角度(角度从很小到165°或从195°到345°)的圆弧加工出的工件符合要求。
下面是半径格式铣圆弧命令的例子:
G17G02X10Y15R20Z5
这个命令是顺时针(从Z轴的正方向观察)切圆弧或螺旋线,圆弧的轴线平行于Z轴,终点坐标是X=10、Y=15、Z=5,并且其半径为20。
如果起点的Z轴坐标是5,那么这个圆弧是平行于XY平面的圆,否则它就是一条螺旋形的弧线。
2.1.3.2圆心格式圆弧切削
在圆心格式圆弧切割中,所选平面内的圆弧终点坐标是根据当前位置与圆弧圆心的
偏移量来指定的,如果圆弧终点和与当前点重合是可行的,下面的情况是错误的:
在圆弧所在的平面上,如果当前点与圆弧圆心的距离比圆弧终点与圆弧圆心的距离大于0.002毫米/英寸(和系统使用的单位一致)。
圆弧的圆心可用I和J功能字来指定,有两种方法来解释它们,第一种是I和J指定与在圆弧起点的当前点相关的点为圆心,也叫增量I/J模式;第二种I和J指定当前坐标系得实际坐标为圆心,也叫绝对IJ模式。
I/J模式是在配制下拉菜单状态对话框中设置,I/J模式的选择要与商业化的控制系统兼容,您会发现增量IJ模式是最好的,因为在增量模式中如果圆心位置不在圆弧起点时您需要同时使用功能字I和J。
如果您选择的工作平面是XY平面,程序G02X__Y__Z__A__B__C__I__J__(或用G03代替G02),那么除了必须使用X轴或Y轴的功能字之外,其它的所有轴功能字都是可选的。
I和J是圆心与当前位置偏移量或当前坐标的偏移量(这取决于I/J模式,X和Y各自得方向),I和J功能字都是可选但必须选择一个,如果出现下列的情况就会导致错误:
(1)X和Y功能字都被忽略。
(2)I和J功能字都被忽略。
如果选择的工作平面是XZ平面,程序G02X__Y__Z__A__B__C__I__K__(或用G03代替G02),那么除了必须使用X轴或Z轴的功能字之外,其它的所有轴功能字都是可选的。
I和K是圆心与当前位置偏移量或当前坐标的偏移量(这取决于I/J模式,X和Z各自得方向),I和K功能字都是可选但必须选择一个,如果出现下列的情况就会导致错误:
(1)Y和Z功能字都被忽略。
(2)I和K功能字都被忽略。
如果选择的工作平面是YZ平面,程序G02X__Y__Z__A__B__C__J__K__(或用G03代替G02),那么除了必须使用Y轴或Z轴的功能字之外,其它的所有轴功能字都是可选的。
J和K是圆心与当前位置偏移量或当前坐标的偏移量(这取决于I/J模式,Y和Z各自得方向),J和K功能字都是可选但必须选择一个,如果出现下列的情况就会导致错误:
(1)Y和Z功能字都被忽略。
(2)J和K功能字都被忽略。
下面是用增量I/J模式圆心格式圆弧切削命令的例子:
G17G02X10Y16I3J4Z9
这个命令是顺时针(从Z轴的正方向观察)切圆弧或螺旋线,圆弧的轴线平行于Z轴,圆弧的终点坐标是X=10、Y=16、Z=9,圆心在X轴方向上的偏移量为3个单位,在Y轴方向上的偏移量为4个单位,如果圆弧起点位置为X=7、Y=7,那么圆心的坐标为X=10、Y=11。
如果起点的Z轴坐标为9这个圆弧是个圆,否则它就呈螺旋状,并且圆弧的半径为5。
如果上面的圆弧使用绝对I/J模式圆心格式圆弧切削,其命令如下:
G17G02X10Y16I10J11Z9
中心格式圆弧切削中弧的半径不能被指定,但是它可以很容易地找出圆弧半径,因为它就是从圆弧圆心到当前点或圆弧终点的距离。
2.1.4暂停-G04
暂停对应的程序为G04P___,这可以使得轴在P数字指定的时间(单位为秒或毫秒)内停止,时间单位在配置下拉菜单逻辑对话框中设置。
如果时间单位为秒G04P0.5将
使得轴暂停0.5秒,如果出现这样的情况会出错:
P数字为负,
2.1.5设定坐标系刀具偏移量和工件偏移量-G10
设置刀具偏移量的程序如G10L1P__X__Z__A__,其中P数字必须是从0到255的整数,刀具偏移量设定格式为:
刀具号码-P数字指定的刀具偏移量,刀尖半径可以通过A数字设定,上面的程序中包括的轴功能字的数值也可以设定,但是刀具半径并不能通过这种方法来设定。
设定夹具坐标系原点的坐标值可以用程序G10L2P__X__Y__Z__A__B__C__,其中P数字必须是从1到255的整数,设定夹具偏移量的格式为:
刀具夹具编号-1~6中的任何一个数字(其中1到6分别对应G54到G59),其他所有轴功能字都是可选的。
由P数字指定的坐标值是夹具坐标系原点在绝对坐标中的坐标值,只有程序行中包含轴功能字的那些坐标才会被重置。
如果出现下面的情况将出现错误:
P数字不识从0到255的整数。
如果原点偏移量(由G92或G93指定)在G10被使用之前就已经生效,在后面的程序中原点偏移量将继续生效。
如果坐标系原点由G10命令设定,在G10执行期间坐标系原点可能起作用也可能不起作用。
如果不是使用表格上面的保存按钮保存刀具偏移量和夹具偏移量,这些偏移量不会一直有效
例如:
程序G10L2P1X3.5Y17.2把第一个坐标系的原点(该坐标系统由G54选定)设定在X=3.5、Y=17.2(绝对坐标系坐标值)的位置。
坐标系原点的Z轴坐标(以及所有旋转轴的坐标)是程序行执行之前使用的坐标原点的Z轴坐标。
2.1.6顺时针和逆时针圆切削-G12和G13
圆切削命令是有固定周期的命令,可以用它来切一个比刀具直径大的圆孔,如果使
用合适的刀具可以切出O型内槽。
程序G12I__控制刀具顺时针转动,G13I__控制刀具逆时针转动。
如果执行上面的命令,刀具会在X方向按I功能字指定的距离移动,并切割一个以X和Y坐标为圆心的圆,切削完成之后刀具回到圆心。
如果备选平面不是XY平面,它的影响还没有定义。
2.1.7退出和进入极坐标模式-G15和G16
在X/Y平面内可以使G00和G01按以临时圆心点指定的半径和角度移动,G16可以进入这种模式,被控点当前坐标是临时圆心的坐标。
G15可以返回一般的笛卡儿坐标系。
G00X10Y10快速移动到坐标为X=10、Y=10的位置
G16进入极坐标模式
G10X10Y45
(刀具快速移动到坐标为X=17.xxx、Y=17.xxx的位置,这个点在以坐标X=10、Y=10点为圆心,半径为10的圆上)
极坐标系在有些时候是非常有用的,如要钻一圈的孔,下面的代码将以左边为X=10、Y=5.5的点为圆心,50毫米为半径,每转动10°钻一个孔,且深钻至Z轴坐标为Z=-0.6的位置。
G21选择公制单位
G00X10Y5.5
G16
G01X50Y0极坐标模式的半径为50,角度为0
G83Z-0.6深钻至Z轴坐标为Z=-0.6的位置
G01Y10第一个孔的基础上转过10°
G83Z-0.6
G01Y20在第一个孔的基础上转过20°
G01Y30
G01Y40
G15返回笛卡儿坐标系
注意
(1)当G16生效时,只能使用G00或G01移动X或Y轴。
(2)与Fanuc不同G16使用的是当前点作为极坐标的圆心,Fanuc需要很多的原点来获得需要切削的圆,而不是把原点固定在0、0。
2.1.8平面选择-G17、G18和G19
G17选择XY平面,G18选择XZ平面,G19选择YZ平面。
在G02/G03和固定循环中我们将继续讨论选择平面的作用。
2.1.9长度单位-G20和G21
G20选择英制单位,G21选择公制单位。
最好在任何移动发生之前在程序中使用G20或G21定义长度单位,且不要再在程序中任何其它地方使用G20和G21,用户应该确保所有的数字适合使用现在的长度单位。
也可以见G70/G71,它们与G20/G21同义。
2.1.10返回原点-G28和G30
原点位置通过5161号到5166号参数设定,参数值是绝对坐标系的坐标值,
但是长度单位并未指定。
返回原点即离开程序指定点回到系统设置得原点,其程序可以使用G28X__Y__Z__A__B__C__(也可以用G30),程序中所有的轴都是可选的,运动的轨迹先是从当前位置到程序指定点然后再回到原点。
如果程序没有设定轴功能字,那么中间过程的点就是当前点,因此只需要做一次移动就能回到原点。
2.1.11定义轴基准G28.1
G28.1X__Y__Z__A__C__可以定义轴基准,轴将以当前进给向复原开关移动。
当轴到达轴功能字给定的绝对机床坐标值时,轴将以配置下拉菜单配置基准中设定的进给移动,如果当前绝对位置是基本正确的,系统将会给基准开关发出停止的信号。
2.1.12直探头–G31
程序G31X__Y__Z__A__B__C__实现直探头操作,可以选择旋转轴功能字,但是最好不要使用,如果使用了旋转轴功能字,功能字后面的数值就必须与旋转轴当前的位置一致,这样才能保证旋转轴不转转动;线性功能字是可选的,并且至少要选择一个。
主轴的刀具必须是探测器。
如果出现下列情况将出现错误:
(1)当前点与程序起点的距离小于0.254毫米或者0.01英尺
(2)启用了G31逆时针进给模式。
(3)X、Y或Z轴功能字没有一个被用到。
执行上面的命令是被控点(探头尖端)以当前进给向程序指定点作直线运动。
如果探头碰到触点,在程序结束之前探头会从触点轻微回缩,如果探头没有碰到触点而超出了程序指定点将会发生错误。
使用直探头命令
使用直探头命令时,如果探头连杆是平行于Z轴(也就是旋转轴为0时)并且给探头添加了刀具长度偏移量,被控点就是探头末端。
(1)在对探头没有更多了解的情况下,探头可以找到工件表面平行于XY平面的面。
(2)如果探头尖端的半径大概值已知,探头可以在工件表面找到平行于YZ或XZ平面的面。
(3)如果探头连杆和Z轴排成一列并且探头尖端半径大概值已知,探头可以找到圆孔的圆心。
(4)如果探头连杆和Z轴排成一列并且探头尖端半径精确值已知,直探头命令可以找到圆孔的半径。
如果探头连杆的笔直度不很精确,可以知道探头半径在+X、-X、+Y和-Y方向上的影响,这些数值可以保存在参数中或在Mach3程序中设定。
当旋转轴不为零时也可以使用探头,但是这比旋转轴为零时复杂很多,在这里不做介绍。
2.1.13刀具半径补偿-G40、G41和G42
G40可以取消刀具半径补偿。
如果半径补偿已经取消再取消一次也不会出错。
只有选择XY平面作为工作平面时刀具半径补偿才会被执行。
G41D~可以定义刀具轮廓左移动半径补偿(当刀具半径为正时,刀具轮廓在指定刀具轨迹的左边);G42D~用来定义刀具轮廓右偏移半径补偿(当刀具半径为正时,刀具轮廓在指定轨迹的右边)。
D功能字是可选的,如果没有使用D功能字主轴刀具的当前半径将被使用,如果使用了D功能字,D数字通常为刀具号码,但这不是必需的。
D数字也可以是0,这样的话半径也为0。
P功能字可以设定G41与G42,如果系统能够提供当前刀具库信息它可以对刀具直径进行修调。
如果出现下列情况会导致错误:
(1)D数字不是整数、非负数或者大于刀具号码。
(2)XY平面不是工作平面。
(3)刀具半径补偿启动之后再次命令启用刀具补偿。
在刀具补偿章节中已经描述了启用了刀具半径补偿时机床的表现,注意编写正确的切入和退出程序的重要性。
2.1.14刀具长度偏移量-G43、G44和G49
使用G43H~可以设定刀具长度偏移量,其中H数字是所用刀具在刀具库中的号码,在刀具库中最好所有输入的数值都是整数,H数字和槽数最好也是正数但不是必须,H数字可以为零,当H数字为零时刀具偏移量也为零,忽略H数字时系统当成H数字为零处理。
当刀具库中的偏移量为负数时可以使用G44。
如果出现下面情况将发生错误:
H数字不是整数,或H数字是负数,或者H数字大于槽数。
使用G49可以添加刀具长度偏移量。
可以使用正在使用的偏移量,也可以在没有使用任何偏移量时不使用刀具长度偏移量。
2.1.15缩放因子G50和G51
使用G51X__Y__Z__A__B__C__可以为功能字X、Y、Z、A、B、C、I及J定义缩放比例,其中X、Y、Z分别是给定轴的缩放因子,但是这些缩放因子不会对自身进行缩放。
不能在G02或G03程序中使用不同的缩放因子来切割圆弧。
使用G50可以把所有的缩放因子重新设置为1.0
2.1.16临时坐标系偏移量–G52
使用G52X__Y__Z__A__B__C__可以对当前点以正或负的距离进行偏移,轴功能字表示的是要使用的偏移量,所有的轴功能字都是可选,但是至少需要选择一个,如果一个轴功能字都没有选择,当前点在轴上的坐标不会改变。
如果出现下面的情
况将发生错误:
所有的轴功能字都被忽略。
在Mach3中G52和G92使用的内部机制是一样的,依次不能一起使用。
执行G52命令时,当前坐标系的原点会移动给定的距离。
使用G52X0Y0可以取消G52设定的偏移量。
例如:
假定在当前坐标系中当前点的坐标为X=4,G52X7设定X轴方向的偏移量为7,这样当前点的X坐标就变为X=-3。
一般在夹具坐标系中距离模式为绝对距离模式时使用轴偏移量,这样使用G52可以
控制所有的夹具坐标系。
2.1.17绝对坐标系-G53
G01G53X__Y__Z__A__B__C__(G01也可以用G00代替)可以控制被控点在绝对坐标系中线形移动,其中所有的轴功能字都是可选的,但是至少要选一个。
如果它处于G00或G01模式,G00或G01也是可选的。
G53不是一个模态指令,也即是说要保持在绝对坐标系中移动在每一个程序行中都要使用G53。
被控点将以协调线形移动到达程序指定点,如果G01被执行移动速度就是当前进给(如果机床达不到当前给进给速度,会移动速度会小于当前给进速度);如果G00被执行,移动速度就是最大进给速度(如果机床达不到最大进给速度,移动速度会小于最大进给速度)
如果出现下列情况会导致错误:
(1)使用G53时没有起用G00或G01。
(2)刀具半径补偿启用时使用G53。
2.1.18选择工件偏移量坐标系-G54到G59及G59P__
G54可以选择工件偏移量#1(也就是1号工件偏移量的六个工件偏移量),系统定义的工件偏移量号码与G代码关系为:
(1-G54),(2-G55),(3-G56),(4-G57),(5-G58),(6-G59)。
G59P_可以使用1-254号工件偏移量重的任何一组工件偏移量,P功能字是工件偏移量号码,因此G59P5与G58的功能一样。
如果出现下面的情况将出现错误:
刀具半径补偿启用的时候使用这些G代码。
2.1.19设定刀具轨迹模式-G61和G64
G61设定机床精确停止模式,G64设定机床恒速模式,当机床处于其中一种模式时您可以在程序中再次启用这个模式,精确停止模式和恒速模式在上面的章节中已经介绍。
2.1.20旋转坐标系–G68和G69
G68A__B__I__R__可以对程序指定的坐标系进行旋转。
A__和B__分别是旋转中心在当前坐标系(包括所有的刀具偏移量和工件偏移量以及
G52/G92偏移量)中的X和Y轴坐标。
R__是旋转的角度(从Z轴正方向观察的逆时针方向为正)。
T__是可选的,但这个数值并没有用,如果您选用了I__,角度R会加上G68元来设定好的旋转角度。
如G68A12B25R45可以使坐标系以X=12、Y=25为中心旋转45°。
随后G68A12B25I1R40可以使坐标系以X=12、Y=25为中心旋转85°。
G69可以取消坐标系的旋转。
注意:
∙只有X-Y平面为当前平面时,才能使用这些代码对坐标系进行旋转。
∙当旋转中心与前面使用过的旋转中心不同时,您也可以使用功能字I使旋转角度加上前面使用过的角度,这在模拟机动雕刻中非常有用,当然这就需要您进行计算。
2.1.21长度单位–G70和G71
G70设定英制长度单位,G71设定公制长度单位。
最好在任何移动发生之前在程序中使用G70或G71定义长度单位,且不要再在程序中任何其它地方使用G20和G21,用户应该确保所有的数字适合使用现在的
长度单位。
也可以见G20/G21,它们与G70/G71同义。
2.1.22高速深孔钻削固定循环G73
G73循环被用来进行深孔钻削或粉碎碎片,G83也实现这样的功能,循环中的回缩只是为了粉碎碎片而不会完全退出孔,这对于可以从孔中清除碎片的凹槽状刀具来说十分有用。
循环中的Q数字在Z轴方向施加了一个Δ增量。
G73X__Y__Z__A__B__C__R__L__Q__
(1)初步移动,和G81到G89固定循环一样。
(2)以当前进给向下移动Z轴,移动距离为Δ。
(3)快速回缩指定的距离,指定的距离在设置界面G73回缩数字读出器中设定。
(4)快速回到孔的底部,再回缩一点点。
(5)重复1到3步知道Z轴方向的深度到达第一步的深度。
(6)Z轴以最大进给速度回缩到清除碎片的Z轴位置。
如果出现下面的情况将发生错误:
Q数字是负数或零。
2.1.23取消模态移动G80
G80可以使所有的轴都停止转动。
如果出现下面的情况会发生错误:
在G80状态下使用轴功能字,除非第0组G代码和轴功能字一起使用。
2.1.24固定循环G81-G89
本小节将介绍G81到G89固定循环的使用方法,下面是两个使用G81的例子。
固定循环是在当前被选平面上进行,可以选择XY、YZ或ZX平面,在本小节中当前被选平面都是XY平面,您选择其它平面时效果也是一样的。
可以选择旋转轴功能字,但最好