What's new
What's new

Our first HMC looking for setup tips and tricks


Nov 8, 2022
We just installed our first 500mm twin pallet horizontal with a 60 tool magazine in the shop. It has a renishaw spindle probe and the laser tool pre setter. I am planning on running repeat jobs and want to reduce setup as much as possible. Can anyone give me some ideas on how i should set it up so repeat jobs can be setup fast? How should work offsets be managed? Workholding? Etc…


Jun 30, 2015
Saint Paul, MN
I run a twin pallet vertical with a 30 tool magazine. I'm no systems expert and have worked alone forever, so that likely shades my processes.

I would:

1) Leave tools loaded if possible. Things like Spot Drills and Chamfers etc. A Facemill or two. I'm not able to leave many tools loaded as most the production pieces I run use too many tools. Especially when I'm always counting a Probe and Fan as two of them. But with 60 tools you might have a better chance of leaving a bunch mounted.

1a) If I could afford it I'd never completely tear down the tools in a job. (I might remove them from the machine, but not remove the tool from the Tool Holder.) But because I can't, I'll sometimes keep all the cutters for a job in a box saved for next time. At least ones that are critical and are attached to any Cutter Comped Tool Offsets. Clearance or other non-critical drills and roughing cutters not so much.

2) Before tearing down any job I punch out the Part Program and all of its Subroutines en mass as one file. (Fanuc Copy-A-Range w/comma)

3) Punch out the Tool Offsets

4) Punch out the Work Offsets.

When the job comes back, copy these three file back to the machine, and run the two offsets files to reload their settings. Now except for loading and measuring previously pulled tools, you're almost ready to go.

Then I'll run a Renishaw Automatic Part Setting Routine designed for that particular pallet arrangement and Work Offsets used. This routine will use the existing offsets that were loaded and update them accordingly. A thou here, a few tenths there etc. My setups generally consist of a bunch of pinned in place vises, so they're fairly repeatable. Still, I double check them with the probing routine each time.

I saw a YouTube video a couple years ago of a California company that took all the tools from every repeat job and stored them in racks in a room. To me that's the most sure fire way to get the job up and running and hitting all sizes quickly. I mean... having the exact same tools in the same holders that finished the previous run has got to be a step ahead.

Orange Vise

Feb 10, 2012
Zero point tombstones are a must.

Self centering vises make life easy.

Program at the center of B-axis rotation. That way you only have one work offset, G54.

Alternatively, set G54 as described above and make probing routines relative to G54, and then write the measured offsets into your extended offsets, P1 and on.


May 22, 2021
A lot of this depends on the part size, tolerance, and side features/angles needed. Programming off of center of rotation with a consistent Y offset(bottom of pallet for example) would be quickest with everything modeled in cad, but separate work offsets for each face of the tombstone may be useful. Without knowing the parts workholding is tough as you could need a single vise with a riser, or a variety of tombstone configurations setup for fixtures and/or vises.


Oct 1, 2015
I program 4 twin-pallet hmc’s for my employer, so I’ll touch on the programming side. This is production work with dedicated tombstones, running families of the same parts. I do a lot of things from using multiple offsets on the same part, to using system variables from 0 face Y and linking the 90 face Y offset to it. But, one of the best safety practices I’ve found is setting a face and rotational clearance planes before it’s even ran on the machine.

All of my production programs use the extended offsets. This leaves G54-G59 available. G54 is always center (x and z) and top of pallet. G55-G58 are face clearance planes for the 4 different sides. G59 is my rotational clearance. X and Y for the clearance planes are the same as G54, but the Z is calculated at the beginning of the program using the system variables. I use cad to measure my outermost part to center of rotation, then add .5” to that value as a pucker factor. Input that value into an equation with the system variable (G59Z system variable, for example) and you’re done. Instead of having to guess or calculate what your G0Z retraction value should be for every pallet rotation, you just use a G0G59Z0. The same equations can be used on every program, just the value within the brackets change. It’s so easy to prove a program when you don’t ever have to worry about your transition and rotational clearance moves.

**edit for typos