Though applied for different reasons on different machine types, all forms of compensation allow the CNC user to allow for unpredictable conditions related to tooling.
Before discussing how compensation applies to CNC usage, let's look at compensation in general terms.
The CNC user will be faced with several situations when it will be impossible to predict exactly the result of certain tooling related problems. So one form or another of compensation will have to be used to handle the problem. The CNC user has to fine-tune the initial compensation entry. More on how and why in a little while.
What Are Offsets?
All forms of compensation work with offsets. You can think of CNC offsets like memories on an electronic calculator. If your calculator has memories, you know you can store a constant value into each memory for use during a calculation. This keeps you from having to enter the number over and over again with redundant calculations.
As the memories of an electronic calculator, offsets in the CNC control are storage locations into which numerical values can be placed. You can think of the values stored in CNC offsets as like the amount of adjustment required on the sight of the rifle. With most CNC machine tools, there is a need for at least one offset per tool.
Reasons For Tool Offsets
Offsets can be used for several purposes, depending on the style of machine tool and type of compensation being used. Here are some of the more common applications for offsets.
- To specify each tool's length.
For machining center applications, it would be very difficult for the programmer to predict the precise length of each tool used in the program. For this reason, the tool length compensation feature allows the programmer to ignore each tool's length as the program is written. At the time of setup, the setup person measures the length of each tool and inputs the tool length value into the corresponding offset.
- To specify the radius of the cutting tool.
When milling on the periphery of the cutter, it can be cumbersome and difficult for the programmer to create a tool path based on the size of the milling cutter being used. Also, if the cutter size must change (possibly due to re-sharpening), it would be impractical to change the program based on the new cutter size. For this reason, the cutter radius compensation feature allows the programmer to ignore the cutter size as the program is written. The setup person inputs the size of each milling cutter into its corresponding tool offset. Similarly, turning centers have a feature called tool nose radius compensation. With this feature, an offset is used to specify the radius of the very tip of the turning or boring tool.
- To assign program zero.
Machining centers that have fixture offsets (also called coordinate system shifting) allow the user to specify the position of the program zero points within offsets, keeping the assignment of program zero separate from the program. Many turning centers also allow the assignment of program zero with offsets (this feature is commonly called geometry offsets).
- To allow sizing on turning centers.
Tool offsets are used on all turning centers to allow the operator to hold size with tools used within their programs. This allows the operator to adjust for imperfections with tool placement during setup. It also allows the operator to compensate for wear during each tool's life.
With some CNC controls, the organization of offsets is very obvious. Some machining center controls, for example, automatically make the offset number correspond to the tool station number. With this kind of machine, when tool station number one is commanded, the control will automatically invoke offset number one. Within offset number one, the operator can store a tool length value as well as a tool radius value. Figure 1 shows the offset table for this kind of machining center.
But, not all controls make it this simple. In some, each offset contains only one value and the offset number has no real relationship to the tool station number. In this case, the programmer must cautiously organize which offsets are used with each tool.
For example, the tool length compensation offset numbers can be made the same as tool station numbers. Cutter radius compensation offset numbers can be made equal to the tool station number plus a constant value larger than the number of tools the machine can hold. If the machine can hold 25 tools, tool station number one could be made to use offset number one to store its length compensation value and offset number thirty-one could be used to store its cutter radius compensation value. With this method of offset organization, the programmer and operator are constantly in sync.
The offset table on most turning centers incorporates at least two values per offset. Generally speaking, the programmer will instate the offset number corresponding to the tool station number for each tool offset used. That is, tool number one will use (only) offset number one, tool two will use offset two, and so on. Typically the tool nose radius (R column of the offset table) and the tool type (the T column of the offset table) can be specified within the turning center's offset table.