快捷搜索:  手机  明星

数控编程指令g96(数控编程用一个G66指令带你轻松玩转一出多加工)

数控编程指令g96(数控编程用一个G66指令带你轻松玩转一出多加工)X10.G81 X0 Y0. Z-20 R3. F500.老铁们,如果是你,应该用什么策略来编程才最简单,调机也最方便呢?这里介绍一种用G66指令进行平移或旋转拷贝加工的方法,也许不是最好的方法,但编程和调机我觉得还是非常简便的。G66指令很少用到,许多朋友可能不熟,但G81指令,大家应该都不陌生。先看一段G81代码

头条的CNC大神千千万,大神的加工策略万万千,万能的老铁们,当你们要一次装夹多件进行加工时,你们一般是使用什么样的编程策略?

来看两张图:

数控编程指令g96(数控编程用一个G66指令带你轻松玩转一出多加工)(1)

图1

数控编程指令g96(数控编程用一个G66指令带你轻松玩转一出多加工)(2)

图2

老铁们,如果是你,应该用什么策略来编程才最简单,调机也最方便呢?

这里介绍一种用G66指令进行平移或旋转拷贝加工的方法,也许不是最好的方法,但编程和调机我觉得还是非常简便的。

G66指令很少用到,许多朋友可能不熟,但G81指令,大家应该都不陌生。先看一段G81代码

G81 X0 Y0. Z-20 R3. F500.

X10.

X20.

X30.

G80

G81指令将对每一个X轴移动产生一个钻孔动作。G66也是一个模态指令,它的功能和钻孔循环类似:对每一个轴移动执行一种加工功能,只不过G66执行的是一个子程式功能,子程式可以是任意的加工功能模块。将以上G81加工改用G66编程可变成如下代码:

G66 P312 注意,执行到这一行机床不会有动作,只有执行到下面的轴移动才会动作。

X0. Y0.

X10.

X20.

X30.

G67

O312子程式的代码是

G81 Z-20. R3. F500.

G80

以上这两者的作用是等价的,都是钻4个深20的孔。但是,G66的功能要强大得多,如果O312的代码是铣外形,则刚才那段代码将产生4次铣外形的加工拷贝。

我们回到上面加工24个零件的图1,假设T1号刀D50飞刀,T2号刀D5.0钻头,这两把刀加工单个零件正面时的程式如下:

T1 M6

G90 G54.1 P1 X-30.Y0. S2500 M3

G0 B0

G43 H1 Z25. M8

Z3.

G1 Z0. F1000.

X160.

G0 Z25.

M9

M5

G91 G28 Z0.

M01

T2 M6

G90 G54.1 P1 X60. Y10. S1500 M3

G0 B0

G43 H2. Z25. M8

G83 Z-15. R3. Q3.5 F800.

Y0.

Y-10.

G80

M9

M5

G91 G28 Z0.

M01

M30

使用G66编程,则单个零件加工可以改成如下格式:

主程式

T1 M6

G90 G54.1 P1 X-30.Y0. S2500 M3

G0 B0

G43 H1 Z25. M8

G66 P112

G54.1 P1 X-30. Y0.

G67

M9

M5

G91 G28 Z0.

M01

T2 M6

G90 G54.1 P1 X60. Y10. S1500 M3

G0 B0

G43 H2. Z25. M8

G66 P114

G54.1 P1 X60. Y10.

G67

M9

M5

G91 G28 Z0.

M01

M30

加工子程式

O112

G90 G0 X-30. Y0. S2500 M3

Z3.

G1 Z0. F1000.

X160.

G0 Z25.

M99

O114

G90 G0 X60. Y0. S1500 M3

G83 Z-15. R3. Q3.5 F800.

Y0.

Y-10.

G80

M99

要加工一个面上的6件时,子程式内容不变,主程式改成以下这样就可实现 (其中1夹位1个坐标系)

T1 M6

G90 G54.1 P1 X-30.Y0. S2500 M3

G0 B0

G43 H1 Z25. M8

G66 P112

G54.1 P1 X-30. Y0.

G54.1 P2 X-30. Y0.

G54.1 P3 X-30. Y0.

G54.1 P4 X-30. Y0.

G54.1 P5 X-30. Y0.

G54.1 P6 X-30. Y0.

G67

M9

M5

G91 G28 Z0.

M01

T2 M6

G90 G54.1 P1 X60. Y10. S1500 M3

G0 B0

G43 H2. Z25. M8

G66 P114

G54.1 P1 X60. Y10.

G54.1 P2 X60. Y10.

G54.1 P3 X60. Y10.

G54.1 P4 X60. Y10.

G54.1 P5 X60. Y10.

G54.1 P6 X60. Y10.

G67

M9

M5

G91 G28 Z0.

M01

M30

要加工24件时(注意:因为要转角,主程式和子程式里的安全高度都要抬到工作台能转过去的高度),改成以下程式即可实现:

T1 M6

G90 G54.1 P1 X-30.Y0. S2500 M3

G0 B0

G43 H1 Z150. M8

G66 P112

G54.1 P1 X-30. Y0. B0.

G54.1 P2 X-30. Y0. B0.

G54.1 P3 X-30. Y0. B0.

G54.1 P4 X-30. Y0. B0.

G54.1 P5 X-30. Y0. B0.

G54.1 P6 X-30. Y0. B0.

G54.1 P7 X-30. Y0. B0.

G54.1 P8 X-30. Y0. B0.

G54.1 P9 X-30. Y0. B0.

G54.1 P10 X-30. Y0. B0.

G54.1 P11 X-30. Y0. B0.

G54.1 P12 X-30. Y0. B0.

G54.1 P13 X-30. Y0. B0.

G54.1 P14 X-30. Y0. B0.

G54.1 P15 X-30. Y0. B0.

G54.1 P16 X-30. Y0. B0.

G54.1 P17 X-30. Y0. B0.

G54.1 P18 X-30. Y0. B0.

G54.1 P19 X-30. Y0. B0.

G54.1 P20 X-30. Y0. B0.

G54.1 P21 X-30. Y0. B0.

G54.1 P22 X-30. Y0. B0.

G54.1 P23 X-30. Y0. B0.

G54.1 P24 X-30. Y0. B0.

G67

M9

M5

G91 G28 Z0.

M01

T2 M6

G90 G54.1 P1 X60. Y10. S1500 M3

G0 B0

G43 H2. Z150. M8

G66 P114

G54.1 P1 X60. Y10. B0.

G54.1 P2 X60. Y10. B0.

G54.1 P3 X60. Y10. B0.

G54.1 P4 X60. Y10. B0.

G54.1 P5 X60. Y10. B0.

G54.1 P6 X60. Y10. B0.

G54.1 P7 X60. Y10. B0.

G54.1 P8 X60. Y10. B0.

G54.1 P9 X60. Y10. B0.

G54.1 P10 X60. Y10. B0.

G54.1 P11 X60. Y10. B0.

G54.1 P12 X60. Y10. B0.

G54.1 P13 X60. Y10. B0.

G54.1 P14 X60. Y10. B0.

G54.1 P15 X60. Y10. B0.

G54.1 P16 X60. Y10. B0.

G54.1 P17 X60. Y10. B0.

G54.1 P18 X60. Y10. B0.

G54.1 P19 X60. Y10. B0.

G54.1 P20 X60. Y10. B0.

G54.1 P21 X60. Y10. B0.

G54.1 P22 X60. Y10. B0.

G54.1 P23 X60. Y10. B0.

G54.1 P24 X60. Y10. B0.

G67

M9

M5

G91 G28 Z0.

M01

M30

通过以上修改,实现了循刀序原则对所有零件进行拷贝加工,但是对于调机还是不够方便,如果要跳过第10件的加工,则需要对每一把刀具程式内的G54.1 P10 XY用括号括起来,刀具很多时,修改起来也很麻烦。我们可以将所有的轴移动指令移出来单独成一个文件901,并且每一个轴移动XY值全部用宏变量替代,然后再在G66之后用M98调用901,功能不会改变,但程式却能大大简化:

T1 M6

#501=-30. (下刀点用变量取代)

#502=0.

G90 G54.1 P1 X#501 Y#502 S2500 M3

G0 B0

G43 H1 Z150. M8

G66 P112

M98 P901

G67

M9

M5

G91 G28 Z0.

M01

T2 M6

#501=60.

#502=10.

G90 G54.1 P1 X#501 Y#502 S1500 M3

G0 B0

G43 H2. Z150. M8

G66 P114

M98 P901

G67

M9

M5

G91 G28 Z0.

M01

M30

轴移动指令移出来单独成一个文件,下刀点用宏变量替换

O901

G54.1 P1 X#501 Y#502 B0.

G54.1 P2 X#501 Y#502 B0.

G54.1 P3 X#501 Y#502 B0.

G54.1 P4 X#501 Y#502 B0.

G54.1 P5 X#501 Y#502 B0.

G54.1 P6 X#501 Y#502 B0.

G54.1 P7 X#501 Y#502 B0.

G54.1 P8 X#501 Y#502 B0.

G54.1 P9 X#501 Y#502 B0.

G54.1 P10 X#501 Y#502 B0.

G54.1 P11 X#501 Y#502 B0.

G54.1 P12 X#501 Y#502 B0.

G54.1 P13 X#501 Y#502 B0.

G54.1 P14 X#501 Y#502 B0.

G54.1 P15 X#501 Y#502 B0.

G54.1 P16 X#501 Y#502 B0.

G54.1 P17 X#501 Y#502 B0.

G54.1 P18 X#501 Y#502 B0.

G54.1 P19 X#501 Y#502 B0.

G54.1 P20 X#501 Y#502 B0.

G54.1 P21 X#501 Y#502 B0.

G54.1 P22 X#501 Y#502 B0.

G54.1 P23 X#501 Y#502 B0.

G54.1 P24 X#501 Y#502 B0.

M99

这样程式是不是简化了许多,调机也变得方便了,当调首件时,只需打开901文件,在G54.1 P1 X#501 Y#502 B0. 后插入一行M99,就可以跳过所有刀具后面23件的加工。如果某一夹位,因夹位坏了不能装料,要跳过,也只需打开901文件,将对应夹位的那一行用小括号括起来跳过所有刀具加工。

一出多加工,坐标系多,如果还是在机台后台设置坐标值,一不安全,二坐标系不够用时就没法搞了,所以一般将坐标设置放到NC文件里。比如正面加工调用100文件设置P1到P24个坐标,侧面加工调用200文件设置P1到P24个坐标系 这样坐标系就可以重复使用.

卧加机一般是双工作台以上的机器,那调台指令也放到坐标文件里,相当于工作台绑定坐标系,这样可以防止调错台出现撞机的现象. 那么程式再次优化成以下格式:

T1 M6

M98 P100 (每次换刀后调用坐标设置,保证加工前坐标系都是最新修改的)

#501=-30.

#502=0.

G90 G54.1 P1 X#501 Y#502 S2500 M3

G0 B0

G43 H1 Z150. M8

G66 P112

M98 P901

G67

M9

M5

G91 G28 Z0.

M01

T2 M6

M98 P100 (调用坐标设置)

#501=60.

#502=10.

G90 G54.1 P1 X#501 Y#502 S1500 M3

G0 B0

G43 H2. Z150. M8

G66 P114

M98 P901

G67

M9

M5

G91 G28 Z0.

M01

M30

坐标设置文件

O100

M711 (调1号工作台指令,保证调1号台后就设置以下坐标值,防出错撞机)

G10 L20 G54.1 P1 X-110. Y-80. Z-190. B0.

G10 L20 G54.1 P2 X-110. Y-170. Z-190. B0.

G10 L20 G54.1 P3 X-110. Y-260. Z-190. B0.

G10 L20 G54.1 P4 X-110. Y-350. Z-190. B0.

G10 L20 G54.1 P5 X-110. Y-440. Z-190. B0.

G10 L20 G54.1 P6 X-110. Y-530. Z-190. B0.

G10 L20 G54.1 P7 X-110. Y-80. Z-190. B90.

G10 L20 G54.1 P8 X-110. Y-170. Z-190. B90.

G10 L20 G54.1 P9 X-110. Y-260. Z-190. B90.

G10 L20 G54.1 P10 X-110. Y-350. Z-190. B90.

G10 L20 G54.1 P11 X-110. Y-440. Z-190. B90.

G10 L20 G54.1 P12 X-110. Y-530. Z-190. B90.

G10 L20 G54.1 P13 X-110. Y-80. Z-190. B180.

G10 L20 G54.1 P14 X-110. Y-170. Z-190. B180.

G10 L20 G54.1 P15 X-110. Y-260. Z-190. B180.

G10 L20 G54.1 P16 X-110. Y-350. Z-190. B180.

G10 L20 G54.1 P17 X-110. Y-440. Z-190. B180.

G10 L20 G54.1 P18 X-110. Y-530. Z-190. B180.

G10 L20 G54.1 P19 X-110. Y-80. Z-190. B270.

G10 L20 G54.1 P20 X-110. Y-170. Z-190. B270.

G10 L20 G54.1 P21 X-110. Y-260. Z-190. B270.

G10 L20 G54.1 P22 X-110. Y-350. Z-190. B270.

G10 L20 G54.1 P23 X-110. Y-440. Z-190. B270.

G10 L20 G54.1 P24 X-110. Y-530. Z-190. B270.

M99

以上是正面加工的举例,对于长方向两端面可以用同样的方法进行拷贝加工。

对于上面第二个图(一次加工40件),每一面的两排是相对倒转180装夹的,则主程式可改成以下格式调用,即可实现相反的那一排的旋转拷贝。

T1 M6

M98 P100

#501=-30.

#502=0.

G90 G54.1 P1 X#501 Y#502 S2500 M3

G0 B0

G43 H1 Z150. M8

G66 P112

M98 P901

G67

G90 G68 X0 Y0 R180. (另一排5件旋转180度)

G66 P112

M98 P911

G67

G69

M9

M5

G91 G28 Z0.

M01

T2 M6

M98 P100

#501=60.

#502=10.

G90 G54.1 P1 X#501 Y#502 S1500 M3

G0 B0

G43 H2. Z150. M8

G66 P114

M98 P901

G67

G90 G68 X0 Y0 R180. (另一排5件旋转180度)

G66 P114

M98 P911

G67

G69

M9

M5

G91 G28 Z0.

M01

M30

以上一出多加工方法,适用于3、4、5轴。

数控编程指令g96(数控编程用一个G66指令带你轻松玩转一出多加工)(3)

注意事项: G66 与G67 是一对一,即有几个G66,就要几个G67取消。

数控编程指令g96(数控编程用一个G66指令带你轻松玩转一出多加工)(4)

出G66格式程式

看了以上G66的方法,老铁们,有没有觉得用G66来实现一出多是最简捷的,一编程简单,只需要编一个零件就可以了,二调机方便快速,想加工几个就加工几个.如果你有更好的加工方法,欢迎分享讨论。

猜您喜欢: