|
发表于 2020-8-8 16:45:51
|
显示全部楼层
global mom_kin_machine_type
5 E/ O% b r7 S* E/ X global mom_kin_4th_axis_type mom_kin_4th_axis_plane; R n+ a9 Z" l" k3 S" K+ Y
global mom_kin_5th_axis_type
Z* [; Z' D5 W v' W global mom_tool_axis mom_sys_spindle_axis mom_kin_spindle_axis& i0 Z9 V- B3 a6 `+ y) Q
global mom_pos6 ^. p/ U- C- k
global mom_cycle_spindle_axis mom_cutcom_plane mom_pos_arc_plane! q: J; q! Y0 Y a
1 X7 e2 B1 o) E5 Q
% ~9 u Z: D u2 b # Default cycle spindle axis to Z
* z# X' V5 v% [- X* x set mom_cycle_spindle_axis 2
: x" D' a* L# Q. z+ m6 h
6 x1 n. ?+ |2 `
* ^8 I3 ~% a) A if { ![string match "*3_axis_mill*" $mom_kin_machine_type] } {
3 G! a% A R) m0 J7 x- h- B' E6 m' S2 t! J4 n
if { $mom_kin_4th_axis_type == "Head" } {
+ J* J; J; |: m
* d0 W% S' p% b) K6 y n if [EQ_is_equal [expr abs($mom_tool_axis(0))] 1.0] {+ L) R, g2 O. T3 {0 @1 J
set mom_cycle_spindle_axis 0
' D% m3 J; }+ ?0 w& K( Z }
% f' Q0 B( v+ {$ z1 v' {1 V
3 ^ l. ^( w; z1 L( L3 W3 q if [EQ_is_equal [expr abs($mom_tool_axis(1))] 1.0] {: E- u- m N- X. I
set mom_cycle_spindle_axis 12 e: O3 F0 u8 M' S( O& P9 f, \3 _
}
# T5 C4 h2 W3 d L- x T1 t, i& N' g: }& D) W
if { $mom_kin_5th_axis_type == "Table" } {
1 i( b, K, x3 e+ x; b" }
* x: Z: C1 U7 i4 @/ ^8 e if { [EQ_is_equal [expr abs($mom_pos(3))] 90.0] || [EQ_is_equal [expr abs($mom_pos(3))] 270.0] } {
; l& V/ J: }! G, |" ~ u; U2 }
3 [8 ]; [& L5 G8 ?- d" @; u switch $mom_kin_4th_axis_plane {
( B9 r( M* o5 t "YZ" { q# f1 Y. D. S" E# A
set mom_cycle_spindle_axis 1
' @+ t" _2 \! D }# e( X/ _7 v+ x% B% U8 u( J0 r
"ZX" {/ f" k: |3 t+ m
set mom_cycle_spindle_axis 0
4 Y. O- X. O: f# y2 y }
. O: ~& Q& L s4 B$ z- ~ }! O& ]+ q8 @" m+ A4 x$ h' v, G
}
8 f9 i0 r, ^% A/ g- |6 U4 b }
& ], k$ `) A- G, R1 @% N- P6 _ }
; [! O, V, B% f3 y/ z$ H! m# F }6 J( S- F* N6 j7 [; ]6 G$ {
, m* V0 O, P) m9 B/ N* m) L5 o* C0 S# L' C
switch $mom_cycle_spindle_axis {
& c3 |2 R1 j2 h! U) @4 l2 S 0 {3 y+ T1 T: n' Q/ y7 M
set mom_cutcom_plane YZ
& Q }" F& ]4 M0 n: a& g set mom_pos_arc_plane YZ. Q/ _, [: ]& ^ _& J9 k
set principal_axis X
# Y- ?& [- T! B$ p; K- T }9 J7 q2 z# [) s9 A! f
1 {' Y/ l% D/ x$ p* X E
set mom_cutcom_plane ZX# C! V8 n3 P% a4 X* O" y X2 ~
set mom_pos_arc_plane ZX, m1 r+ @% K. R3 A/ |% E
set principal_axis Y7 s( ~. D+ ~. b% I0 q1 c
}
/ b/ p- B% m! ?0 {- A1 J% e. w 2 {
* b b8 E( W' x# y/ ]8 N set mom_cutcom_plane XY
/ u8 d, E7 h1 s" Q set mom_pos_arc_plane XY W% v5 G5 H) d
set principal_axis Z
) H& _# ~' y7 N" v' j( e% l# L }
7 O7 Q4 X) _* [2 u6 d5 C+ C& @3 M6 P! l default {# E: G; h% J* M5 P; H @* O( V& i
set mom_cutcom_plane UNDEFINED; M7 q7 N4 W7 I( X
set mom_pos_arc_plane UNDEFINED
. g3 F6 b8 S- X L' P set principal_axis ""' M/ ]: [) I3 p+ X& z6 b
}
: [: h. X8 ~/ t/ `: o+ n# d }
6 \4 t1 V# E+ I! v, W b" D. H4 [5 O) z+ a, ?
7 z7 P# T& O' ]7 [ if { $suppress_principal_axis && [string length $principal_axis] > 0 } {
* L0 r6 y$ G' F1 r" | MOM_suppress once $principal_axis7 j5 @+ v/ e3 h5 V( x: g" D
}
/ z9 S/ n C5 i" O& m5 g) M. n Q
- [/ w( ~; s# j. b! I3 N5 B
. a0 G& t' a7 Z+ m if { $force_plane_code } {9 C* Z$ J0 K9 O, O( ^; E
global cycle_init_flag
* T$ t. |5 Z5 h; ^$ d& z/ h
1 t6 |- A$ i4 {& q. ]; r: h if { [info exists cycle_init_flag] && [string match "TRUE" $cycle_init_flag] } {9 I! w1 O; A8 O
MOM_force once G_plane$ R: R) B$ x0 x6 X) l1 [
}9 }, M4 A; x) @; f
} |
|