iCAx开思网

标题: 谁懂宏程序 [打印本页]

作者: guosmsm    时间: 2010-8-9 14:44
标题: 谁懂宏程序
我想用一把跑10个坐标,跑完再换下一把刀接着跑10坐标
红色的是我做的变量,这样对不?
N0010 G0 G90 G40 G49 G80 G17
N0012 G0 G91 G28 Z0.0
N0014 T01 M06
#1=G54.1P1是扩展坐标
#2=#1+1
N0016 G90 G54.1P1 X50. Y-20. S6500 M03
N0018 G43 Z42. H00 M08
N0020 G99 G73 X50. Y-20. Z-15.251 R3. F500. Q1.5
N0022 Y10.
N0024 X-50.
N0026 Y-20.
N0028 G80
N0030 G0 Z42.
IF[#2 #iGE#j10]GOTO N32 如果#2大于等于10的时候就往下走
N0032 M09
N0034 M05
N0036 G28 G91 Z0.0
N0038 M30

本帖最后由 guosmsm 于 2010-8-9 14:49 编辑
作者: 鹰之梦    时间: 2010-8-9 15:47
没有说清你的座标系会不会变。
作者: CCFF    时间: 2010-8-9 16:08
你的格式错了吧,好象#2=#1+1会报警吧。
应该把P1的1做成变量,而不能把整个G54.1P1做成变量吧,我原来也做过宏程序,但早忘了,这个可以到机台上试跑一下的。
其实你不用这样做的,你可以用调用程序来做,照样可以节省内存的。

本帖最后由 CCFF 于 2010-8-9 16:10 编辑
作者: 屁颠屁颠    时间: 2010-8-9 18:38
好久不见过死马
作者: WHBING888    时间: 2010-8-9 18:39
#1=#1+1
上面用IF GOTO 或者WHILE DO 做循环变量
作者: 五两三    时间: 2010-8-9 19:28
不是很明白你的意思,你的意思是你会用到很多坐标系:
G54.1P1,G54.1P2,G54.1P3。。。。这样有序排列。
每个坐标系的程序是一样的,一把刀做十个坐标系就换刀是吗?
如果是这样,我倒是可以处理。
你用到哪个坐标系截止的呢?
GOTO后面不能跟N32,格式应该是GOTO 32,而不是GOTO N32。

本帖最后由 五两三 于 2010-8-9 19:54 编辑
作者: 五两三    时间: 2010-8-9 20:55
不知道我上面的理解是否正确。也不知道你用了多少坐标系。
姑且理解为用了48个吧。
试一下这样:(好几年都没怎么接触宏了,生疏了,不一定对)
我是这样设定的:一把刀走十个坐标系后,执行M00,手工换刀后,继续执行程序。
N0010 G0 G90 G40 G49 G80 G17
N0012 G0 G91 G28 Z0.0
N0014 T01 M06
#100=1
N0016 G90 G54.1P#100 X50. Y-20. S6500 M03
N0018 G43 Z42. H00 M08
N0020 G99 G73 X50. Y-20. Z-15.251 R3. F500. Q1.5
N0022 Y10.
N0024 X-50.
N0026 Y-20.
N0028 G80
N0030 G0 Z42.
#100=#100+1
IF [#100=11] GOTO 31
IF [#100=21] GOTO 31
IF [#100=31] GOTO 31
IF [#100=41] GOTO 31
IF [#100=49] GOTO 32
GOTO 16
N0031 M00
GOTO 16
N0032 M09
N0034 M05
N0036 G28 G91 Z0.0
N0038 M30
(仅供参考)

本帖最后由 五两三 于 2010-8-10 17:59 编辑
作者: 五两三    时间: 2010-8-9 21:16
刚看到你在马啃区发的帖,感觉我还是理解错了,你是14把不同的刀?
一把刀跑十个坐标系后,执行下一把刀(不同的刀)的程序吗?
下一把刀也是重复这十个坐标系吗?

本帖最后由 五两三 于 2010-8-9 21:19 编辑
作者: guosmsm    时间: 2010-8-9 22:16
五两三 发表于 2010-8-9 21:16
刚看到你在马啃区发的帖,感觉我还是理解错了,你是14把不同的刀?
一把刀跑十个坐标系后,执行下一把刀(不同的刀)的程序吗?
下一把刀也是重复这十个坐标系吗?

看来我说的还是不够清楚,机器是兄弟机~~14把刀库,所以不用M00
一个批量很大的零件,需要14把刀才能完成所有工序,其中包括铣,钻.铰,镗,刚性攻丝等等.......我做了个工装,可以一次装夹10个零件,我用扩展坐标系分成10个坐标,G54.1P1       .G54.1P2       G54.1P3      G54.1P4.........................我希望每一把刀具能够从1号坐标加工完后再加工2号,直至10个坐标完成后换下一把到接着从1--------10直至14把刀以此全部做完。8年前有用到过一次~~~可是现在真的想不起来怎么用了~~
作者: guosmsm    时间: 2010-8-9 22:21
CCFF 发表于 2010-8-9 16:08
你的格式错了吧,好象#2=#1+1会报警吧。
应该把P1的1做成变量,而不能把整个G54.1P1做成变量吧,我原来也做过宏程序,但早忘了,这个可以到机台上试跑一下的。
其实你不用这样做的,你可以用调用程序来做,照样可以 ...


我之前是用M98调用的~~可是我确实太懒了~~
作者: 五两三    时间: 2010-8-9 22:49
9# guosmsm
大概明白你的意思了,但是这个你的每一把刀的程序都是要处理一下的,
而你发上来的程序只有一把刀的。
反正大概就是下面这样的,每把刀都可以类推的:
N0010 G0 G90 G40 G49 G80 G17
N0012 G0 G91 G28 Z0.0
N0014 T01 M06
#100=1
#101=10
N0016 G90 G54.1P#100 X50. Y-20. S6500 M03
N0018 G43 Z42. H00 M08
N0020 G99 G73 X50. Y-20. Z-15.251 R3. F500. Q1.5
N0022 Y10.
N0024 X-50.
N0026 Y-20.
N0028 G80
N0030 G0 Z42.
#100=#100+1
IF [#100 GT #101] GOTO 32
GOTO 16
N0032 M09
N0034 M05
N0036 G28 G91 Z0.0
N0038 M30

本帖最后由 五两三 于 2010-8-10 17:58 编辑
作者: guosmsm    时间: 2010-8-12 13:44
11# 五两三

应该是这样的,我去到机床上试试~~~谢了~~




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3