3D tool compensation (option 9)

Fundamentals

The control allows 3D tool compensation in CAM-generated NC programs with surface-normal vectors.

Straight line LN

The control displaces the tool in the direction of the surface normals by the total of the delta values from tool management, tool call and compensation tables.

Tools for 3D tool compensation

  • 3D tool compensation can be used e. g. in the cases below:
  • Compensation for re-worked tools for compensating small differences between the programmed and the actual tool dimensions
  • Compensation for substitute tools with deviating diameters for compensating even larger differences between the programmed and the actual tool dimensions
  • Generating a constant workpiece oversize which may serve e. g. as a finishing allowance

3D tool compensation saves time since there is no need to recalculate and output from the CAM system.

8H000_28
 
Tip

For an optional tool angle of inclination, the NC blocks must include an additional tool vector with the components TX, TY and TZ.

3dkorr1

Straight line LN

Application

Straight lines LN are a prerequisite for 3D compensation. Within straight lines LN, a surface normal vector defines the direction of the 3D tool compensation. An optional tool vector defines the tool angle of inclination.

Requirements

  • Advanced Functions Set 2 (software option 9)
  • NC program created with a CAM system
  • Straight lines LN cannot be programmed directly on the control, but require a CAM system.

    CAM-generated NC programs

Description of function

As with a straight line L, a straight line LN is used to define the target point coordinates.

Straight line L

In addition, the straight lines LN contain a surface normal vector as well as an optional tool vector.

Input

LN X+31.737 Y+21.954 Z+33.165 NX+0.2637581 NY+0.0078922 NZ–0.8764339 TX+0.0078922 TY–0.8764339 TZ+0.2590319 F1000 M128

The NC function includes the following syntax elements:

Syntax element

Meaning

LN

Syntax initiator for straight line with vectors

X, Y, Z

Coordinates of the straight-line end point

NX, NY, NZ

Components of the surface normal vector

TX, TY, TZ

Components of the tool vector

Optional syntax element

R0, RL or RR

Tool radius compensation

Tool radius compensation

Optional syntax element

F, FMAX, FZ, FU or F AUTO

Feed rate

Cutting data

Optional syntax element

M

Additional function

Optional syntax element

Notes

  • In the NC syntax, the order must be X,Y, Z for the position and NX, NY, NZ as well as TX, TY, TZ for the vectors.
  • The NC syntax of LN blocks must always indicate all of the coordinates and all of the surface-normal vectors, even if the values have not changed from the previous NC block.
  • Calculate the vectors as exactly as possible and specify them with at least 7 decimal places in order to avoid drastic feed rate decreases during machining.
  • The CAM-generated NC program must contain normalized vectors.
  • The 3D tool compensation using surface normal vectors is effective for the coordinate data specified for the main axes X, Y, Z.

Definition

Normalized vector
A normalized vector is a mathematical quantity possessing a magnitude of 1 and a direction. The direction is defined by the components X, Y and Z.

Tools for 3D tool compensation

Application

3D tool compensation can be used with the following tool shapes: end mill, toroid cutter and ball-nose cutter.

Description of function

  • The tool shapes can be distinguished by columns R and R2 of the tool management:
  • End mill: R2 = 0
  • Toroid cutter: R2 > 0
  • Ball-nose cutter: R2 = R

Tool table tool.t

The delta values DL, DR and DR2 are used to adapt the tool management values to the actual tool.

The control then compensates for the tool position by the sum of the delta values from the tool table and the programmed tool compensation (tool call or compensation table).

The surface normal vector of straight lines LN defines the direction in which the control compensates the tool. The surface normal vector always points to the tool radius 2 center CR2.

CR2
Position of CR2 with the individual tool shapes

Presets on the tool

Notes

  • The tools are defined in the tool management. The overall tool length equals the distance between the tool carrier reference point and the tool tip. The control monitors the complete tool for collisions only by using the overall length.
  • When defining a ball-nose cutter by the overall length and outputting an NC program to the ball center, the control must take the difference into account. When calling the tool in the NC program, define the sphere radius as a negative delta value in DL and thus shift the tool location point to the tool center point.

  • If you load a tool with oversize (positive delta value), the control generates an error message. You can suppress the error message with the M107 function.
  • Permitting positive tool oversizes with M107 (option 9)

    Use the simulation to ensure that no contours are damaged by the tool oversize.

3D tool compensation during face milling (option 9)

Application

Face milling is a machining operation carried out with the front face of the tool.

The control displaces the tool in the direction of the surface normals by the total of the delta values from tool management, tool call and compensation tables.

3dkorr1

Requirements

Description of function

  • The variants below are possible with face milling:
  • LN block without tool orientation, M128 or FUNCTION TCPM is active: Tool perpendicular to the workpiece contour
  • LN block with tool orientation T, M128 or FUNCTION TCPM is active: Tool keeps the set tool orientation
  • LN block without M128 or FUNCTION TCPM: The control ignores the direction vector T even if it is defined

NC programs contained in this User's Manual are suggestions for solutions. The NC programs or individual NC blocks must be adapted before being used on a machine.

  • Change the following contents as needed:
  • Tools
  • Cutting parameters
  • Feed rates
  • Clearance height or safe position
  • Machine-specific positions, e.g. with M91
  • Paths of program calls

Some NC programs depend on the machine kinematics. Adapt these NC programs to your machine kinematics before the first test run.

In addition, test the NC programs using the simulation before the actual program run.

 
Tip

With a program test you determine whether the NC program can be used with the available software options, the active machine kinematics and the current machine configuration.

Example

11 L X+36.0084 Y+6.177 Z-1.9209 R0

; No compensation is possible

12 LN X+36.0084 Y+6.177 Z-1.9209 NX-0.4658107 NY+0 NZ+0.8848844 R0

; Compensation perpendicular to the contour is possible

13 LN X+36.0084 Y+6.177 Z-1.9209 NX-0.4658107 NY+0 NZ+0.8848844 TX+0.0000000 TY+0.6558846 TZ+0.7548612 R0 M128

; Compensation is possible, DL is effective along the T vector and DR2 along the N vector

14 LN X+36.0084 Y+6.177 Z-1.9209 NX-0.4658107 NY+0 NZ+0.8848844 R0 M128

; Compensation perpendicular to the contour is possible

Notes

 
Notice
Danger of collision!
The rotary axes of a machine may have limited ranges of traverse, e. g. between -90° and +10° for the B head axis. Changing the tilt angle to a value of more than +10° may result in a 180° rotation of the table axis. There is a danger of collision during the tilting movement!
  1. Program a safe tool position before the tilting movement, if necessary.
  2. Carefully test the NC program or program section in the Single Block mode
  • If no tool orientation was defined in the LN block and TCPM is active, the control maintains the tool perpendicular to the workpiece contour.
  • 3dkorr1

  • If a tool orientation T has been defined in the LN block and M128 (or FUNCTION TCPM) is active at the same time, then the control will position the rotary axes automatically in such a way that the tool can reach the specified tool orientation. If you have not activated M128 (or TCPM FUNCTION), then the control ignores the direction vector T, even if it is defined in the LN block.
  • The control is not able to automatically position the rotary axes on all machines.
  • The control generally uses the defined delta values for 3D tool compensation. The entire tool radius R + DR) is only taken into account if you have activated the FUNCTION PROG PATH IS CONTOUR function.
  • 3D tool compensation with the entire tool radius with FUNCTION PROG PATH (option 9)

Examples

Compensate re-worked ball-nose cutter
CAM output at tool tip

3D_corr_1

Use a re-worked Ø 5.8 mm ball-nose cutter instead of Ø 6 mm.

  • The NC program has the following structure:
  • CAM output for Ø 6 mm ball-nose cutter
  • NC points output on the tool tip
  • Vector program with surface normal vectors
  • Proposed solution:
  • Tool measurement on tool tip
  • Enter the tool compensation into the tool table:
    • R and R2 the theoretical tool data as from the CAM system
    • DR and DR2 the difference between the nominal value and actual value

R

R2

DL

DR

DR2

CAM

+3

+3

Tool table

+3

+3

+0

-0.1

-0.1

Compensate re-worked ball-nose cutter
CAM output at the center of the ball

3D_corr_2

Use a re-worked Ø 5.8 mm ball-nose cutter instead of Ø 6 mm.

  • The NC program has the following structure:
  • CAM output for Ø 6 mm ball-nose cutter
  • NC points output on the center of the sphere
  • Vector program with surface normal vectors
  • Suggested solution:
  • Tool measurement on tool tip
  • TCPM function REFPNT CNT-CNT
  • Enter the tool compensation into the tool table:
    • R and R2 the theoretical tool data as from the CAM system
    • DR and DR2 the difference between the nominal value and actual value

R

R2

DL

DR

DR2

CAM

+3

+3

Tool table

+3

+3

+0

-0.1

-0.1

 
Tip

With TCPM REFPNT CNT-CNT the tool compensation values are identical for the outputs on the tool tip or center of the sphere.

Create workpiece oversize
CAM output at tool tip

3D_corr_3a
3D_corr_3b

Use a Ø 6 mm ball-nose cutter for achieving an even oversize of 0.2 mm on the contour.

  • The NC program has the following structure:
  • CAM output for Ø 6 mm ball-nose cutter
  • NC points output on the tool tip
  • Vector program with surface normal vectors and tool vectors
  • Proposed solution:
  • Tool measurement on tool tip
  • Enter the tool compensation into the TOOL CALL block:
    • DL, DR and DR2 the desired oversize
  • Suppress the error message with M107

R

R2

DL

DR

DR2

CAM

+3

+3

Tool table

+3

+3

+0

+0

+0

TOOL CALL

+0.2

+0.2

+0.2

Create workpiece oversize
CAM output at the center of the sphere

3D_corr_4a
3D_corr_4b

Use a Ø 6 mm ball-nose cutter for achieving an even oversize of 0.2 mm on the contour.

  • The NC program has the following structure:
  • CAM output for Ø 6 mm ball-nose cutter
  • NC points output on the center of the sphere
  • TCPM function REFPNT CNT-CNT
  • Vector program with surface normal vectors and tool vectors
  • Proposed solution:
  • Tool measurement on tool tip
  • Enter the tool compensation into the TOOL CALL block:
    • DL, DR and DR2 the desired oversize
  • Suppress the error message with M107

R

R2

DL

DR

DR2

CAM

+3

+3

Tool table

+3

+3

+0

+0

+0

TOOL CALL

+0.2

+0.2

+0.2

3D tool compensation during peripheral milling (option 9)

Application

Peripheral milling is a machining operation carried out with the lateral surface of the tool.

The control offsets the tool perpendicular to the direction of movement and perpendicular to the tool direction by the total of the delta values from the tool management, the tool call and the compensation tables.

3dkorr2

Requirements

Description of function

  • The variants below are possible with peripheral milling:
  • L block with programmed rotary axes, M128 or FUNCTION TCPM is active, define compensation direction with radius compensation RL or RR
  • LN block with tool orientation T perpendicular to the N vector, M128 or FUNCTION TCPM is active
  • LN block with tool orientation T without N vector, M128 or FUNCTION TCPM is active

NC programs contained in this User's Manual are suggestions for solutions. The NC programs or individual NC blocks must be adapted before being used on a machine.

  • Change the following contents as needed:
  • Tools
  • Cutting parameters
  • Feed rates
  • Clearance height or safe position
  • Machine-specific positions, e.g. with M91
  • Paths of program calls

Some NC programs depend on the machine kinematics. Adapt these NC programs to your machine kinematics before the first test run.

In addition, test the NC programs using the simulation before the actual program run.

 
Tip

With a program test you determine whether the NC program can be used with the available software options, the active machine kinematics and the current machine configuration.

Example

11 L X+48.4074 Y+102.4717 Z-7.1088 C-267.9784 B-20.0115 RL M128

; Compensation is possible, compensation direction RL

12 LN X+60.6593 Y+102.4690 Z-7.1012 NX0.0000 NY0.9397 NZ0.3420 TX-0.0807 TY-0.3409 TZ0.9366 R0 M128

; Compensation is possible

13 LN X+60.6593 Y+102.4690 Z-7.1012 TX-0.0807 TY-0.3409 TZ0.9366 M128

; Compensation is possible

Notes

 
Notice
Danger of collision!
The rotary axes of a machine may have limited ranges of traverse, e. g. between -90° and +10° for the B head axis. Changing the tilt angle to a value of more than +10° may result in a 180° rotation of the table axis. There is a danger of collision during the tilting movement!
  1. Program a safe tool position before the tilting movement, if necessary.
  2. Carefully test the NC program or program section in the Single Block mode

Example

Compensate re-worked end mill
CAM output at tool center

Peripheral

You use a re-worked Ø 11.8 mm end mill instead of Ø 12 mm.

  • The NC program has the following structure:
  • CAM output for Ø 12 mm end mill
  • NC points output on the tool center
  • Vector program with surface normal vectors and tool vectors
  • Alternative:

  • Klartext program with active tool radius compensation RL/RR
  • Proposed solution:
  • Tool measurement on tool tip
  • Suppress the error message with M107
  • Enter the tool compensation into the tool table:
    • R and R2 the theoretical tool data as from the CAM system
    • DR and DL the difference between the nominal value and the actual value

R

R2

DL

DR

DR2

CAM

+6

+0

Tool table

+6

+0

+0

-0.1

+0

3D tool compensation with the entire tool radius with FUNCTION PROG PATH (option 9)

Application

The FUNCTION PROG PATH function defines whether the control references the 3D radius compensation only to the delta values as in the past or to the entire tool radius.

Requirements

  • Advanced Functions Set 2 (software option 9)
  • NC program created with a CAM system
  • Straight lines LN cannot be programmed directly on the control, but require a CAM system.

    CAM-generated NC programs

Description of function

If you activate FUNCTION PROG PATH, the programmed coordinates exactly correspond to the contour coordinates.

The control takes the full tool radius R + DR and the full corner radius R2 + DR2 into account for 3D radius compensation.

With FUNCTION PROG PATH OFF, you deactivate this special interpretation.

The control only uses the delta values DR and DR2 for 3D radius compensation.

If you activate FUNCTION PROG PATH, the interpretation of the programmed path as the contour is effective for 3D compensation movements until you deactivate the function.

Input

NC programs contained in this User's Manual are suggestions for solutions. The NC programs or individual NC blocks must be adapted before being used on a machine.

  • Change the following contents as needed:
  • Tools
  • Cutting parameters
  • Feed rates
  • Clearance height or safe position
  • Machine-specific positions, e.g. with M91
  • Paths of program calls

Some NC programs depend on the machine kinematics. Adapt these NC programs to your machine kinematics before the first test run.

In addition, test the NC programs using the simulation before the actual program run.

 
Tip

With a program test you determine whether the NC program can be used with the available software options, the active machine kinematics and the current machine configuration.

11 FUNCTION PROG PATH IS CONTOUR

; Use the entire tool radius for 3D compensation.

The NC function includes the following syntax elements:

Syntax element

Meaning

FUNCTION PROG PATH

Syntax initiator for interpreting the programmed path

IS CONTOUR or OFF

Use the entire tool radius or only the delta values for 3D compensation