I read through these posts, and thought what the hell I throw in a suggestion or two. I think this is similar to some of the posts but I didn't quite follow all the techniques
I run a VF0E, usually with two to three vises. I program for this machine with Solidworks and Camworks. The tool crib / library works well with this setup. My prefered method is to touch off Tool 1 to any convienant spot on the vise, table, or part. A good flat surface. I run predominatly aluminum so Tool 1 only gets changed every so often, it could just as easily be the 3-axis probe.
The TLO register for Tool 1 is left or set at 0. In the G54 Z work offset register I record the z value of tool 1 using the Part Zero Set button. Wether I use a gauge block, 1-2-3, or a single axis led probe to touch off, doesn't really matter as long as you are consistent for all tools. Next I load tool 2, touch off to the same location and use the Tool Offset Meas button to record the difference between tool 1 and tool 2, in the tool 2 TLO register. It is possible to do this offline but I don't have the set up to do it. So Tool 3 goes in, touch off to the same location, Tool register records the difference between tool 3 and tool 1. Same for the rest of the tools.
I keep 8 tools loaded in the tool changer and all are set in relation to tool 1. When I change setups I use the edge finder to locate x and y, and the touch tool 1 to the top of the part and record the work offset in the G54 Z register, again with the Part Zero Set button. All the rest of the tools follow it, so they are set. Next I go over to G55 part touch off its z work offset location, then G56, etc. If the vises and stock are consistent you shouldn't see more than a few thousandths between z work offsets. If you are using the 1-2-3 block you obviously have to subtract that distance in the z value. Next if I am running a flycut pass to clean up the top I go back to the work offsets and subtract an additional .010 or so out of each z value, checking that my deepest tool move will still clear the jaws. Minor adjusts for depth in individual tools I use the wear register, just like the diameter compensations.
If I need to add tools to the mix, and have already machined the top surface of G54 which happens to be my Z 0, I touch them off to that suface and record their differences to tool 1. I am still touching off several times with this method but I don't have to do it for every tool, every setup, and additional tools go pretty quick.
I was trained to touch off each tool to the top of the part, and it took a little adjustment to make this transistion. It is getting late here so I hope this makes sense, and helps you out. Regards, JL