|
global mom_kin_machine_type$ S5 `$ b) q$ E u' l+ |4 J- p) |
global mom_kin_4th_axis_type mom_kin_4th_axis_plane
1 W* B: f7 q' M global mom_kin_5th_axis_type! @& X N" O0 J' B
global mom_tool_axis mom_sys_spindle_axis mom_kin_spindle_axis8 K; X2 Y3 x3 z1 w
global mom_pos
1 ^% g, R/ l& a global mom_cycle_spindle_axis mom_cutcom_plane mom_pos_arc_plane
/ d( s$ `1 j! d @0 Q/ Q6 X4 w3 s+ j
" p! B9 Y+ h. N9 l% L+ T A4 z
# Default cycle spindle axis to Z
# v& y( o$ i. `9 _) [: t& _7 } set mom_cycle_spindle_axis 2
! P5 @" m: o8 q/ n( J% n% @0 t# a9 u
* D* M+ Y! Z. q1 k' _8 r/ m
if { ![string match "*3_axis_mill*" $mom_kin_machine_type] } { A, R+ n! t0 X) C( q/ p# Q
$ d$ C; ?, s/ W0 c+ C if { $mom_kin_4th_axis_type == "Head" } {! O$ ]+ N& S$ W" y: q7 {; j
3 m/ S6 v7 Y8 X3 b# h6 F% r if [EQ_is_equal [expr abs($mom_tool_axis(0))] 1.0] {
8 E2 A7 m2 _4 |6 X set mom_cycle_spindle_axis 0' h% T7 a: `: k0 C
}
/ s* l( C5 N$ N
! P) p% Q: j6 B/ ~. V$ ] if [EQ_is_equal [expr abs($mom_tool_axis(1))] 1.0] {
3 F! T9 L' o: N. e; i6 e set mom_cycle_spindle_axis 1 J, `' C, g; c) c* i- I
}
" w& q( m2 k" w) f! L
- c9 P6 B1 ]/ y/ J0 M) V if { $mom_kin_5th_axis_type == "Table" } {& o S4 t$ U' @- {. Q% c
X# j( F* n5 Q if { [EQ_is_equal [expr abs($mom_pos(3))] 90.0] || [EQ_is_equal [expr abs($mom_pos(3))] 270.0] } {" i+ p) }. Z2 B* e6 P5 ]# b
% N0 d. V/ X5 i: o% ]1 d
switch $mom_kin_4th_axis_plane {$ j: N0 A# i( X) S* L6 n
"YZ" {
! P! F# a9 n/ z$ T4 |( |: [: C% H set mom_cycle_spindle_axis 1
9 i1 C- L5 y4 l# ]0 i }
8 R% d- g: l; m+ ^3 R- q) r "ZX" {
4 E4 l6 y, s. ~# X set mom_cycle_spindle_axis 04 B7 L# X, j: D1 w. P' i
}
+ v: P0 I. B0 L$ ^3 v }6 I9 W# B3 p6 D; \
}
8 I" U* P% p' o }6 _5 h! v$ c) R9 s+ ^
}
! X+ }( g7 C, [' z3 m1 @ }* f" I" t1 w7 J. t% Y. K, c# S
9 _ @8 p8 ]" K7 C6 e; {
- c$ X$ P: M: q/ i switch $mom_cycle_spindle_axis { _9 m% ]2 M( M* |+ y3 y
0 {, ^( h. d) d* A# r N
set mom_cutcom_plane YZ
* _$ }$ y8 y# o. C& h" S set mom_pos_arc_plane YZ
# P9 u$ U7 |/ `4 x- Q) C; ` set principal_axis X" r: H W, F1 t: U- @2 f3 }, x+ M
}5 i, [/ ]% Z5 |/ S9 t# F; Z
1 {$ d9 a8 i) [2 m# Y/ m+ i! W
set mom_cutcom_plane ZX
- J' T3 v! G) o ~2 s7 x set mom_pos_arc_plane ZX; B/ d0 y" P1 c4 e. V
set principal_axis Y
& N- z% X8 A: C3 D) y }& S% b* H( T. ?* F! d
2 {
* S+ ~. [4 c$ Z set mom_cutcom_plane XY
4 e0 t& r# m$ O9 ~% c, {+ a set mom_pos_arc_plane XY0 ^5 x0 F. ]5 ?. s% N2 `. V, k
set principal_axis Z
4 a W* N$ i# H+ @( {. m }/ \$ j$ ?$ }2 A7 H& S( f
default {
5 k( S3 T+ d& P+ _: N" r set mom_cutcom_plane UNDEFINED
1 i1 g3 T; K1 ]% B( }! Q& B/ l set mom_pos_arc_plane UNDEFINED
4 g) X' e0 \' C& R W5 a0 g( K set principal_axis ""% M. v0 D, G' Z1 O+ w6 I1 R: u
}+ n1 ]4 W& P0 E
}* O- t, C( g/ a( S
0 l4 r) I6 o8 {" g* Z# u5 w1 Z3 f# ?" L, L
if { $suppress_principal_axis && [string length $principal_axis] > 0 } {, n# z" O U: W% W, P
MOM_suppress once $principal_axis
, e9 r" v: g$ D1 t- r- E) j7 M/ [ }
8 G! {3 h1 a) ` X& T
: Q: R& c3 q. U7 x( O+ }- R) W. k+ e5 u
if { $force_plane_code } {- u4 K! K7 u# q, a- u5 Q
global cycle_init_flag
( G' F: i3 F3 C0 H/ `! q: O8 X0 `6 M1 n5 @8 t+ [ v$ o
if { [info exists cycle_init_flag] && [string match "TRUE" $cycle_init_flag] } {5 e& H& P$ t% V! Z* L& K' L- G
MOM_force once G_plane$ I$ k( V4 s d: [$ G* z
}
. v* u" ^) @, I1 g i1 m7 c4 n } |
|