Description

Definitions

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 based on the coupling specification is referred to as the target axis.

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

General

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

This can be reached via:

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 be set up as fraction.

Defining the logical axis number of the source axis:

Defining the coupling mode for this source axis:

Definition of coupling factor:

The number of definable coupling specifications is stored in the HLI_AxisCouplingMax constant.

The entered coupling specifications are activated by setting the HLI signal:

After evaluation of the coupling specifications and checking for errors, the NC kernel resets X_Semaphor.

Refer to [HLI] for further details of programming the HLI.

Programming of target axis

When axis coupling is used, all source axes that act 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 (example 2). This means, for the programmed axis a coupling of the own source axis to itself must be defined.

Coupling modes

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

Coupling factor

When using coupling mode HLI_AXIS_COUPLING_FRACT the coupling factor between source and target axis can be set up by a fraction.

For this the elements desc[idx].FractNumerator und desc[idx].FractDenominator are used. The coupling factor K is defined by:

Description 1:

The admissilbe value range for FractNumerator is [-32768 ...32767].

A value of zero has the same effect as using coupling mode HLI_AXIS_COUPLING_ZERO.

The admissilbe value range for FractDenominator is [-32768 ... 32767] excluding zero. A value of zero causes a error message P-ERR-70796.

The absolute value of the coupling factor is limited to the value of HLI_AXIS_COUPLING_FACT_MAX. If the set up value for the coupling factor is bigger than this value error message P-ERR-70397 is output.

Software limit switches

When using coupling mode HLI_AXIS_COUPLING_FRACT the axis command position resulting from the active couplings is limited to the software limit switches set up in axis parameters P-AXIS-00177 and P-AXIS-00178 if the axis is referenced.

Here it is tested if the axis can be decelerated from the actual velocity using the emergency deceleration P-AXIS-00003 before the limit switched set up. If the limit switches would be overtraveled error message P-ERR-70195 is output and the axis is stopped.

Deactivating

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

Status display

The status of the axis regarding axis couplings is indicated on the HLI in the AxisCouplingState sub-element of the MCControlAxisCouplingUnit_AxisCoupling control unit:

The X_State element indicates whether a axis coupling is active for the axis. X_State = TRUE if the coupling is active.

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

In the AxisNumber element, for a coupling specification the desc[ ] contains the logical axis number of the source axis and, in the CouplingMode element, it contains the coupling mode defined for the source axis.

Change of coupling

The change of the coupling just is allowed if the target axis and all source axis are in stand-still. This must be verified by the PLC before.

The display element of the actual command revolution (velocity) [10-3 mm/s oder 10-3 Grad/s] of the axis can by used for this check.

pAC[ ]^.addr^.StateLR_Data.D_ActiveRev