Axis couplings via HLI (A9)

1.1 IntroductionPAGEREF _Toc302402489 \h2

1.2 Description 3

1.3 Examples 6

More:

button Introduction

button Description

button Examples

>


Introduction

Task

Axis couplings are used to couple the movement of an axis to the movements of one or several other axis/axes. Coupling is relative to the position of the axis when the coupling is activated. The dynamic limits of the target axis are not monitored.

In this example more source axes act on one physical target axis. The interpolator axis that normally moves the target axis, does not necessarily have to belong to the source axes.

Effectiveness

The axis couplings are active after the functionality has been activated via the HLI interface.

Parameterisation

The coupling specifications are defined exclusively via the HLI interface, see also [HLI].

Change of coupling

Any change of axis couplung just is allowed during stand-still of axis. I.e. the velocity of the axis must by zero in the actual nc-cycle:

The destination axis mumst not be moved

All source axis must not be moved.

In any other case the CNC raises an error message P-ERR-70200 Activation of axis couptling while axes are moved not possible and the axes are stopped.

>


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

General

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

This can be reached via:

§ pAC[AxIndex]^.addr^.McControlLr_Data.MCControlAxisCouplingUnit_AxisCoupling

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

Defining the logical axis number of the source axis:

§ pAC[AxIndex]^.addr^.McControlLr_Data.HLIAxisCouplingData.desc[Kopplungsindex].AxisNumber

Defining the coupling mode for this source axis:

§ pAC[AxIndex]^.addr^.McControlLr_Data.HLIAxisCouplingData.desc[Kopplungsindex].CouplingMode

Definition of coupling factor:

§ pAC[AxIndex]^.addr^.McControlLr_Data.HLIAxisCouplingData.desc[Kopplungsindex].FractNumerator.

§ pAC[AxIndex]^.addr^.McControlLr_Data.HLIAxisCouplingData.desc[Kopplungsindex].FractNumerator.

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

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

§ pAC[AxIndex]^.addr^.McControlLr_Data.HLIAxisCouplingData.X_Semaphor to TRUE.

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 has to be defined.

Coupling modes

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

q HLI_AXIS_COUPLING_INACTIVE: The coupling specification is inactive. All subsequent coupling specifications are also inactive. All coupling specifications are deactivated if the first coupling specification is defined as inactive.

q HLI_AXIS_COUPLING_ZERO: The coupling factor is zero. This mode can be used to shut down an axis. A shut-down axis can nevertheless be used as a source axis for another one.

q HLI_AXIS_COUPLING_DIRECT: The coupling factor between the source and target axes is 1.

q HLI_AXIS_COUPLING_MIRROR: The coupling factor between the source and target axes is -1.

q HLI_AXIS_COUPLING_FRACT: Couplingfactor is a fraction defined by .desc[idx].FractNumerator / .desc[idx].FractDenominator.

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:

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 with regard to axis couplings is indicated on the HLI in the AxisCouplingState sub-element of the MCControlAxisCouplingUnit_AxisCoupling control unit:

§ pAC[AxIndex]^.addr^.McControlLr_Data.MCControlAxisCouplingUnit_AxisCoupling.AxisCouplingState

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


Examples

Example 1

Coupling specifications are to be defined for the axis with the logical axis number 8 and the axis designator Y2:

desc[1].AxisNumber := 1
desc[1].CouplingMode := HLI_AXIS_COUPLING_DIRECT

desc[2].AxisNumber := 0
desc[2].CouplingMode := HLI_AXIS_COUPLING_INACTIVE

The axis moves synchronously to the axis with the logical axis number 1. As no coupling specification has been defined for the logical axis number 8, the axis cannot be moved via the NC program.

Example 2

desc[1].AxisNumber := 1
desc[1].CouplingMode := HLI_AXIS_COUPLING_DIRECT

desc[2].AxisNumber := 8
desc[2].CouplingMode := HLI_AXIS_COUPLING_DIRECT

desc[3].AxisNumber := 0
desc[3].CouplingMode HLI_AXIS_COUPLING_INACTIVE

The axis can now also be moved via the NC program if the coupling specification desc[2] is added.

>