What's new
What's new

TNR Comp on G01 Round Movements

Kratos

Plastic
Joined
Mar 3, 2022
I'm a bit of a newbie so my question might seem a little dumb.

I think I understand the concept of Tool Nose Radius compensation (G40, G41, G42) and how it relates to G02 and G03 circular movements. However, thanks to this site, I recently learned that my Haas Lathe has the capability of making a chamfered and rounded corners using G01.

My question is, do I need to activate TNS Comp if I'm making a curve using G01?

I've tried looking online to find an answer, but it seems like the topic of TNR Comp only comes up when discussing G02 and G03 movements. Any help is greatly appreciated!!
 
You don't "need" to activate G42/G41 to do it, BUT - you will get better results if you do.

When I taught the classes at a major MTB I always taught that finish passes were done with TNR activated, even if you're not generating wild curves and arcs, as you will get better, more accurate angles, corner chamfer and corner radii thann if you don't use it. Just make sure you set your TNR data in the offset page correctly (you'd be surprised how many folk don't know how to do this) and the part will come out great.

Usually, on lathe parts, I leave .008 to .012 on diameters and .003 to .008 on faces for finish passes.
 
Personal preference and since it’s easy. I always have nose comp on when turning a diameter. Rougher will leave a consistent amount on the stock and chamfers/rads will be correct. Do alot of one op parts that have a backside chamfer done with the parting tool that has a 8 thou rad putting a 5 thou chamfer on the back.
 
When I taught the classes at a major MTB I always taught that finish passes were done with TNR activated, even if you're not generating wild curves and arcs, as you will get better, more accurate angles, corner chamfer and corner radii than if you don't use it. Just make sure you set your TNR data in the offset page correctly (you'd be surprised how many folk don't know how to do this) and the part will come out great.
So you are part of the problem. This is totally, categorically false. Program the tool path correctly, from the center of the radius, and it will come out exactly (within the limits of following error, applicable in all cases) to the contours programmed.

If you don't understand how to do this, then of course your profiles will be off. But tnr comp is apparently not reliable either, from remarks made here by various people discussing various controls.

A correctly-written toolpath without that stupid cutter comp, on the other hand, will always be correct, on any control.

Usually, on lathe parts, I leave .008 to .012 on diameters and .003 to .008 on faces for finish passes.
This is also perhaps bad advice. The amount of finish material varies greatly depending on material, cutter geometry, and possibly the machine itself. A finish pass with positive rake tools on 9310 will be quite different from negative rake on 8620.

btw, G01 makes straight lines. Maybe there's some Fanuc code that will create curves with a G1 but seems real unlikely. And irresponsible, but that never bothered Fanuc.
 
btw, G01 makes straight lines. Maybe there's some Fanuc code that will create curves with a G1 but seems real unlikely. And irresponsible, but that never bothered Fanuc.

G1 IIRC can make angles, radii, and chamfers on some FANUC controls if you pay for the option. It's a standard option on my Mits controllers.

G1W.050,A45.0 will give you a .050" 45° chamfer. Can also use R or C.
 
G1 IIRC can make angles, radii, and chamfers on some FANUC controls if you pay for the option. It's a standard option on my Mits controllers.

G1W.050,A45.0 will give you a .050" 45° chamfer. Can also use R or C.

Many machines can do automatic corner rounding in G1 mode. I think that is what you are referring to. The control is filing in the blanks to create the corner radius with circular interpolation. So technically not G1.

Even though I have a full understanding of tool centerline and tool edge programming, by hand and CAM, with and without using TRC, I usually use TRC. IMHO there are benefits to be had. Don't hesitate to use it if you want. Just be aware it is not magic and there is a learning curve.
 
Many machines can do automatic corner rounding in G1 mode. I think that is what you are referring to. The control is filing in the blanks to create the corner radius with circular interpolation. So technically not G1.

Even though I have a full understanding of tool centerline and tool edge programming, by hand and CAM, with and without using TRC, I usually use TRC. IMHO there are benefits to be had. Don't hesitate to use it if you want. Just be aware it is not magic and there is a learning curve.

Yes they can. Something others don't understand. In G01 mode you can use C,K,R to generate corner rounding and chamfer. I do this with TNR all the time with spectacular results. On my Okuma it's G75/G76 but works the same. Many Fanuc/Mits, and Okuma CNC's have angle functions. I know my OSP-5000 is equipped with "Auto Any Angle" option and a simple "A" word and a target point on either X or Z will work well.
 
So you are part of the problem. This is totally, categorically false. Program the tool path correctly, from the center of the radius, and it will come out exactly (within the limits of following error, applicable in all cases) to the contours programmed.

Quite true, in fact. If TNR was so bad, it wouldn't have survived. Even if the interpolated path is correctly written, the insert/tool nose radius can still give bad results.

If you don't understand how to do this, then of course your profiles will be off. But tnr comp is apparently not reliable either, from remarks made here by various people discussing various controls.

A correctly-written toolpath without that stupid cutter comp, on the other hand, will always be correct, on any control.

I will respectfully disagree. TNR will generate proper compensated moves if set correctly giving excellent results. You can generate all the "correct" tool path you want, but the nose radius on the insert can still give bad results. Sure you can comp for it in your CAM software. That's merely one additional way of doing it. Certainly not the "only" way.



This is also perhaps bad advice. The amount of finish material varies greatly depending on material, cutter geometry, and possibly the machine itself. A finish pass with positive rake tools on 9310 will be quite different from negative rake on 8620.

Again, I will respectfully disagree. While the amounts are certainly not etched in stone, nor did I suggest or intone that in any way, they certainly have worked well in the vast number of turning parts I've done in the over 50 years in the business.

btw, G01 makes straight lines. Maybe there's some Fanuc code that will create curves with a G1 but seems real unlikely. And irresponsible, but that never bothered Fanuc.

Yes it does. G01 can also generate quite a few other things if small segments are "pieced" together - not generally done on lathes however, and in G01 mode, many Fanuc, Mits, and other controls can and do generate corner rounding, chamfers, and angles.
 
But tnr comp is apparently not reliable either when employed by people who have no fucking business programming machinetools.
A correctly-written toolpath will always be done with TNR comp, as the program will always be correct, on any control and any tool radius if properly defined in the control.

There, I've fixed it!
 
There, I've fixed it!
Yeah yeah yeah that's cute. Also wrong :D

We've had a couple hundred years since the industrial revolution to figure out that standards are good. Sure, you can make whatever arfing thread you want and it will work but in the long run, sticking to standards works better.

Same is true for controls. Yup, you can make X into L and Z into Q and it will still work. But that's not really longterm smart. Down the road somewhere it's going to create grief.

Same deal for using linear for all kinds of things it's not meant to be. Yeah, it "works", goody goody but go to a different machine, a different control, bring in a new guy who isn't deluded, try to have anyone look at a problem in the code, any one of a hundred things that normal people do, the distorted non-standard code will screw everything up.

About saying "if the tool is wrong, the profile will be wrong" that's silly. Put the wrong tool into any machine under any programming system and the part will come out wrong. In fact you'll be lucky if it doesn't break anything.

Like RISC vs CISC, RISC was better*. Doing things at the lowest possible level of complexity ends up faster and more foolproof and better for programmers.

*400 mhz MIPS was as fast as 2 ghz Intel - Intel had to add risc instructions to their processors to stay even with the better product. Too bad about wintel, really, and something of the same thing has happened in controls. Weirdass shit like G01 for radiuses doesn't help anyone.

And Rizz, code written the correct way does not screw up angles and contours. Ever. If it does, you are writing it wrong. It's the exact toolpath you need to follow to create the described geometry, not a bunch of wishful thinking that you "hope" the control will figure out correctly. A previous thread on this exposed the fact that quite a few controls do not calculate the geometry correctly, they just fake it. Wonderful.
 
And Rizz, code written the correct way does not screw up angles and contours. Ever. If it does, you are writing it wrong.

Correct. Never said anything to the contrary.


It's the exact toolpath you need to follow to create the described geometry, not a bunch of wishful thinking that you "hope" the control will figure out correctly. A previous thread on this exposed the fact that quite a few controls do not calculate the geometry correctly, they just fake it. Wonderful.

Correct again. Never said anything to the contrary on that, either. In my years in this business none of my machines have spit out code or path that was anything other than exactly what I told them to. Ever. Not once.

Certainly more than one way to do things. Naturally. But I've yet to have a problem using it. Ever.
 
I've yet to have a problem using it. Ever.
I'm happy for you, but that's not the right way to teach people. They should understand the root principles before they try pulling weird crap.

That's why there's so many people here asking questions about tnr, because they don't have a clue how it works. Ask them to describe what the tool is really doing when you ask for a .050" wide 45* chamfer and you'll get a deer in the headlights look. Not good.

It's like using e e cummings to teach esl. Bad idea. You can't break the rules safely until you know what they are.

And by the way, according to some people here who should know, several models of Fanuc do not create the correct geometry when doing operations like that. I was surprised.
 
I'm happy for you, but that's not the right way to teach people. They should understand the root principles before they try pulling weird crap.

That's why there's so many people here asking questions about tnr, because they don't have a clue how it works. Ask them to describe what the tool is really doing when you ask for a .050" wide 45* chamfer and you'll get a deer in the headlights look. Not good.

It's like using e e cummings to teach esl. Bad idea. You can't break the rules safely until you know what they are.

And by the way, according to some people here who should know, several models of Fanuc do not create the correct geometry when doing operations like that. I was surprised.

I will gladly listen to you preach about G41/G42, when you can answer this question...

When is the last time that you cut a part, from metal, using an CNC mill or lathe? From code that you wrote yourself, loaded into the control yourself, and then proceeded to prove, run, refine & perfect, yourself...

My guess is, it's been a while...
 
I will gladly listen to you preach about G41/G42, when you can answer this question...

When is the last time that you cut a part, from metal, using an CNC mill or lathe? From code that you wrote yourself, loaded into the control yourself, and then proceeded to prove, run, refine & perfect, yourself...

My guess is, it's been a while...
Maybe a year and a half, up in shijiazhuang. (Say that five times fast) Virus has put a hold on a lot of stuff.

But most of that trip was involved with a seven axis gear grinder ... the little mill project was more of a helpful-cooperation so you're right, it wasn't me exclusively pushing the buttons.

how about yerself, hippy ? Can you write a lathe program by yourself, none of this crappy fanuc mumbo-jumbo involved ?

Besides which, you are projecting. Rizz said "turning" and that's what I was talking about. I believe he is wrong. Fuck tnr on a lathe, it is more trouble than it is worth.
 
I'm a bit of a newbie so my question might seem a little dumb.

I think I understand the concept of Tool Nose Radius compensation (G40, G41, G42) and how it relates to G02 and G03 circular movements. However, thanks to this site, I recently learned that my Haas Lathe has the capability of making a chamfered and rounded corners using G01.

My question is, do I need to activate TNS Comp if I'm making a curve using G01?

I've tried looking online to find an answer, but it seems like the topic of TNR Comp only comes up when discussing G02 and G03 movements. Any help is greatly appreciated!!

So, to answer your question, G41/G42 should be used regardless of G1/G2/G3 moves. It serves to keep the cutter from over/under cutting the toolpath, regardless of G1/G2/G3.

On a lathe, G41/G42 is used to compensate the tool's position to ensure that the tool does not over/under cut angles, and radii.

On a mill, G41/G42 is used so that the tool is moved off-center, and so that the edge of the tool* - not the center* - is being directed along the programmed tool path. This means that X/Y are compensated so that any shape is cut correctly.



* There is debate on CNC mills on how to use G41/G42.

Option 1 is to input half the tool's diameter into the tool-offset page. Done this way, you program the toolpath's X/Y coordinates exactly to print-dimensions. The control then moves the tool over exactly half it's diameter, and should generate the correct profile. This method enjoys being able to change cutters - Go from 1/2" to 3/8" to 1/4" seamlessly - The only needed change is to adjust the cutter's radius value in the tool offset page.

Option 2 is to input a "0" in the tool-offset page, but still use G41/G42 in the program. Then, the value in the tool-offset page is only adjusted in minor increments, to fine-tune feature sizes in the program. Typically +/-.003" or less increments, and only as needed to make the part's features to the correct size.

Option 2 loses the ability to easily change cutter diameters, and often requires the user to re-write the toolpath if they need to use a cutter of a different size. This is usually not a problem for people using CAM, as they can correct the tool being used & re-post fairly easily.




On lathes, G41/G42 is most useful, in the case that you need to adjust the insert being used - Going from a 1/32" nose-radius insert, to a 1/64" radius for instance. If you used G41/G42, and programmed the toolpath via the print dimensions, then this is no big deal to change the inserts as needed, and then modify the tool's nose radius in the tool-offset page.

Compensating program numbers to avoid G41/G42, and then once again to adjust for different tool nose radii without using CAM is dangerously inviting a scrap part, or worse, a crash...
 
how about yerself, hippy ? Can you write a lathe program by yourself, none of this crappy fanuc mumbo-jumbo involved ?

Yesterday. And nearly everyday before that for the past 15ish years.

Not *really* trying to be a dick. But your advise is terribly antiquated, and unhelpful for someone learning what G41/G42 is, and how to use it.



I see that you added to your post. Yes, I can & do write programs all the time. Seldom ever using CAM. I find the automatic cornering/chamfering codes to be a little confusing honestly, so I eschew them in favor of adding individual lines in the program for each radii/chamfer/diameter/face. This allows you to fine-tune the resolution of these smaller features - using dedicated feedrates for diameters, faces, radii, chamfers, etc. Makes for a much nicer looking & functioning part.

On the mills, G-code, subs, macros & loops make it pretty efficient.


And I'm half the age required to be a hippy...
 
Yesterday. And nearly everyday before that for the past 15ish years.

Not *really* trying to be a dick. But your advise is terribly antiquated, and unhelpful for someone learning what G41/G42 is, and how to use it.

And I'm half the age required to be a hippy...
So I've got about three times the program-writing experience as yourself and am thoroughly convinced that tnr is shit. Big deal on the number of years but you brought it up.

The only reason to ever use tnr was that geometry was a pain in the ass to calculate back when you had to use trig tables and a calculator, but with modern cad programs it's a picnic. So if you can make a ten times better program, faster, by doing it the correct way, why would I want to use a "modern" method that's wrong and stupid and makes a worse program ?

Oh yeah, it's fanuc, they are god. Whoop-dee-fucking-doo.

You are both wrong. Even if a person decides they like tool nose radius, they should understand what is going on beneath the surface first. Otherwise they are never going to know what is really happening, like asking why G01 isn't doing their radius the way they want. wtf, over ?
 
The only reason to ever use tnr was that geometry was a pain in the ass to calculate back when you had to use trig tables and a calculator, but with modern cad programs it's a picnic. So if you can make a ten times better program, faster, by doing it the correct way, why would I want to use a "modern" method that's wrong and stupid and makes a worse program ?

Quite honestly, you're the only person that I've ever seen advocate against using G41/G42. And lazy CAM jockeys, but those are few & far between.

You are clearly superior in skills. No shame there from this end.

However, I stand by that your advice does nothing to help the young gentleman coming here to ask for help. But it sure has started an argument. (Not really, but you know what I mean...)
 
Quite honestly, you're the only person that I've ever seen advocate against using G41/G42.
Due to age, I guess. If you've done both ways and have thousands of hours driving a lathe, you want it to do what you want it to do. If you learned from Mike Lynch after all the good controls and smart guys (ask Bob Drewrie how to program something, uh-oh, over my head) were gone, then you don't know any better.

Kids can do whatever they want, but this way of being chained to tnr because you don't know any better is pessimum, in my experience.

btw, I'm mostly agin it on a lathe, milling is almost always a different situation. Milling != turning, in real life.

(btw, just look at the thread title for a Reality Moment®. "G01 round" ? put a bag over that !)
 
Kids can do whatever they want, but this way of being chained to tnr because you don't know any better is pessimum, in my experience.

I have comp'd programs to avoid G41/G42. Mills & lathes. But it requires a deeper level of understanding & requirements, that a new progammer - the Original Poster in our case today - should not try to take on.

Let the guy start making parts. Then, later on, we can debate this stuff.









You're still wrong BTW... ;)
 








 
Back
Top