Jump to content

Welcome to eMastercam

Register now to participate in the forums, access the download area, buy Mastercam training materials, post processors and more. This message will be removed once you have signed in.

Use your display name or email address to sign in:

Cutter Comp Beginning on Arc Move - How to Avoid?


Bill H
 Share

Recommended Posts

I do most of my programming with Wear cutter compensation.  Unfortunately, MC has a nasty habit of invoking the comp on an arc move, which on our Haas mills triggers an alarm and shuts down the program.  What's the best way of getting around this?

Link to comment
Share on other sites

Bill,

 I do wear comp all the time on a Haas. No issues. Maybe the way you are setting it is a problem. Change the sizes and see what you get.

Best yet give us your tool size and your comp settings and the size hole or geo. If you try to enter a corner area you could get a issue. do you use the enter/exit at midpoint box?

On a Haas you can wear comp a .063 hole with a .062 cutter.

Link to comment
Share on other sites
2 hours ago, Bill H said:

I do most of my programming with Wear cutter compensation.  Unfortunately, MC has a nasty habit of invoking the comp on an arc move, which on our Haas mills triggers an alarm and shuts down the program.  What's the best way of getting around this?

Actually mastercam does not default that way. It defaults to Computer comp when you install and also the default leads have lines turned on, so maybe someone changed your defaults but its not a bad habit that some software developer has done and with the mcam defaults you would have never had an error in the first place. 

I would suggest changing your defaults, you can easily click the single floppy disk at the top of the toolpath page or defaults can be edited under machine group files page. Also as others mentioned a feature of the post could do some checks if you run into this often it might be something to look into.

Link to comment
Share on other sites

Sorry, I should have been more specific in my original post.  In the circle mill toolpath, you cannot use just a roughing pass, unless the diametral wear value in the control is zero because MC is invoking the comp on an arc move.  This is also true with thread milling ID threads, but fortunately in this case MC provides some lead-in/lead-out options to eliminate the problem.  I suppose the heart of my question is whether there's some setting that would prevent the invoking of comp on arc moves.

Link to comment
Share on other sites

Hmm, that's odd..  You should have no cutter comp at all until the finish pass?

I just created a Ø.5" circle with a Ø.125" cutter, wear comp and roughing is turned on:

image.png.353be1e401d649fc8c48b6d757c6fe57.png

When you look at the code that's created:

G1002     0 100 10 1 1 1 0 2000 10. 0 0.87876113 0.26475797 0.5 10. 10. 10. 0 0.
G0        0 0.87876113 0.26475797 0.5 -2. 0
G0        0 0.87876113 0.26475797 0.1 -2. 0
G-96      
G-11      START DISPLAY TYPE - Entry
G3        0 0 0.87876113 0.26475797 0.98562949 0.29990628 0.06295512 10. 3000 1
G3        0 0 0.87876113 0.26475797 0.98562949 0.29990628 0.02591025 10. 0 1
G3        0 0 1.09249785 0.33505458 0.98562949 0.29990628 0.00738781 10. 0 0
G3        0 0 0.98562947 0.41240628 0.98562949 0.29990628 0. 10. 0 0
G-12      END DISPLAY TYPE - Entry
G3        0 0 0.98562947 0.41240628 0.98562949 0.29990628 0. 10. 0 1
G-11      START DISPLAY TYPE - Trans
G3        0 0 0.98562951 0.18115628 0.98562949 0.29678128 0. 10. 0 0
G3        0 0 0.98562949 0.42490628 0.98562949 0.30303128 0. 10. 0 0
G-12      END DISPLAY TYPE - Trans
G3        0 0 0.98562949 0.17490628 0.98562949 0.29990628 0. 10. 0 0
G3        0 0 0.98562949 0.42490628 0.98562949 0.29990628 0. 10. 0 0
G-11      START DISPLAY TYPE - Exit
G3        0 0 0.92312949 0.36240628 0.98562949 0.36240628 0. 10. 200 0
G-12      END DISPLAY TYPE - Exit
G-11      START DISPLAY TYPE - Trans
G1        0 0.98562949 0.29990628 0. 10. 0
G-96      
G1        0 0.98562949 0.36240628 0. 10. 2000
G1        41 1.17312949 0.36240628 0. 10. 0  <------- Cutter Comp starts with "41" >  
G-12      END DISPLAY TYPE - Trans
G-11      START DISPLAY TYPE - Entry
G3        0 0 0.98562949 0.54990628 0.98562949 0.36240628 0. 10. 1000 0
G-12      END DISPLAY TYPE - Entry
G3        0 0 0.98562949 0.54990628 0.98562949 0.29990628 0. 10. 100 1
G-11      START DISPLAY TYPE - Exit
G3        0 0 0.79812949 0.36240628 0.98562949 0.36240628 0. 10. 0 0
G1        140 0.98562949 0.36240628 0. 10. 0 <------- Cutter Comp end with "140" > 
G1004     
G-12      END DISPLAY TYPE - Exit
G-11      START DISPLAY TYPE - Trans
G1        0 0.98562949 0.29990628 0. 10. 200
G-12      END DISPLAY TYPE - Trans
G0        0 0.98562949 0.29990628 0.5 -2. 0
G-3       EOS - end of nci section

 You can see that the arcs helixing down don't have cutter comp on the raw generated passes, it's only on for the last pass.


You should probably post an example file.

Link to comment
Share on other sites
19 hours ago, Aaron Eberhard - CNC Software said:

Hmm, that's odd..  You should have no cutter comp at all until the finish pass?

I just created a Ø.5" circle with a Ø.125" cutter, wear comp and roughing is turned on:

image.png.353be1e401d649fc8c48b6d757c6fe57.png

When you look at the code that's created:


G1002     0 100 10 1 1 1 0 2000 10. 0 0.87876113 0.26475797 0.5 10. 10. 10. 0 0.
G0        0 0.87876113 0.26475797 0.5 -2. 0
G0        0 0.87876113 0.26475797 0.1 -2. 0
G-96      
G-11      START DISPLAY TYPE - Entry
G3        0 0 0.87876113 0.26475797 0.98562949 0.29990628 0.06295512 10. 3000 1
G3        0 0 0.87876113 0.26475797 0.98562949 0.29990628 0.02591025 10. 0 1
G3        0 0 1.09249785 0.33505458 0.98562949 0.29990628 0.00738781 10. 0 0
G3        0 0 0.98562947 0.41240628 0.98562949 0.29990628 0. 10. 0 0
G-12      END DISPLAY TYPE - Entry
G3        0 0 0.98562947 0.41240628 0.98562949 0.29990628 0. 10. 0 1
G-11      START DISPLAY TYPE - Trans
G3        0 0 0.98562951 0.18115628 0.98562949 0.29678128 0. 10. 0 0
G3        0 0 0.98562949 0.42490628 0.98562949 0.30303128 0. 10. 0 0
G-12      END DISPLAY TYPE - Trans
G3        0 0 0.98562949 0.17490628 0.98562949 0.29990628 0. 10. 0 0
G3        0 0 0.98562949 0.42490628 0.98562949 0.29990628 0. 10. 0 0
G-11      START DISPLAY TYPE - Exit
G3        0 0 0.92312949 0.36240628 0.98562949 0.36240628 0. 10. 200 0
G-12      END DISPLAY TYPE - Exit
G-11      START DISPLAY TYPE - Trans
G1        0 0.98562949 0.29990628 0. 10. 0
G-96      
G1        0 0.98562949 0.36240628 0. 10. 2000
G1        41 1.17312949 0.36240628 0. 10. 0  <------- Cutter Comp starts with "41" >  
G-12      END DISPLAY TYPE - Trans
G-11      START DISPLAY TYPE - Entry
G3        0 0 0.98562949 0.54990628 0.98562949 0.36240628 0. 10. 1000 0
G-12      END DISPLAY TYPE - Entry
G3        0 0 0.98562949 0.54990628 0.98562949 0.29990628 0. 10. 100 1
G-11      START DISPLAY TYPE - Exit
G3        0 0 0.79812949 0.36240628 0.98562949 0.36240628 0. 10. 0 0
G1        140 0.98562949 0.36240628 0. 10. 0 <------- Cutter Comp end with "140" > 
G1004     
G-12      END DISPLAY TYPE - Exit
G-11      START DISPLAY TYPE - Trans
G1        0 0.98562949 0.29990628 0. 10. 200
G-12      END DISPLAY TYPE - Trans
G0        0 0.98562949 0.29990628 0.5 -2. 0
G-3       EOS - end of nci section

 You can see that the arcs helixing down don't have cutter comp on the raw generated passes, it's only on for the last pass.


You should probably post an example file.

off topic, but what kinda code is that???  Never seen it before.

Link to comment
Share on other sites
1 hour ago, JB7280 said:

off topic, but what kinda code is that???  Never seen it before.

Good question. Kinda looks like something that's generated inside the bowels of MC before being turned into something that's actually usable by a CNC machine.

Link to comment
Share on other sites
48 minutes ago, Thad said:

Good question. Kinda looks like something that's generated inside the bowels of MC before being turned into something that's actually usable by a CNC machine.

he was showing the nci, its basically the raw data before the post converts it into whatever type of gcode language is needed

Link to comment
Share on other sites

Careful programming can prevent most instances of CDC output on arc moves, but all of us make mistakes from time to time.

One safety precaution is to use the free mpmaster posts available from this website  or purchase custom posts from Postability

Both of these posts will yell at you if your file is posting CDC on arc moves and output a warning on the offending line of code.

With moderate post writing skills you could also modify your own posts using an mpmaster post as a guide

 

  • Like 1
Link to comment
Share on other sites

Here is sample output of a helix mill toolpath intentionally programmed to produce CDC on the arc leadin move

When you post, a warning pops up and you have to hit OK to continue

The post outputs a M00 program stop and a warning to alert the operator

of the programming error.

This has saved me from many screw ups over the years and is built into the free mpmaster posts you can download from this

website

 

 (T11 = 3/16 STUB CARBIDE 3 FLUTE .5" LOC .75" OUT OF HOLDER)
N1 M57
G00 G90 G54 G17 X0. Y0. B0.
M56
S1800 M03
G43 H1 Z3.
Z.1
G94 G01 Z0. F6.
M00 (WARNING - CUTTER COMP APPLIED ON ARC MOVE)
G03 G41 D11 X.4065 I.2032 J0.

X-.4065 Z-.04 I-.4065 J0.
X.4065 Z-.08 I.4065 J0.
X-.4065 Z-.12 I-.4065 J0.
X.4065 Z-.16 I.4065 J0.
X-.4065 Z-.2 I-.4065 J0.
X.4065 Z-.24 I.4065 J0.

CDC_warning.png

  • Haha 1
Link to comment
Share on other sites
10 minutes ago, Tinger said:

 

Can you go into your control definition and turn this option off:

 

COMP.png.8cc9d2efb8472e7aeaa777e08541dbea.png

That will work for Control Comp.. but most people use Wear comp

Control Comp is strictly forbidden in most of the shops I've ever worked at

  • Like 1
Link to comment
Share on other sites
14 minutes ago, gcode said:

That will work for Control Comp.. but most people use Wear comp

Control Comp is strictly forbidden in most of the shops I've ever worked at

Ahhh I didn't know that.

I figured that it would apply to any line of code with a G41/42 in it. Wonder why it only applies to control comp toolpaths? Isn't the only difference between the two, the location of the toolpath accounting for the dia. of the tool?

Link to comment
Share on other sites
3 minutes ago, Tinger said:

Ahhh I didn't know that.

I figured that it would apply to any line of code with a G41/42 in it. Wonder why it only applies to control comp toolpaths? Isn't the only difference between the two, the location of the toolpath accounting for the dia. of the tool?

You got it except its accounting for the radii of the cutter not the Dia. Mike at Cam instructor whom makes really good training courses and videos had described the differences in his blog/video here https://blog.caminstructor.com/mastercam-cutter-compensation in a really easy to understand manor. they have great vids and training

  • Like 1
Link to comment
Share on other sites
3 minutes ago, JoshC said:

You got it except its accounting for the radii of the cutter not the Dia. Mike at Cam instructor whom makes really good training courses and videos had described the differences in his blog/video here https://blog.caminstructor.com/mastercam-cutter-compensation in a really easy to understand manor. they have great vids and training

Whoops!!!!

Radii not dia.

That's what I meant. 😅

I just don't understand why that option in the control definition would only apply to control comp toolpaths and not wear toolpaths?!?

 

  • Like 1
Link to comment
Share on other sites

The way I avoid this is to pay close attention to the toolpaths in backplot.  I have gotten in the habit of checking the toolpaths closely to make sure they are doing what I want and I catch it there 80% of the time.  The other 20% of the time Vericut catches it for me.

  • Like 1
Link to comment
Share on other sites
10 minutes ago, Bob W. said:

The way I avoid this is to pay close attention to the toolpaths in backplot.

proper programming techniques will prevent most of these errors

 

for example

helix mill/wear comp/start at center/lead in set to 180°   will produce an error every time

switch lead in to 90° and you are good to go

  • Thanks 1
  • Like 2
Link to comment
Share on other sites
1 hour ago, gcode said:

That will work for Control Comp.. but most people use Wear comp

Control Comp is strictly forbidden in most of the shops I've ever worked at.

I don't think that's correct.  The post writer should be able to read that checkbox and produce a warning/error based on it's state with any comp type.

Link to comment
Share on other sites

Here's an example of what I'm talking about.  I've created a sample program using the Circle MIll toolpath to rough mill a circular pocket that's 1.00" in diameter and is 0.50" deep.  I'm using a 1/2" diameter endmill and wear comp.

The G-code, as generated by MC's generic Haas post is:

O1001
(CIRC MILL TEST)
(DATE=DD-MM-YY - 22-06-19 TIME=HH:MM - 14:23)
(MCX FILE - T)
(NC FILE - C:\USERS\BILL\DESKTOP\CIRC MILL TEST.NC)
(MATERIAL - ALUMINUM INCH - 6061)
(T8|0.5 FLAT ENDMILL, 3-FL., CARBIDE|H8|D8|TOOL DIA. - .5|WEAR COMP)
N100 G20
N110 G0 G17 G40 G49 G80 G90
(CIRC MILL 1" HOLE NO FINISHING)
N120 T8 M6
N130 G0 G90 G54 X-.1645 Y-.1535 A0. S6112 M3
N140 G43 H8 Z.25
N150 M8
N160 Z.05
N170 G3 X0. Y-.225 Z.0403 I.1645 J.1535 F73.3
N180 X.225 Y0. Z.0218 I0. J.225
N190 X0. Y.225 Z.0033 I-.225 J0.
N200 X-.225 Y0. Z-.0152 I0. J-.225
N210 X-.1645 Y-.1535 Z-.0241 I.225 J0.
N220 X0. Y-.225 Z-.0338 I.1645 J.1535
N230 X.225 Y0. Z-.0523 I0. J.225
N240 X0. Y.225 Z-.0708 I-.225 J0.
N250 X-.225 Y0. Z-.0893 I0. J-.225
N260 X-.1645 Y-.1535 Z-.0982 I.225 J0.
N270 X0. Y-.225 Z-.1079 I.1645 J.1535
N280 X.225 Y0. Z-.1264 I0. J.225
N290 X0. Y.225 Z-.1449 I-.225 J0.
N300 X-.225 Y0. Z-.1634 I0. J-.225
N310 X-.1645 Y-.1535 Z-.1723 I.225 J0.
N320 X0. Y-.225 Z-.182 I.1645 J.1535
N330 X.225 Y0. Z-.2005 I0. J.225
N340 X0. Y.225 Z-.219 I-.225 J0.
N350 X-.225 Y0. Z-.2375 I0. J-.225
N360 X-.1645 Y-.1535 Z-.2464 I.225 J0.
N370 X0. Y-.225 Z-.2561 I.1645 J.1535
N380 X.225 Y0. Z-.2746 I0. J.225
N390 X0. Y.225 Z-.2931 I-.225 J0.
N400 X-.225 Y0. Z-.3116 I0. J-.225
N410 X-.1645 Y-.1535 Z-.3204 I.225 J0.
N420 X0. Y-.225 Z-.3301 I.1645 J.1535
N430 X.225 Y0. Z-.3486 I0. J.225
N440 X0. Y.225 Z-.3671 I-.225 J0.
N450 X-.225 Y0. Z-.3856 I0. J-.225
N460 X-.1645 Y-.1535 Z-.3945 I.225 J0.
N470 X0. Y-.225 Z-.4042 I.1645 J.1535
N480 X.225 Y0. Z-.4227 I0. J.225
N490 X0. Y.225 Z-.4412 I-.225 J0.
N500 X-.225 Y0. Z-.4597 I0. J-.225
N510 X-.1645 Y-.1535 Z-.4686 I.225 J0.
N520 X0. Y-.225 Z-.4783 I.1645 J.1535
N530 X.225 Y0. Z-.4968 I0. J.225
N540 X.2169 Y.06 Z-.5 I-.225 J0.
N550 X0. Y.225 I-.2169 J-.06
N560 X-.225 Y0. I0. J-.225
N570 X0. Y-.225 I.225 J0.
N580 X.225 Y0. I0. J.225
N590 X.2169 Y.06 I-.225 J0.
N600 X0. Y.25 I-.253 J-.07
N610 X-.25 Y0. I0. J-.25
N620 X0. Y-.25 I.25 J0.
N630 X.25 Y0. I0. J.25
N640 X0. Y.25 I-.25 J0.
N650 X-.25 Y0. I0. J-.25
N660 X0. Y-.25 I.25 J0.
N670 X.25 Y0. I0. J.25
N680 G41 D8 X0. Y.25 I-.25 J0.
N690 G0 Z.25
N700 G40 M5
N710 G91 G28 Z0. M9
N720 G28 X0. Y0. A0.
N730 M30
%
 

Note that cutter comp is invoked with an arc move on Line N680 which, of course, results in the machine having a nervous breakdown.  How is it possible to use the Circle Mill toolpath with no finishing passes and avoid this?

 

Link to comment
Share on other sites
On 6/21/2019 at 6:16 AM, JB7280 said:

off topic, but what kinda code is that???  Never seen it before. 

Yeah, as other have mentioned, that's called the Binary NCI which is what I prefer to work in for my line of work :)  

The BNCI is pure code that comes from the toolpath, so it's as machine agnostic as you're going to get.  ASCII NCI (what you get if you hit the "post" button and tell it to output NCI) is flavored based on what your machine settings are.  Posted code is just the ANCI being formatted formally by your post processor.

So for your sample code above, use the ultra-secret (documented in the MP post editing manual, I believe) CTRL+SHIFT+Right Click on the operation, you can choose "Display Binary NCI" (I prefer without line numbers, but you do you), and see if that call is being output on an arc.  If it's not in the BNCI, then your post is adding it to the ANCI for you for some reason. 

  • Like 2
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.

Join us!

eMastercam - your online source for all things Mastercam.

Together, we are the strongest Mastercam community on the web with over 56,000 members, and our online store offers a wide selection of training materials for all applications and skill levels.

Follow us

×
×
  • Create New...