|
|
发表于 2020-8-8 16:45:51
|
显示全部楼层
global mom_kin_machine_type3 y( W* Y* y5 L q7 J
global mom_kin_4th_axis_type mom_kin_4th_axis_plane
1 m: Z# L$ v) V( r global mom_kin_5th_axis_type
& w/ ~7 D% n) s1 q0 Z global mom_tool_axis mom_sys_spindle_axis mom_kin_spindle_axis
f& H* n+ ?( d' r. t global mom_pos; t5 x; f; q" S
global mom_cycle_spindle_axis mom_cutcom_plane mom_pos_arc_plane
$ `1 a2 b. E( s s
/ ~' m: p1 }' t! h8 ]' f3 s8 I) Z! G( E8 {# o
# Default cycle spindle axis to Z
, L! i1 m% u \# ~ O set mom_cycle_spindle_axis 2
6 I( i- S5 J8 I g& v, D# p& J+ ?
6 d# L7 {! K: k9 r/ F. z8 g
if { ![string match "*3_axis_mill*" $mom_kin_machine_type] } {& I, N5 `, c+ i7 \- z3 D
; F. Z2 L6 x0 r( i) F
if { $mom_kin_4th_axis_type == "Head" } {% o. F% ~/ K+ J1 G- ~
5 I: }0 ~. H4 A$ Q if [EQ_is_equal [expr abs($mom_tool_axis(0))] 1.0] {) }! q2 P( ^+ T/ ^2 ^$ F& e6 r
set mom_cycle_spindle_axis 0* l. T( H! P- H T! O: V% W
}
4 O5 b7 k; a# r: W' y2 b9 c+ T6 b1 x, S0 }3 I; C: d8 q
if [EQ_is_equal [expr abs($mom_tool_axis(1))] 1.0] {% {& N; i, B1 _% s, z H
set mom_cycle_spindle_axis 1 n0 ?* ]- k! f, ^4 H
}
3 U- r' S4 p. H3 P
( ?5 V) B/ O0 R5 k5 A8 ?$ r% X if { $mom_kin_5th_axis_type == "Table" } {
9 a$ U# W5 @( ^0 D7 l* K8 N0 f/ x0 o; T$ L$ `8 U4 J* |
if { [EQ_is_equal [expr abs($mom_pos(3))] 90.0] || [EQ_is_equal [expr abs($mom_pos(3))] 270.0] } {
9 V4 {9 y' J0 {) J" O" g5 ?
7 y# ]5 S' R' d' |" J- ]! M switch $mom_kin_4th_axis_plane {4 G5 n1 T$ m! Y$ E: a
"YZ" {# e: s8 K. l; Z1 a _! n n
set mom_cycle_spindle_axis 1! B+ f# u- K- p1 s) ^' i- p
}% h6 G: H0 g u1 Q# D
"ZX" {
7 i0 E" t& d# T3 {; g. j set mom_cycle_spindle_axis 02 a. i( [. Y6 g9 c# G
}
% n ~1 N! L; Y+ O8 c7 m$ p# l }& P4 s! \% z' o# Y
}- S1 }' }7 d6 q* m( ]4 l+ D
}+ r+ Y, B& s- x4 m" ]1 J
}
/ P4 M* i* E! Q$ B }& t, s! m( b. f/ H" B' k9 d
$ [" \6 G& w3 a7 {: k9 v& c @% p# |/ V3 J
switch $mom_cycle_spindle_axis {0 d" [1 h6 y9 q# m6 D- X
0 {5 l" Q5 [+ c! e. u
set mom_cutcom_plane YZ8 `% h( z+ v e* n
set mom_pos_arc_plane YZ
! d$ k& N3 }2 W8 Q4 g set principal_axis X
5 ?$ R2 n/ s5 Y a. C9 \4 D) T4 D }
( R6 H* \9 W5 O/ A' S4 O4 } 1 {6 W7 K6 I; s; {4 v) u
set mom_cutcom_plane ZX
* F$ y& |5 a4 f4 x4 M2 E. z' B set mom_pos_arc_plane ZX/ ?; p* Y$ j. k+ _% K" _
set principal_axis Y) s, x0 N8 H1 H* _. N
}
2 K! [( N1 Q! H, n2 N, T! u) Q 2 {
) X$ [/ ]+ x7 J4 ~5 J6 S7 P% _7 h set mom_cutcom_plane XY
4 [# }- A6 r& \+ w set mom_pos_arc_plane XY& n! i" O: y3 U. u4 n0 s+ _
set principal_axis Z+ l' l. h# v; I. Q
}/ |# \: |0 Y$ ]% I; E/ q
default {; X, t$ `4 ^& F/ d, J6 E5 U
set mom_cutcom_plane UNDEFINED7 h( n4 ~( p' a; m" W2 v) H; S) t! P
set mom_pos_arc_plane UNDEFINED
! e- r! Y# Z0 T5 V set principal_axis ""; q5 N! O4 K2 [& X( ?! i ]! Y) G
}
c! Y" l- b, c) n) \0 x }- A% s5 ~) x# F, C1 [0 n! g6 W
) q/ p2 k: U* z2 M3 h$ W j
* U2 Y/ V8 I0 F7 a1 d if { $suppress_principal_axis && [string length $principal_axis] > 0 } {
( S/ [; r6 J# @0 _% u MOM_suppress once $principal_axis
- z4 B; @+ N7 d [# B }
- \/ q9 x' K7 @7 ]; t) d% g. T Q- {2 t7 M0 M7 x
# K# v) }, e& `. U1 d if { $force_plane_code } {
! ~3 B# s2 [* ^8 w' r6 } global cycle_init_flag% Y6 w$ p# v4 d! F. W7 l; u
, q" s/ X) v. f. M( C4 i+ d5 J$ @: ~, i! S if { [info exists cycle_init_flag] && [string match "TRUE" $cycle_init_flag] } {
. K3 h: W# q p6 m/ T+ S& V0 A* T MOM_force once G_plane7 l5 Q0 N2 e! ~9 B/ j" T
}
; S! U' I/ R( m. b4 a } |
|