What's new
What's new

Setup methods for 5 axis work offsets?

Jvizzi

Aluminum
Joined
Jun 15, 2011
Location
Florida
I am looking for some general recommendations on methods of setting up work offsets on 5 axis machines. As I understand it, you basically have a few main options:

1) Use the center point of rotation as your origin on the machine and CAM software, and "move" the part inside the CAM to the exact same physical location it will be in the machine in relationship to the center of rotation. This allows you to use only one work offset for the entire part. The downside being that the job must be setup in the exact same spot every time, and small adjustments must be done at the CAM to shift the part.

2) Use multiple work offsets for the part, one for each new tilt and/or rotary position you need to present the part to the spindle (3+2). This allows you to setup the part however you would like to on the machine, and an exact relationship between the part location and the center point of rotation does not need to be maintained. The downside being added setup time to establish multiple offsets, and full 5-axis cutting motion is not possible.

3) Use one work offset on the machine and CAM, anywhere you would like on the part, and utilize the controller's advanced offset tracking feature (HAAS calls it Dynamic Work Offset, and Tool CenterPoint Control). This seems to be the best of both worlds.

Am I missing anything important here? Are any one of these methods more widely used in a High mix, low volume shop environment?

In my experience with Horizontal milling work, we always used method 2, as it was a quick turn around job shop and creating highly repeatable setups for every job was just not practical.

Thanks!
 
#1 is the best way to do it. But like you say, the part needs to be set up the same every time. Which, unless you're a total hack as a tool maker, this isn't very hard to accomplish.

Making adjustments. If your tooling, programming, and set up are all in order, you shouldn't need to make any adjustments. Minor adjustments can easily be made in your cam, a bit of a pita.

If your machine has DFO, then your set up and adjustments become easy as pie.
 
If you have the advanced options, use them, hands down. If you don't, first ops are fine programmed to center of rotation, since the part will end up where you program it even if the stock location is a smidge off. Second ops can often be done in 3 axes, but for those that HAVE to be on the trunnion you can cut your workholding fresh on COR for each setup (soft jaws or pallet) if putting the old workholding on doesn't get you close enough. IMO that beats fudging as many offsets as you have orientations. Remember that if you work on one side and then flip over to the opposite, you'll double any offset errors, so picking up COR as accurately as possible is critical.
 
I don't see why would you use anything but #3 unless you are running production and machine is doing long long stretches of same part then #1 would make sense.

Picking up part anywhere on the table using probe and then letting control figure out everything else just makes total sense. Much less error prone and much greater flexibility. #1 requires you to know exact position of each part on the table and have that position be reflected in your CAM software. Which is easy when you are doing OP1. But once you flip it, what then? You get tied into the work-holding....

With #3 you flip it, pick your feature with the probe and away you go...
 
When I run bone plates it's 4 up done in one (tab snap off), so I run COR. No probing necessary, COR lives in G59 and never moves (unless I remove and replace the trunnion for some reason), so there's even less chance of error. Same for my first ops on other parts, never have to probe a thing, the offset's already there.

Also, running COR or with very small adjustments is the only way your toolpath verification can be valid. Being 1/4" off from where you verified could be disastrous.

Vericut FTW below:

IMG_20170627_153219.jpg
 
I prefer to use the control's 5-axis capabilities whenever possible (so option 3 I guess). Pick a single WCS zero, probe, and make parts. Picking up a WCS on a compound angle can also be done if you're using a sophisticated post processor like CAMplete; you can measure the difference between the real setup probe location versus where it would be with the table flat, and then transform the point in the software prior to posting.

I hated not having transform plane capability on the Brother Speedios for A-axis work. The M140 was even worse - we just used separate WCS for every feature plane. Fine for high production work but gigantic PITA for the low run stuff.
 
When I run bone plates it's 4 up done in one (tab snap off), so I run COR. No probing necessary, COR lives in G59 and never moves (unless I remove and replace the trunnion for some reason), so there's even less chance of error. Same for my first ops on other parts, never have to probe a thing, the offset's already there.

Also, running COR or with very small adjustments is the only way your toolpath verification can be valid. Being 1/4" off from where you verified could be disastrous.

Vericut FTW below:

View attachment 273682

Your cam is very arcahic, or you do not a have a proper simulation set up? I used to run a UMC750 with machine sim and I could position the part in my cam exactly like it was on the table. Offset 2" to the left of rotation, and/or 3" to front or back, etc. There is a (forget the exact name) way to position your stock on the table if you have 5 axis sim. Unless my toolpaths were going to be super close to limits or whatnot, I usually just put a scale on it to get me close. If I had a crash (usually between holder and table which is another reason to set up machine sim and use holder definitions for 5 ax) in the machine sim, I would go back and precisely measure my part/stock on the table and adjust it in cam to se if it was "true" or not...
 
I hated not having transform plane capability on the Brother Speedios for A-axis work. The M140 was even worse - we just used separate WCS for every feature plane. Fine for high production work but gigantic PITA for the low run stuff.


Ah! There is support for that, its Rotary Fixture Offsets. Its a hardware dongle on the machine to enable this feature. Kicker is there is absolutely no support in probing macros for this and documentation is lacking. Rotary Fixture offsets in my opinion is implemented backwards which in turn necessitates explicit new probing macros etc. which is just dumb.. But...

I did get this to work on my Speedio, but I had to write new probing macros for my Renishaw probe, new target probing macro for Fusion to use and also modify Fusion post-processor. However, now its working seamlessly. I cannot imagine doing it differently.
 
thank you for the replies. So as I understand using COR, a typical OP1 workflow would be as follows:

1) setup all the work holding and raw stock on the machine physically
2) Probe a corner of the stock as WCS datum
3) Compare probed point with machine COR
4) Translate the part in the CAM an equal distance from World origin as the probed point is from machine COR

Does that sound about right?
 
Ah! There is support for that, its Rotary Fixture Offsets. Its a hardware dongle on the machine to enable this feature. Kicker is there is absolutely no support in probing macros for this and documentation is lacking. Rotary Fixture offsets in my opinion is implemented backwards which in turn necessitates explicit new probing macros etc. which is just dumb.. But...

I did get this to work on my Speedio, but I had to write new probing macros for my Renishaw probe, new target probing macro for Fusion to use and also modify Fusion post-processor. However, now its working seamlessly. I cannot imagine doing it differently.

Funny, Yamazen here didn't seem to know about this. That includes the apps guy we poached from them at the old day job!
 
Question: If you are using Tool Center Point Control (or Haas's version of it), are you still doing inverse time feed rates?
 
In a FANUC using G43.4 (TCPC) you can specify G94 (FPM) and the controller does the calculations in the background (just like with G112/G12.1 polar interpolation).

Or at least that it how it was explained to me.
 
FPM is an incentive? Why is inverse time or DPM so bad? Tool should have same motion regardless.

Depends on control I think. When Mastercam output inverse for the UMC, it had a feed move on every line. Maybe a post problem, maybe a MCX problem, not sure, but I could see a control stuttering without enough block look ahead.
 
FPM is an incentive? Why is inverse time or DPM so bad? Tool should have same motion regardless.

Inverse time requires a feed rate on every line. Also, having feeddrates posted in IPM is a lot more operator friendly.

I'm just as CAM-happy as any 5 axis programmer, but I have found that reducing the burden put on the post has improved life dramatically. The controller is designed to handle that math; let it. I've also taken a lot of steps to avoid getting caught in the post-run-repost loop, as it can become such a nightmare when programs start getting in the 10mb+ range.

Dyanamic work offsets and TCP are no-brainers for any modern 5 axis application.
 
The biggest benefit to G94 over G93 that I see is being able to very quickly change feeds at the controller, which is often necessary when doing short run parts and you're feeling it out for the first several parts. SCREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE!!!!!

Mike1974 to flesh that out a bit the reason inverse time feed requires a feed for every line is that you are telling the controller in how much time it should make each move. The name "inverse time" is actually a description of the equation used to get those numbers. One minute divided by the time in minutes required to make the move.

So a 5 inch move at 5 inches per minute would be 1/(5/5)= F1
A 5 inch move at 50IPM would be 1/(5/50)= F10
A 5 inch move at 500IPM would be 1/(5/500) = F100

And so on.

This number is unitless since everything cancels out.

Someone check my math LOL.
 
From my view, G94 in multi-axis applications is a band-aid. On Haas, (not sure about fanucland) your programmed feedrate is only accurate at the distances you specify in settings 34 & 79, 4th & 5th axis diameter.

Maybe Fanuc or other controls handle G94 differently in multi-axis, but to me on my Haas machines, that's just about useless since not only my parts vary in size, but most of the time any multi-axis milling is not limited to one specific area or diameter on a part.

Unless your other control is more capable than Haas, or everything in your program is at the same radial distance from rotary center? Or maybe you just don't care if the feedrates are not correct? I'll stick to G93.


The biggest benefit to G94 over G93 that I see is being able to very quickly change feeds at the controller, which is often necessary when doing short run parts and you're feeling it out for the first several parts. SCREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE!!!!!

Mike1974 to flesh that out a bit the reason inverse time feed requires a feed for every line is that you are telling the controller in how much time it should make each move. The name "inverse time" is actually a description of the equation used to get those numbers. One minute divided by the time in minutes required to make the move.

So a 5 inch move at 5 inches per minute would be 1/(5/5)= F1
A 5 inch move at 50IPM would be 1/(5/50)= F10
A 5 inch move at 500IPM would be 1/(5/500) = F100

And so on.

This number is unitless since everything cancels out.

Someone check my math LOL.

Yep, spot on, Rick

I prefer to just use the overrides, the re-post the program, if needed.
 








 
Back
Top