Overview

Activation

Leadscrew error compensation (LSEC) is activated in the axis machine data record of the corresponding slave axis by P-AXIS-00175:

Variable name

Type

Meaning

lr_param.ssfk

BOOLEAN

0: no LSEC
1: LSEC active

P-AXIS-00243

lr_param.n_backlash_cyc

UNS16

Number of cycles with bilateral leadscrew error compensation with reversal of direction

Example

example

Excerpt from the axis parameter list:

:

lr_param.ssfk     1

:

Management data of the LSEC table

The general data of the list body parameterises the operation mode of the compensation, e.g. unilateral or bilateral. General data is entered in the structure kw.ssfk..* and contains the following elements.

Management data elements

Variable name

Type

Meaning

unit

BOOLEAN

Unit of the length entries:
0: Encoder increments
1: metric (in 0.1 µm)

interval

SGN32

Distance between interpolation points of the compensation table for use if using equidistant interpolation points. If this parameter is = 0, the position of each interpolation point must be specified separately.

kw_startpos

SGN32

Start position of the compensation table (with equidistant interpolation points)

kw_nr_max

SGN32

Number of entries in the compensation table

As of CNC Build V3.1.3079.06, the maximum possible number of entries can be defined in P-COMP-00059 . In previous builds the default value is 1500.

bilateral

BOOLEAN

0: Unilateral compensation
1: Bilateral compensation

modulo

BOOLEAN

Compensation for a modulo axis take place

manual_activation

BOOLEAN

0 (default): The CNC activates leadscrew error compensation automatically as soon as the required conditions are met (e.g. the master axis is referenced)

1: Leadscrew error compensation must be activated explicitly in the NC program by the COMP command (see Section “Selecting/deselecting axis compensations in the NC program“) . Compensation is deactivated at the end of the NC program, when the CNC is reset or when the axis is released.

set_pos_without_comp

BOOLEAN

By default, leadscrew error compensation also considers the compensation values generated from other axis compensations, e.g. cross and plane compensation. Direction-dependent leadscrew error compensation (see P-COMP-00021) may result in undesired backlash cover. The parameter set_pos_without_comp can disable the inclusion of other compensation values in the calculation.

0: Compensation values of other compensations are considered in the leadscrew error compensation.

1: Compensation values of other compensations are not considered.

LSEC compensation values

The compensation values are specified in the table kw.ssfk.table[i].*.

The field index i can then assume the value 0 to kw.ssfk.kw_nr_max –1. The maximum number of entries is specified in [SYSP//Number 2.23].

The compensation values are specified as absolute position errors in the unit specified in kw.ssfk.unit (metric in 0.1 µm or incremental). Where:

[Delta] si                     i-th compensation value

ssoll, i                 i-th command value (interpolation point of the compensation table)

sist, i                  i-th actual value (measured with reference measuring system)

Compensation value table

Variable name

Type

Meaning

pos

SGN16

Compensation value for motion in a positive direction (bilateral compensation) and compensation value for use with unilateral compensation.

neg

SGN16

Compensation value for motion in a negative direction. Not used with unilateral SSKF.

setpoint

SGN32

Interpolation point of the axis (programmed value). Only with non equidistant interpolation points.

For use with bilateral compensation, enter position errors for motion in a position direction in the pos entry, The interpolation points specified are valid for both directions.

For use with unilateral compensation, also enter position errors in the pos Entry. The neg entry is omitted.

As opposed to the entry of individual interpolation points for the compensation table, a grid structure can also be used. Entries for interpolation points can then be omitted in the setpoint variable in this case.

To use an interpolation point grid, enter the increment of the interpolation point grid in the kw.ssfk.interval variable. The interpolation points are then calculation internally from the start position (kw.ssfk. kw_startpos) and the increment.

Special features applicable to modulo axes

If a compensation table is configured for a modulo axis (kw.ssfk.modulo = 1), a modulo transition also occurs in the compensation table at the modulo transition of the axis position.

This can be used in order to compensate for position errors caused by gears or transmissions for instance.

The following special aspects must be noted: