6.固定循环(6.1-6.2)
固定循环是指工艺子程序,使用这些循环可以实现某一个确定的加工过程,如螺纹加工或者车削凹槽等,通过工艺参数使其具有普遍适用性。在系统中,根据具体的工艺要求可分为:
- 钻、镗削固定循环
- 车削固定循环
注意:
CYCLE81-CYCLE89必须在G17平面下,才可以工作。
在退出固定循环后必须重新进行技术定义(G91/G90,G71/G70,DIAMOF/DIAMON等等)。
6.1 固定循环总表
钻、镗削循环 | 车削循环 |
CYCLE81 中心钻钻削 | CYCLE93 凹槽 |
CYCLE82 锪平面钻削 | CYCLE94 退刀槽 |
CYCLE83 深孔钻削 | CYCLE95 毛坯切削 |
CYCLE84 刚性攻丝 | CYCLE96 螺纹退刀槽 |
CYCLE85 铰孔1(镗孔1) | CYCLE97 螺纹切削 |
CYCLE86 镗孔(镗孔2) | CYCLE98 多边形车削 |
CYCLE87 停止1钻孔(镗孔3) | CYCLE99 仿型车削 |
CYCLE88 停止2钻孔(镗孔4) | |
CYCLE89 铰孔2(镗孔5) |
在整个循环运行过程中,循环调用始终在当前的程序段显示。标准循环按照用户定义的变量进行加工,不同的变量定义不同的加工轨迹。循环调用始终要求一个独立的程序段。标准循环中每个循环的参数具有顺序和类型要求。标准循环中的参数用变量或者常量定义,如果是变量,则这些变量必须事先在所调用的程序中定义,并且已经赋值。
6.2 钻、镗削循环
6.2.1 中心钻钻削 CYCLE81
编程:
CYCLE81 (RTP, RFP, SFD, DEP, RDP)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
图6.1 CYCLE81 参数说明:
- RFP和RTP(基准平面和退回平面):一般情况下,基准平面(RFP)和退回平面(RTP)具有不同的值。循环中一般是退回平面位于基准平面之前。退回平面与最后钻孔深度之间的距离也大于基准平面到最后钻孔深度的距离;
- SFD(安全间隙):安全间隙(SFD)以基准平面为基准,提前基准平面一个安全距离。安全间隙生效的方向由循环自动确定;
- DEP和RDP(最后钻孔深度):最后钻孔深度可以定义成相对于基准平面的绝对深度或相对深度。如果是相对深度,循环会利用基准平面和退回平面的位置自动计算绝对深度。
功能:
刀具以编程的主轴转速和进给速度钻削,直至到达输入的最后钻孔深度。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 按循环调用前所编程的进给率(G01)移动到最后的钻孔深度;
- 使用G00返回到退回平面。
示例:
使用CYCLE81钻削中心孔,钻孔轴为Z轴,编程原点为工件外端面中心。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE81(10, 0, 1, -5, 5) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.2 锪平面钻削 CYCLE82
编程:
CYCLE82 (RTP, RFP, SFD, DEP, RDP, DTB)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
DTB | Int | 孔底停顿时间:在最后钻孔深度处的停顿时间(断屑),单位秒 |
图6.2 CYCLE82
参数说明:
- RTP、RFP、SFD、DEP、RDP见CYCLE81;
- DTB(停顿时间):DTB下编程了到达最后钻孔深度时的停顿时间,单位为秒。
功能:
刀具以编程的主轴转速和进给速度钻削,直至到达所输入的最后钻孔深度。到达最后钻孔深度后,停顿规定时间,然后快速运动到退回平面。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 按循环调用前所编程的进给率(G01)移动到最后的锪孔深度;
- 执行在最后锪深度处的停顿时间;
- 使用G00返回到退回平面。
示例:
使用CYCLE82锪平面钻削,钻孔轴为Z轴,编程原点为工件外端面中心,停顿时间为一秒。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE82(10, 0, 1, -5, 5, 1) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.3 深孔钻削 CYCLE83
编程:
CYCLE83 (RTP, RFP, SFD, DEP, RDP, FDEP, FRDP, DAM, DTB, DTS, FRF, TYP)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
FDEP | Real | 起始坐标:起始钻孔深度(绝对坐标) |
FRDP | Real | 起始深度:相对于基准平面的起始钻孔深度(无符号输入) |
DAM | Real | 递减量(无符号输入) |
DTB | Int | 孔底停顿时间:最后钻孔深度处的停顿时间(断屑) |
DTS | Real | 排屑时间:起始点处和用于排屑的停顿时间 |
FRF | Real | 起始进给率系数:起始钻孔深度时的进给系数(无符号输入),取值范围:0.001~1 |
TYP | Int | 加工类型:断屑=0,排屑=1 |
功能:
刀具以编程的主轴转速和进给速度开始钻孔,直至定义的最后钻孔深度。深孔钻削通过多次执行最大可定义的深度,并逐步增加直至到达最后钻孔深度来实现。钻头可以在每次进给深度完成以后退回到“基准平面+安全间隙”位置用于排屑,或者每次退回1mm用于断屑。
操作顺序:
排屑(TYP=1):
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01按循环调用前所编程的进给速度乘以进给系数FRF移动到起始钻孔深度;
- 在起始钻孔深度处的停顿时间(参数DTB);
- 使用G00返回到基准平面之前的安全间隙处,用于排屑;
- 起始点的停顿时间(参数DTS);
- 使用G00回到上次到达的钻孔深度,并保持预留量距离;
- 使用G01钻到下一个钻孔深度(持续动作顺序直至到达最后钻孔深度);
- 使用G00返回到退回平面。
图6.3 CYCLE83 (TYP=1)
断屑(TYP=0)
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01按循环调用前所编程的进给速度乘以进给系数FRF移动到起始钻孔深度;
- 在起始钻孔深度处的停顿时间(参数DTB);
- 使用G01按循环调用前所编程的进给速度从当前钻孔深度后退1mm,用于断屑;
- 使用G01钻到下一个钻孔深度(持续动作顺序直至到达最后钻孔深度);
- 使用G00返回到退回平面。
图6.4 CYCLE83 (TYP=0)
参数说明:
- 参数RTP、RFP、SFD、DEP、RDP见CYCLE81;
- 参数DEP(或RDP)、FDEP(或DRDP)和DAM:
钻孔深度是以最后钻孔深度(DEP或RDP)、起始钻孔深度(FDEP或FRDP)和递减量(DAM)为基础,在循环中按如下方法计算出来的:
- 首先,进行首次钻深,只要不超出总的钻孔深度;
- 从第二次钻孔开始,冲程由上一次钻孔深度减去递减量获得;
- 当剩余量大于两倍的递减量时,下一次的钻削量等于递减量;
- 最终的两次钻削量将被平分,所以始终大于一半的递减量。
- DTB(孔底停顿时间):DTB下编程了到达最后钻孔深度时的停顿时间,单位为秒;
- DTS(中间停顿时间):起始点的停顿时间,只在TYP=1(排屑)时执行;
- FRF(进给系数):作用于进给速度的一个缩减系数,只适用于循环中的首次钻孔深度;
- TYP(加工类型):如果参数TYP=0,钻头在每次到达钻孔深度后退回1mm用于断屑;如果TYP=1,钻头每次移动到基准平面之前的安全间隙处。
示例:
使用CYCLE83深孔钻削,钻孔轴为Z轴,编程原点为工件外端面中心,停顿时间为一秒。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE83(10, 0, 1, -20, 20, -5, 5, 1, 1, 1, 1, 1) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.4 刚性攻丝 CYCLE84
编程:
CYCLE84 (RTP, RFP, SFD, DEP, RDP, DTB, SDAC, MPIT, PIT, POSS, SST, SSR)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
DTB | Int | 孔底停顿时间:螺纹深度处的停顿时间(断屑) |
SDAC | Int | 结束后主轴转向:循环结束后的旋转方向。 |
数值范围:3、4、5或19(分别对应于M03、M04、M05或M19) | ||
MPIT | Real | 螺纹尺寸:螺距由螺纹尺寸决定(带符号输入)。 |
数值范围:3~48(对应于M3~M48);符号决定了螺纹旋转方向。 | ||
PIT | Real | 螺距数值:螺距由数值决定(带符号输入)。 |
数值范围:0.001~2000.000mm;符号决定了螺纹旋转方向。 | ||
POSS | Real | 主轴定位角度:攻丝时主轴定位的角度(以度为单位) |
SST | Real | 主轴攻丝转速:攻丝进给时的主轴转速 |
SSR | Real | 攻丝回退转速:攻丝回退时的主轴转速 |
图6.5 CYCLE84
功能:
刀具以编程的主轴转速和进给速度进行攻丝直至最终螺纹深度。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 定位主轴停止(值在参数POSS中);
- 攻丝至最终钻孔深度,主轴转速为SST;
- 螺纹深度处的停顿时间(参数DTB);
- 退回到基准平面之前的安全间隙处,主轴转速为SSR;
- 使用G00返回到退回平面,通过在循环调用前重新编程有效的主轴速度以及SDAC下编程的旋转方向或定位,从而改变主轴模式。
参数说明:
- RTP、RFP、SFD、DEP、RDP参见CYCLE81;
- DTB(停顿时间):停顿时间以秒编程。钻螺纹孔时,建议忽略停顿时间;
- SDAC(循环结束后的旋转方向):在SDAC下编程了循环结束后的旋转方向或定位;
- MPIT和PIT(作为螺纹螺距的值):可以将螺纹螺距的值定义为螺纹尺寸(公称螺纹只在M3和M48之间)或一个螺距数值(螺纹之间的距离数值)。不需要的参数在调用中省略或赋值为零。如果两个螺距参数有冲突,循环会产生报警并终止循环;
- 右旋或左旋螺纹由螺距参数符号定义:
- 正值表示右旋螺纹(用于M03)
- 负值表示左旋螺纹(用于M04)
- POSS(起始角度):攻丝前,将主轴停止在POSS定义的位置,并转换成位置控制模式;
- SST(攻丝转速):参数SST包含了攻丝进给时的主轴转速。
- SSR(攻丝回退转速):参数SSR包含了攻丝回退时的主轴转速。
示例:
使用CYCLE84刚性攻丝,钻孔轴为Z轴,编程原点为工件外端面中心,被加工螺纹为M6。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G94 G01 Z10 X0 F50 | 循环启动前的起始点 |
N30 CYCLE84(10, 0, 1, -20, 20, 1, 3, 6, 0,0, 300, 600) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.5 铰孔1(镗孔1) CYCLE85
编程:
CYCLE85(RTP, RFP, SFD, DEP, RDP, DTB, FFW, FBW)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
DTB | Int | 孔底停顿时间:最后钻孔深度处的停顿时间(断屑) |
FFW | Real | 进给率 |
FBW | Real | 返回进给率 |
图6.6 CYCLE85
功能:
刀具以编程的主轴转速和进给速度钻孔直至到达定义的最后钻孔深度。向内向外移动的进给速度分别是参数FFW和FBW的值。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01并且按参数FFW所编程的进给速度移动到最终钻孔深度;
- 最后钻孔深度处的停顿时间;
- 使用G01并且按参数FBW所编程的进给速度返回到基准平面之前的安全间隙处;
- 使用G00返回到退回平面。
参数说明:
- 对于参数RTP、RFP、SFD、DEP、RDP,参见CYCLE81;
- DTB(停顿时间):DTB以秒为单位编程了到达最后钻孔深度时的停顿时间;
- FFW(进给率):钻孔时的进给率;
- FBW(退回进给率):退回时的进给率。
示例:
使用CYCLE85铰孔1,钻孔轴为Z轴,编程原点为工件外端面中心,停顿时间为一秒。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE85(10, 0, 1, -20, 20, 1, 0.3, 0.5) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.6 镗孔(镗孔2) CYCLE86
编程:
CYCLE86(RTP, RFP, SFD, DEP, RDP, DTB, SDIR, RPFA, RPSA, RPTA, POSS)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
DTB | Int | 孔底停顿时间:最后钻孔深度处的停顿时间(断屑) |
SDIR | Int | 主轴转向:旋转方向值:3(对应于M03)、4(对应于M04) |
RPFA | Real | 第1轴返回路径:平面中第一轴(X轴)上的返回路径(增量,带符号输入) |
RPSA | Real | 第2轴返回路径:平面中第二轴(Y轴)上的返回路径(增量,带符号输入) |
RPTA | Real | 镗孔轴返回路径:镗孔轴(Z轴)上的返回路径(增量,带符号输入) |
POSS | Real | 主轴定位角度:循环中定位主轴停止的位置(以度为单位) |
图6.7 CYCLE86
功能:
此循环可以用来使用镗刀进行镗孔。刀具按照编程的主轴转速和进给速度进行钻孔,直至到达最后钻孔深度。使用镗孔2时,一旦到达镗孔深度,便激活了定位主轴停止功能。然后,主轴从编程的返回位置快速回到退回平面。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01按循环调用前编程的进给速度移动到最终钻孔深度处;
- 最后钻孔深度处的停顿时间;
- 定位主轴停止在POSS下编程的位置;
- 使用G00在三个轴方向上返回;
- 使用G00在镗孔轴方向返回到基准平面之前的安全间隙处;
- 使用G00返回到退回平面。
参数说明:
- 对于参数RTP、RFP、SFD、DEP、RDP,参见CYCLE81;
- DTB(停顿时间):DTB以秒为单位编程了到达最后镗孔深度时的停顿时间;
- SDIR(旋转方向):使用此参数定义循环中进行镗孔时的旋转方向。如果参数的值不是3或4(M03/M04),则产生报警且不执行循环;
- RPFA(第一轴上的返回路径):使用此参数定义在第一轴上(横坐标)的返回路径,当到达最后镗孔深度并执行了定位主轴停止功能后执行此返回路径;
- RPSA(第二轴上的返回路径):使用此参数定义在第二轴上(纵坐标)的返回路径,当到达最后镗孔深度并执行了定位主轴停止功能后执行此返回路径;
- RPTA(镗孔轴上的返回路径):使用此参数定义在镗孔轴上的返回路径,当到达最后镗孔深度并执行了定位主轴停止功能后执行此返回路径;
- POSS(主轴位置):使用POSS编程定位主轴停止的位置,单位为度,该功能在到达最后镗孔深度后执行。
使用CYCLE86镗孔,钻孔轴为Z轴,编程原点为工件外端面中心,停顿时间为一秒。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE86(10, 0, 1, -20, 20, 1, 3, -1, 1, 0) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.7 停止1钻孔(镗孔3) CYCLE87
编程:
CYCLE87(RTP, RFP, SFD, DEP, RDP, SDIR)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙 (无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
SDIR | Int | 主轴转向:旋转方向值:3(对应于M03)、4(对应于M04) |
图6.8 CYCLE87
功能:
刀具按照编程的主轴转速和进给速度进行钻孔,直至到达最后钻孔深度。使用镗孔3时,一旦到达钻孔深度,便激活了主轴停止M05和程序停止M00。按“循环启动”键继续快速返回到退回平面。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01按循环调用前编程的进给速度移动到最终钻孔深度处;
- M05主轴停止,M00程序停止;
- 按“循环启动”键;
- 使用G00返回到退回平面。
参数说明:
- 对于参数RTP、RFP、SFD、DEP、RDP,参见CYCLE81;
- SDIR(旋转方向):使用此参数定义循环中进行镗孔时的旋转方向。如果参数的值不是3或4(M03/M04),则产生报警且不执行循环。
示例:
使用CYCLE87停止1钻孔,钻孔轴为Z轴,编程原点为工件外端面中心。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE87(10, 0, 1, -20, 20, 3) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.8 停止2钻孔(镗孔4) CYCLE88
编程:
CYCLE88(RTP, RFP, SFD, DEP, RDP, DTB, SDIR)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙 (无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
DTB | Int | 孔底停顿时间:最后钻孔深度处的停顿时间(断屑) |
SDIR | Int | 主轴转向:旋转方向值:3(对应于M03)、4(对应于M04) |
图6.9 CYCLE88
功能:
刀具按编程的主轴转速和进给速度钻孔直至到达定义的最后钻孔深度。在镗孔过程中,到达最后钻孔深度时会产生停顿时间,然后执行主轴停止M05和程序停止M00。按“循环启动”键继续快速返回到退回平面。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01按循环调用前编程的进给速度移动到最终钻孔深度处;
- 最后钻孔深度处的停顿时间;
- M05主轴停止,M00程序停止;
- 按“循环启动”键;
- 使用G00返回到退回平面。
参数说明:
- 对于参数RTP、RFP、SFD、DEP、RDP,参见CYCLE81;
- DTB(停顿时间):DTB以秒为单位编程了到达最后钻孔深度时的停顿时间;
- SDIR(旋转方向):使用此参数定义循环中进行镗孔时的旋转方向。如果参数的值不是3或4(M03/M04),则产生报警且不执行循环。
示例:
使用CYCLE88停止2钻孔,钻孔轴为Z轴,编程原点为工件外端面中心,停顿时间为一秒。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE88(10, 0, 1, -20, 20, 1, 3) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |
6.2.9 铰孔2(镗孔5) CYCLE89
编程:
CYCLE89 (RTP, RFP, SFD, DEP, RDP, DTB)
参数:
RTP | Real | 退回平面(绝对坐标) |
RFP | Real | 基准平面(绝对坐标) |
SFD | Real | 安全间隙(无符号输入) |
DEP | Real | 孔底坐标:最后钻孔深度(绝对坐标) |
RDP | Real | 孔深:相对于基准平面的最后钻孔深度(无符号输入) |
DTB | Int | 孔底停顿时间:最后钻孔深度处的停顿时间(断屑) |
图6.10 CYCLE89
功能:
刀具按编程的主轴转速和进给速度钻孔直至到达定义的最后钻孔深度。到达最后钻孔深度时会产生停顿时间。
操作顺序:
- 使用G00到达基准平面之前的安全间隙处;
- 使用G01按循环调用前编程的进给速度移动到最终钻孔深度处;
- 最后钻孔深度处的停顿时间;
- 使用G01按相同的进给速度返回到基准平面之前的安全间隙处;
- 使用G00返回到退回平面。
参数说明:
- 对于参数RTP、RFP、SFD、DEP、RDP,参见CYCLE81;
- DTB(停顿时间):DTB以秒为单位编程了到达最后钻孔深度时的停顿时间。
示例:
使用CYCLE89铰孔2,钻孔轴为Z轴,编程原点为工件外端面中心,停顿时间为一秒。
N10 G00 G90 G17 G40 T1 D1 S400 M03 | 参数定义 |
N20 G95 G01 Z10 X0 F0.2 | 循环启动前的起始点 |
N30 CYCLE89(10, 0, 1, -20, 20, 1) | 循环调用 |
N40 G00 Z10 | 下一个位置 |
N50 M02 | 程序结束 |