您现在的位置:

用宏程序加工高速钻孔循环程序

   

73高速钻孔循环的宏程序

程序

说明

0073

73宏程序实现源代码调用本程序之前必须转动主轴M03或M04

IF[AR[#25]EQ0]OR[AR[#10]EQ0]

 

99

如果没有定义孔底Z值、每次进给深度Q值或退刀量K则返回

ENDIF

 

N10 G91

用增量方式编写宏程序

IF AR[#23] EQ 90

如果X值是绝对方式G90

#23=#23-#30

X转换为增量,#30为调用本程序时X的绝对坐标

ENDIF

 

IF AR[#24] EQ 90

如果Y值是绝对方式G90

#24=#24-#31

Y转换为增量,#31为调用本程序时Y的绝对坐标

ENDIF

 

IF AR[#17] EQ 90

如果参考点平面R值是绝对方式G90

#17=#17-#32

R转换为增量,#32为调用本程序时Z的绝对坐标

ELSE

 

IF AR[#26] NE 0

初始Z平面模态值存在

#17=#17+#26-#32

则将R值转换为增量方式

ENDIF

 

ENDIF

 

IF AR[#25] EQ 90

如果孔底Z值是绝对方式G90

#25=#25-#32-#17

Z值转换为增量

ENDIF

 

IF [#25 GE 0] OR [#16 GE 0] OR [#10 LE 0] OR [#10 GE [-#16]]

如果增量方式的ZQ≥0或退刀量K≤0K>Q的绝对值

M99

则返回

ENDIF

 

N20 X[#23] Y[#24]

移到XY孔加工位

N30 X[#17]

移到参考点R

#40=-#25

循环变量#40,其初始值为参考点到孔底的位移量

410

循环变量#41,为退刀量

WHILE #40 GT [-#16]

如果还可以进刀一次

N50 G01 Z[#16-#41]

进刀

N55 G04 P0.1

暂停

N60 G00 Z[#10]

退刀

N65 G04 P0.1

暂停

#41=#10

退刀量

#40=#40+#16

进刀量为负数,#40将减少

ENDW

 

N70 G01 Z[-#40-#41]

最后一刀到孔底

N80 G04 P[#15]

在孔底暂停

IF #1165 EQ 99

如果第15G代码模态值为G99

N90 G00 Z[-#25]

即返回参考点R平面

ELSE

否则

IF AR[#26] EQ 0

 

N90 G00 Z[-#25-#17]

返回初始平面,注意#25及#17均为负数

ELSE

 

N90 G90 G00 Z[#26]

否则返回初始平面

ENDIF

 

ENDIF

 

M99