|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 yalukie 于 2014-11-21 15:21 编辑 5 y f8 N& e. w$ A+ f0 f% [9 C% q
' t3 A; h3 A6 D7 ^0 Jemastercam.com的后处理里面已经有在每个刀路开始加G5.1Q1,换刀之前加G5.1Q0的后处理了,且钻孔固定循环自动取消,但本人在所有用过的国产Fanuc系统机床上都无法使用。G5.1Q1的必要模态是在G49状态,而机床运行了G49依然无效,个人搞了很久都没找到原因。只好自己改了下后处理,只在程序头加上G5.1Q1,但是攻丝时会报警。于是就做进一步修改。代码如下:* }( p& p' p' F6 A6 w f7 r/ d
在psof$ 中加入以下代码,用杂项实变数1控制切换。
( Q* p! ~( ~- l2 W0 D
0 p% X+ f0 k9 G1 B" V5 s6 k5 u if mr1$ = 6,4 F2 W9 ~1 v, `) B( ]' j
[# l* Z! C7 x; {8 {8 W; M
pbld, "G5.1Q1", e$
" K. i1 B# A' y1 A ] # d% D5 C' \( u, K5 v/ A# C( a
! F' J2 D) f* a% |然后在换刀块ptlchg_com 中加入以下代码" N3 s* w" T, i5 }( ?
8 P/ C/ _6 z8 [. n5 T& A0 i if (mr1$ = 6 & op_id$ <> last_op_id & ((opcode$ = 3 | opcode$ = 16) & (nextdc$ = 3 | nextdc$ = 9))) & mr1_flg <> 6, " a6 ~0 v& ?4 l6 I- {+ d
[' T% s4 _ T# c+ h! y
"G5.1Q0", e$
9 a' L/ W8 u! ^/ ?/ f5 N mr1_flg = 6
- P+ D' |' g& f: _$ H1 M6 P5 G) F ]
0 |1 {- p" g5 O. m这样就可以程序头加上G5.1Q1,攻丝循环时自动输出G5.1Q0了5 M- x- V, w( N
" ~) y+ |" r$ R+ r j- J: b, e" F效果如图
0 w6 M' q6 U3 F' L
. }3 C% |! I+ r) A: j0 o. S0 a; D7 R
& w) z, T( x( Z# D/ F, H8 U* I; [% n但这不是我觉得的最理想的,我想的是在攻丝完成之后,再重新加上G5.1Q1,单从后处理上实现不难,但是机床重新加上的时候即使用上以下格式依然报警; z F" J0 Q( Z, |6 `) m* t( ?/ U
G49& U+ B1 J" w& ^& c U7 J
G5.1Q1$ v0 g3 x9 C0 Y' `+ y8 Q M, R
( U" M0 c0 M' y* d! J
我单独实验了一下G49的用法,发现这指令和G43的一样是一个运动指令,也就是G49后面还要跟一个坐标点,而这个坐标是取消刀补之后的绝对坐标点。那这就不好控制了,比如设置G49Z0,意思就是运动到取消刀补之后的绝对坐标Z0位置,而如果坐标偏置里面P0加上所用的G54或者其他坐标的Z为负值的话,那就会跑到机械坐标Z的正值去,也就是超程了。如果总的Z偏置为正的话,那就一定的危险性,如果正值过大,刀会跑到机械坐标的负Z值,也就是这个Z偏置足够的大,就会撞到工作台或者工件了。如果用G91G49Z0这机床的动作更神奇,直接是按刀长补的值向下降!!!!8 j6 ~7 I- X9 r9 D; d8 j, M1 f
不知道可不可以有什么代码或者方式能让像G91Z0G28 那样来执行G49,既取消了刀长补,又返回机床原点,或者不动作也行。 |
|