What's new
What's new

Question about lathe tool presetter

Joseph61189

Plastic
Joined
Aug 31, 2010
Location
Akron, OH
Machine: Hyundai Kia SKT 460 Lathe
Control: Fanuc 21i-TB

First time with having the luxury of an automatic tool presetter, only problem is it doesn't exactly seem all that automatic other than being provided the Mcodes and a little switch on the controller. I know I'm missing something here so I'm hoping someone can point me in the direction.

My question is, how do I use the presetter comparable to the way HAAS runs theirs? Such as the Z axis automatically jogging the tool to the presetter and touching the tool off both while setting up the tool before a program and while in mid program?

I tried my best to look through the vast depths of the internet before I bother anyone with the question, but I wasn't able to come across anything. Thanks for anyone who can give me a hand.
 
Does your machine have any tool probing macros loaded in the control? If it's a Renishaw tool setter the programs will be in the 9000 range and be called something like "REN AUTOSET".
 
Thank you for your reply. The controller has macros installed in it, they are 9005, and 9007 which don't have a comment with them so not sure what exactly they are. There are also macros for the tail stock, but I don't use them, and quite honestly, I wouldn't exactly know how even I wanted to. Not going to pretend I know something that I truly don't. I haven't had the chance to enlighten my self into the macro capability world quite yet, we've been pretty busy so haven't really got to stumble my way through all that.

As for the probe, it is a Marposs A90K probe.
 
You should get some documentation from the dealer. None of this is standard.

For example, on a C-axis VTL with an 0i-TD:

G202 TXXXX - flips down the arm, requires user to jog the tool to the probe tips manually
G200 TXXXX - flips down the arm and automatically touches off the tool based on previous offsets

A tool type number in the tool table indicates which sides of the probe the tool touches off of. E.g. "7" on this aforementioned machine indicates an RH turning tool, so the tool touches off in X- and Z-. Another tool type, e.g. "8" might indicate a RH boring bar where the tool touches off in X+ and Z-.

A parameter can be changed such that the G200 overwrites the offset, checks the previous offset, or both. Another parameter can be changed such that there's a tolerance limit between the current and previous offset, and if the new measurement exceeds the tolerance, the machine alarms out, indicating an overly worn or broken tool.

Again, it's probably different with every machine and the implementation is not tied to the control and definitely not tied to the probe, so some documentation will save you a lot of time and aggravation.
 
Thank you for your reply. The controller has macros installed in it, they are 9005, and 9007 which don't have a comment with them so not sure what exactly they are. There are also macros for the tail stock, but I don't use them, and quite honestly, I wouldn't exactly know how even I wanted to. Not going to pretend I know something that I truly don't. I haven't had the chance to enlighten my self into the macro capability world quite yet, we've been pretty busy so haven't really got to stumble my way through all that.

As for the probe, it is a Marposs A90K probe.
Hi Joseph,
The two Macro Programs Numbers you list are numbers that are associated with Subprogram call via "M" code. Take a look if any numbers are registered in parameters 6075 and 6076. If yes, then these numbers will be the M codes assigned to call these Macros.

Post a listing of the two Macro Programs here. If they're only for tool setting, they shouldn't be too hard to decipher.

Regards,

Bill
 
I have trained shops on KIA lathes with tool presetter for many years, the manual made it fairly easy to figure it out the first time I tried it.
Put the arm down manually, the screen changes to the present tool highlighted on the Offset page.
Use the handwheel to get close, then switch to Jog, its automatically a slow jog.
Do X or Z first, then the other.
Do all tools, set the face, check the method in your manual, its a little different than Fanuc.
The way I remember it, it was simple and fast.
Good luck, for program examples, look on my website: doccnc.com
Heinz.
 
I have trained shops on KIA lathes with tool presetter for many years, the manual made it fairly easy to figure it out the first time I tried it.
Put the arm down manually, the screen changes to the present tool highlighted on the Offset page.
Use the handwheel to get close, then switch to Jog, its automatically a slow jog.
Do X or Z first, then the other.
Do all tools, set the face, check the method in your manual, its a little different than Fanuc.
The way I remember it, it was simple and fast.
Good luck, for program examples, look on my website: doccnc.com
Heinz.

Hi Heinz,
I'd suspect that the two programs 9005 and 9007 would automate the process; one may be for setting X the other Z. If these programs are being called via an "M" code, then its probable that the tool has to be manually positioned and then an "M" code via MDI is executed to drive the tool onto the setter and set the Offset. The reason is that both these programs are being called as Subprograms and not as Macro Programs. Accordingly arguments can't be passed to possibly position the tool automatically.

To Joseph
The parameter that corresponds to O9007 is 6077, not 6076 as I stated in Post #5.

Regards,

Bill
 
Thanks for everyone's responses! I dug out the manual that is machine specific, I'll try and post what it says and see if someone can help me make sense of it. A lot of it seems to deal with tool life management and if you want the probe to be used in a program it provides a short example (off the top of my head) M12 M98 P9005 T0101 T0202 M99. My guestamation would be that by providing the two tool offset numbers, the machine will automatically touch off each tool in that range. Anyway, I know on our Mori Mills that has the tool touch off probe, it works with simple G code.
 
Thanks for everyone's responses! I dug out the manual that is machine specific, I'll try and post what it says and see if someone can help me make sense of it. A lot of it seems to deal with tool life management and if you want the probe to be used in a program it provides a short example (off the top of my head) M12 M98 P9005 T0101 T0202 M99. My guestamation would be that by providing the two tool offset numbers, the machine will automatically touch off each tool in that range. Anyway, I know on our Mori Mills that has the tool touch off probe, it works with simple G code.

Hi Joseph,
The two program numbers you supplied in your Post #3 can only be called as Subprograms, not Macro Programs, if called via "M" code. That being so, arguments can't be passed to them; accordingly, only one tool number will be seen by the Subprogram if the Subprogram refers to System Parameter #4120 to get the last "T" Code executed. I understand that your example in Post #8 was off the top of your head, but its definitely not the way in which a Tool Range for setting would be made. In Tool Measuring Macros I've written, and its the same with Renishaw and others, I use an address to pass the Lower Bound and another to pass the Upper Bound of the Tool Number range. I use either a Custom "M" code or a "G" code that can call the program as a Macro and therefore, be able to pass these arguments via the "M" or "G" code.

Do as I suggested in Post #5 and check to see what values, if any, have been registered in parameters 6075 and 6077 to determine what "M" code, if any, is being used to launch programs O9005 and O9007. The code for a Tool Setting Macro, or Sub, is fairly simple, therefore, Post programs O9005 and O9007 here and someone will be able to tell you what and how the programs do what they do.

Regards,

Bill
 
Here are the Macros.

%
:9005
#520=#3902
IF[#520EQ0]GOTO190
#521=#3901
#522=#521-FIX[#521/#520]*#520
IF[#522NE0]GOTO190
G30U0W0
M5
M9
G40
M41
N10
#523=#100
#524=#101
#525=#523+#524
IF[#525LE0]GOTO20
T0101
#133=#2301
#134=#2901
M98P9007
#526=ABS[#2001]
#527=ABS[#2101]
IF[#526GT#100]GOTO200
IF[#527GT#101]GOTO200
N20
#523=#102
#524=#103
#525=#523+#524
IF[#525LE0]GOTO30
T0202
#133=#2302
#134=#2902
M98P9007
#526=ABS[#2002]
#527=ABS[#2102]
IF[#526GT#102]GOTO200
IF[#527GT#103]GOTO200
N30
#523=#104
#524=#105
#525=#523+#524
IF[#525LE0]GOTO40
T0303
#133=#2303
#134=#2903
M98P9007
#526=ABS[#2003]
#527=ABS[#2103]
IF[#526GT#104]GOTO200
IF[#527GT#105]GOTO200
N40
#523=#106
#524=#107
#525=#523+#524
IF[#525LE0]GOTO50
T0404
#133=#2304
#134=#2904
M98P9007
#526=ABS[#2004]
#527=ABS[#2104]
IF[#526GT#106]GOTO200
IF[#527GT#107]GOTO200
N50
#523=#108
#524=#109
#525=#523+#524
IF[#525LE0]GOTO60
T0505
#133=#2305
#134=#2905
M98P9007
#526=ABS[#2005]
#527=ABS[#2105]
IF[#526GT#108]GOTO200
IF[#527GT#109]GOTO200
N60
#523=#110
#524=#111
#525=#523+#524
IF[#525LE0]GOTO70
T0606
#133=#2306
#134=#2906
M98P9007
#526=ABS[#2006]
#527=ABS[#2106]
IF[#526GT#110]GOTO200
IF[#527GT#111]GOTO200
N70
#523=#112
#524=#113
#525=#523+#524
IF[#525LE0]GOTO80
T0707
#133=#2307
#134=#2907
M98P9007
#526=ABS[#2007]
#527=ABS[#2107]
IF[#526GT#112]GOTO200
IF[#527GT#113]GOTO200
N80
#523=#114
#524=#115
#525=#523+#524
IF[#525LE0]GOTO90
T0808
#133=#2308
#134=#2908
M98P9007
#526=ABS[#2008]
#527=ABS[#2108]
IF[#526GT#114]GOTO200
IF[#527GT#115]GOTO200
N90
#523=#116
#524=#117
#525=#523+#524
IF[#525LE0]GOTO100
T0909
#133=#2309
#134=#2909
M98P9007
#526=ABS[#2009]
#527=ABS[#2109]
IF[#526GT#116]GOTO200
IF[#527GT#117]GOTO200
N100
#523=#118
#524=#119
#525=#523+#524
IF[#525LE0]GOTO110
T1010
#133=#2310
#134=#2910
M98P9007
#526=ABS[#2010]
#527=ABS[#2110]
IF[#526GT#118]GOTO200
IF[#527GT#119]GOTO200
N110
#523=#120
#524=#121
#525=#523+#524
IF[#525LE0]GOTO120
T1111
#133=#2311
#134=#2911
M98P9007
#526=ABS[#2011]
#527=ABS[#2111]
IF[#526GT#120]GOTO200
IF[#527GT#121]GOTO200
N120
#523=#122
#524=#123
#525=#523+#524
IF[#525LE0]GOTO130
T1212
#133=#2312
#134=#2912
M98P9007
#526=ABS[#2012]
#527=ABS[#2112]
IF[#526GT#122]GOTO200
IF[#527GT#123]GOTO200
N130
#523=#124
#524=#125
#525=#523+#524
IF[#525LE0]GOTO140
T1313
#133=#2313
#134=#2913
M98P9007
#526=ABS[#2013]
#527=ABS[#2113]
IF[#526GT#124]GOTO200
IF[#527GT#125]GOTO200
N140
#523=#126
#524=#127
#525=#523+#524
IF[#525LE0]GOTO150
T1414
#133=#2314
#134=#2914
M98P9007
#526=ABS[#2014]
#527=ABS[#2114]
IF[#526GT#126]GOTO200
IF[#527GT#127]GOTO200
N150
#523=#128
#524=#129
#525=#523+#524
IF[#525LE0]GOTO160
T1515
#133=#2315
#134=#2915
M98P9007
#526=ABS[#2015]
#527=ABS[#2115]
IF[#526GT#128]GOTO200
IF[#527GT#129]GOTO200
N160
#523=#130
#524=#131
#525=#523+#524
IF[#525LE0]GOTO180
T1616
#133=#2316
#134=#2916
M98P9007
#526=ABS[#2016]
#527=ABS[#2116]
IF[#526GT#130]GOTO200
IF[#527GT#131]GOTO200
N180
M42
GOTO190
N200
#3000=480(TOOL LIFE IS OVER)
N210
#3000=470(INPUT DATA IS WRONG)
N190
M99
%
 
%
:9007
#516=#512+#2601
#147=#5221
if[#133le0]goto990
if[#133ge9]goto990
if[#133eq1]goto110
if[#133eq2]goto120
if[#133eq3]goto130
if[#133eq4]goto140
if[#133eq5]goto150
if[#133eq6]goto160
if[#133eq7]goto170
if[#133eq8]goto180
goto9999
n110
#132=#513/2
#135=#134*2
#136=#514/2
#137=#516-#132
#138=#510-#514-#147
#139=#136+#132
#140=#514+#513
#142=#516-#513
#143=#142-#136
#144=#137+#134
#145=#140+#135
#146=#139+#134
g0x#138
z#144
if[#523le0]goto111
g36x[#510-#147]
g4x0.1
g0u-#514
n111
if[#524le0]goto112
w-#146
u#145
g37z#142
g4x0.1
g0w-#136
u-#145
n112
g30w0
g30u0
goto9999
n120
#132=#513/2
#135=#134*2
#136=#514/2
#137=#516-#132
#138=#510-#514-#147
#139=#132+#136
#140=#514+#513
#141=#137-#134
#142=#140+#135
#143=#139+#134
g0x#138
z#141
if[#523le0]goto111
g36x[#510-#147]
g4x0.1
g0u-#514
n111
if[#524le0]goto112
w#143
u#142
g37z#516
g4x0.1
g0w#136
n112
g30w0
g30u0
goto9999
n130
#132=#513/2
#135=#134*2
#136=#514/2
#137=#516-#132
#138=#511+#514-#147
#139=#132+#136
#140=#514+#513
#141=#137-#134
#142=#140+#135
#143=#139+#134
g0z#141
x#138
if[#523le0]goto111
g36x[#511-#147]
g4x0.1
g0u#514
n111
if[#524le0]goto112
w#143
u-#142
g37z#516
g4x0.1
g0w#136
n112
g30u0w0
goto9999
n140
#132=#513/2
#135=#134*2
#136=#514/2
#137=#516-#132
#138=#511+#514-#147
#139=#132+#136
#140=#514+#513
#142=#516-#513
#143=#139+#134
#144=#137+#134
#145=#140+#135
g0z#144
x#138
if[#523le0]goto111
g36x[#511-#147]
g4x0.1
g0u#514
n111
if[#524le0]goto112
w-#143
u-#145
g37z#142
g4x0.1
g0w-#136
n112
g30u0
g30w0
goto9999
n150
#132=#513/2
#136=#514/2
#142=#516-#513
#143=#142-#136
#144=#511-#513-#147
g0z#143
if[#524le0]goto112
g0x#144
g37z#142
g4x0.1
g0w-#136
n112
g30u0
g30w0
goto9999
n160
#132=#513/2
#138=#510-#514-#147
#137=#516-#132
g0x#138
z#137
if[#523le0]goto112
g36x[#510-#147]
g4x0.1
g0u-#514
n112
g30w0
g30u0
goto9999
n170
#132=#513/2
#136=#514/2
#137=#516+#136
#140=#511-#513-#147
g0x#140
z#137
if[#524le0]goto112
g37z#516
g4x0.1
g0w#136
n112
g30w0
g30u0
goto9999
n180
#132=#513/2
#136=#514/2
#137=#516-#132
#138=#511+#514-#147
g0z#137
g0x#138
if[#523le0]goto112
g36x[#511-#147]
g4x0.1
g0u#514
n112
g30u0
g30w0
goto9999
#3000=50(ttype is wrong)
n9999
m99
%
 
Hi Joseph,
These Macro Programs are to do with Tool Life Management; particularly program O9005. System Variable #3902 at the start of O9005 specifies the Target Number of Parts required. If its Zero, the program falls through to N199 and ends without calling O9007 or doing anything.

O9007 uses Automatic Offset Setting "G" codes G36 and G37. It is called by O9005 if there is a target number of parts to make, but could also be used for setting tools. Look up parameter 6077 to see what "M" code is being used to call this program.

Regards,

Bill
 
Hey Bill,
Went to parameter 6077, no value was entered into the parameter. However, I suspect that the Mcode might be M12. View attachment 107244View attachment 107245
Hi Joseph,
What this means is that neither O9005 nor O9007 are being called by an "M" code. If these are the only Macro Programs that you know are registered in the control, its likely that there are other Macros you can't access. What are called "Built-In Macros" can be registered and protected via parameters starting at parameter 12001. You can determine if Built-In Macros are present by looking at parameters 12011 and 12012. These two parameters describe the First and Last program number respectively that represent the program numbers that have been reserved for Built-In Macros.

If M12 calls a Tool Setting function, then it either calls a protected Macro or is a PLC function (less likely), but it doesn't call either O9005 or O9007.

Regards,

Bill
 
Alright, thanks for your help. I had to go into the parameters to make these viewable so they are considered built in along with the macros that are used for the tail stock.
 
Alright, thanks for your help. I had to go into the parameters to make these viewable so they are considered built in along with the macros that are used for the tail stock.
Hi Joseph,
No. The parameter bit you changed to be able to access these programs would have been bit 4 of 3202. This bit gives low level protection to programs in the number range O9000 to O9999. You can also set bit 3202.0 to Zero to see if there are any programs in the O8000 to O8999 range registered. None of the programs protected by parameter 3202 are Built-In Macros. Password protection is often set via the 12001 series parameters to protect Built-In Macros from being accessed.

Regards,

Bill
 








 
Back
Top