The definition of how movement of an axis influences another axis is referred to as a coupling specification.

Below, the axis whose position is influenced by other axes on the basis of the coupling specification is referred to as the target axis.

Axes that influence other axes via coupling specifications are referred to as source axes.

View of the difference between source and target axis
View of the difference between source and target axis

In this example several source axes act on a physical target axis. The interpolator axis that normally moves the target axis need not necessarily belong to the source axes.



A change in axis coupling must take place when all the axes involved are at standstill.

If this is not the case, stop occurs with error message P-ERR-70200.

Standstill of all axes involved means that axis velocity must be 0. This affects both the target axis and all coupled source axes.



If a coupled axis is also programmed in the NC program, the target axis must be coupled to itself as source axis.

The coupling specification stipulates: source axis = target axis with coupling factor 1

Response with setpoint request

Corresponding to the coupling instructions on drive level, an active gear coupling leads to an offset of the axis positions to the programmed command positions in NC channel. The axis positions and program coordinates are newly initialised at restart of program or by an explicitly programmed position request (#CHANNEL INIT [CMDPOS]). The ACS position (position on drive plane) is returned by default.

If the target axis setpoint is requested directly after activating an axis coupling, the returned value corresponds to the mechanical axis position.

The axis parameter P-AXIS-00436 defines the setting that the input coordinates of the gear link are recalculated by forward mapping when a setpoint request occurs.

If forward mapping of drive positions is activated with parameter P-AXIS-00436 the mapping is calculated by default relative to the activation position of the axis coupling..

The parameter P-AXIS-00460 can define the setting that the axis positions are regarded as absolute coordinates when a setpoint request occurs. In other words, it is assumed that the axis coupling is activated both for the master and for the slave axis at axis position 0.

Restrictions when using P-AXIS-00436

If the axis parameter P-AXIS-00436 is set, the target axis may not be coupled to itself as source axis either directly or indirectly.

When the coupling is activated, a check is made for coupling loops such as these. If one is discovered, the error message P-ERR-70410 is output and the coupling is not executed.



When the parameters P-AXIS-00436 and P-AXIS-00460 are used, the channel must always be initialised.

Schematic of a coupling

Schematic of coupling specification
Schematic of coupling specification

To calculate the IPO position of axis 2, the IPO position of axis 1 must already be known. The deadlock cannot be resolved and results in the output of error message P-ERR-70410.


The coupling specifications of a target axis are defined via an axis-specific control unit of the HLI.

In this control unit of the target axis, the coupling specifications are defined by specifying the logical axis number of the source axis and the coupling mode. If coupling mode HLI_AXIS_COUPLING_FRACT is used, the coupling factor must also be specified as a fraction.

Several coupling specifications can be commanded. They are defined as an array in the commanded value of of the control unit. The indices of the array elements are within the interval [0 -HLI_AX_COUPLING_MAXIDX]

The entered coupling specifications are activated by setting an HLI signal.

After evaluating the coupling specifications and checking for errors, the NC kernel resets the trigger signal.


Mit axis_idx = [0..HLI_SYS_AX_MAXIDX]

coupl_idx = [0..HLI_AX_COUPLING_MAXIDX]

Axis-specific control unit of HLI:


Defining the logical axis number of the source axis:


Defining the coupling mode for this source axis:


Definition of coupling factor:



Activating trigger signal

gpAx[axis_idx]^.lr_mc_control.axis_coupling.command_w.semaphor_rw := TRUE

Programming of target axis

When axis couplings are used, all source axes acting on a target axis must be specified. If a target axis is also to be programmed in an NC program, a coupling specification must be defined for the logical axis number of the target axis on the HLI. For the programmed axis a coupling specification must be defined between its own source axis and its own target axis.

(See example 2)

Coupling modes

The following coupling modes can be specified for a coupling specification:

Coupling identifier





The coupling specification is inactive. All subsequent coupling specifications are also inactive. If the first coupling specification is defined as inactive, all coupling specifications are deactivated.



Coupling factor 0
This mode can be used to shut down an axis. A shut-down axis can nevertheless be used as a source axis for other axes.



The coupling factor between the source and target axis is 1.



The coupling factor between the source and target axis is -1.



The coupling factor K is a fraction and is defined by a nominator and a denominator

Coupling factor

The coupling factor K is defined as

Defining the coupling factor:

Nominator: desc[coupl_idx].fract_num

Denominator: desc[coupl_idx].fract_denom

the permissible value range for the coupling factor nominator is: [-32768 ... 32767]. A value of 0 has the same effect as using coupling mode HLI_AXIS_COUPLING_ZERO.

The permissible value range for the coupling factor denominator is [-32768 to 32767] excluding 0. A value of 0 causes the output of error message P-ERR-70396.

The absolute value of the coupling factor is limited to the value of HLI_AXIS_COUPLING_FACT_MAX. If the configured value for the coupling factor is greater than this value, the error message P-ERR-70397 is output.

Software limit switches

When the coupling mode HLI_AXIS_COUPLING_FRACT is used, the target axis command position resulting from the active couplings is monitored to the configured software limit switches (P-AXIS-00177/P-AXIS-00178) provided the axis is referenced.

Here, a check is made whether the axis can be stopped from the current velocity using the emergency stop deceleration (P-AXIS-00003) in front of the configured software limit switches. If the software limit switch is exceeded, the error message P-ERR-70195 is output and the axis is stopped.


The axis couplings of an axis can be deactivated by setting the coupling mode of the first coupling entry in HLI_AXIS_COUPLING_INACTIVE.



Deactivating a coupling with several couplings on an axis

Coupling no.

Source axis

Target axis

Coupling mode

Coupling active





















In the example the third coupling is deactivated. The consequence is that all subsequent couplings are deactivated.

Status display

In the control unit the status of the axis with regard to axis couplings is indicated in the



The active_r structure element indicates whether an axis coupling is active for the axis. If a coupling is active, the element has the value TRUE.

When axis coupling is active, the couplings defined for this axis are indicated in the desc[] field.

An element of the desc[] field represents a coupling specification and consists of the following subelements.

Changing the axis coupling

Since it is only permitted to change an axis coupling if the target axis and all coupled source axes are at standstill, the PLC must first verify this when the coupling is changed.

In this case, for example, the current command velocity [10-3 mm/s or 10-3 degree/s] of the axis can be checked before the coupling is activated.