Hello Guest it is March 28, 2024, 06:38:00 AM

Author Topic: Tool Change w/ Height Offset  (Read 10177 times)

0 Members and 1 Guest are viewing this topic.

Tool Change w/ Height Offset
« on: October 23, 2014, 11:08:10 PM »
Ive always zeroed each tool before use (stupidly), and used all the same tool number. I am not starting to foray into actually using the tool table and tool offsets. I tried using it yesterday, but I found that even with height offsets turned on for each of the tools in Mach3, when my Gcode would ask for a tool change, sometimes it wouldnt apply the tool offset. However, if I manually changed the tool number in Mach it always worked (and no G49 is present in my gcode).


So my question is, Do I need to call an "G43 HX" every time I do a tool change? For instance, should my tool change to tool 1 be  "T1 M6 G43 H1"? I had always assumed that just "T1 M6" was enough and that it would grab the offset from my tool table. Is my thinking incorrect? If not, why does it work when i manually change the tool number in mach?
« Last Edit: October 23, 2014, 11:11:02 PM by mikemaat »
Re: Tool Change w/ Height Offset
« Reply #1 on: October 24, 2014, 12:57:16 AM »
You are correct that you need to use an "H" word after G43 so Mach 3 knows what TLO to apply to what tool. You want the G43 on the next line after the tool change command and of course H1 ,H2, H3, and so on applies to tool T1, T2, T3, and so on. Here is an example of how I was advised to write the code for tool changes when using TLO.
 
N1 G00 G17 G20 G40 G43 G80 G90
N2 T1 M06
N3 G43 H1
N4 T2 M06
N5 G43 H2
N6 T3 M06
N7 G43 H3

Eric
Re: Tool Change w/ Height Offset
« Reply #2 on: October 24, 2014, 02:28:43 AM »
So without the G43, mach assumes a "0" offset from tool 0 (the reference tool) or does it just continue using the last loaded offset for whichever tool was last?
Re: Tool Change w/ Height Offset
« Reply #3 on: October 24, 2014, 04:43:51 PM »
 I did some 3D milling a few months back and wanted to use 3 different tools for roughing, prefinishing, and finishing. I zeroed all tool to Part Z zero. I doubled checked everything and thought I was good to go and when I changed to T2 my cutter plunged 1/2 of an inch into the work piece and snapped my expensive carbide ball endmill and ruined the work piece.

I put T1 back in spindle and did just a rough eye ball and the endmill was at part Z zero. T2 was about 1/2 inch longer than T1 so then I checked the tool table and all 3 tools had different values for each tool.

So I did some research and posted a G43 question and was told that after each tool change  you must use a G43  and H word to get the right  zero offset from the tool table.

I then did some testing to prove this out. In  MDI I did a T1 M6 and then zeroed the tool to the top of a 1 2 3 block. Then I did a T2 M6 with a cutter that was longer than T1. Zeroed T2 to part Z zero. For each tool I wrote down the machine cord. for where the tools zeroed out and compared those values to the tool table and those values were the same.

In MDI I did a T1 M6 and put T1 back in the spindle and then jogged down in Z to just above 0 and the T1 wasn't even close to where it was supposed to be. Then I did a G43 in MDI and nothing changed tool still no where close to top of block. Then I did a G43 H1 and then jogged down in Z to 0 and T1 was at 0 where it was supposed to be.

From that test I learned that Mach 3 remembers the last tool zeroed. Doesn't matter if its T1 or T100. All the TLO's are saved in machine coordinates.  A G43 tells Mach 3 to use TLO but Mach 3 also needs to know what saved TLO from the tool table to use so that's why you have to use the an H word and then the correct number for the tool after the G43 command.

So going back to your question. You can do a T0 M6  and Mach 3 will show that it has chanced to T0 but there is no actual Tool  0 in the tool table. Yes Mach 3 continues using the last zero point for the last tool that was zeroed.  I either read or saw someone post online that it was important to have T1 referenced because all the tool offsets are tied to T1 don't know for sure. I would think that since all the TLO's are saved in machine coordinates it doesn't matter.  So tool table for T1 could be 0.0000 for the offset and T2 could be -6.6534 and everything would still be good. Only testing could prove this out.
Re: Tool Change w/ Height Offset
« Reply #4 on: October 24, 2014, 04:59:05 PM »
Okay, so moral of the story is that any time you perform an M6 T*, you should accompany it with a G43 H*

That's fine, and easy enough to change in my post processor, but that leads to a few lingering questions for me:

- What is the purpose of M6 T* if all it does is change the visual number showing on the screen. It doesn't change the tool offset used. Technically you could just call G43 H1, G43 H2, and never issue an M6. Is the purpose then, of an M6 T*, only useful for automatic tool changers?

- Secondly, if you HAVE to call a G43 H* in order for the tool offset to change, what is the purpose of this button? I assumed that for each tool you could turn on or off the tool offset. What exactly is the purpose of this button then if you have to call G43 anyway.

Offline ger21

*
  • *
  •  6,295 6,295
    • View Profile
    • The CNC Woodworker
Re: Tool Change w/ Height Offset
« Reply #5 on: October 24, 2014, 07:39:42 PM »
M6 is a tool change command.
If you have an ATC, it will change the tool
If you don't have an ATC, you can have Mach3 stop and wait for you to change tools when it sees an M6.
You can also modify the M6 macro to do other things. Mine moves to a tool change3 position, and waits. After changing the tool, it measures the new tool, then continues cutting. (I don't use G43)

"That button" effectively calls a G43 (and G49 to cancel G43). I'm assuming that if you want to manually change tools, and apply the offset, you can just click the button, rather than using MDI or g-code.
There are many functions in Mach3 that can have multiple methods to do them.

Gerry

2010 Screenset
http://www.thecncwoodworker.com/2010.html

JointCAM Dovetail and Box Joint software
http://www.g-forcecnc.com/jointcam.html
Re: Tool Change w/ Height Offset
« Reply #6 on: October 24, 2014, 11:25:14 PM »
Yes that is correct you do have to do a G43 H* after a M6 T* if you are using more than one tool in your Gcode program and don't want to have to set your tool zero every time you do a tool change. If you are only using one tool then you don't need to use G43 H*.

Techinally you might be right about the G43 H1 and G43 H2 statement. It's just a good practice to get into when doing a tool change to do M6 T* and on the next line to do G43 H* when doing mutiple tool changes within a program.



Offline ger21

*
  • *
  •  6,295 6,295
    • View Profile
    • The CNC Woodworker
Re: Tool Change w/ Height Offset
« Reply #7 on: October 25, 2014, 06:52:13 AM »
So without the G43, mach assumes a "0" offset from tool 0 (the reference tool) or does it just continue using the last loaded offset for whichever tool was last?

Mach3 (and pretty much all cnc controls) doesn't assume anything. It does exactly what you tell it to do. If you want a length offset, you specify it with G43. This offset will remain in effect until you cancel it with G49, or call a new offset.
Gerry

2010 Screenset
http://www.thecncwoodworker.com/2010.html

JointCAM Dovetail and Box Joint software
http://www.g-forcecnc.com/jointcam.html
Re: Tool Change w/ Height Offset
« Reply #8 on: July 27, 2016, 11:49:46 AM »
Okay, so moral of the story is that any time you perform an M6 T*, you should accompany it with a G43 H*

That's fine, and easy enough to change in my post processor, but that leads to a few lingering questions for me:

- What is the purpose of M6 T* if all it does is change the visual number showing on the screen. It doesn't change the tool offset used. Technically you could just call G43 H1, G43 H2, and never issue an M6. Is the purpose then, of an M6 T*, only useful for automatic tool changers?

- Secondly, if you HAVE to call a G43 H* in order for the tool offset to change, what is the purpose of this button? I assumed that for each tool you could turn on or off the tool offset. What exactly is the purpose of this button then if you have to call G43 anyway.


Hi, I'm really hoping you're still around.... I could really do with altering my post processor in the way you describe. I have no idea hos to do this though. Help on this, from anyone, would be much appreciated.
Re: Tool Change w/ Height Offset
« Reply #9 on: August 12, 2016, 10:21:39 AM »
now I have a question. can you change the m6 macro to call for the H value for that tool in a code line along with the g43?