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.

Notice

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.

Programming 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.

Programming 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

Programming 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”.

Programming 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

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.

General configuration (obligatory) 1:
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.

Notice

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

Programming Example

Limit in "achsmd1.lis"

# Limit of 1mm for compensation values, in 0.1um
lr_param.vol_comp.s_limit     10000

Notice

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.