What's new
What's new

proper way to set z height for face milling rough cut parts

BUT, If you raise it up to the TOP OF THE "FINISHED PART HEIGHT", all your GCODE WILL SHOW EXACTLY THE CORRECT Z DEPTHS FOR HOW DEEP ALL TOOLS ARE GOING INTO THE PART, Nothing to do with Gibbs or software, separate subject.
I swear this is not that difficult to understand!
You're assuming most guys running machines actually look at and understand the code. The setup sheet should show all max depths with LOC values for tools as well as min/max stickout for setup.
 
If you have a 2" part that need a hole drilled 1.625" deep, do you want your gcode to read starts @ 2.00" then pecks to .375" or
starts @ Zero and pecks to -1.625"
 
You're assuming most guys running machines actually look at and understand the code. The setup sheet should show all max depths with LOC values for tools as well as min/max stickout for setup.
This is the main point I was making, "this is why you see newbs crashing their machines all the time"
they don't know gcode, and the numbers are incorrect unless you have a calculator handy, or they are simple to figure.
I would rather just look at the gcode, and the print , especially we make OP specific prints, and away you go. I guess its rocket science.
to much Youtube edumacation. :D
 
If you have a 2" part that need a hole drilled 1.625" deep, do you want your gcode to read starts @ 2.00" then pecks to .375" or
starts @ Zero and pecks to -1.625"
I don't care what the code says, I care what the part measures when its done and if programming the part from the bottom means I don't have to resetup the WCS because I'm programming from a common/known/established WCS and I can make my parts faster that's fine with me. If its a more reliable, easy way for guys in the shop to setup their parts by not having to set WCS for every single part, that's a failure mitigation and a win in my opinion. Guys on the floor are typically not reading code they're following setup sheets and pushing the green button while they scroll through Instagram.

I have plenty of different methods for setting my WCS and picking its location. Its not a one size fits all approach. Depends on setup, part config, datums, tolerances, workholding, if I'm using a spindle probe or not, etc. They all have their benefits.

If I know something is going in a vise with talon jaws and a stop on the left side that lives in the machine at all times I'll program to the bottom left back corner where the material is sitting so any job that goes in that vise will already have the WCS set and the setup guy (me) doesn't have to set it every time. If I'm doing the same thing with no stop but I'm using a spindle probe to find the part center to remove an even amount of stock around the part in varying size stock lengths/widths I'll keep the Z at the bottom but set my XY to the center and just probe XY in the beginning of the program. If I'm doing a quick two op setup and the first op is sitting in jaws with plenty of meat on the bottom and I don't need to worry about hitting the vise I'll set it top top center of stock and just probe it and let the program do the rest, especially if I'm simply throwing stock in a vise on parallels after I've already programmed everything. Second op stuff might be off a bore from the first op and Z might be the bottom of the part on the fixed jaw, so its a fixed known Z location without a manual shift up in Z. There are also a thousand+ other reasons/methods/combinations that all make sense given the specific scenario.
 
This is the main point I was making, "this is why you see newbs crashing their machines all the time"
they don't know gcode, and the numbers are incorrect unless you have a calculator handy, or they are simple to figure.
I would rather just look at the gcode, and the print , especially we make OP specific prints, and away you go. I guess its rocket science.
to much Youtube edumacation. :D

Using a simple, well defined, common WCS is the easiest way to mitigate crashes. Forcing a guy to reset his WCS every time to the top of the stock because stock changes for every part number is a quick way of running tools into a vise and a poor workflow if your primary goal is to mitigate failures/crashes. This is the same reason using In Control comp is the dumbest option out of all of them and should be removed entirely from all CAM systems. You're now forcing the setup guy to input values in the control that he otherwise wouldn't need to do with In Computer/Wear.
 
I don't care what the code says, I care what the part measures when its done and if programming the part from the bottom means I don't have to resetup the WCS because I'm programming from a common/known/established WCS and I can make my parts faster that's fine with me. If its a more reliable, easy way for guys in the shop to setup their parts by not having to set WCS for every single part, that's a failure mitigation and a win in my opinion. Guys on the floor are typically not reading code they're following setup sheets and pushing the green button while they scroll through Instagram.

Yeah I don't care about the machine feeder, I care about the first article guy,
We found having the Gcode matching caused us less machine crashes, in multiple shops, only applies to 3 axis of course.
part measures the same either way.
I have plenty of different methods for setting my WCS and picking its location. Its not a one size fits all approach. Depends on setup, part config, datums, tolerances, workholding, if I'm using a spindle probe or not, etc. They all have their benefits.

100%, As I mentioned before.

If I know something is going in a vise with talon jaws and a stop on the left side that lives in the machine at all times I'll program to the bottom left back corner where the material is sitting so any job that goes in that vise will already have the WCS set and the setup guy (me) doesn't have to set it every time. If I'm doing the same thing with no stop but I'm using a spindle probe to find the part center to remove an even amount of stock around the part in varying size stock lengths/widths I'll keep the Z at the bottom but set my XY to the center and just probe XY in the beginning of the program. If I'm doing a quick two op setup and the first op is sitting in jaws with plenty of meat on the bottom and I don't need to worry about hitting the vise I'll set it top top center of stock and just probe it and let the program do the rest, especially if I'm simply throwing stock in a vise on parallels after I've already programmed everything. Second op stuff might be off a bore from the first op and Z might be the bottom of the part on the fixed jaw, so its a fixed known Z location without a manual shift up in Z. There are also a thousand+ other reasons/methods/combinations that all make sense given the specific scenario.
 
Jeez Guys...this is making my head hurt.
I had no idea this stuff is all that hard and that you need to drink somebody's Koolaid to do a proper job of it.

I've been making precision parts for decades and I've always been able to do what I need to do without sweating this at all.
I program from the origin that seems logical for the part or fixture in question, and if I make the fixture capable of holding my parts with the consistency I need, I get my parts, and they measure good.
Granted I don't do a lot of production anymore, but I've done a reasonable amount of it in my career too, and I've never felt the need to man the ramparts and defend my way to the death.

So who cares...program your parts however you like...if you can make good parts you're doing it as right as it needs to be.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
 
Last edited:
This is the same reason using In Control comp is the dumbest option out of all of them and should be removed entirely from all CAM systems. You're now forcing the setup guy to input values in the control that he otherwise wouldn't need to do with In Computer/Wear.
I was totally with you, right up to this. This is where we're probably all correct for some unknown or un-shared reason. I let the CAM do the toolpath as centerline if the size isn't critical or only a few parts.

All the machines I've used had the Renishaw probing packages though. Touching off the tool length and diameter is part of that. When it matters, I'll use the recorded diameter from the control for my Mastercam tool. If I'm doing it for lots of parts and want to be able to use random new and regrind cutters, it's control comp all the way, or at least for the finish pass.
 
I was totally with you, right up to this. This is where we're probably all correct for some unknown or un-shared reason. I let the CAM do the toolpath as centerline if the size isn't critical or only a few parts.

All the machines I've used had the Renishaw probing packages though. Touching off the tool length and diameter is part of that. When it matters, I'll use the recorded diameter from the control for my Mastercam tool. If I'm doing it for lots of parts and want to be able to use random new and regrind cutters, it's control comp all the way, or at least for the finish pass.
Interesting, I don't use control comp either, what's a regrind cutter? Is that similar to re-sharpening drill bits?, people still do that, nah. :D :cheers:
 
Interesting, I don't use control comp either, what's a regrind cutter? Is that similar to re-sharpening drill bits?, people still do that, nah. :D :cheers:
I know you're pulling my chain but, I'll share how I manage things, in case it helps someone else. :D
Haas, 20-pocket umbrella changer. We used to use a similar strategy on other Haas machines. All had the Renishaw probing package.

Last pocket is always the probe. On this one, it's 20. On the 24+1 it's always 25 (the last tool).

Programs generally need drills so I keep four chucks in the machine, backwards from the probe: on this machine 19, 18, 17 and 16 are reserved for drills. If it has a drill in the chuck, it's touched off and has a length here. If not, the offset is a big, whole number (9.000 in this case). No crashes if I use the wrong tool number and it tries to stab a hole.

If I have any taps, they are loaded backwards from the drill chucks: 15 and 14. They're empty and zero right now but, I always program that way, from the high and low tools, toward the middle.

Starting at pocket 1, I keep an assortment of cutters in the machine at all times:
  1. 1/4 2-flute
  2. 1/2 3-flute
  3. 3/4 2-flute insert shouldering mill
  4. 2" 6-insert shouldering and facing mill
  5. 1/4" ball mill (general rounding and deburr)
  6. Engraving mill
  7. 1/8" corner rounding mill

offsets.jpg

This strategy takes care of most of what I need for day-to-day. Pockets 8-13 are empty and ready for anything special on that particular part. That's in addition to the already reserved drilling and tapping tools.

If there is no diameter loaded, I know from looking at the table that it's a centerpoint tool (drill, tap, etc).

I keep a matching tool library in Mastercam. I can pull a part from Solidworks, load the tool library and be programming in a minute or two, with tools matching the machine. If the vise is probed to back, left, bottom as has been discussed, I only need to load drills, touch off and go.

The default drill diameters in the Mastercam tool library are the pocket numbers (.19 .18 .17 .16). If the tool description in the posted program matches the tool number, I know something was possibly missed in programing and to double check.

Finally, back to the Control Comp discussion: notice the diameters shown on tools 1-5 are not what they should be (1/2, 1/4, 2", etc). I have no clue why they're like this, aside from actually being undersize. I'm almost certain tools 1 and 2 are Niagara carbides. None are regrinds, two are insert tools and--yes--the system was carefully calibrated and all of this reset literally a week ago. That's why some of the flute counts and coolant positions are incorrect. This is how they measure and pretty much how they cut as well. Nailing dimensions isn't a problem so it must be right.
 
Last edited:
You're assuming most guys running machines actually look at and understand the code. The setup sheet should show all max depths with LOC values for tools as well as min/max stickout for setup.
While I don't disagree, I think it's safe to say most of the readers/commenters at PM are reading and understanding the code.
 
I know you're pulling my chain but, I'll share how I manage things, in case it helps someone else. :D
Haas, 20-pocket umbrella changer. We used to use a similar strategy on other Haas machines. All had the Renishaw probing package.
I was just pulling your chain, but serious,
I don't use control comp, but that's just currently in my shop, not that I think its the best way, nonono.
I do agree for the most part in having to fat finger in diameters, or modify them when there isn't really a need is a good practice.
Like he said removing another variable for setup and operator to screw up.

But there is another thing, most if not all machinists I know will tell you that a drill chuck, even though they come in holder types for CNC's, should not be used in CNC's, I agree
but people starting out in their garage don't have the money to buy a sweaty fist full of collets, so they buy drill chucks.

And I honestly don't have anything re-sharpened, we used to, but cutting tools cost dropped so low over the years it's not cost effective.
and regrinds are never near as good as original, so we stopped all that many, many years ago, as have most people I know.

2 cents :cheers:

edit these are some nice looking drill chucks that close non-standard, look interesting.
Mapal Drill Chuck
 
Last edited:
And I honestly don't have anything re-sharpened, we used to, but cutting tools cost dropped so low over the years it's not cost effective.
and regrinds are never near as good as original, so we stopped all that many, many years ago, as have most people I know.
Prices are starting to rise a little on the new stuff I have noticed.
I send all of my Sandvik tooling back to them for factory resharp, minus the Dura Mill end mills because they haven't started doing those yet for some stupid reason. It takes longer, but it's perfect when we get it back. The other stuff I send to a local service and they're usually really good.
 
Prices are starting to rise a little on the new stuff I have noticed.
I send all of my Sandvik tooling back to them for factory resharp, minus the Dura Mill end mills because they haven't started doing those yet for some stupid reason. It takes longer, but it's perfect when we get it back. The other stuff I send to a local service and they're usually really good.
It really is relative to a persons situation, I do keep all my drill bits, and one day Ill send them off for factory regrind, If I live to be so old. :D
I don't think I will ever have a diameter tool reground ever again though.
edit: truth is tooling is a consumable that is added into the cost of the part, So really don't need to have stuff reground.
 
Last edited:
Interesting new comments from all.
In my situation (prototyping mostly) I make a lot of custom cutters.
I re-point my drills with a Darex SP2500 that I bought off EBay for a thousand bucks over a decade ago.
I don't think I've paid for it yet in saved drill costs, but I like the convenience.
.
I use cutter comp whenever I need a really accurate feature and I use the comp to sneak up on my desired dimension.
I leave a couple of thou stock on the profile in CAM and comp it away tenths at a time if needed.
I don't need to care how long it takes...that's not what my customers pay me for.

I have a Mastercam "Current Tool Library" that I update whenever I change a tool in the carousel and everything in the carousel is always touched off to the top of the vise. (no probes on my Minimill, sadly).
I never put a new tool into the carousel without immediately touching it off.
I touch off every tool as soon as it goes in the carousel...no loading a bunch of tools and then touching them all off...too easy for me to miss one if I get distracted by the phone or something.

I have the setup to regrind flutes, but I haven't done so since my first foray into CNC, so my inventory is all new cutters and customs.
I keep my trashed cutters to make the customs from.
The biggest cutters I run are 1/2" four flute Garrs.

As I said before I set my origin to wherever seems best for the part or the fixture.
I'm the only one in here so I can be as consistent or capricious as I please...no one else to fuck things up but me if I do it different every time.

I always open the CAM file for a visual reference on repeat jobs.
I never make setup sheets, but I do take photos of weird or complicated setups if I think I'll need them again.

This way would never work with employees but it works fine for me and has done so forever.
I make some complicated parts too:
Frenum Crucible_2.jpg
Frenum Crucible_3.jpg

So I say "horses for courses" there ain't no one best way.

Cheers

Marcus
www.implant-mechanix.com
www.vancouverwireedm.com
 
Last edited:
Also in the sense of loading up a 20 tool tool changer with standard placement,
I am used to the old days of the super slow tool changers and the super slow rapids.
So we programmed every tool in the order needed, and it went into the carousel in that order, reasoning, the tool changers back in the day were super slow, no tool arm, carousel only, and didn't hold a lot of tools,
So this added a lot of efficiency in running the parts.
Also with the turtle rapids and feed rates, you programmed parts in a way of closest feature next, so you spotted from left to right, drilled from right to left, tapped left to right....
always trying to have the next feature to be machined as close to the previous, not rapid all over the place.
this added a lot of efficiency in a run also.

I don't have large tool carousels 30 at most, and I don't just do a couple different jobs in my garage,
So standardizing a small carousel of tools not only doesn't make sense, but I couldn't do it if I wanted to.

Some parts, a lot of parts, need all those slots full of steel tools, next part may need all those slots full of Aluminum tooling....
So the carousel needs emptied all the time anyway, mine as well put the next operation in, tool order as needed by the current operation.

So I still do the old school programming the tooling and placing it in the carousel in the order it is in the program,
and I still have the habit of programming efficient with ordering the operations as close to the last operation as possible.

in a real machine shop, you cant really standardize a 20 tool carousel, that's a YouTube thing.
 
Last edited:
It’s really unfortunate most machines won’t allow positioning the XY during a toolchange like a Speeedio. Haas has Setting 247 called simultaneous XYZ motion in toolchange but it doesn’t do anything, least not on mine.
 








 
Back
Top