Axis collision monitoring (C3)

1.1 IntroductionPAGEREF _Toc183497270 \h2

1.2 Description 3

1.3 Parameters 8

1.3.1 Overview 8

1.3.2 Description 8

More:

button Introduction

button Description

button Parameters


Introduction

Mechanical collision of feed units whose travel ranges overlap is prevented with the axis collision monitoring function. The travel ranges run in parallel.

For example, this is the case with a linear drive that has two primary parts as encountered in gantry or bar kinematic machines.

Figure 1-1: Three slides on one linear drive

Figure 1-2: Example of Hexapod


Description

When collision monitoring is used, the position setpoints of a pair of axes generated in the CNC are monitored. If the distance between the two positions falls below the minimum permitted distance, taking into consideration the deceleration distance needed to stop, the axes are stopped immediately in accordance with the specified dynamic data and the CNC issues the message 70092.

After CNC-RESET, the two axes must be positioned away from one another.

Two axes for which collision monitoing is done are called collision pair.

It is possible to define multiple collision pairs, also it is possible to monitor the distance of one axis against two other axes.

If the axes are shut down due to detection of a collision, they will generally leave the programmed contour.

Parameters

To set up the collision check for one axis (the master axis) in parameter P-AXIS-00043 (coll_check_ax_nr) the logical axis number of the other axis (the collision partner) has to be declared.

To enable an axis for collision monitoring, bit 0x8000 in the P-AXIS-00015 (achs_mode) parameter has to be set.

The minimum permitted distance between the reference points of the slides is specified via the P-AXIS-00045 (coll_offset) parameter of the master axis. If two collision pairs with the same axes are declared and the minimum permitted distance are different for the axes, the higher of the two values always applies.

If the collision axes are in different CNC channels, by means of the P-AXIS-00044 (coll_decelerate_chan) parameter, you can compel stopping in both channels if a collision axis should report a driver error.

Figure 1-3: Minimum permitted distance

Example

In this example two collision pairs are defined:

· First pair: Axis 1 with axis 2, where axis 2 is the master axis and axis 1 is the collision partner.

· Sedcond pair: Axis 2 with axis 3 where axis 3 is the master and axis 2 is the partner axis for axis 3.

Initialisation in the axis parameter list of axis 1

kopf.achs_nr 1

achs_mode 0x8001

Initialisation in the axis parameter list of axis 2

kopf.achs_nr 2

achs_mode 0x8001

kenngr.coll_check_ax_nr 1

kenngr.coll_offset 200000

Initialisation in the axis parameter list of axis 3

kopf.achs_nr 3

achs_mode 0x8001

kenngr.coll_check_ax_nr 1

kenngr.coll_offset 300000

Collision monitoring does not take effect until reference point travel has taken place for the corresponding axes.

Movement direction of the axes

Collison monitoring is done with the asumption that the mechanical movement direction of the axes is equal if for the axes a movement in the same direction is programmed. If that assumption is not satisfied this must be indicated by setting parameter P-AXIS-00262 (coll_moving_dir_inverted) in the axis parameter list of the master axis.

Figure 1-4: Collision pair with mechanically inverse movement directions

Example

Initialisation in the axis parameter list of axis 1

kopf.achs_nr 1

achs_mode 0x8001

Initialisation in the axis parameter list of axis 1

kopf.achs_nr 2

achs_mode 0x8001

kenngr.coll_check_ax_nr 1

kenngr.coll_offset 200000

kenngr.coll_moving_dir_inverted 1

Zero position of the axes

In case of diferent zero positions of the axes this offset has to be entered in parameter P-AXIS-00263 (coll_zero_position_offset). The value of the parameter is equal to the position of the zero position of the collision partner axis in the axis coordinate system of the master axis.

Figure 1-5: Collision pair with different zero positions

Example

Initialisation in the axis parameter list of axis 1

kopf.achs_nr 1

achs_mode 0x8001

Initialisation in the axis parameter list of axis 2

kopf.achs_nr 2

achs_mode 0x8001

kenngr.coll_check_ax_nr 1

kenngr.coll_offset 200000

kenngr.coll_zero_position_offset -100000

Axis deceleration for collision monitoring

As default collision monitoring is done with P-AXIS-00008 (a_max) to calculate the braking distance to decelerate the axes if an collision is detected.

With parameter P-AXIS-00267 (coll_use_a_emergency) this deceleration can be changed to the value defined in parameter P-AXIS-00003 (a_emergency).

Deceleration distance consideration

The current speed of an axis is the result of:

vt = (setptn - setptn-1) / TA vt Current speed

TA Interpolation cycle time

setp Position setpoints in cycles n and n-1

The minimum deceleration distance is the result of the braking deceleration defined by the parameters P-AXIS-00008 (a_max), P-AXIS-00267 (coll_use_a_emergency), P-AXIS-00003 (a_emergency) and the current speed as follows:

sbrake = ½ (vt2/acoll)

With:

sbrake Braking distance

vt Current speed

acoll Deceleration for collision monitoring.

Figure 1-6: Possible collision scenarios


Parameters

More:

button Overview

button Description


Overview

ID | Parameter | Description
P-AXIS-00043 | coll_check_ax_nr | Logical number of the associated axis
P-AXIS-00044 | coll_decelerate_chan | Stopping collision axes in different channels
P-AXIS-00045 | coll_offest | Minimum permitted position distance of the collision axes
P-AXIS-00262 | coll_moving_dir_inverted | Collision axes have different mechanical movement directions
P-AXIS-00263 | coll_zero_position_offset | Offset between zero positions of the collision axes
P-AXIS-00267 | coll_use_a_emergency | Use P-AXIS-00003 (a_emergency) for collision monitoring


Description

P-AXIS-00043 | Logical number of the associated mating axis
Parameter | kenngr.coll_check_ax_nr
Description | Logical axis number of the monitored axis. For this axis, the bit 0x8000 must be set in the axis mode.
Data type | UNS32
Data range | 1 = P-AXIS-00043 = MAX(UNS32)
Dimension | Translatory: - | Rotatory: -
Default | -
Remarks | -

P-AXIS-00044 | Stopping collision axes in different channels
Parameter | kenngr.coll_decelerate_chan
Description | If collision axes belong to different channels, by means of this channel you can compel stopping in the other channel if a collision axis reports a drive error.
Data type | BOOLEAN
Data range | 0: No influence on collision partner axis 1: Stopping the collision partner axis in the other channel
Dimension | Translatory: - | Rotatory: -
Default | -
Remarks | -

P-AXIS-00045 | Minimum permitted position distance of the collision axes
Parameter | kenngr.coll_offset
Description | Minimum permitted position distance of the collision axes
Data type | UNS32
Data range | 0 = P-AXIS-00045 = MAX(UNS32)
Dimension | Translatory: 0.1 µm | Rotatory: -
Default | -
Remarks | -

P-AXIS-00262

Collision axes have different mechanical movement direction

Parameter

kenngr.coll_moving_dir_inverted

Description

If for the collision axes a movement in the same direction is programmed and the axes do not move then mechanically in the same direction this parameter has to be set to 1.

Data type

BOOLEAN

Data range

0: Axes move at a movement command in the same direction also mechanically in the same direction.

1: Axes move at a movement command in the same direction mechanically in opposite directions.

Dimension

Translatory: -

Rotatory: -

Default

-

Remarks

-

P-AXIS-00263 | Zero position offset between collision axis
Parameter | kenngr.coll_decelerate_chan
Description | kenngr. coll_zero_position_offset
Data type | Offset between the zero positions of the collision axes. The value is equal to the coordinates of the zero position of the partner axis in the axis coordinate system of the master axis.
Data range | SGN32
Dimension | Translatory: - | Rotatory: -
Default | -
Remarks | -

P-AXIS-00267 | Use P-AXIS-00003 (a_emergency) for collision monitoring
Parameter | kenngr.coll_use_a_emergency
Description | Use P-AXIS-00003 (a_emergency) to calculate the braking distances and to decelerate the axes if a collision is detected instead of P-AXIS-00008 (a_max).
Data type | BOOLEAN
Data range | 0: Collision monitoring with P-AXIS-00008 (a_max) 1: Collision monitoring with P-AXIS-00003 (a_emergency)
Dimension | Translatory: - | Rotatory: -
Default | 0
Remarks | -