General configuration (obligatory)

Volumetric Compensation(s) takes place

Up to five compensations can be configured for each controller. Configuration of more than only one compensation makes sense on multi-channel machines, for example. Moreover, the measuring strategy can influence whether you have to work with one or more compensations; see Section “Influence of measuring strategy on configuration”.

Axis assignment

Volumetric Compensation requires the presence of

The ISO standard stipulates the letters X, Y, Z, A, B and C as axis names.

Which physical axis assumes the role of the X axis, the Y axis, etc. is assigned by the logical axis number.

Attention

attention

This axis assignment must match the axis identifier when the machine is measured. Otherwise, the compensation values are assigned to the wrong aces and this results in an inexact TCP position during machining.

Programing Example

prg_example

Axis assignment in compensation list

# Axis assignment for 0-th compensation, via logical axis number

X    1

Y    2

Z    3

C    7

A    19

Number of records

For memory allocation, a bound must be specified for the number of records to be read. An error is issued if this number is exceeded when the parameter files are read in.

Programing Example

prg_example

Example – number of records in "hochlauf.lis"

# Upper bound for the number of data records

vol_comp[0].max_records    2000

Parameter files

Up to 10 parameter files can be used for each compensation. A file name and the file format used must be specified for each parameter file.

The following names are available for the file format.

Name

File format

ISG_CSV

ISG CSV file format, see section “ISG CSV format

ETALON_EXCHANGE

Etalon Exchange Format, see section “Etalon Exchange Format

Programing Example

prg_example

2 parameter files in compensation list

# First parameter file, ISG CSV format

file[0]          C:\volcomp\datei01.csv

file_format[0]   ISG_CSV

# Second parameter file, Etalon exchange format

file[1]          C:\volcomp\datei02.exc

file_format[1]   ETALON_EXCHANGE

Kinematic model

Further information is needed to completely describe the machine kinematic model. In particular, the sequence of axes in the kinematic chain must be specified.

Under certain circumstances, the number of axes located on the workpiece side must be specified. Whether this value must be specified depends on the measuring strategy, see section “Influence of the measurement strategy on configuration”.

Programing Example

prg_example

Kinematic model in compensation list

# Example: a 5-axis CB machine, table-table kinematics

# ID57 in the ISG library for Kinematic Transformations

# the sequence of the axes is CBYXZ

chain            CBYXZ

# (the first) two axes CA are located on the workpiece side

workpiece_axes   2

Notice

notice

Specifying the kinematic chain starts with the workpiece and then runs along the axes up to the tool. The sequence in which the axes occur specifies the kinematic chain. In this example, we have a CBYXZkinematic.

Kinematic chain for a 5-axis CB machine
Kinematic chain for a 5-axis CB machine

Limit value

A limit for the compensation value must be specified in the axis parameters for each of the axes to be compensated (previously X, Y, Z).

The lr_param.vol_comp.s_limit (P-AXIS-00525) parameter defines the maximum allowed compensation value for this axis. If this value is exceeded, an error is issued and the axis is stopped in a controlled manner.

Attention

attention

If this limit is not defined, an error is issued when compensation is activated.

Programing Example

prg_example

Limit in "achsmd1.lis"

# Limit of 1mm for compensation values, in 0.1um

lr_param.vol_comp.s_limit     10000

Attention

attention

The s_limit limit must also be defined for gantry axes whose master axes are involved in Volumetric Compensation. Otherwise, an error is output when a compensation value is applied.