|
发表于 2020-8-8 16:45:51
|
显示全部楼层
global mom_kin_machine_type1 ?& h( w: _! W" P1 C( ~& ~
global mom_kin_4th_axis_type mom_kin_4th_axis_plane
* ?5 [ t, C D0 H global mom_kin_5th_axis_type: Z7 Y9 r8 _0 f- a; i6 Z
global mom_tool_axis mom_sys_spindle_axis mom_kin_spindle_axis" ~/ F- Y4 F2 m( b+ j: F
global mom_pos
4 m1 S8 z; h, h, ~! y! ?) C global mom_cycle_spindle_axis mom_cutcom_plane mom_pos_arc_plane. y3 b% i2 c( v; a
% Z6 E- Q% k: e! z. x& j
+ [, H n9 K; _, z* f& ^% N" M # Default cycle spindle axis to Z
b. |# {. f6 j* ^, b& N2 i% i* n set mom_cycle_spindle_axis 2
8 @1 S; \% W% m% Q* W5 A/ ?4 e/ r9 v+ R$ i3 `! f @
) B% I% S. J8 P- J( j$ a( l
if { ![string match "*3_axis_mill*" $mom_kin_machine_type] } {6 o* W; Y. t* Q# O0 b' B
) ?: t* ^# \( k! w8 y( X2 e
if { $mom_kin_4th_axis_type == "Head" } {
8 b& o; B$ T, l5 D1 y( l
7 K9 M) L5 n8 v, V1 P if [EQ_is_equal [expr abs($mom_tool_axis(0))] 1.0] {
5 R* Q2 O8 d2 p' t set mom_cycle_spindle_axis 0
: L' ~0 ]& {3 F( ~ }9 ~* `4 K* J0 r
. R' `' k$ [( c* ~: i+ G6 B' v7 s if [EQ_is_equal [expr abs($mom_tool_axis(1))] 1.0] {/ k; Z5 n, `' Q3 A- f: U' [
set mom_cycle_spindle_axis 1* j, h+ Z6 l; W, M9 n5 R
}
' g1 u2 n4 g2 c0 K/ X6 S
3 Z0 A6 [4 ?/ i7 b if { $mom_kin_5th_axis_type == "Table" } {/ n) v, y; F2 N' I' j4 J
0 E" ^& I" @* ~) Q# g& V ]3 @ if { [EQ_is_equal [expr abs($mom_pos(3))] 90.0] || [EQ_is_equal [expr abs($mom_pos(3))] 270.0] } {
1 K8 x6 v8 C9 J F1 _% |3 L8 S* q
4 X0 ^& c; q; S2 S8 U5 }" E switch $mom_kin_4th_axis_plane {
" ]. ?/ d- b" A "YZ" {
' I3 d4 ^) d- A% o set mom_cycle_spindle_axis 1
}# ^9 T& s$ s- O! c( l# b }7 J! P S! c1 q: `
"ZX" {
: T t- t8 a" p- e" [( m) _ set mom_cycle_spindle_axis 0; U, B$ l3 J. \ P
}
% |) z- k- k* Z; m6 f }
3 d7 c8 p7 x& G6 D5 b7 ?5 q }
& H, L: A$ t. n: @% ~: m+ W }# Y. ~" B/ Y7 q }1 X
}8 U8 u/ P- x5 y0 l, _
} u$ h' S" `3 i! I
% ~+ d$ z/ U2 E; k
, w* d8 w2 |/ p8 D" n7 n: w
switch $mom_cycle_spindle_axis {7 v, c* j( ?0 L3 G
0 {
; p6 @" M4 ~6 k! r* w% u. @& X set mom_cutcom_plane YZ1 ^% I( V4 L) i9 S: ~* [9 c0 i5 X
set mom_pos_arc_plane YZ3 x& j. F( X5 G7 n( S) @9 C
set principal_axis X. t$ Z1 U7 P" A$ Q0 _
}
% Z$ s: F4 l; B! b* H9 W. O: C) D 1 {
9 h7 O1 U6 y5 c! ~1 y set mom_cutcom_plane ZX. q8 ^* x% n/ b" J3 R+ F
set mom_pos_arc_plane ZX
; Z. n* C$ {, h" z% r set principal_axis Y
' s% P, T/ ]3 E7 @5 H, | t' I }( G, R7 W3 I |- G" K
2 {( w5 h# }& {( K$ z& o& {! w- D; p
set mom_cutcom_plane XY
' h7 ~$ ^# A7 @+ T set mom_pos_arc_plane XY% k* U' F4 o1 I5 Q
set principal_axis Z/ E9 a( d5 d9 T0 O. d5 E7 D
}
( W5 b0 @5 u0 @: p4 [+ [ default {
7 Q/ p- f% e3 [) i) K$ u; p set mom_cutcom_plane UNDEFINED2 O: j! e8 e' D Y
set mom_pos_arc_plane UNDEFINED- T# e/ S* S" Z, M x1 h, S9 S/ X
set principal_axis ""% _) K' _: t3 u; y' N9 J/ x
}
7 i, a7 K# y7 ^6 ~0 P: R }8 z4 S* k- H- L7 }, r7 l: U7 J! u
% J- @, M2 n+ W6 t% G e1 E
# _" o3 t8 d" I- j8 V if { $suppress_principal_axis && [string length $principal_axis] > 0 } {! V" q* h/ a$ a4 `) T
MOM_suppress once $principal_axis# y& E* W0 U* K: K1 X& L" O
}
$ G+ E# o. Q ?$ S$ x% P2 B5 g8 f! i3 S* V
) N5 y! M! {2 [; E. H4 f3 w* u
if { $force_plane_code } {# B4 S; o6 a; W& ?. J+ \: Q; C
global cycle_init_flag
1 v+ S/ b1 l. m+ c9 a G7 P0 z7 s2 I! a
if { [info exists cycle_init_flag] && [string match "TRUE" $cycle_init_flag] } {
7 U% t( {5 ~: B+ Y4 z+ ]( ` MOM_force once G_plane. k. s2 C- _1 u/ p7 X; \. L
} c' k5 C8 t; N6 z
} |
|