|
马上注册,结识高手,享用更多资源,轻松玩转三维网社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 yalukie 于 2014-11-21 15:21 编辑 ; x3 Q: ~: p# x8 g8 ?% G
$ f4 ~4 T: G! Remastercam.com的后处理里面已经有在每个刀路开始加G5.1Q1,换刀之前加G5.1Q0的后处理了,且钻孔固定循环自动取消,但本人在所有用过的国产Fanuc系统机床上都无法使用。G5.1Q1的必要模态是在G49状态,而机床运行了G49依然无效,个人搞了很久都没找到原因。只好自己改了下后处理,只在程序头加上G5.1Q1,但是攻丝时会报警。于是就做进一步修改。代码如下:
7 k3 Z/ t5 q. F1 b5 e1 p8 q% h9 K在psof$ 中加入以下代码,用杂项实变数1控制切换。
7 [! a. {" `( W$ E9 b# ^
. t, ]* s% x* [- t P6 Z
if mr1$ = 6,
7 T, }4 a4 r( ? [. g: F0 t& o( p, n
pbld, "G5.1Q1", e$
1 j+ I0 E6 f3 p1 ]! k6 g, W- C ] ) B' `% h# y2 \' |9 \9 ~6 f9 T
7 a* a3 H! |% \& W然后在换刀块ptlchg_com 中加入以下代码' t$ Z) W5 N& D; f* Q8 T3 K# F7 g
- }: ` _! n8 h* U$ g @" U2 L if (mr1$ = 6 & op_id$ <> last_op_id & ((opcode$ = 3 | opcode$ = 16) & (nextdc$ = 3 | nextdc$ = 9))) & mr1_flg <> 6,
" n! @% c: e5 i/ D y2 A3 c [
" n( D3 e) s, T7 F- a0 P+ C# Q "G5.1Q0", e$
$ k( u+ }( V. J( n, L% I, U2 G mr1_flg = 6) v& q8 h7 B" L* p
]/ D6 V ?$ B5 F$ y( o' s, l/ i8 s$ N* R
这样就可以程序头加上G5.1Q1,攻丝循环时自动输出G5.1Q0了9 w: k6 f1 j# l. ?
8 P3 t- A, Q8 A) L0 i效果如图
0 m5 z" y" }& R3 O" P, p _& Z
$ }% J8 e' T: I& ?3 O
* l* W( D+ t9 k0 @3 L5 _但这不是我觉得的最理想的,我想的是在攻丝完成之后,再重新加上G5.1Q1,单从后处理上实现不难,但是机床重新加上的时候即使用上以下格式依然报警
3 c( E, m! V1 G( A! DG49
: _4 T8 l; k: eG5.1Q1, E q( z- v0 I
# \. S8 D- E' c' p5 B+ i我单独实验了一下G49的用法,发现这指令和G43的一样是一个运动指令,也就是G49后面还要跟一个坐标点,而这个坐标是取消刀补之后的绝对坐标点。那这就不好控制了,比如设置G49Z0,意思就是运动到取消刀补之后的绝对坐标Z0位置,而如果坐标偏置里面P0加上所用的G54或者其他坐标的Z为负值的话,那就会跑到机械坐标Z的正值去,也就是超程了。如果总的Z偏置为正的话,那就一定的危险性,如果正值过大,刀会跑到机械坐标的负Z值,也就是这个Z偏置足够的大,就会撞到工作台或者工件了。如果用G91G49Z0这机床的动作更神奇,直接是按刀长补的值向下降!!!!
8 Z! y/ v% p0 s- I9 J9 l' |$ @不知道可不可以有什么代码或者方式能让像G91Z0G28 那样来执行G49,既取消了刀长补,又返回机床原点,或者不动作也行。 |
|