High/low speed axes

The TwinCAT high speed/low speed axis type (two speed) allow the positioning of a high speed/low speed axis. Such a high speed/ low speed axis can be physically made up of a motor with two speeds (switching of the pole pair numbers), or alternatively by a motor that can be driven at two speeds with the help of a frequency converter.

The typical positioning of such an axis is first of all made at high speed up to a parameterization distance away from the target position (creep distance in pos. or neg. direction). From this position you switch to low speed, so that the physical speed (actual speed) is reduced to a slower constant speed. The slow speed is then also switched off at a closer distance from the target (braking distance) and the stop brake is then activated after a parameterized time (delay time for brake incidence).

This particular positioning sequence is for the sole purpose of ensuring that the axis reaches its target position in the most accurate and repeatable way.

In case a positioning inaccuracy occurs depending on the last physical direction of travel (typical effect of a backlash), then a loop movement is activated.  This loop movement has the effect that the target position is always approached from the same direction thus reducing the backlash influence. In case of an axis stop basically the same sequence is run through as for positioning without loop movement. However the priority for an axis stop lies on a shorter braking distance or time and not on the positioning accuracy. There is the separate parameter (loop movement for stop) for stopping in the shortest possible distance.

General

There are 2 equal possibilities available for the physical control of the axis, in the form of discrete travel signals.

Use of the 6 bits in ControlByte

bMinusHigh

High speed, negative direction

bMinusLow

Low speed, negative direction

bPlusHigh

High speed, positive direction

bPlusLow

Low speed, positive direction

bBreak

Braking bit

bBreakInv

Inverted braking bit

Use of the 6 bits in ExtControlByte

bDirectionMinus

Negative direction

bDirectionPlus

Positive direction

bVeloLow

Low speed

bVeloHigh

High speed

bBreak

Braking bit

bBreakInv

Inverted braking bit

A master-slave coupling is not possible with high/low speed axis.

An axis start will only be initiated if the distance from the target point is in fact larger than the parameterised braking distance.

Speed and override

Speed and override

IO configuration: Drive interface for high/low speed axes NC->IO (12 bytes)

IO configuration: Drive interface for high/low speed axes NC->IO (12 bytes)

Parameters of the rapid/creep axes

High/low speed axes 1:

Parameter

Description

Creep distance positive direction

The creep distance in the positive direction gives the distance to the target position, below which the velocity changes from rapid to creep velocity, if the direction of travel is positive.
If a looping distance is selected then this distance is based on the movement reversal point.

This distance is denoted by Δp1 in positioning example 1.

Creep distance negative direction

The creep distance in the negative direction gives the distance to the target position, below which the velocity changes from rapid to creep velocity, if the direction of travel is negative.

If a looping distance is selected then this distance is based on the movement reversal point.

Braking distance positive direction

The braking distance in the positive direction gives the distance to the target position, below which the creep velocity is switched off, if the direction of travel is positive.

This distance is denoted by Δp2 in positioning example 1

Braking distance negative direction

The braking distance in the negative direction gives the distance to the target position, below which the creep velocity is switched off, if the direction of travel is negative.

Brake incidence delay time in pos. direction

This delay time gives the start-up delay of the brakes after switching off of the creep velocity, if the direction of travel is positive.

In positioning example 1, this time is between the times T4 and T5.

Brake incidence delay time in negative direction

This delay time gives the start-up delay of the brakes after switching off of the creep velocity, if the direction of travel is negative.

Rapid to creep velocity delay time

This waiting time is between the switching off of the rapid velocity and switching on of the creep velocity.

In positioning example 1 , this time is between the times T2 and T3.

Creep distance for stop

The creep distance for stop gives the distance that is covered with the creep velocity after calling up the stop. This creep distance is usually selected shorter than the creep distances in positive and negative direction, since the axis should stop as soon as possible and the exact positioning is not a priority.

This distance is denoted by Δp1 in positioning example 3.

Brake release delay

The brake is released immediately the axis is started and after elapse of the brake release delay either the rapid or creep velocity is activated depending on the displacement.

In positioning example 1 , this time is between the times T0 and  T1.

Pulse time in positive direction

This parameter is not evaluated and therefore has no effect.

Pulse time in negative direction

This parameter is not evaluated and therefore has no effect.

High/low speed axes 2:

Parameter

Description

OPERATION MODE: looping distance

The looping distance can be activated with this flag. The looping distance is for approaching the target position always from the same direction. In the case of a positive (negative) looping distance a target position in the positive (negative) direction is increased by the amount of the looping distance and the target then approached from the opposite direction. Consequently the target position in case of a positive looping distance is always approached with negative velocity and a negative looping distance with positive velocity.

Looping distance (+ / -)

The looping distance gives the distance, by which the target position is exceeded if necessary so that it is possible to move to the target position from the required direction.

This distance is denoted by creep distance (looping distance) in positioning example 2

Axis movement state (nAxisState in cyclic interface):

Axis movement state (nAxisState in cyclic interface):

nAxisState

Description

0

Set value generator not active

20

Axis stopped

21

Main travel phase: High or low speed travel in relation to the start speed and override

22

Braking phase: High-to-low speed delay time active

23

Braking phase: Low speed travel

24

Braking phase: Delay time for brake incidence active

1) without looping distance

High/low speed axes 3:

2) with looping distance

High/low speed axes 4:

Positioning examples:

Positioning examples

1) Positioning A → B, without loop movement

Positioning A → B, without loop movement

High/low speed axes 5:
TcNcTwoSpeed_Positioning1

2) Positioning A → B, with loop movement > 0.0

2) Positioning A → B, with loop movement > 0.0

High/low speed axes 6:
TcNcTwoSpeed_Positioning2

3) Stop call up in case of active positioning

High/low speed axes 7: