T:
Yes.
your reasoning is right. Practically,
vou had better prevent a malfunction by
~rogramming #3i03:
invalid control of single
block or #3004:
invalid control of feedhold.
This threadcutting can be performed in U-
and W-directions only. Now we’d like to
expand this function in four directions.
?’-??_-Q
L
II
-— ---
~-__---#+ %w
,,
UL---J
s:
I see.
Let me think.
--- How about the next program ?
L----------- ‘J
G 00
?)
U, K:
Designation with a sign
K:
Designation without a sign
u = #21 (DIAMETER VALUE)
W = #23
K = #6 (RADIuS VALUE)
F=#9
The macro call command is as follows:
G65 P9000 w-45. K4. O F5.0 ;
I
G65 P9093 u40. ;
I
I
G65 P9093 u41.4 ;
I
G65 P9093 U.. . ;
-~
The macro program body is as follows:
09000 ;
#100 = #23 ;
—w
#lol = #9 ; —
#102 = ABS [#6] ;—
1:1
M99 ;
09093 ;
#3003 = 1 ;
_ Single block invalid
M93 ; ~ 4-block buffering
#10 = ROUND [#102] *2 ;
IFIABS] [#21] LT #10] GO TO 4 ;
IF[#21GTo]Go Tel;
JF[#21EQO]GOT04;
#11 = ROUND [#21 ] + #10 ;—U: Negative
#12 = #lo ;
GO T02;
N1 #11 = ROUND [#21] -#n ;—U: Positive
#12 = -#lo ;
N2 #13 = ROUND [#102] ;
IF [ABS [#100ILT #13] GO TO 4 ;
IF [#100 GT O] GOTO 3 ;
IF [ #loo EQ o ]GOTO 4;
#14 = ROUND [#1001 + #13 ;—W:
Negative
#15 = -#13 ;
GO T05;
N3 #14 = ROUND [#100] -#13 ;—W: Positive
#15 = #13
GO T05;
N4 #3000 = 499 (MACRO INPUT ERR. ) :
L
Error display
N5 GOO U#21 ;
3
Feedhold
#3004 = 7 ;
1
Feedr ate override Invalid
Positioning
completion
G32 w#14 F#lOl ;
G 32 U#12 W#15 ;---( :~~_~;threading
#3004 = o ;
GOO U-#11 ;
GOO W-#100 ;
M92 ;
#3003 = o ;
M99 ;
T: Well.
If Uor W= O,andl U/210rl W I<K,
error will be displayed in “your’pro~rarnming,
That’s good.
91