INTELLIGENT WORK FORUMS
FOR ENGINEERING PROFESSIONALS

Log In

Come Join Us!

Are you an
Engineering professional?
Join Eng-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

*Eng-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Jobs

Machine programming to account for thermal expansion

Machine programming to account for thermal expansion

(OP)
I tried to search and find previous topics, but nothing that answered my issue came up. If you know of a thread, I'd be happy to know of it.

Goal: to be able to send machine programs to the machinists/machines that allow for coordinate variations to accommodate expected thermal expansion of the part. I have a proposed solution I would like feedback or alternate ideas to, if you please.

Problem:
1- Our inspection is to hold the room to 68 +/_ 1 degrees F. Our shop, while air conditioned and heated, may still fluctuate up to 20 degrees depending on environmental factors, if shipping has to have the roll-up doors open for extensive periods of time, etc.

2- Parts over 12" in length with tight tolerances for locations of features can often be hard to fight into tolerance when temperature differences get excessive.

3- With literally-written feature coordinate values, it does not allow for a machinist to /move/ holes or other features in any vector to accommodate expected fluctuations.

My Proposal: I have suggested to our programming department and to our Ops manager that during engineering review prior to production, I supply a "0.000x in per 10d F expected difference" or some such verbiage, and programming would insert a machine-variable rather than a coordinate value for such variables. I'm really only talking about hole locations with positional tolerances of .003 or less. On some parts, .003 (so, .0015 in any planar vector from nominal) can get shot to hell by .004 thermal expansion over 30" relative distance. I have programmed and set up HAAS machines where I was able to create semi-parametric programs based upon variable definitions. We do not have HAAS machines or controllers here, but rather the affected machines would be Okuma and Hurco VMCs. Hurco is it's own animal, but not a problem.

To me, this should be something that is always accounted for under normal circumstances as precision machinists, however this is my first job where our machinists are fed programs 100% and do not do any programming or modifying 'at the machine' so I must shift my normal expectations.

I would love to hear how others have solved this issue in your specific contexts. Thank you!

_________________________________________
NX8.0, Solidworks 2014, AutoCAD LT, Autocad Plant 3D 2013, Enovia DMUv5

RE: Machine programming to account for thermal expansion

Go backwards.

You want your hole tolerance to stay within 0.003, right?
OK - > What metal? Then what the correct expansion coefficient for that metal, how much does that metal heat (locally and in total between your datum and the spot being machined. (That's not easy to figure out! A local spot will heat up as a hole is drilled or the mill cuts a swath, but then the area away from the milling head cools back towards room average.

Then, what delta T over what distance of metal uniformly heated - IF they are uniformly heated at all! - will create a movement greater than 0.003.

Your part may "bend" as well, heat in one area cooling back to room temperature further away so the part doesn't stay straight and stiff.

Using any cooling fluid? Or are you cutting with air only? What happens if you increase air flow?

If on a lathe, you're spinning around a center, but the heat tends to "stay" in one radius and axial position, only changing slowly. On the other hand, the delta T will be over a smaller radius from the normal at the centerline.

Coming back to your original question: Yes, I had a interference fit part machined per our latest measurement on a large lathe. It arrived at the job site still hot to the touch from machining, and obviously it cooled over the time it spent in the truck being shipped. SO, what temperature did it reach on the lathe when it was measured? What temperature was it when it was cut?

RE: Machine programming to account for thermal expansion

It would be more straightforward and defensible to upgrade the shop's air conditioning to reduce the deadband, and to put up a thermal barrier between the shop and any department with its own door.

At the very least, you could regulate the temperature of the common coolant supply.

Mike Halloran
Pembroke Pines, FL, USA

RE: Machine programming to account for thermal expansion

(OP)
A better regulated environment control is my #1 suggestion. It's the most common, that's for sure.

As it is right now, ambient temperature, depending on time of day, time of year, and not even starting to count coolant temperature or the act of cutting yet... we can see a 15 degree difference, easily.

I know this would never be an exact science because of some of the factors racookpe1978 mentions. However, I believe increases have to be made to get it into a 'better window' for success. We run lots of small quantity part requirements and thus one scrapped part can be 10-100% of the parts on the order, sometimes.

I just like to bring in a couple of "Plan B" solutions when I bring a problem to management, in case we don't see eye-to-eye on Plan A (environmental controls)

If nothing else, there is a morale and creature-comfort benefit for the machinists and other workers with better humidity and temperature control in the shop. It is a value.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

It has got to start by finding - by actually measuring! - the hottest spots on the machined parts AND how long those hot spots are at what temperature AND where those hot spots are on the final parts and its reference point.
A "hot spot" that cools rapidly and locally back towards ambient will not affect the total dimension of the final product measured at ambient.
A hot spot that is very close to the reference datum won't move very far from the reference datum, but a hot spot between the datum and the next machining point will move.
Coolant flow will help.

RE: Machine programming to account for thermal expansion

(OP)
The measuring, fact finding, testing, and verification is complete. At this point I am addressing a specific problem, and am anticipating the possibility that higher-ups may decide it's "impractical" to increase our environmental controls, and attempting to plan for alternate ways to "work with what I have" in order to increase quality, productivity, and competence in our manufacturing.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

JNieman, I take it you've ruled out the heating of the parts from machining as being the major cause and are sure it's due to the overall environment?

How are the parts stored before being put on the machine & how long are they on the machine? I ask because maybe they can be conditioned to the 68 +/_ 1 degrees F before being put on the machine? I suspect they're on the machine long enough this wont' help but throwing it out there just in case.

Posting guidelines FAQ731-376: Eng-Tips.com Forum Policies http://eng-tips.com/market.cfm? (probably not aimed specifically at you)
What is Engineering anyway: FAQ1088-1484: In layman terms, what is "engineering"?

RE: Machine programming to account for thermal expansion

(OP)
KENAT,

I have verified that the heating is not due to machining. The parts have been taken from inspection, where features have been measured as too-distant and taken to the machine they were cut on - and also a second machine. The first machine is a known-reliable Hurco VMC, and the second machine is a brand new, 2 month old, recently calibrated/trued/leveled Okuma VMC. On the VMCs, zero was set on the origin feature, and then an indicator was used to sweep in on the second hole to read distance. Both VMCs agreed with eachother within .0001" - all inspection methods agreed with eachother comparably in the quality room, as well.

This was verified days after the parts were machined. Additionally, when I ran the numbers, guessing at a 10 degree difference, the expected thermal expansion of the one part at hand was approx .0039, and the machinist was reporting a .0043 discrepancy between the VMCs int he shop and CMMs after it cooled. There are times we are held to a True Position of .001 across 20+ inches, so sometimes it gets dicey.

I have not thought about "safe storage" until machining - that's an idea worth investigating. Sometimes the setups can take 8 hours or more, depending on the part, the complexity of required fixturing and difficulty in alignment, and being 'pulled away' at times to help other machinists or for meetings/hot-jobs/emergencies, so it may be a challenge for some instances.

I suggested the idea of using cooled-coolant, to try and regulate the part in the machine better, but I am less experienced with that idea than others, so I'm relying on their 'testimony' to verify the potential of that plan.

Otherwise, the best we can do is mill/drill a hole undersized and send the part to inspection, observe the deviation after it normalizes, then tell the machinist to offset the hole that amount in his machine and deliberately machine the hole off-location in his machine so that it moves back in tolerance. I just really hate that process because of the wasted time. Like the infomercials exclaim "THERE'S GOT TO BE A BETTER WAY!" ;)

Thank you all for your contributions thus far.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

(OP)
No, right now we do not have enough staff to run a full night shift. We have a few people that run nights, but right now unfortunately our machinists work a lot of overtime. They're on a reprieve from overtime right now, so they aren't worked to the bone, but often times it's the regular shift working heavy overtime.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

I hate to put it this bluntly, but . . . Newsflash, if you're not environmentally controlled, you're simply not a precision shop. If you are expected to hold tolerances which can be exceeded simply by the difference from ambient shop temp to metrology temp, you're chasing ghosts.

30 years ago I toured "Nameless Large Corporation", a huge defense contractor then involved in the manufacturer of enormous aluminum plates in which electronic sensors were later embedded as parts of ship-board radar, ecm, or some other such black art. If memory serves, the machinists were required to hold +/- 0.030 inch on slot locations across the entirety of 18 foot by 30 foot piece of 2 inch thick aluminum plate. A very tall order needless to say, but apparently necessary to the accuracy of data output from those sensors. There were umpteen thousand slots, each slightly larger than a jelly bean, and these plates spent days on the machine. It was a 24-7 flood of temperature controlled coolant flood that insured accuracy, and the shop was environmentally controlled, as well.

It is better to have enough ideas for some of them to be wrong, than to be always right by having no ideas at all.

RE: Machine programming to account for thermal expansion

(OP)
Yes, another "big boy" alternative is to employ laser trackers with local tool-mounted thermometers, using software that accounts for the thermal expansion variables and scales the as-read dimensions as necessary so that you're not concerned with thermal expansion. However that's a price tag out of my range.

There are "the best ways" of doing something, and there are the ways we get creative and find other, cheaper means. I appreciate the opinion, but there is only so much I can control.

Rather than say "Well if you're not going to get the shop under better control, I give up, and we have to stop bidding jobs that aren't easy," because that's a cowardly and defeatist attitude that will never exist in my personality.

There is only the goal.

"Semper Gumby"

(I'm not a marine, just a guy that recognizes good ideas)

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

JNieman, understood. Suffice it to say that I worked hard to earn my moniker over the last 40 odd years because sometimes the bean counters and suits need to hear brutal honesty, and there are many people in the workforce very averse to the ensuing fallout. No offense to you if you belong to either of the previously mentioned categories, but cowardly and defeatist can be taken several ways. By the way, I am in management, but spent a couple of decades on the shop floor, as well as my own CNC shop, so I can appreciate the perspective looking both ways.

As you said, this is simply my opinion, given without any form of malice or expectation. There are certainly several ways to accomplish tolerance control in less than desirable environments, ideal or not. Complex systems merely introduce more potential failure points and require a higher level of attention and skill at every step of implementation and execution. Bottom line, management ultimately needs to allow you the adequate tools to do the job, whatever tools they may be, or it becomes a fools errand.

Good luck on the project, it will be interesting to hear what you ultimately implement, I hope you come back and share it with us!

It is better to have enough ideas for some of them to be wrong, than to be always right by having no ideas at all.

RE: Machine programming to account for thermal expansion

(OP)
Thanks for the guidance. I will HOPEFULLY report back that they decided to upgrade the environmental controls! ;) If not, I'll let you know what I did, and what the results are.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

There are other sources of heat in machine tools including the lubrication of the machine. Inaccuracy also occur in yaw and pitch of the machine table as it moves from position to position. Axis squareness also impacts accuracy. I have experience where an inductosyn scale was mounted on a VMC to improve location accuracy. The CMM which they used to measure the parts wasn't the normal 10 times accuracy of the part tolerance and the machines were not temperature controlled. The process did not meet the actual print tolerance but made functional parts which was a gear case and we were trying to hold tight dowel pin locations.

If you really need to have extreme accuracy then go purchase a jig bore machine and hold the tolerances all year long. Get the right tool if you want the ultimate precision. The usual problem is they want ulitmate precision on a shoe string budget.

Bill

RE: Machine programming to account for thermal expansion

(OP)
Well a Jig Borer, while it would really fun to have and I think it could be useful at times, not to mention, I'd love to use one personally... wouldn't suit us too well.

What we're looking at are either coordinate +/_ tolerances of tooling balls, true position tolerances of holes. Sometimes these are on a flat plate... sometimes they are swiss cheesed into steel stamping die blocks or forging blocks. I brought up a pretty basic example for conversations sake, but this is a broader issue I'm wanting to address here.

And just to be clear.. we are already making such parts to the tolerances required and doing so on-time :) I'm just hoping to make it easier and faster to do with a little more planning and thinking before-hand.

Right now a common way to "plan for" such problems is that a machinist will mill a hole deliberately undersized, complete the rest of the part, let it normalize in the quality room, get the inspection report, see how far from nominal his hole center is, and just re-machine it that many thousandths/tenths in the appropriate vector back out on the shop floor. It's served us well so far - I just would like to find a way to nail it the first time, and eliminate the times we /don't/ plan for it in such a manner and get a surprise when quality tells a machinist his part is bad.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

Can you create a macro that takes in the user entered part number and shop temperature? The macro then adds/subtracts whatever is needed from the program's offsets or commanded movements.

RE: Machine programming to account for thermal expansion

(OP)
That's the gist of the 'altering the program' solution. The specifics of HOW it's done would be hashed out between programming, me, and a lead machinist or two for input, but whether it's using a variable-defined zero, and letting them compute the difference, or writing a formula for each feature and having them enter the temp... those are options I'm indifferent upon which I'm happy letting programming/machinists dictate to me on their preference. It's more reliant upon their expertise of knowing the feasibility of the post processors and the Okuma/Fanuc controllers we have out there on the floor. And they may bring up a completely different Option C if we decide we need to make "contextual programs" so to speak.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

RE: Machine programming to account for thermal expansion

JNieman,
Brian E22 hit on the solution I would use. If you have good expansion data for your machines, macros are the way to go. it could be as easy as using a variable (your expansion rate) as a multiplier called up by your "X" move. the variable definition would be at the top of the program and easily edited before each cycle start. who does your programs? and how are the created? your old reliable HURCO may not support macros, I'd be surprised if the OKUMA didn't.

RE: Machine programming to account for thermal expansion

(OP)
We use NX8 to create our programs for all the Okumas. We use it to create some programs for the Hurcos, but the Hurcos are mostly for one-offs and at-the-machine programming from prints. There's also the old option to modify an NX generated program to manually write in some alterations or encase a cycle inside a macro callout. This hasn't gone much further, unfortunately, as we haven't come across the issue yet, and TPTB have been discussing better solutions for climate control (finally) though they drag their feet in a fiscally cautious manner. Eliminating some of the "leaving the bay door open for 2 hours" situations has been the first to occur.

_________________________________________
NX8.0, Solidworks 2014, AutoCAD, Enovia V5

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Eng-Tips Forums free from inappropriate posts.
The Eng-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Eng-Tips forums is a member-only feature.

Click Here to join Eng-Tips and talk with other members!


Resources


Close Box

Join Eng-Tips® Today!

Join your peers on the Internet's largest technical engineering professional community.
It's easy to join and it's free.

Here's Why Members Love Eng-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close