blob: 0e37da7f99d8d8f0dfc3679caf81cb47d1bfa7fa (
plain)
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
(author: Chris P)
(version: 0.1)
(date: 04/25/19)
(Probe Z Minus direction and set Z 0 in current WCO)
(Start probe position is over stock within max z distance)
(ensure all settings have been set properly according to help diagrams)
o<probe_z_minus_sub> sub
(uses NGCGUI style arg spec)
(number after "=" in comment is default value)
#<probe_tool_number> = #1
#<max_z_distance> = #2
#<z_clearance> = #3
#<probe_slow_fr> = #4
#<probe_fast_fr> = #5
#<probe_mode> = #6
(Cancel G92 offsets)
G92.1
#<workspace_z> = #[5203 + [20 * #5220]]
(Probe Tool Safety Check)
o<110> if [#5400 NE #<probe_tool_number>]
(MSG, Specified probe tool #<probe_tool_number> not in spindle, aborting)
o<probe_z_minus_sub> return
o<110> endif
(Current Z Position including offsets in current program units)
#<z> = #5422
(Initial Fast Z- Probe)
G91
F[#<probe_fast_fr>]
G38.2 Z-[#<max_z_distance>]
#<z_minus_probed> = #5063
(Probe Error check, #5070 will be 0 if failed)
o<120> if [#5070 EQ 0]
(back to start point and feed)
G90
G0 Z#<z>
F[#<probe_fast_fr>]
(return from sub)
o<probe_z_minus_sub> return
o<120> endif
(Move to z_clearance height for slow probe)
G90
G0 Z[#<z_minus_probed> + #<z_clearance>]
(Slow Probe Rule, if Slow Probe FR is set to 0, Slow Probe is Bypassed)
o<130> if [#<probe_slow_fr> GT 0]
(Initiate Slow Z- Probe)
G91
F[#<probe_slow_fr>]
G38.2 Z-[#<z_clearance> * 2]
#<z_minus_probed> = #5063
; (debug, Probed Pos: #5063 Z Pos: #<_z>)
G90
G0 Z[#<z_minus_probed> + #<z_clearance>]
o<130> endif
(defines the edge as z_probed_position for DRO reporting)
#<z_minus_probed_position> = #<z_minus_probed>
(analog aio output to gui DRO "Z PROBED POSITION")
M68 E7 Q[#<z_minus_probed_position>]
#<z_finish_height> = [#<z_minus_probed> + #<z_clearance>]
(probe mode rule for WCO or probe position measuring only)
o<140> if [#<probe_mode> EQ 0]
(Record Z zero in selected WCO)
G10 L2 P#5220 Z[#<z_minus_probed> + #<workspace_z>]
o<probe_z_minus_sub> return
o<140> endif
o<probe_z_minus_sub> endsub [#<z_finish_height>]
M2 (end program)
|