G41/G42 Tool Paths - Actual Vs. Programmed | Practical Machinist
Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
Log in Register What's newSearch
Everywhere Threads This forum This thread Search titles only Search Advanced search… Menu Log in Register What's newSearch
Everywhere Threads This forum This thread Search titles only Search Advanced search…- Forums New posts Search forums
- What's new Featured content New posts New media New media comments New resources New profile posts Latest activity
- Media New media New comments Search media
- New posts
- Search forums
- Forums
- Manufacturing Today
- CNC Machining
- Thread starter Thread starter pk_davidson
- Start date Start date Aug 16, 2004
- Replies Replies 16
- Views Views 11,633
pk_davidson
Guest
Argh: Trying to understand cutter compensation. I'm sure each machine control is possibly different but can someone help me understand why the following code acts as it does ? all values are in inches, and yes, I've skipped the opening block stuff but it's G90, etc... and i'm starting from a 0,0 location. G00 G40 X-2.0Y-2.0 G41 H1 (H1=0.25") X0,Y0 ==> leaves cutter at (-.1768, .1768) Now I understand that the ending vector pointing at (-.1768, .1768) has an absolute length of 0.25, but ending at (.25,0) would have the same length. Is this "normal" behaviour ? I mean, I can see how in a vector diagram that the ending vector position of (-.1768, .1768) is perpindicular to programmed tool path. And so, if I'm understanding this, this is what is required by the controller. Therefore, in order to program with cutter compensation (G41/G42) you really need to diagram out your approach paths to make sure you're getting where you expect to end up ? Thnx as usual, frustrating but fun stuff. (yea, I did study a lot of math (MS) so I admit a bias to understanding tool paths at the calculation/vector level) Ddamonfg
Titanium
Joined Apr 23, 2003 Location Portland, ME, USA G41 Hx? My machines use G41 Dxx, but G43 uses Hxx (height comp). Anyway, I'll try and explain your question, but it may help to draw it out on paper. Rember that G41 means "cutter goes to the left of the line". What you did was go to X-2 Y-2 no problem. Then you turned on the comp. As far as I know, *most* CNCs wont move on this command. The next move , G0 X0Y0 enables the comp. The first move with comp is always a little special, but more on that later. The tool has moved in a line such that the right side of the cutter (G41, remeber) is now at 0,0. You will always be within the radius (.25 here) of the destination location. Depending on where you came from will determine where it stops. For example, if your code was G0 X-2 Y0 G41 H1 G0 X0 the tool position would then be X0,Y0.25. As to the special nature of the first move with comp, it can be a little elusive or a downright pain in the arse. On the first move, "entry move", the cutter starts where you tell it to start (-2,-2 here) then it ends somewhere that you don't really specify. Often, it is advisable to make a short move right after G41/G42 to get the cutter where you'd expect it to be. It can be fun when doing entry moves on circles, some processors are really uptight about that. Does that help any? Ppk_davidson
Guest
thnx damonfg: the one thing I don't understand, and yet sort of follow is the statement: "The tool has moved in a line such that the right side of the cutter (G41, remeber) is now at 0,0." I guess what my hang up here is what is the "right side of the cutter." In this case, there is an edge of the cutter that is exactly touching 0,0, and, I guess it is the edge that is "right" of the original tool location. If that makes any sense. So, I think I follow this. It certainly makes sense to make a move right after turning on G41/G42. And it seems to make sense to make that a linear move in only one axis, depending on what you're trying to do. I'm a bit stuck up on cutting a rectangle, but reply here later with some sample code. I think in my case I have to use a corner compensation (G43 for Fanuc 3M). thnx DDave K
Diamond
Joined Mar 21, 2004 Location Waukesha, WI As a general rule of thumb that works every time, when climb cutting, use g41. When conventional cutting, use g42. This is true when cutting on the outside of a part, and the inside of a part. Whether your right or left of the line works like this. Imagine yourself as the cutter. If you were climb cutting along the wall of a piece of stock, you (the cutter) are to the left of that wall. Get it? Usually, cutter comp. is turned on and off while making a move. Code would look like this. G00 X0 Y.6 G1 G41 Y0 F10. G1 X10. G1 G41 Y.6 G40. It first moves close to the part at X0 Y.6 Next move turns on cutter comp. while moving to Y0. (IF you have a 1/2 inch cutter, Y will actually be at .25 because of the cutter comp.) Next mills 10 inches down the part. Last, moves back off the part while turning off cutter comp. Hope this helps. Ttoolmakerjim
Titanium
Joined Jun 21, 2004 Location titusville fl. usa paul, look at your cutter path from this point of view. for example you want to cut a rectangle 4" x 6". assuming you are using left front for xy0 stage your cutter to the left of zero in x and below zero in y make the distance greater than the cutter dia. position z where you want it, then. g41x0d01f10. y4. x6. y0 x-.5 g40x-.7y-.5 go z1. this will climb mill around the outside of the part. the key to cutter comp is realizing where you are standing and realizing where you want to go. im still trying to fax the corner round phones still cant get tout from the shop SSIM
Titanium
Joined Feb 19, 2004 Location Staten Island NewYork USA I try to think of the comp move as in reation ship of travel. If you draw a line coming from you going away from you. Y-5. to Y+5. for example. A comp move using G41 would put the endmill on the left side of the line. A G42 comp would put the mill on the right side of the line. It is the direction of travel that make the side obvious. position yourself behind the tool travel and pick a side, left G41, right G42. or do a G40 down the middle.bspooh
Cast Iron
Joined Jun 6, 2002 Location Salt Lake City, Utah USA I personally have been programming for 10 years, and I have yet to use the g4x commands..It always confused me, so I program using centerline of cutter and then i just take in consideration the diameter of the cutter..This makes it easier for me... brentmrainey
Stainless
Joined Jul 25, 2004 Location Spartanburg, South Carolina ..This makes it easier for me... Until you have to use a reground end mill or hold a close tolerance. [This message has been edited by mrainey (edited 08-17-2004).]bspooh
Cast Iron
Joined Jun 6, 2002 Location Salt Lake City, Utah USA mrainey, I don't use reground endmills..When they are worn out, I throw them away...Might not be the most economical, but thats how I do it.. What does holding a close tolerance have to do with cutter comepensation?? Numbers are numbers.. Sometimes my programs might need a little extra time in "editing", but it still goes quick for me.. I started programming with a kind of a form of conversational programming, it wasn't g-code or true conversational..I had to program with centerlines, and I got used to it..some habits are hard to break... By the way, I am a manufacturer of hydraulic equipment, not a job shop, and typically tolerances are pretty tight...This is what works for me..many ways to skin a cat.. brent [This message has been edited by bspooh (edited 08-17-2004).]bspooh
Cast Iron
Joined Jun 6, 2002 Location Salt Lake City, Utah USA Doug, I agree with you that I am not utilizing my CNC as much as I could, but I am a dinosaur who hates changes, and when I get in a habit of doing something, its hard to break..Thats my fault, and thats where I am weak.. But, on the contrary, if I had a boss that was either under or oversized, I just simply change an "x" and "I" value if circular.. All I am saying is that You can still do precision tolerances without CC..I know I can be more efficient by using CC, but we are talking minutes if not seconds savings, which is not a huge deal at my work..If my end mill is dull, then I change it.. I don't do heavy production, I do small to medium runs... One of these days I'll try using the CC...I'm sure once I'm used to it, I'll love it.. brentmrainey
Stainless
Joined Jul 25, 2004 Location Spartanburg, South Carolina ...I'm sure once I'm used to it, I'll love it.. Yes. Ppk_davidson
Guest
Jim: I think my confusion is the leading edge of the cutter. Looking at your example, and assuming I start the center of a 1/2" diam cutter at -1,-1: Then center of cutter, at the end of the move: g41x0d01f10. ==> Center at (0,-.75) y4. ==> Center at (-.25,4.25) x6. etc... y0 x-.5 g40x-.7y-.5 go z1. Here are my questions, 1. don't I want a Y0 before the Y4 in order to position the right edge of the cutter at X=0 ? Otherwise, I'm going to get a long sloping cut as the cutter moves out to the x-.25 position as it moves towards Y4. at least that seems to be the behavious of my older Fanuc 3M. 2. Once the cutter is at (-.25,4), now we want to turn the corner, but the trailing edge is really at Y=3.75 so as the cutter moves to X6, we're going to again have a sloping edge as the previous trailing edge (Y3.75) moves right and up to get to X=6, or, at the end of the X6 move, the center will be (6,4.25) hope those made sense. I'm going to go run this code and see how it looks in reality on this controller. Mmetlmunchr
Diamond
Joined Jul 25, 2004 Location Asheville NC USA Brent, you can use cutter comp to tweak parts to size even if you're programming centerlines. All you have to do is throw in a G41 or 42, and specify a negative value for the tool diameter. Your centerline program will be shifted closer to the work by that negative radius amount. I kinda eased into using comp instead of centerline programming by doing it that way first. By leaving the tool diameter set to zero unless you need to shift, it has no effect until you need it. Also, if the part happens to be cutting undersize as compared to what the program should give, you can make the tool dia a few thou positive and it'll increase the part size too. Ddamonfg
Titanium
Joined Apr 23, 2003 Location Portland, ME, USA " I guess what my hang up here is what is the "right side of the cutter. " Tough to explain, let me know if this doesn't help any. The cutter starts someplace (X-2,Y-2 in your example) and it moves to the next location. Pretend you are walking along the surface of the work. If you were not using cutter comp and went to X0 Y0, you would walk directly to X0 Y0 and stop when the center of your body would be over X0 Y0. Now using cutter comp as you do in the example, Walk up to X0 Y0 but do it so you (the cutter) don't cut anything at X0Y0. And keep the cutter to the left of the line- this way when you walk up to X0 Y0, you will stop at a point where your right shoulder is just touching X0 Y0. If you chose G42 comp, it would be your left shoulder- the cutter (you) would be walking on the other side of the commanded line. Initial entry moves can be a real bugger. Some processors are friendly, and others are real sticklers. They get finicky about some cuts when the use of comp would lead to gouging the workpiece - or when the cutter diam is too large to make a turn. Some will get REAL finicky about inside corners. I'll see if I can grab some code to post here tonight dealing with an entry move and cutter comp. Ppk_davidson
Guest
Hi Jim (BTW -no problem on the fax, can't fight nature, I'm busy understanding this stuff). I think I've figurred out my problem here. I believe it's related to using an old Fanuc 3M. If I write a rectangular cut code such as suggested, I get the following results: % (cut a 1" by 2" block in X,Y) N2 :0400 N4 G20G90G98 N6 G17G40G80 N8 M3 N10 G01Z0.0F30. N14 G00X-1.0Y-1.0 (ends at -1.,-1.) N16 G01G41H1F30. (this controller uses H instead of D) N18 X0 (ENDS AT 0,-.75) N20 Y0 (ENDS AT -.25,0 now in a position to cut first line with edge at X=0) N22 Y2.0 (ENDS AT -.25,2.0 so far so good, EXCEPT, if the controller was looking ahead, it should stop at Y=2.25 so the right hand turn cuts starting with the edge at Y=2.0) N24 X1. (ENDS AT 1.0,2.25 - PROBLEM here, the cutter has gone from Y=2. to Y=2.25, which is what is should do in a way if it's not looking ahead. So this ends up with a triangular cut instead of a flat edge (.25 rise over a 1" run ) N26 Y0 (ENDS AT 1.25,0) N28 X-.5 (ENDS AT -.5,-.25) N30 G40X-.7Y-.5 N32 G00Z.5 N34 M5 N36 /M9 N38 M11 N40 M02 % Now, if I add into the code a G39 which is called a Cutter Radius Compensation, then I can actually get a nice rectangle to cut. So, my confusion has been why the controller, when moving up in Y, doesn't keep going in order to setup for the next move and keep a good straight edge. I think the newer controller probably do this for the machine. In my case, I had to learn the G39 command which is pretty simple, I think. My other option would have been to stop at each corner, backup and in essence, make an initial move into each edge cut. I guess this would work in the long run but would involve a lot of screwy programming but would work just not very elegantly. I would be curious if the above code behaves differently on newer controllers. Oh yes, I'm using a 1/2" End Mill with my H1=0.25 (this unit takes radius msrmnts in compensation). thnx to all for their help. Ddamonfg
Titanium
Joined Apr 23, 2003 Location Portland, ME, USA One thing to really watch out for is if you try and back up. The cutter will never go right back where it came from, it will try and flip around the line and will bugger up the part - or not execute at all (if the control sees it will cause harm) Ttoolmakerjim
Titanium
Joined Jun 21, 2004 Location titusville fl. usa paul try this . g0g90x-1.y-1.m3s1000 g43z1.h01m8 g1z-.025 f50. g41x0d01 y1.f10. x2. y0 x-.5 x-.6y-.6g40f50. g0z1.m9 g0hoz0m5 g91g28x0y0m30 there is no need to feed to the first y0 just give the commands to go to the numbers. to those who dont use cutter comp you are causing yourselves a lot more work and headache You must log in or register to reply here.Similar threads
I Dumb Cutter Comp Question- InBloom1996
- Jun 21, 2024
- CNC Machining
- Nerdlinger
- Dec 21, 2023
- CNC Machining
- MachineAmateur
- Jan 12, 2023
- CNC Machining
- Jwilz8806
- Aug 11, 2024
- CNC Machining
- Neil101
- Nov 5, 2022
- General
- Forums
- Manufacturing Today
- CNC Machining
Notice
This website or its third-party tools process personal data (e.g. browsing data or IP addresses) and use cookies or other identifiers, which are necessary for its functioning and required to achieve the purposes illustrated in the cookie policy. To learn more, please refer to the cookie policy. In case of sale of your personal information, you may opt out by sending us an email via our Contact Us page. To find out more about the categories of personal information collected and the purposes for which such information will be used, please refer to our privacy policy. You accept the use of cookies or other identifiers by closing or dismissing this notice, by scrolling this page, by clicking a link or button or by continuing to browse otherwise.
Từ khóa » G42 Vs G43 Cnc
-
G41 And G42 Cutter Compensation - G-Code Tutor
-
WHAT IS CUTTER COMPENSATION - MachMotion
-
G40 G41 And G42 Cuttercompensation
-
A Guide To Cutter Compensation: What Is G41 And G42?
-
G Codes G41 – G44: Cutter Compensation - Machining Doctor
-
G41 And G42 Cutter Compensation - CNC Machine G-Code ...
-
CUTTER COMPENSATION (G40, G41, G42) - Tormach
-
G42-G43 On Lathes...Why? - CNC Zone
-
Tool And Radius Offsets (G40–G49) - WinMax Help Center
-
CUTTER COMPENSATION (G40, G41, G42) | Engineering360
-
Any Suggestions On G41, G42 And G40 Functions In CNC Turning ...
-
CNC Milling | G41 And G42 Codes | Tool Radius Offset
-
Quick Guide To The G43 CNC G Code [Tips And Tricks]