Cutter radius compensation can be one of the more difficult programming features to fully master. There are many rules, and when something goes wrong, it can be difficult to diagnose and correct the problem. Just about the time you think you have it all figured out, some new situation arises that you haven’t dealt with before. This can be quite frustrating, especially when a program that has worked in the past is now failing due to some cutter radius compensation alarm. Here we offer five of the most common problems and give some advice for avoiding them.
Insufficient clearance at approach. Almost all versions of cutter radius compensation require that you make a prior position movement in X and Y to get the tool to a position from which tool length compensation can be instated. With most controls, this prior position must be at least the cutter’s radius away from the first surface to mill. If using a 1-inch diameter cutter, for example, the tool must be at least 0.5 inch away from the first surface to mill. Note that with most controls, this prior position also determines the maximum cutter size that can be used. If the positioning movement stays 0.5 inch away from the surface, the largest cutter that will work is 1 inch in diameter. By the way, this is one situation when a program that has successfully run before is now generating an alarm. The last time this program was run, the setup person used an appropriate cutter size, but today the cutter is larger. To avoid this problem, be sure to specify the maximum cutter size on the setup.
The milling cutter doesn’t fit into a recess. Once cutter radius compensation is instated, the control will simply keep the cutter on the right side or left side of all surfaces it sees coming up in the program. All current controls have a look-ahead feature that allows the control to scan at least a few commands into the program. As the cutter is moving along one surface, the control is looking ahead to see what is coming up in the program so it can end the current motion in the appropriate manner. With this look-ahead capability the control can also determine if the tool cannot completely machine one surface without violating another. If a surface is about to be violated, most controls will generate an over-cutting alarm. Finding this kind of problem can be difficult, especially if the drawing isn’t made to scale. I recommend plotting the coordinates from your program on a piece of graph paper. Using a circle the same size as your cutter, try moving the circle around the plotted path to see if the circle can move around all surfaces.
- Attempting to machine multiple contours. For each contour to be machined, you must instate, cut with and cancel cutter radius compensation. A common beginner’s mistake is to instate cutter radius compensation once and then proceed to machine more than one contour. If you must rapid the tool to another surface, it should be taken as a signal that you must cancel cutter radius compensation and then reinstate it on the next surface.
- Forgetting to cancel. If you do forget to cancel cutter radius compensation, it’s likely that your series of motions will eventually break a cutter compensation rule and generate some kind of alarm. However, if no alarms are generated, you could be in for a nasty surprise. The next tool’s movements will still be under the influence of cutter radius compensation, and of course its movements will not be correct. Say for example, that the tool following the milling cutter using cutter radius compensation is a drill. You forget to cancel cutter radius compensation, and as the drill is brought into its first position, you don’t break any cutter compensation rules. The drill will machine its holes out of position by the amount stored in the cutter radius compensation offset register. But as you check the program, it’s likely that you’ll be checking the programmed coordinates for the drill, and of course, they are correct. It may take some time before it occurs to you to check whether cutter radius compensation is being canceled.
- Offset is bigger than the smallest inside radius. If using G02 or G03 to specify an inside (filet) radius, the tool must of course fit in the radius, meaning the radius of your milling cutter must be less than or equal to the radius you’re trying to machine.
Again, cutter radius compensation can be difficult to fully master. And I know of programmers that have completely given up on cutter radius compensation because they don’t understand it. Given the benefits of cutter radius compensation, be sure to stick with it until you fully understand it.