Hi,
To figure out exactly what's happening, I think you'll want to step thru a couple of manual tool changes and look at how they effect different offsets (both WC offsets and Tool Offsets) for both Master tool mode and non-Master tool mode.
To help set context, I've commented on the steps you described...
Set my lathe up to use tool tables today, but getting some odd behaviours. Workflow was as follows:
Start Mach3. Reference X and Z.
OK
T0101M6. Auto move to tool change position. Fit master tool.
1) FYI - the M6 is unnecessary as the is no M6 word in Fanuc lathe g-code. Technically I believe it should cause a syntax error in lathe mode (Smid’s book for ref) but mach seems to just ignore it. I think this is hold over from very early days of Mach. If you use the the MDI line to just enter M6 by itself it becomes apparent that it’s a no-op in lathe mode.
2) Since you said “Fit master tool”, I tend to assume that you are using Master tool mode. I.e. the Master T mode” button on the tooling page is ON.
This is crucial as what mach and MSM will do when touching off is dependent on this button’s state.
BTW, Master tool mode ON is the effectively the behavior that stock mach uses in the 1024 screen sets.
Touch off to set work coordinate system in Z and X.
OK, so you touched off the master tool to the stock and set the Z and X zeros.
Assuming the master tool was indeed mounted (i.e. the current tool number = Master Tool # DRO on the tooling page when this touch off was done), then what happened is that the system will have set the Work coordinate offset for X and Z from the touch off positions.
Note the following:
a) Master Tool Mode = ON
Since it was the master tool that was mounted, the WC offsets are set and the Tool Offsets for the master are set = 0. (as the offset of the master relative to the master always has to be = 0 since x-x=0).
This action is true for the master, any-non master tool will cause a different set of actions for touch off.
b) Master tool mode = Off
If Master mode is Off, then this will shift the WC offsets to put WC zeros at the touch off points.
IIRC, the Tool Offsets will not have been altered in the tool table by this.
SO, whether you had MTM on or off, this step will have set the WC offsets.
T0202M6. Auto move to tool change position. Fit turning tool (offsets set previously in tool table).
OK. Since the offsets were previously set, make sure that the offsets in the table match the mode you are running the system in…. if you are using Master tool mode, then the offsets for T2 should be relative to the T1 (the master tool in your example).
If you are not running Master tool mode, then the offsets are relative to the WC zero point.
Obviously, mixing offsets set for one mode and using in the other will cause an undesired result –
I’m suspecting that this may be what happened given what you said later on.
Also, be careful of the use of radius vs diameter mode – you can also get weird results if you set Tool offsets in radius and run in diameter or vise versa.
Use wizard to set up for reducing outside diameter.
Cycle start (from tool change position). Error message - "Spindle disabled...". Not seen this one before, but chose to enable spindle and continue.
MSM checks the spindle state whenever it encounters and M3 or M4. If the spindle is disabled, it tells you so and asks what you want to do. Stock mach just assumes the spindle will start and goes on it’s merry way…. I disliked the results of that assumption one day and made MSM check the spindle state to avoid that problem.
G-Code executes correctly, but feed rate is a touch high.
I have nothing to offer here – mach just uses what ever feed rate is programmed,
Edit GCode to reduce feed rate.
You can also use the FRO slider to adjust FR while mach is running.
Cycle start (from clearance position following previous run)
Tool backs off 75mm in Z and runs program in fresh air! Tool offset says -75mm, so there is some connection.
This is why I’d guess that the offsets in the table were mismatched wrt to the operational mode.
For non-Master tool mode, offsets will be relative to the WC zero and without knowing the size of your lathe, I’m thinking that 75mm sounds like a WC0 relative offset rather than a master tool relative offset value (as most turning tools won’t differ by 75mm in Z ?).
I understand there is a bug relating to applying tool offsets after the next motion command following a tool change, but surely that should have happened after the first G1 move on the first execution, not several moves later during the second execution of the code?
This bug is not ringing a bell for me – so I’m not sure what you are referring to. I may have just forgotten it, but I do way more milling that turning so the mach turn related oddities are less stuck in my memory.
What should the correct workflow be in order to be sure that tool offsets have been applied after a tool change?
The Txxyy command will ALWAYS apply tool offsets as part of the tool change. The xx is the tool number, and the yy is the tool table offset index from with which to find the offset values to use.
Thus a common usage is T0101 – this says tool 01 and that the offsets are in table row 1 also.
In lathe mode there is no equivalent of the mill mode G43 H#.... the only way to mount a tool and NOT get offsets applied is to use Txx00 – as 00 for yy tells mach to “not apply any offsets”.
Also, upon exiting Mach3, I was prompted "Save Tool Table?" but I didn't make any edits to the tool table in that session.
Check your mach general config settings – I think this is the message that the “optional offset save” option will put up when exiting mach if the mach tool table has changed.
Note that mounting the mater tool will set the offsets for the master = 0 and that mach just knows that this happened (it does not have smarts to test if new offset value = old offset value and the optimize that out as a “non-change”).
Using MSM V2.0.0 Trial - Turn under Win XP with a Centipede controller and Mach3 3.43.62.
Dave