%
O09023 (RENISHAW V3.28 FOR NGC)
(CHANGE NOTES)
(11/12/2018 ADD SUBPGM O09024 Z HOME)
(TO ENSURE MOVE TO TOP OF TRAVEL)
(CHANGED ALL G91 G28 ZO TO G65 P9024)
(ADD P1. DWELL AT PGM O09852 LINE N11)
(12/21/2018 V3.13)
(CORRECTED TYPO IN O09731)
(01/14/2019 V3.14)
(UPDATED 3-POINT BORE PROBE *** REMOVED)
(ADDED CURRENT WORK COORD. POS INTO EQUATIONS *** REMOVED)
(03/21/2019 V3.15 [JN])
(ADD SUPPORT FOR TOOL BREAKAGE LENGTH, ROTATING)
(ADDITIONS ARE BETWEEN COMMENTS WITH ******)
(06/5/2019 V3.16 [FM])
(UPDATED O09725 TO REFERENCE SETTING 377 IN ALARM NOTES)
(FOR NEG WORK OFFSET - PAR 57.25 IS DEPRECATED, BUT BACKWARDS COMPATIBLE)
(ADD PROGRAM O09025 - GIMBAL ZERO CHECK)
(12/9/2019 V3.17)
(CHANGE TOOL PROBE TARGET FROM BEING BASED)
(ON Z MAX TRAVEL TO BEING BASED ON PROBE Z POSITION [FM] )
(PER BUGZILLA 1165)
(REWORK 3.17 TO ONLY APPLY Z PROBE POSITON AS TARGET)
(IF PROBE IS ABOVE MAX TRAVEL LIMIT PARAMETER)
(AND CORRECT METRIC ERROR [FM])
(3/18/2020 V3.19 [FM])
(ADD Q#17 IN THREE PLACES IN PROGRAM O09820)
(PER [RF] @ RENISHAW)
(5/7/2020 V3.20)
(REVERT 3 POINT BORE PROGRAM CHANGES FROM 3.14)
(PER [RF] @ RENISHAW)
(05/26/2020 V3.21 [JN])
(ADD M#13 TO O9023 AND O9995 TO ALLOW FOR TOOL BREAKAGE FUNCTION)
(08/04/2020 V3.22 [FM])
(ADD BACK G04 P1 DWELL LINES TO ADDRESS INTERMITTENT TIMING ISSUE)
(IN GRAPHICS CHECK STATEMENT)
(06/17/2021 V3.24 [FM])
(ADDED G49 3 PLACES TO O9023 PROGRAM)
(TO ACCOUNT FOR TOOL OFFSETS BEING ACTIVE BY DEFAULT)
(3/7/2022 V3.26)
(SKIP TOOL CHANGE FOR MANUAL TOOL CHANGER)
(ADDED A/B AT 0 FOR TOOL SETTING ON MRZP MACHINES)
(CHECK HSK CLAMP AT M06)
(CHANGE CHECK FOR PREVIOUS H CODE TO CHECK FOR ACTIVE TOOL OFFSET)
(8/15/2022 V3.27)
(ADDED CHECK TO BACK OFF DISTANCE O09726)
(11/15/2022 V3.28)
(ADDED CHECK TO HANDLE ORIENTATION OF TOOL PROBE O09023)
G103 P1
#3001= 0
G04 P1
G04 P1
G04 P1
G04 P250
G04 P1
G04 P1
G04 P1
IF [ #3001 LT 200 ] GOTO999 (TEST RUNNING IN GRAPHICS)
#598= #0 ( CLEAR SETTINGS CHECKED 9725 FLAG )
IF[#32076EQ3]G65P9025D50.(HSK)
#161= 556 (START CALIBRATION VARIABLE)
IF [ #1 EQ #0 ] GOTO17
#27= 10 (DEFAULT Q IN MM)
(#28=1DEFAULT WORK OFFSET)
#29= #[ #161 + 4 ] (PROBE OFFSET #560)
#30= 10 (STAND OFF)
#179= 1 / 25.4
IF [ #4006 EQ 20 ] GOTO1
IF [ #4006 EQ 70 ] GOTO1
#179= 1
N1
IF[#30278.16]G65 P9025 (GIMBAL ROTARY ZERO CHECK)
IF[[#1LE10]OR[[#1GE14]AND[#1LE18]]]GOTO101
G65 P9025 D100.(CHECK TABLE AT 0)
IF [ #1 EQ 12 ] GOTO40
IF [ #1 EQ 13 ] GOTO50
IF [ #1 EQ 19 ] GOTO60
IF [ #1 EQ 20 ] GOTO70
IF [ #1 EQ 21 ] GOTO80
IF [ #1 EQ 22 ] GOTO85
IF [ #1 EQ 23 ] GOTO92
IF [ #1 EQ 24 ] GOTO95
IF [ #1 EQ 25 ] GOTO81
N101
IF[[#30710EQ9]OR[#20113EQ1]]GOTO102(SKIP MANUAL TOOL CHG)
T#29 M06
N102
IF[#32076EQ3]G65P9025D50.(HSK)
G43 H#29
#30= #30 * #179
(IF[#19NE#0]GOTO2)
(#19=#28)
N2
G65 P9832
G103 P1
G04 P1
G04 P1
G04 P1
IF [ #19 LT 0 ] GOTO17
IF [ #19 GT 155 ] GOTO17
IF [ #19 GE 110 ] GOTO3
IF [ #19 LT 54 ] GOTO200
IF [ #19 GT 59 ] GOTO17
#19= #19 - 53
N200
IF [ #19 LE 6 ] GOTO3
GOTO17
N3
IF [ #17 NE #0 ] GOTO4
#17= #27 * #179 (* XY Q VAL)
IF [ #1 NE 9 ] GOTO4
#17= 4 * #179 (* Z Q VAL)
N4
IF [ #1 EQ 10 ] GOTO20
IF [ #[ #161 ] EQ 0 ] GOTO91 (CHECK CAL)
IF [ #[ #161 ] EQ #0 ] GOTO91
IF [ #1 EQ 1 ] GOTO5
IF [ #1 EQ 2 ] GOTO6
IF [ #1 EQ 3 ] GOTO7
IF [ #1 EQ 4 ] GOTO9
IF [ #1 LE 6 ] GOTO11
IF [ #1 LE 8 ] GOTO13
IF [ #1 EQ 9 ] GOTO16
IF [ #1 EQ 14 ] GOTO130
IF [ #1 EQ 15 ] GOTO140
IF [ #1 EQ 16 ] GOTO150
IF [ #1 EQ 17 ] GOTO160
IF [ #1 EQ 18 ] GOTO170
GOTO17
N5 (BORE)
G65 P9814 D#7 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #5041
#191= #191 + #5042
G31 X [ #190 ] Y [ #191 ] F [ 1016. * #179 ]
GOTO15
N6 (BOSS)
#26= #5043 - #5083 + #26
G65 P9814 D#7 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #5041
#191= #191 + #5042
G31 X [ #190 ] Y [ #191 ] F [ 1016. * #179 ]
GOTO15
N7 (X POCKET)
IF [ #24 EQ #0 ] GOTO8
G65 P9812 X#24 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #5041
G31 X [ #190 ] F [ 1016. * #179 ]
GOTO15
N8 (Y POCKET)
G65 P9812 Y#25 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#191= #191 + #5042
G31 Y [ #191 ] F [ 1016. * #179 ]
GOTO15
N9 (X WEB)
#26= #5043 - #5083 + #26
IF [ #24 EQ #0 ] GOTO10
G65 P9812 X#24 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #5041
G31 X [ #190 ] F [ 1016. * #179 ]
GOTO15
N10 (Y WEB)
G65 P9812 Y#25 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#191= #191 + #5042
G31 Y [ #191 ] F [ 1016. * #179 ]
GOTO15
N11 (SET SURF X)
#14= #5041 + #30
IF [ #1 EQ 5 ] GOTO12
#14= #5041 - #30
N12
G65 P9811 X#14 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #14 - #24
GOTO15
N13 (SET SURF Y)
#15= #5042 + #30
IF [ #1 EQ 7 ] GOTO14
#15= #5042 - #30
N14
G65 P9811 Y#15 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#191= #191 + #15 - #25
N15
G65 P9732 S#19 W1.
GOTO18
N16 (SET SURF Z)
#16= #5043 - #5083 - #30
G65 P9811 Z#16 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#192= #192 + #16 - #26
G65 P9732 S#19 W1. Z1.
GOTO18
N20 (BORE CALIBRATION)
IF [ #30057.21 ] GOTO22 (NGC)
#3000= 80 (SET PARAM 57 M19 SPND ORT TO 1)
(THIS IS AN OPTION FROM HAAS FOR VQCPS)
(CALL HAAS TO TURN ON)
N22
#[ #161 ]= 0
#[ #161 + 1 ]= 0
#[ #161 + 2 ]= 0
#[ #161 + 3 ]= 0
G65 P9725 A5.
G65 P9725 A6.
G65 P9814 D#7 Q#17
G65 P9834
G103 P1
G04 P1
G04 P1
G04 P1
M19 P180
G04 P500
G65 P9814 D#7
G103 P1
G04 P1
G04 P1
G04 P1
#180= [ #180 + #185 ] / 2
#181= [ #181 + #186 ] / 2
G31 X#180 Y#181 F [ 255. * #179 ]
M19
G04 P500
G65 P9802 D#7
G65 P9803 D#7
GOTO18
N40 (TOOL SETTING AUTO LENGTH ONLY)
IF [ #[ #161 + 26 ] EQ 0 ] GOTO90
IF [ #[ #161 + 26 ] EQ #0 ] GOTO90
G65 P9725 A3.
G65 P9024 (Z HOME)
G49
G90
T#20 M06
IF[#32076EQ3]G65P9025D50.(HSK)
G49
G65 P9024 (Z HOME)
G90
#174= 0
M98 P9799
#27= #5021 - #5041
#30= #5022 - #5042
#31= #5023 - #5043
#3004= 0
G00 X [ #167 - #27 + #4 ] Y [ #168 - #30 + #5 ]
G65 P9855 (OTS ON)
G103 P1
G04 P1
G04 P1
G04 P1
#3004= 2
N249
IF[ ABS[ #10582 ] LT [ #30003.036 * #179 ] ]GOTO250
M79 G31 Z [ - [ [ #30003.036 - 12.7 ] * #179 ] - #31 ] F [ 2032. * #179 ] (STOPS 1
INCH FROM Z STROKE)
GOTO251
N250
M79 G31 Z [ #10582 + [ 25.4 * #179 ] - #31 ] F [ 2032. * #179 ] (STOPS 1 INCH FROM
OTS PROBE Z FACE MAX) (storm)
N251
G01 Z [ #5063 + [ 2. * #179 ] ] (ADJUST 2MM BACK OFF)
#3004= 0
G65 P9851 T#20
G65 P9024 (Z HOME)
G90
GOTO19
N50 (LENGTH AND DIAMETER)
IF [ #[ #161 + 26 ] EQ 0 ] GOTO90
IF [ #[ #161 + 26 ] EQ #0 ] GOTO90
G65 P9725 A3.
#156= 1 (2=RADOFF,1=DIAOFF)
IF [ #20040 EQ 1 ] GOTO51 (RAD DIA) (NGC)
#156= 2
N51 (OFFSET LOAD)
#[ 2000 + #20 ]= #11
#[ 2200 + #20 ]= 0
#[ 2400 + #20 ]= #7 / #156
#[ 2600 + #20 ]= 0
G65 P9853 B3. T#20 D#20
GOTO19
N60 (TOOL SETTING AUTO MULTI TOOL)
IF [ #[ #161 + 26 ] EQ 0 ] GOTO90
IF [ #[ #161 + 26 ] EQ #0 ] GOTO90
G65 P9725 A3.
G65 P9024 (Z HOME)
G49
G90
#3= #20
N61
T#3 M06
IF[#32076EQ3]G65P9025D50.(HSK)
G49
G65 P9024 (Z HOME)
G90
#174= 0
M98 P9799
#27= #5021 - #5041
#30= #5022 - #5042
#31= #5023 - #5043
#3004= 0
G00 X [ #167 - #27 + #4 ] Y [ #168 - #30 + #5 ]
G65 P9855 (OTS ON)
G103 P1
G04 P1
G04 P1
G04 P1
#3004= 2
N249
IF[ ABS[ #10582 ] LT [ #30003.036 * #179 ] ]GOTO250
M79 G31 Z [ - [ [ #30003.036 - 12.7 ] * #179 ] - #31 ] F [ 2032. * #179 ] (STOPS 1
INCH FROM Z STROKE)
GOTO251
N250
M79 G31 Z [ #10582 + [ 25.4 * #179 ] - #31 ] F [ 2032. * #179 ] (STOPS 1 INCH FROM
OTS PROBE Z FACE MAX) (storm)
N251
G01 Z [ #5063 + [ 2. * #179 ] ] (ADJUST 2MM BACK OFF)
#3004= 0
G65 P9851 T#3
G103 P1
G04 P1
G04 P1
G04 P1
G65 P9024 (Z HOME)
G90
#3= #3 + 1
IF [ #3 LE #2 ] GOTO61
GOTO19
N70 (OTS CALIBRATION)
G65 P9855 (OTS ON)
G103 P1
G04 P1
G04 P1
G04 P1
#[ #161 + 31 ]= 75. * #179
#[ #161 + 32 ]= 10. * #179
#[ #161 + 33 ]= 10. * #179
#[ #161 + 34 ]= 150. * #179
#[ #161 + 35 ]= 13.
#[ #161 + 37 ]= 0
#5= 12.7 * #179
IF [ #179 EQ 1 ] GOTO72
#[ #161 + 37 ]= 1
N72
G65 P9851 K#6
G103 P1
G04 P1
G04 P1
G04 P1
#[ #161 + 36 ]= 1.
IF[ABS[#7]EQ1] THEN #[ #161 + 36 ]=2.
G65 P9852 S#19 K#5
G103 P1
G04 P1
G04 P1
G04 P1
#[ #161 + 36 ]= #7
G65 P9852 S#19 K#5
GOTO19
N80 (MANUAL LENGTH PROBE ONLY)
G65 P9855 (OTS ON)
G103 P1
G04 P1
G04 P1
G04 P1
#[ #161 + 4 ]= #20
G65 P9851 T#20
G65 P9725 A4.
GOTO19
N81 (MANUAL LENGTH ONLY)
G65 P9725 A3.
G65 P9855 (OTS ON)
G103 P1
G04 P1
G04 P1
G04 P1
G65 P9851 T#20
GOTO19
N85 (TOOL SETTING RANDOM AUTO MULTI TOOL)
IF [ #[ #161 + 26 ] EQ 0 ] GOTO90
IF [ #[ #161 + 26 ] EQ #0 ] GOTO90
G65 P9725 A3.
G65 P9024 (Z HOME)
G49
G90
#20= #4
IF [ #20 EQ #0 ] GOTO87
IF [ #20 EQ 0 ] GOTO87
N86
T#20 M06
IF[#32076EQ3]G65P9025D50.(HSK)
G49
G65 P9024 (Z HOME)
G90
#174= 0
M98 P9799
#27= #5021 - #5041
#30= #5022 - #5042
#31= #5023 - #5043
#3004= 0
G00 X [ #167 - #27 ] Y [ #168 - #30 ]
G65 P9855 (OTS ON)
G103 P1
G04 P1
G04 P1
G04 P1
#3004= 2
N249
IF[ ABS[ #10582 ] LT [ #30003.036 * #179 ] ]GOTO250
M79 G31 Z [ - [ [ #30003.036 - 12.7 ] * #179 ] - #31 ] F [ 2032. * #179 ] (STOPS 1
INCH FROM Z STROKE)
GOTO251
N250
M79 G31 Z [ #10582 + [ 25.4 * #179 ] - #31 ] F [ 2032. * #179 ] (STOPS 1 INCH FROM
OTS PROBE Z FACE MAX) (storm)
N251
G01 Z [ #5063 + [ 2. * #179 ] ] (ADJUST 2MM BACK OFF)
#3004= 0
G65 P9851 T#20
G103 P1
G04 P1
G04 P1
G04 P1
G65 P9024 (Z HOME)
G90
#3= #3 + 1
#20= #[ 4 + #3 ]
IF [ #20 EQ #0 ] GOTO87
IF [ #20 NE 0 ] GOTO86
N87
GOTO19
N92 (LENGTH ROTATING)
IF [ #[ #161 + 26 ] EQ 0 ] GOTO90
IF [ #[ #161 + 26 ] EQ #0 ] GOTO90
G65 P9725 A3.
(OFFSET LOAD)
#[ 2000 + #20 ]= #11
#[ 2200 + #20 ]= 0
G65 P9853 B1. T#20 S#7
GOTO19
N95 (TOOL BREAKAGE)
IF [ #[ #161 + 26 ] EQ 0 ] GOTO90
IF [ #[ #161 + 26 ] EQ #0 ] GOTO90
G65 P9725 A3.
G65 P9853 B1. T#20 H#11 M#13
GOTO19
N130 (SET INTERNAL CORNER)
IF [ #2 GT 1 ] GOTO131
#14= #5041 - #30 (1)
#15= #5042 - #30
GOTO135
N131
IF [ #2 GT 2 ] GOTO132
#14= #5041 - #30 (2)
#15= #5042 + #30
GOTO135
N132
IF [ #2 GT 3 ] GOTO133
#14= #5041 + #30 (3)
#15= #5042 + #30
GOTO135
N133
#14= #5041 + #30 (4)
#15= #5042 - #30
N135
G65 P9815 X#14 Y#15 I#4 J#5 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #14
#191= #191 + #15
G65 P9732 S#19 W1.
GOTO18
N140 (SET EXTERNAL CORNER)
IF [ #2 GT 1 ] GOTO141
#14= #5041 + #30 (1)
#15= #5042 + #30
GOTO145
N141
IF [ #2 GT 2 ] GOTO142
#14= #5041 + #30 (2)
#15= #5042 - #30
GOTO145
N142
IF [ #2 GT 3 ] GOTO143
#14= #5041 - #30 (3)
#15= #5042 - #30
GOTO145
N143
#14= #5041 - #30 (4)
#15= #5042 + #30
N145
G65 P9816 X#14 Y#15 I#4 J#5 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #14
#191= #191 + #15
G65 P9732 S#19 W1.
GOTO18
N150 (CENTER BLOCK)
(SET SURF Z)
#16= #5043 - #5083 - #30
G65 P9811 Z#16 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#192= #192 + #16
G65 P9732 S#19 W1. Z1.
(X WEB)
#18= 10 * #179 (EXTRA CLEARANCE)
#26= #5043 - #5083 + #26
G65 P9812 X#24 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #5041
G31 X [ #190 ] F [ 1016. * #179 ]
G65 P9732 S#19 W1.
(Y WEB)
G65 P9812 Y#25 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#191= #191 + #5042
G31 Y [ #191 ] F [ 1016. * #179 ]
G65 P9732 S#19 W1.
GOTO18
N160 (VISE CORNER SET)
#3= FIX[#3]
IF[[#3 LT 1.] OR [#3 GT 4.]]THEN #3000= 92(VARIABLE C OUT OF RANGE 1-4)
#5= 1.
#6= 1.
IF[[#3 EQ 3.] OR [#3 EQ 2.]]THEN #5= -1.
IF[[#3 EQ 4.] OR [#3 EQ 3.]]THEN #6= -1.
M78 G91 G31 X [ #24 / 2 * #5 ] Y [ #25 / 2 * #6 ] F [ 5080. * #179 ]
(SET SURF Z)
#16= #5043 - #5083 - #30
G65 P9811 Z#16 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#192= #192 + #16
G65 P9732 S#19 W1. Z1.
M78 G91 G31 X [ [ #24 / 2 + [ 12. * #179 ] ] * -#5 ] F [ 4000. * #179 ]
M78 G91 G31 Z [ #26 ]
(SET SURF X)
#14= #5041 + [ #30 * #5 ]
G65 P9811 X#14 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #14
G65 P9732 S#19 W1.
M78 G91 G31 Z - [ #26 ] F [ 4000. * #179 ]
M78 G91 G31 X [ [ #24 / 2 + [ 12. * #179 ] ] * #5 ]
M78 G91 G31 Y [ [ #25 / 2 + [ 12. * #179 ] ] * -#6]
M78 G91 G31 Z [ #26 ]
(SET SURF Y)
#15= #5042 + [ #30 * #6 ]
G65 P9811 Y#15 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#191= #191 + #15
G65 P9732 S#19 W1.
M78 G91 G31 Z - [ #26 ] F [ 4000. * #179 ]
M78 G91 G31 Y [ [ #25 / 2 + [ 12. * #179 ] ] * #6 ]
M78 G91 G31 X [ #24 / 2 * - #5 ] Y [ #25 / 2 * - #6 ] F [ 5080. * #179 ]
GOTO18
N170 (VISE CORNER CENTER)
M78 G91 G31 X [ #24 / 2 ] Y - [ #25 / 2 ] F [ 5080. * #179 ]
(SET SURF Z)
#16= #5043 - #5083 - #30
G65 P9811 Z#16 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#192= #192 + #16
G65 P9732 S#19 W1. Z1.
(X WEB)
#26= #5043 - #5083 + #26
G65 P9812 X#24 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#190= #190 + #5041
G65 P9732 S#19 W1.
(Y WEB)
G65 P9812 Y#25 Z#26 R#18 T#20 W#23 Q#17
G103 P1
G04 P1
G04 P1
G04 P1
#191= #191 + #5042
G65 P9732 S#19 W1.
GOTO18
N17 #3000= 91 (FORMAT ERROR)
N90 #3000= 10 (OTS NOT CALIBRATED)
N91 #3000= 11 (OMP40 NOT CALIBRATED)
N18
G65 P9833 (FLASH OFF)
GOTO999
N19
G65 P9856 (FLASH OTS OFF)
N999
G103
#598= #0 ( CLEAR SETTINGS CHECKED 9725 FLAG )
(G04 P1.0)
M99