Overview
Activation
Plane compensation is activated in the axis machine record of the slave axis by P-AXIS-00174:
Variable name | Type | Meaning |
lr_param.crosscomp2 | BOOLEAN | 0: no plane compensation |
Programing Example
Excerpt from the axis parameter list:
:
lr_param.crosscomp2 1
:
Activating/deactivating
Plane compensation (ON if master axes are referenced and compensation is activated) can be switched on or off at any time when the slave axis is at standstill. The slave axis command positions displayed are offset with the offset values.
Filter:
When master axes are referenced, inconsistencies may occur when compensation values are calculated for a moved slave axis. These inconsistencies can be smoothed by using a sin2 filter. The parameter P-COMP-00027 (n_cycles) switches the filter order to activate it.
Special feature for rotary master axes
As of CNC Build v263.1504, plane compensation can also be used for rotary axes or spindles. A modulo calculation of the axis position is carried out in the position controller for these axis types.
If a plane compensation master axis is a modulo axis, a "modulo transition" also takes place in the compensation table in the modulo transition of the axis position of this master axis. To prevent a jump from occurring at this point of the compensation value process of the slave axis, the same compensation value must be specified in the compensation table at the modulo transition.
Management data of the plane compensation table
The general data of the list body parameterise the axes involved, the limits of the compensation range, etc. General data is entered in the structure kw.crosscomp2.*. It contains the following elements.
Management data elements
Variable name | Type | Meaning |
unit | BOOLEAN | Unit of the length entries: |
grid | STRING | Type of interpolation point sample grid: QUADRATIC: Identical grid structure, interval for both master axes RECTANGULAR: Different grid structure, interval1 and interval2 for both master axes |
interval | UNS32 | Interval between 2 interpolation points in 0.1 µm for the two master axes (grid = QUADRATIC) |
interval1 | UNS32 | Interval of the first master axis between 2 interpolation points in 0.1 µm |
interval2 | UNS32 | Interval of 2nd master axis between 2 interpolation points in 0.1 µm |
last_index_master1 | SGN32 | Last valid index in the table for master axis 1 (see Limits of compensation table). |
last_index_master2 | SGN32 | Last valid index in the table for master axis 2 (see Limits of compensation table). |
start_position_master1 | SGN32 | Position of master axis 1 at which the compensation table starts |
start_position_master2 | SGN32 | Position of master axis 2 at which the compensation table starts |
master1_ax_nr | UNS16 | Log. axis number of master axis 1 |
master2_ax_nr | UNS16 | Log. axis number of master axis 2 |
n_cycles | UNS16 | Number of cycles of sin2 filter. |
manual_activation | BOOLEAN | 0: Default: The CNC activates plane compensation automatically as soon as the required conditions are met (e.g. the master axes are referenced) 1: Plane compensation must be activated explicitly in the NC program by the COMP command (see section “Selecting/deselecting axis compensations in the NC program“). Compensation is deactivated at the end of the NC program, when the CNC is reset or when the axis is released. |
Limits of compensation table
As of CNC Build V3.1.3079.06 the maximum possible of table entries can be defined in P-COMP-00061. In previous builds, the entries “last_index_master1”(P-COMP-00010) and “last_index_master2” (P-COMP-00011) are limited to 100 entries.
This rigid limitation non longer applies. Note only that:
Compensation values of plane compensation
The corresponding compensation value of the slave axis is entered in the table kw.crosscomp2.table[j][i].* for every interpolation point.
Compensation value table
Variable name | Type | Meaning |
table[j][i].correction | SGN32 | Compensation value of slave axis at interpolation point [j][i], |
Notice
When interpolation points are indexed in the compensation value table, the 1. index j always refers to the 2. master axis (see figure below).
Index j -> master axis 2
Index i -> master axis 1
Notice
Unassigned interpolation points are assigned the value 0 in the compensation value table. This value is also used in the calculation.