-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathPROTECTEDMOVE
More file actions
executable file
·46 lines (34 loc) · 1.28 KB
/
PROTECTEDMOVE
File metadata and controls
executable file
·46 lines (34 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// Copyright 2024 Toolpath Labs Inc., Justin Gray
// PROTECTED ABSOLUTE MOVE
// X #24-> ABSOLUTE X POSITION TO MOVE TO
// Y #25-> ABSOLUTE X POSITION TO MOVE TO
// Z #26-> ABSOLUTE X POSITION TO MOVE TO
// load probe config
G65 "PROBECONFIG"
M19 // ORIENT SPINDLE
#100 = @100 // TOOL NUMBER PROVIDED BY PROBECONFIG MACRO
#103 = @103 // FEED SPEED PROVIDED BY PROBECONFIG MACRO
#120=R_SYS_INFO[0,2] // CURRENT TOOL NUMBER
// NOTE: #0 IS ALWAYS VACANT, SO YOU CAN CHECK AGAINST IT TO SEE IF AN ARGUMENT WAS PASSED
G90
IF[#24==#0 && #25==#0 && #26!=#0] // Z ONLY
G31 P2 Z[#26] F#103
ELSEIF[#24!=#0 && #25==#0 && #26==#0] // X ONLY
G31 P2 X[#24] F#103
ELSEIF[#24==#0 && #25!=#0 && #26==#0] // Y ONLY
G31 P2 Y[#25] F#103
ELSEIF[#24!=#0 && #25==#0 && #26!=#0] // X + Z
G31 P2 X[#24] Z[#26] F#103
ELSEIF[#24==#0 && #25!=#0 && #26!=#0] // Y + Z
G31 P2 Y[#25] Z[#26] F#103
ELSEIF[#24!=#0 && #25!=#0 && #26==#0] // X + Y
G31 P2 X[#24] Y[#25] F#103
ELSEIF[#24!=#0 && #25!=#0 && #26!=#0] // X+ Y + Z
G31 P2 X[#24] Y[#25] Z[#26] F#103
END_IF
// Error Checking
IF[R_SKIP[0,1] == 1]
ALARM["ERROR: PROTECTED MOVE TRIGGERED PROBE - UNEXPECTED OBSTACLE "]
END_IF
M20 // UNLOCK SPINDLE ORIENTATION FOR SAFETY
M99