|
|
发表于 2020-8-8 16:45:51
|
显示全部楼层
global mom_kin_machine_type
e: {/ u0 F0 x8 `9 M global mom_kin_4th_axis_type mom_kin_4th_axis_plane
8 Q$ Z; l9 t: a global mom_kin_5th_axis_type
/ [% H# \4 e7 G$ ]7 J7 T# ]# r global mom_tool_axis mom_sys_spindle_axis mom_kin_spindle_axis
- D5 x9 V$ i- c9 T global mom_pos
1 o+ i3 W1 a* p1 {% N& K$ O global mom_cycle_spindle_axis mom_cutcom_plane mom_pos_arc_plane
l# w3 ^' U. U1 b6 J4 j5 H! e- }# O) |. D/ I7 V
4 g4 W+ h3 o0 h' c; ^
# Default cycle spindle axis to Z
9 ?- r1 X* r0 Z set mom_cycle_spindle_axis 27 \: F. c) T/ a& T
5 n7 X5 J& b: ^4 s7 ^* ^, e4 z
4 C* O" ]2 z6 m, ]% } if { ![string match "*3_axis_mill*" $mom_kin_machine_type] } {
[1 x# Y2 D2 S7 i& Y$ _+ e7 V% H4 [3 [) f
if { $mom_kin_4th_axis_type == "Head" } {
7 O, _6 a! F i& g: b' l1 X- D' Y! D% v7 X3 S
if [EQ_is_equal [expr abs($mom_tool_axis(0))] 1.0] {
/ \; ~5 b* _% { set mom_cycle_spindle_axis 06 j c1 ~$ ] K/ ~# Q* o* k
}% s# f2 u2 o- c4 I& k, d8 p
2 q7 \" O5 N5 E1 K! k; r; Y
if [EQ_is_equal [expr abs($mom_tool_axis(1))] 1.0] {% w: M/ K+ }' d$ g$ }
set mom_cycle_spindle_axis 1. N- f p9 Z4 J0 f+ K- A! B
}% ] J S( T4 Y& q G
$ p9 R& I# E C- M
if { $mom_kin_5th_axis_type == "Table" } {+ x o: m; s* t3 Z, M1 O2 z! t, R
$ j4 w1 ^' c# z7 m/ e' c if { [EQ_is_equal [expr abs($mom_pos(3))] 90.0] || [EQ_is_equal [expr abs($mom_pos(3))] 270.0] } {
+ Y T r: B0 E4 d' G7 g7 I4 F; B' I
switch $mom_kin_4th_axis_plane {
/ w% i" e2 p7 T1 k5 k1 \ "YZ" {/ I% e, Y6 e- |* S
set mom_cycle_spindle_axis 1
* R% b' _9 l' ] }) M7 G, _. r6 X! u; v+ `3 [8 B) i0 m& @8 m
"ZX" {: z* c2 o2 | A. G% L6 @! K \( n
set mom_cycle_spindle_axis 0
! B8 y3 {. p0 X! S% T, d }0 x5 [* H0 @) [0 E- o6 |
}) K. t% E' k: T1 j T" P4 ^5 h
}: L% t, M; u. b9 a3 A. |
}
+ x0 s2 i- m/ A" S }
( D& w9 U l! P' p2 H }7 U- e5 ~4 g( S: ?! w9 A
8 Z6 C! p! N; T" K
0 G" ^7 `5 f% Z$ K
switch $mom_cycle_spindle_axis {
/ k b9 _% z, \9 n+ _. H8 E8 M; F 0 {- [+ ~4 u$ @, X( u
set mom_cutcom_plane YZ
% ^( g" K) E0 c* e+ s$ }- ~ set mom_pos_arc_plane YZ) j2 H& q" J7 m' a7 p+ ^' K' k, f1 r
set principal_axis X3 i4 F6 F! P* u* ~1 f: ]
}
9 G, m- c" p, I- J3 T* D 1 {2 ]+ [! L- r6 u, g
set mom_cutcom_plane ZX
s9 `, j% n; u4 D- B2 H, P set mom_pos_arc_plane ZX; o0 u( N4 S6 Q$ T5 R5 {
set principal_axis Y
; [7 |8 k$ D+ q2 T/ V }
: c+ y* j6 ?- Y9 i 2 {
. Z7 M* y$ Q7 ?8 @% F" r1 P2 v set mom_cutcom_plane XY
0 V$ Z9 e# v; D- l, ` B set mom_pos_arc_plane XY
0 b" e1 H6 V0 G; a6 y set principal_axis Z( W0 U6 f! Z% S: k8 H1 h- O% m- j
}
+ X0 @( v) A+ y, L, E default {
& `' M) o ], r& n; R0 ^: x set mom_cutcom_plane UNDEFINED3 |7 s& o. k# L0 t! W. i, y
set mom_pos_arc_plane UNDEFINED
^6 c8 A* w3 s- i- c$ g set principal_axis ""; }/ I: J- c7 L6 w5 Z0 T
}
+ c# y: o; Z+ b1 w1 O) {/ G8 D }
3 {! E! n) j& W1 N. T6 C( n& R! e2 c, s$ O6 }8 B+ M
! f/ C9 h, z" H if { $suppress_principal_axis && [string length $principal_axis] > 0 } {
7 a# t& b6 u( }# E! `" g MOM_suppress once $principal_axis
0 x R# l) L2 V, s }1 j/ @% p: V% @
4 `- o. G& e3 u5 c" P0 ^1 Z: w# S! I/ Q' {6 ?' e/ E
if { $force_plane_code } {
7 ~1 |, V" M) C# h global cycle_init_flag
% W% d4 ?. Q3 ^8 b: ?' R- B$ K) x) c# i
if { [info exists cycle_init_flag] && [string match "TRUE" $cycle_init_flag] } {8 ~4 X* Q( [ q8 x' k! k! x
MOM_force once G_plane
% g6 y( A0 H& b. P }
7 O+ R% D0 q0 M+ r' u. J. g' }' B } |
|