Compensation value lists

Storing compensation values

Data for the compensation processes

are stored for each axis in so-called compensation value lists that are loaded when the controller starts up. It is also possible to update the lists at a later date.

Notice

notice

It is possible to activate all the compensation processes for an axis simultaneously.
When you use leadscrew error compensation, it is recommended to include a possible backlash directly in the compensation table of the leadscrew error compensation (double-sided compensation P-COMP-00021).

Notice

notice

As of CNC Build V3.1.3079.06 you can adjust the size of the compensation value lists.

Providing the compensation value lists

The following entries must be present in the start-up description [STUP] in order to signal the compensation table to the controller:

Variable name

Type

Meaning

zahl_kw

UNS16

Number of offset value lists

achs_kw[i]

String

Name of datafile

achs_kw_log_ax_nr[i]

UNS16

Logical number of axis for which the compensation value list is valid.

Programing Example

prg_example

Excerpt from the start-up list hochlauf.lis:

:

zahl_kw                   3

#

achs_kw_log_ax_nr[0]      1

achs_kw[0]                ..\listen\achskw1.lis

#

achs_kw_log_ax_nr[1]      2

achs_kw[1]                ..\listen\achskw2.lis

#

achs_kw_log_ax_nr[2]      6

achs_kw[2]                ..\listen\achskw6.lis

:

Structure of the compensation value list

The compensation value list consists of

List header

The list header is identified in the list by the structure variable kopf . It contains the following elements:

Variable name

Type

Meaning

kopf.achs_nr

UNS16

Logical number of compensation value list

kopf.log_achs_name

String

Name of the axis, which is only used for diagnostic purposes

Body of the list

The list body contains general data and the compensation tables. The entries in the list body are identified by the structure variable kw and frict_comp . It contains the following substructures for each of the compensation processes:

Variable name

Meaning

kw.crosscomp.

Data structure for cross compensation

kw.crosscomp2

Data structure for plane compensation (2-dimensional cross compensation)

kw.ssfk.

Data structure for leadscrew error compensation

kw.crosstalk.

Data structure for cross compensation

frict_comp

Data structure for friction compensation

Updating the compensation table

The compensation table can be updated while the controller is running, provided the conditions for the effectiveness of a compensation are fulfilled.

Attention

attention

After start-up, updating or re-initialisation, it is “almost” not permissible to command a rapid program start or exchange an axis without requesting axis positions.
First, the NC channel must be synchronised in relation to axis positions.