Compensation value lists

Storing of compensation values

The data for the compensation processes

are stored in so called compensation lists for each axis. This lists are interpreted during start up of the control or they can be updated at a later point of time.

Compensation value lists 1:

It is possible, to activate for one axis all compensation processes (cross, plane, leadscrew error and temperature compensation) at the same time.

Provision of the compensation table

The following entries must be present in the startup description to announce the compensation table to the control system:

Variable name

Type

Significance

zahl_kw

UNS16

Number of compensation value lists

achs_kw[i]

String

Name of the data file

achs_kw_log_ax_nr[i]

UNS16

Logical axis number of the axis to which the compensation value list is to apply

with i as list index.

CAUTION

If the compensation value list is configured by the TwinCAT System Manager, these entries are made automatically in the startup list.

Example

Excerpt from startup list hochlauf.lis:

Excerpt from startup list

hochlauf.lis

zahl_kw               3 

achs_kw_log_ax_nr[0]  1
achs_kw[0]            tc_...\achskw1.lis 

achs_kw_log_ax_nr[1]  2 
achs_kw[1]            tc_...\achskw2.lis 

achs_kw_log_ax_nr[2]  6 
achs_kw[2]            tc_...\achskw6.lis 

Structure of the compensation table

The compensation value list consists of a list header in which general data is entered and the list body in which the compensation algorithm is programmed, and which contains the actual compensation table.

List header

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

Variable name

Type

Significance

kopf.achs_nr

UNS16

Logical axis number of the compensation value list

kopf.log_achs_name

String

Axis name of the axis; is used only for diagnostic purposes.

CAUTION

If the compensation value list is configured by the TwinCAT System Manager, these entries are made automatically in the compensation list.

List body

The list body contains general data and the compensation table. The entries of the list body are identified by structure variable kw.*. For the specific compensation processes it contains the following sub structures:

Variable name

Significance

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

Updating the compensation table

The compensation table can be updated with the control system in operation. The updated compensation table takes effect immediately provided the conditions for action are met.

CAUTION

With reference to the axes positions the NC channel must be synchronized after start-up respectively actualization or reinitialization of a compensation. The subsequent instruction of a fast program start or an axis exchange without requesting axes positions ("FAST") is not allowed.