|
发表于 2020-8-8 16:45:51
|
显示全部楼层
global mom_kin_machine_type
; r/ a# F# E3 h( x9 t global mom_kin_4th_axis_type mom_kin_4th_axis_plane
' u. y1 V: ]: |, @. ^ global mom_kin_5th_axis_type5 e& m" r8 `0 x8 E7 Q
global mom_tool_axis mom_sys_spindle_axis mom_kin_spindle_axis
" i/ x+ O9 T. B5 i, J! P0 ` global mom_pos
6 g) ?( `7 c; b# \0 f/ g global mom_cycle_spindle_axis mom_cutcom_plane mom_pos_arc_plane$ a$ K1 e% k" y- q1 V2 r
e! o9 I4 `! B" Z" K$ p% j7 h
! S3 h C7 ]# g2 @
# Default cycle spindle axis to Z
Q0 q1 W. X! ?6 j& ` set mom_cycle_spindle_axis 20 |% t9 Q- a( U5 m: _5 q
. P3 [" {, X7 {, N! u. z3 S/ n) y$ n1 c1 p
if { ![string match "*3_axis_mill*" $mom_kin_machine_type] } {* {: q M3 h2 V2 [8 @" j
/ C9 I9 W9 L1 }1 M+ b! i* w if { $mom_kin_4th_axis_type == "Head" } {3 \# u, e: Y6 H& a2 V
$ o# C0 z, U$ [7 ? if [EQ_is_equal [expr abs($mom_tool_axis(0))] 1.0] {6 M' l- O, o( \' H: v
set mom_cycle_spindle_axis 0
4 ~. G: C' |& l+ o9 u9 m }
* y# d; Y2 D5 j% D# h: a2 B7 Y6 X' o+ k7 b+ j5 `
if [EQ_is_equal [expr abs($mom_tool_axis(1))] 1.0] {3 w' o/ w: d1 |" q! Z/ @6 f
set mom_cycle_spindle_axis 10 ?9 M7 f9 o. z j: ~
}7 b& c4 w, F- H R$ D4 S
& I" l# Y0 L: |2 h; H- V4 [
if { $mom_kin_5th_axis_type == "Table" } {5 _6 M }9 b( y2 N+ w
- e! L0 ` i/ W/ d7 n
if { [EQ_is_equal [expr abs($mom_pos(3))] 90.0] || [EQ_is_equal [expr abs($mom_pos(3))] 270.0] } {. c, M/ W+ f% w7 F3 L+ r
! c5 Z1 e' ^2 u7 D switch $mom_kin_4th_axis_plane {
" r6 T4 J D3 F, Q "YZ" {" c2 z9 H% b8 [9 K3 h }
set mom_cycle_spindle_axis 1' m+ x: J: E b7 X! X1 B. Z
}
% O8 p2 K2 O! z1 p8 u( f) p- A: Z "ZX" {% l s6 Q Q1 N/ K: w9 K
set mom_cycle_spindle_axis 0
& m6 B1 l/ u0 g- A5 ]" S }0 X0 O6 B3 E5 j: W+ B6 k
}
# ^$ K# c- i3 {4 t/ o2 Z: D }2 Z8 d6 C' t* Q
}, u$ @3 C, s! _/ I- J( j7 I" ?
}
6 _9 N' }9 G% | }
2 T" `5 c! \: h7 ]$ c4 T
h# g9 {- ]% z! g- m, Z9 h9 j; l' f" }
switch $mom_cycle_spindle_axis {
/ W9 v6 x' ]8 I7 a! g4 Z. ^9 Y# n 0 {( m1 n1 f% D7 o* D
set mom_cutcom_plane YZ
/ s. ~; z( p: t6 g" L set mom_pos_arc_plane YZ! q, f1 ]6 w( P9 Y6 V$ W
set principal_axis X
" n8 i2 c) h0 |/ z }% l! B8 @) p ?/ H. P9 ]6 n
1 {3 h' q7 P: g: a
set mom_cutcom_plane ZX
! u9 C, P# G8 [ set mom_pos_arc_plane ZX- L' o3 \; T- P; P
set principal_axis Y: V' r% Y( B; M5 d/ t6 l
}
7 l5 d3 [7 t W/ P6 f 2 {/ K$ C( B% Q) y
set mom_cutcom_plane XY
: E$ Y$ M; k6 O/ }/ } set mom_pos_arc_plane XY
2 a+ H4 K& Q3 w9 s. d0 _ F set principal_axis Z8 t6 e: P4 c# \7 v2 p7 e+ Q
}2 {2 ]" E6 }4 r$ z* m Q7 n
default {0 g/ V1 r: }" f1 k& m7 n* [
set mom_cutcom_plane UNDEFINED. `; E$ V2 U$ i, [
set mom_pos_arc_plane UNDEFINED3 o d4 u$ H- v
set principal_axis ""
) j* U( P' O: R6 N }# S! z2 Y$ h' |7 B5 S$ @0 L% k
}
( b X8 D) o9 q; _6 n+ P1 f0 x, v
8 [* n* C4 D* `5 ^
, q* R4 q1 {8 e& } M4 T if { $suppress_principal_axis && [string length $principal_axis] > 0 } {
& `6 N- c0 K5 r( q. b' D7 d2 ^. m9 H MOM_suppress once $principal_axis
+ I& P! ]) _6 a7 T/ \& {( z1 l }
" n! f; D3 D9 Z0 y3 ] m
8 n$ l: [( q! N) {* o9 g. m
8 r9 ?" K' l; B9 O if { $force_plane_code } {
' ?4 a' n9 y/ T6 |+ d% S D7 _ global cycle_init_flag- A4 I2 }! o' E: p$ [: i2 p, S
1 \5 h( O2 c" _& m/ o) f' C if { [info exists cycle_init_flag] && [string match "TRUE" $cycle_init_flag] } {8 ]: j k1 y \6 B
MOM_force once G_plane' g1 T; z( x6 d& Q* G# O$ i" C
}: s7 `1 F ^) b
} |
|