I have a machine (horizontal boring bar - with fanuc 15M controller) that has some probing macro's that I would like to change. I'm no pro at parametric programming. Currently, the probe only hits once when finding a position, as opposed to hitting twice (once at a faster feed rate then pull back and contact at a slower feed rate) like any other machine I've worked on. Also, when hitting that one time, it goes faster than I'd like and I've noticed differences when manually slowing the feed rate, so I'd really like it to hit twice.
I was wondering if anyone would be willing to take the time to decipher the following programs and let me know what I'd have to do to get it to hit twice, as described above. I have run across some very smart people on this website - was hoping to come across some more (or the same). Here are some programs, with 9100 being probing information and 9300 is the centering program, and all the programs those two programs call up:
O9100(...PROBE-INFORMATION...)
IF[#19EQ#0]GOTO20
IF[#19LE0]GOTO10
#500=#19
N10#501=#501+1
IF[#501LE#500]GOTO11
#501=1
N11#502=4
#505=0
#506=0
#507=9
#141=0
#142=0
#143=0
#144=5
#145=50
#146=1000
#147=5
#148=5
#109=0
IF[#507EQ6]GOTO12
#510=0
N12IF[#501NE1]GOTO20
#119=0
N20
#27=#7
#28=#9
#29=#18
#30=#1
#31=#2
#33=0
WHILE[#33LE7]DO1
IF[#[24+#33]EQ#0]GOTO30
#[141+#33]=#[24+#33]
N30#33=#33+1
END1
IF[#3EQ#0]GOTO40
#119=#3
GOTO50
N40IF[#11EQ#0]GOTO50
#119=#[#11]
N50IF[#507EQ6]GOTO60
IF[#20EQ#0]GOTO60
#510=#20
N60IF[#4EQ#0]GOTO70
IF[#4EQ#505]GOTO70
IF[#4NE0]GOTO65
#505=0
GOTO70
N65#505=1
N70IF[#17EQ#0]GOTO80
#502=#17
N80G65P9390B17.
N99M99
%
O9300(...CENTERING...)
G65P9380B#11
G65P9150A9300.
#8=1
M98P9200
IF[#110EQ#0]GOTO1
IF[#110LT0]GOTO10
N1
IF[[#23-54]*[#23-59]LE0]GOTO20
N10#23=0
GOTO50
N20
#23=#23-53
N30IF[#507NE6]GOTO35
#30=2500+#23
#31=2600+#23
GOTO40
N35#30=5201+#23*20
#31=5202+#23*20
N40
#17=1
IF[#17GT0]GOTO45
#[#30]=#115
#[#31]=#116
GOTO50
N45#[#30]=#[#30]+#115
#[#31]=#[#31]+#116
N50G90X#24Y#25
Z#26
G65P9120A-1.H126R#18
IF[#110EQ#0]GOTO61
#3000=199(ERROR FLAG ON)
GOTO99
N61
G65P9390B12.W#23I#[#30]J#[#31]
N99M99
%
O9200(...INSIDE-DIAMETER...)
IF[#8NE#0]GOTO10
IF[#501NE1]GOTO99
G65P9380B#11
G65P9150A9200.
N10IF[#7GT#144]GOTO20
G65P9150B-1.
GOTO99
N20
G65P9120A1.H126
G65P9130X#24Y#25Z#26
#30=[#7-#144]/2
IF[#502NE3]GOTO40
N30
IF[#4NE#0]GOTO32
#4=90
#5=210
#6=330
N32G65P9110X[COS[#4]]Y[SIN[#4]]C#30
#111=#138
#112=#139
G65P9110X[COS[#5]]Y[SIN[#5]]C#30
#113=#138
#114=#139
G65P9110X[COS[#6]]Y[SIN[#6]]C#30
#115=#138
#116=#139
GOTO50
N40
G65P9110X1.C#30
#111=#138
G65P9110X-1.C#30
#113=#138
G65P9110Y1.C#30
#114=#139
G65P9110Y-1.C#30
#116=#139
N50
G65P9140A-1.I#111J#112I#113J#114I#115J#116
IF[[#19-1]*[#19-2]NE0]GOTO60
#33=117+#19*3
#[#33]=#111
#[#33+1]=#112
#[#33+2]=#26
N60G65P9150I#24J#25K#26D#7U#111V#112W#26X#114
IF[#8NE#0]GOTO99
G65P9120A-1.H126R#18
G65P9390B1.
N99M99
%
O9110(...SKIP...)
(M54)
#10=#5001
#11=#5002
#12=#5003
#33=#3-#147
#32=#3+#148
IF[#33LE0]GOTO10
#32=#147+#148
G01G91X[#33*#24]Y[#33*#25]Z[#33*#26]F#146
N10
G31G91X[#32*#24]Y[#32*#25]Z[#32*#26]F#145
G04X2.
#27=#3+#148
G04X1.(** 91-3-20 **)
#28=SQRT[[#5001-#10]*[#5001-#10]+[#5002-#11]*[#5002-#11]+[#5003-#12]*[#5003-#12]]
IF[#28LT[#27-0.01]]GOTO20
G65P9150B-2.
N20
G04X1.(** 91-3-20 **)
#4=#5021
#5=#5022
#6=#5023
G01G90X#10Y#11Z#12F#146
G04
#30=#119
G04X1.(** 91-3-20 **)
#138=#5041-#5001
#139=#5042-#5002
#140=#5043-#5003
#138=#5061+#141-#30*#24-#138
#139=#5062+#142-#30*#25-#139
#140=#5063-#30*#26-#140
G65P9190X#24Y#25Z#26C#3I#4J#5K#6
N99M99
%
O9120(...POSITION-SAVE/RETURN...)
IF[#1LT0]GOTO20
N10
G04X1.(** 91-3-20 **)
#[#11]=#5001
#[#11+1]=#5002
#[#11+2]=#5003
GOTO99
N20
IF[#18EQ99]GOTO99
IF[#18EQ98]GOTO25
G65P9130X#[#11]Y#[#11+1]Z#[#11+2]
GOTO99
N25
G04X1.(** 91-3-20 **)
G65P9130X#5001Y#5002Z#[#11+2]
N99M99
%
O9130(...POSITIONING...)
IF[#26GT#5003]GOTO20
N10
G00G90X#24Y#25
Z#26
GOTO99
N20
G00G90Z#26
X#24Y#25
N99M99
%
O9150(...DATA-TRANSFER...)
IF[#1EQ#0]GOTO10
#100=#1
N10#110=#2
IF[#2NE#0]GOTO20
#33=0
WHILE[#33LE3]DO1
#[101+#33]=#[4+#33]
#[111+#33]=#[21+#33]
#[115+#33]=#[21+#33]-#[4+#33]
#33=#33+1
END1
GOTO99
N20
IF[#2GE0]GOTO99
N30G65P9390B#2X#24
GOTO[40-#2]
N41#3000=180(ILLEGAL-MACRO-CALL)
N42#3000=180(SKIP-SIGNAL-NOT-ON)
N43#3000=180(OUT-OF-TOLERANCE)
N44#3000=180(TOOL-FAILURE)
N99M99
%
I think I have them all. Any help is appreciated...