Parameterisation

Activate

Temperature compensation is activated in the axis machine data record [AXIS] of the required axis using P-AXIS-00271:

kopf.achs_nr                                     1

#

# temperature compensation on/off

lr_param.temp_comp              1

Compensation can also be activated using a write access to the CNC object via the GEO task:

TEMPC::is_active                             Index group = 0x120300, Index offset = 0x10041

Reference measurement

Before specifying the parameters of temperature compensation, a reference measurement must first be carried out using an external position measuring system. It determines the deviations of the axis positions between the internal and external measuring system at different temperatures.

Reference measurement at different temperatures
Reference measurement at different temperatures

Determine parameters

The parameters reference position, offset and coefficient can be taken from the measurement curves. The values at a given temperature can be set later from the curves. Temperatures that are not measured can be interpolated or extrapolated from the measured temperature curves.

If the virtual intersection of the approximated linear curves is chosen as the reference position, the offset is independent of temperature. In this case, only the coefficient must be reset for different temperatures.

Influence of temperature

The individual parameters can be set by the PLC depending on the current temperature. To do this, a corresponding temperature signal (sensor) is transmitted to the PLC which then derives the parameters from it.

Explicit activation in NC program

lr_param.temp_comp_manual_activation         0

Compensation is deselected:

Change parameters

Each of the parameters can be changed by downloading the axis list:

kopf.achs_nr                                     1

#

# temperature compensation on/off

lr_param.temp_comp          1

# reference position

lr_param.temp_comp_position_0              100 [0.1µm]

# reference offset

lr_param.temp_comp_offset_0                 40 [0.1µm]

lr_param.temp_comp_coefficient            4000 [µm/m]

#

In addition to the download option, there is also the option of writing and reading the parameters via direct access to the GEO task via CNC objects. For example, the first axis can be addressed via the following index group and index offset:

Access to CNC objects of temperature compensation
Access to CNC objects of temperature compensation

Monitoring and coupling/decoupling

The compensation values are recalculated for each interpolation cycle. If the change per cycle exceeds the given maximum axis acceleration, this change can be output filtered over multiple cycles.

For this the number of cycles of the sin² filter can be defined in the axis parameter list. By default, this is set to one cycle.

kopf.achs_nr                          1

#

# Cycle of the sin² filter

lr_param.temp_comp_n_cycles          20

Display the compensation

In addition to the download option, there is also the option of writing and reading the parameters via direct access to the CNC objects of the GEO task. For example, the 1st axis can be addressed using the following index group and index offset:

TEMPC::is_active                         Index group = 0x120300, Index offset = 0x10041

TEMPC::is_active                             Index group = 0x120300, Index offset = 0x10042

Display the axis position

When temperature compensation is activated, the normal command and actual positions of the axis are displayed unchanged.

The corrections are only calculated and included before output to the drive bus and can therefore be viewed in the position values of the drive bus (dig_cmd_pos, dig_act_pos).