|
|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 yalukie 于 2014-11-21 15:21 编辑
% G! k/ `- \+ d( \! v j4 Q/ U: w. O9 t! L2 h- w
emastercam.com的后处理里面已经有在每个刀路开始加G5.1Q1,换刀之前加G5.1Q0的后处理了,且钻孔固定循环自动取消,但本人在所有用过的国产Fanuc系统机床上都无法使用。G5.1Q1的必要模态是在G49状态,而机床运行了G49依然无效,个人搞了很久都没找到原因。只好自己改了下后处理,只在程序头加上G5.1Q1,但是攻丝时会报警。于是就做进一步修改。代码如下:* q0 h. Y, ]$ L
在psof$ 中加入以下代码,用杂项实变数1控制切换。
# t) g" a4 U4 P/ }; `; [: R
* n; ]" K$ w, h4 S% M+ m if mr1$ = 6,: p: r% w, G# W2 M9 c) }/ g" V
[/ p5 ~" F9 h% s/ T: m' j* U. E
pbld, "G5.1Q1", e$* }8 Z5 O9 [ W2 `$ Z( K9 i' N
]
1 R: l; \0 t- k3 T& T" b
/ @5 s8 M7 O4 N然后在换刀块ptlchg_com 中加入以下代码
0 C0 d! h! \8 G4 m+ c H) h' w
, x7 A% e& \7 s* \, B3 p5 ?! h if (mr1$ = 6 & op_id$ <> last_op_id & ((opcode$ = 3 | opcode$ = 16) & (nextdc$ = 3 | nextdc$ = 9))) & mr1_flg <> 6, 5 P, r+ B6 m' J9 y
[4 P6 m0 S: e2 C0 h7 E
"G5.1Q0", e$
: W" X+ [0 k; P& v# Y4 C- S mr1_flg = 6# x: G2 V8 t3 |) O
]
% Q9 p# H8 ^" y3 |7 P这样就可以程序头加上G5.1Q1,攻丝循环时自动输出G5.1Q0了
! C- l& W! ?/ h2 q6 [& g
$ B% Y( }; k9 h# y效果如图& q0 w- u8 {: N2 u# e1 J
f# z; Y1 V# c/ q" R; U+ }: J( ?& \0 L4 \
但这不是我觉得的最理想的,我想的是在攻丝完成之后,再重新加上G5.1Q1,单从后处理上实现不难,但是机床重新加上的时候即使用上以下格式依然报警3 R# I3 y# H2 u( j s* W
G49
. \7 i5 n1 B% d2 P; z" oG5.1Q15 h% N* Z" D( I% H; v
/ b% S, X$ k1 t. a+ I ]# X; |2 E我单独实验了一下G49的用法,发现这指令和G43的一样是一个运动指令,也就是G49后面还要跟一个坐标点,而这个坐标是取消刀补之后的绝对坐标点。那这就不好控制了,比如设置G49Z0,意思就是运动到取消刀补之后的绝对坐标Z0位置,而如果坐标偏置里面P0加上所用的G54或者其他坐标的Z为负值的话,那就会跑到机械坐标Z的正值去,也就是超程了。如果总的Z偏置为正的话,那就一定的危险性,如果正值过大,刀会跑到机械坐标的负Z值,也就是这个Z偏置足够的大,就会撞到工作台或者工件了。如果用G91G49Z0这机床的动作更神奇,直接是按刀长补的值向下降!!!!2 C0 d/ F. U: K- x- U+ f
不知道可不可以有什么代码或者方式能让像G91Z0G28 那样来执行G49,既取消了刀长补,又返回机床原点,或者不动作也行。 |
|