Notes on the documentation

This description is only intended for the use of trained specialists in control and automation engineering who are familiar with the applicable national standards.
It is essential that the following notes and explanations are followed when installing and commissioning these components.

The responsible staff must ensure that the application or use of the products described satisfy all the requirements for safety, including all the relevant laws, regulations, guidelines and standards.

Disclaimer

The documentation has been prepared with care. The products described are, however, constantly under development.
For that reason the documentation is not in every case checked for consistency with performance data, standards or other characteristics.
In the event that it contains technical or editorial errors, we retain the right to make alterations at any time and without warning.
No claims for the modification of products that have already been supplied may be made on the basis of the data, diagrams and descriptions in this documentation.

Trademarks

Beckhoff®, TwinCAT®, EtherCAT®, Safety over EtherCAT®, TwinSAFE® and XFC® are registered trademarks of and licensed by Beckhoff Automation GmbH.
Other designations used in this publication may be trademarks whose use by third parties for their own purposes could violate the rights of the owners.

Patent Pending

The TwinCAT Technology is covered, including but not limited to the following patent applications and patents:
EP0851348, US6167425 with corresponding applications or registrations in various other countries.

Copyright

© Beckhoff Automation GmbH & Co. KG, Germany.
The reproduction, distribution and utilization of this document as well as the communication of its contents to others without express authorization are prohibited.
Offenders will be held liable for the payment of damages. All rights reserved in the event of the grant of a patent, utility model or design.


Overview

TwinCAT NC SLAVES Flying Saw

General

The Flying Saw (parallel slave axis) is a slave axis, moving in parallel with the master axis, whose velocity is synchronised, at a particular position, to the master velocity of the moving master axis. It is understood here that in coupling the slave axis to the master axis, the master axis is moving with a (constant) set velocity, and that the slave axis is at its base (coupling) position. The slave axis starts automatically when the master axis reaches the dynamic coupling position. The whole system is partially implemented as a linear path controller (slave acceleration phase (jerk restricted) and slave parallel travel) and partly under time control (slave delay phase (jerk restricted) and slave stationary).

The diagonal flying saw (diagonal slave axis) is a slave axis that is velocity synchronised to the moving master axis at a given position diagonally (with a constant angle) in such a way that the velocity component of the slave axis in the direction of the master's motion following the synchronisation is equal to the master velocity.

Interfaces

The interfaces consist of the System Manager, PLC blocks and the cyclic NC-PLC axis interface.

Procedure

A procedure consists of these phases:

  1. Logical coupling to the master axis (the slave axis remains stationary).
  2. Dynamic coupling to the master axis: acceleration phase.
  3. Movement in parallel with the master axis.
  4. Stop: dynamic uncoupling from the master axis: braking phase.
  5. Stationary.
  6. Logical uncoupling.

Synchronisation Conditions

The synchronisation conditions for the jerk restricted linear acceleration algorithm implies forced conformity between the coupling positions of the master and slave and the synchronisation positions of master and slave.

Start and Stop

When the axis is started, and after the dynamic coupling position has been reached, the start parameters (master synchronisation position and slave synchronisation position) and the general dynamic parameters are used to generate a jerk restricted acceleration profile with the current master velocity as the set velocity with every call of the block execution task. This is used to generate this set values for linear path control of the slave axis.

To stop, the general dynamic data is used to calculate a time-controlled braking profile, the slave axis is dynamically uncoupled from the master, and braked in accordance with the braking profile.

Position compensation

Online position correction of the flying saw, during which the slave axis is moved along a specified path by a certain additional or reduced distance compared with the coupling to the master axis. The compensation dynamics must be parameterised. If the desired compensation cannot be carried out with the specified compensation start data, the maximum possible compensation will automatically be carried out. Compensation may be terminated prematurely via a compensation stop. The compensation is only to be used during the synchronisation phase.

Warning:

If the compensation difference D is negative (deceleration), (double) movement reversal is possible.

Diagonal Flying Saw

If v is the current set velocity of the parallel slave axis, then the velocity of the diagonal slave axis is v/sin(θ), where θ, 0.0° < θ ≤ 90.0°, indicates the complementary angle between the master direction and the slave direction.

Flying Saw and Flying Diagonal Saw at Velocity

The Flying Saw at Velocity (parallel slave axis) is a slave axis moving in parallel with a moving master axis, whose velocity is synchronised as quickly as possible to the velocity of the master axis. It is understood here that in coupling the slave axis to the master axis, the master axis is moving with a (constant) set velocity, and that the slave axis is at its base (coupling) position. The whole system is partially implemented as a linear path controller (slave acceleration phase (jerk restricted) and slave parallel travel) and partly under time control (slave delay phase (jerk restricted) and slave stationary).

The diagonal flying saw at velocity (diagonal slave axis) is a slave axis whose velocity is synchronised to the moving master axis as quickly as possible diagonally (with a constant angle) in such a way that the velocity component of the slave axis in the direction of the master's motion following the synchronisation is equal to the master velocity.

Flying Saw with Online Conversion to Master PTP Axis

This versatile slave type is started as a flying saw. It is coupled at the synchronisation point to the velocity of the master axis. It can then be locally synchronised again by means of position compensation in the synchronous phase, after which it can be uncoupled online in the synchronous phase from the master and can itself be converted into a PTP master axis. At this point force can be removed, or it can continue to operate as an endless axis at a velocity stated during the coupling or uncoupling instruction. Finally a "new end position" instruction can be issued to move it to its final destination.


Interfaces

The user can operate the flying saw by means of the System Manager or by PLC blocks. Furthermore, a cyclic NC-PLC axis interface is available (in the System Manager or via the PLC) that contains the axis process image and enables access to various variables.

PLC Document

There is special PLC documentation for the flying saw.

System Manager

The System Manager offers access to all the functionalities of the flying saw:

  • Logical coupling, stating the master axis and setting the synchronisation positions.
  • Stop.

PLC Blocks

The PLC Library offers access to the complete slave axis functionality

  • Logical coupling, stating the master axis and setting the synchronisation positions.
  • Stop.

NC-PLC-Interface

The cyclic NC-PLC axis interface contains the axis process image and particularly access to the coupling information (coupling flag).


Procedure

A procedure consists of these phases:

  1. Logical coupling to the master axis (the slave axis remains stationary).
  2. Dynamic coupling to the master axis: Acceleration phase.
  3. Movement in parallel with the master axis.
  4. Stop: dynamic uncoupling from the master axis: braking phase.
  5. Stationary
  6. Logical uncoupling.

Logical Coupling

Nearly all the functionality of the slave axis is blocked by (logical) coupling. The axis is in its base position, and waits for the master axis to pass through the dynamic coupling position.

Dynamic Coupling

When the master axis passes through the dynamic coupling position, the slave axis starts automatically. Every time the block execution task is called, a full jerk restricted acceleration profile from velocity 0.0 to the current master velocity is calculated. The latest value is passed to the slave axis as a set value via a linear path controller.

Acceleration phase

The acceleration phase is designed as a linear path controller. This means that the slave axis follows the current data for the master axis, both in terms of velocity and of position, so that it follows all the changes in velocity and motion inversions of the master axis. When the master axis passes through its synchronisation position, the slave axis has also reached its synchronisation position. It has thereby reached the current master velocity, and the parallel phase begins.

The Parallel Phase

In the parallel phase, the flying saw is coupled to the master in a condition very similar to that of the linear slave axis (with coupling factor 1.0).

Dynamic Uncoupling

The user stops the slave to end the parallel travel. In this process, a jerk restricted time controlled dynamic profile is generated from the current dynamic state (acceleration, velocity) down to a velocity of 0.0. The slave is dynamically uncoupled from the master, and braked according to this calculated dynamic profile.

Logical Uncoupling

The position at which the slave becomes stationary depends, in addition to the velocity, very much on the acceleration state of the axis (at the moment when the stop function is called). Once it is stationary, the slave axis can be uncoupled from the master axis.

Logical uncoupling is possible at any time, but uncoupling during motion does result in a following error.

Reverse motion stop

In the linear path controlled phases (acceleration, parallel travel) the slave axis is synchronised to the master axis in such a way that it follows every reverse motion. To prevent the slave axis from travelling beyond its base position (support) in the event of a large reverse movement, a reverse motion stop is provided to prevent the reverse motion from extending beyond the base position. This stop functions instantaneously (following error). When the master moves again through its old coupling position in the original direction, the slave automatically starts up again.

Sequence: master start, slave start, synchronisation, synchronisation phase, slave stop, master stop.


Synchronisation Conditions

The fundamental axis synchronisation for the flying saw depends crucially on the acceleration algorithm of the slave axis. We elucidate here the axis synchronisation conditions for the jerk restricted 3-phase algorithm. The synchronisation conditions are based on the following axis variables (it should be noted that the master and the slave may have different co-ordinate systems using the same units):

  1. Slave synchronisation position,
  2. Slave base position = logical slave coupling position = dynamic slave coupling position,
  3. Master synchronisation position,
  4. Logical master coupling position (position of the master axis for master-slave coupling),
  5. Dynamic master coupling position (position of the master axis for dynamic slave start).

Synchronisation Conditions for the Jerk Restricted Acceleration Algorithm

The slave axis requires a certain time to pass from its initial condition (base position, velocity 0.0, acceleration 0.0) to its final condition (synchronisation position, master velocity, master acceleration). During this time the master axis covers the distance from the dynamic master coupling position to the master synchronisation position. This means that three of the four positions ( slave synchronisation position, slave coupling position, master synchronisation position, dynamic master coupling position ) are independent, and the fourth is then given. The fundamental algorithm implies the following relationship between the positions:

|dynamic master coupling position - master synchronisation position| = 2 × |slave coupling position - slave synchronisation position|.

It follows that the distance between the dynamic master coupling position and the master synchronisation position must be greater than twice the distance between the slave coupling position and the slave synchronisation position. At start, the two synchronisation positions are stated explicitly and the slave coupling position is known internally, so that the dynamic master coupling position can be calculated from these. If the synchronisation cannot be executed because the master is already too close to the coupling position, the coupling is aborted with an error.

Synchronisation conditions for the flying diagonal saw.

Synchronisation conditions: |0.0 - 1000.0| = 2.0 x |5000.0 - 1000.0|

Master start at -1000.0 mm, master coupling position-logical -200.0 mm, master coupling position-dynamic 0.0 mm, master synchronisation position 1000.0 mm.

Slave waiting position = slave coupling position-logical = slave coupling position-dynamic 500.0 mm, slave synchronisation position = 1000.0 mm.

It is sufficient if the master coupling position-logical is definitely smaller than the master coupling position-dynamic.


Coupling, Starting and Stopping

After the dynamic coupling position has been reached, the start parameters (master synchronisation position and slave synchronisation position) and the general dynamic parameters are used to generate a jerk restricted acceleration profile with the current master velocity as the set velocity with every call of the block execution task. This is used to generate this set values for linear path control of the slave axis.

To stop, the general dynamic data is used to calculate a time-controlled braking profile, the slave axis is dynamically uncoupled from the master, and braked in accordance with the braking profile.

Coupling Parameters

P_ms (master synchronisation position in the master co-ordinate system)

P_ss (slave synchronisation position in the slave co-ordinate system)

θ Diagonal Angle

cf Coupling factor to master velocity. The coupling factor must not change the direction of the axis.

Internal parameters: (P_sc slave coupling position, P_mcd dynamic master coupling position)

There is no explicit start. The start data is calculated internally, and the start is automatically initiated.

Start parameters

Start parameters | Meaning and boundary conditions
Master synchronisation position P_ms | Position at which the master should be located (in its co-ordinate system) when the slave is to be a synchronised to it, |P_ms - P_mcd| = 2 × |P_ss - P_sc|
Slave synchronisation position P_ss | Position at which the slave should be located (in its co-ordinate system) when it is to be a synchronised to the master, |P_ms - P_mcd| = 2 × |P_ss - P_sc|
Coupling factor cf | Coupling factor cf ≠ 0.0
Diagonal Angle θ | Complementary angle between master direction and slave direction, 0.0° < θ ≤ 90.0°, parallel slave: θ = 90.0°

Interfaces

System Manager

PLC Blocks

Stop

Stop has the highest priority, and must function in all dynamic phases except the stop phase itself (not in the preliminary phase and not in the stationary phase). Stop also functions if reverse motion occurs. If the slave axis is subject to acceleration, an additional phase is inserted in front of the 3-phase algorithm for the stop dynamics unless this would entail an inversion of the dynamics. During this additional phase, the slave axis changes from its current acceleration to an acceleration of 0.0.

Attention: the stop of the flying saw must be finished while the master axis is running otherwise the stop is locked.

There are no explicit stop parameters. These (delay, jerk) are taken from the global dynamic data for the axis.

Interfaces

System Manager

PLC Blocks


Position compensation

Online position correction of the flying saw, during which the slave axis is moved along a specified path by a certain additional or reduced distance compared with the coupling to the master axis. The compensation dynamics must be parameterised. If the desired compensation cannot be carried out with the specified compensation start data, the maximum possible compensation will automatically be carried out. Compensation may be terminated prematurely via a compensation stop. The compensation is only to be used during the synchronisation phase.

Warning:

If the compensation difference D is negative (deceleration), (double) movement reversal is possible.

General notes

Position compensation for slave axes is a variation of position compensation for linear slave axes .

Special features

  1. The compensation should only be performed after successful synchronisation (i.e. following the end of the acceleration phase).
  2. The compensation should be complete before the braking phase begins.
  3. The compensation takes the positional extension of the diagonal saw into account.

Master data: Start from 1000.0 to -10,000.0 with synchronisation position -1000.0

Slave start position -500.0 with slave synchronisation position -1000.0

Compensation data: A± = 1000.0 mm/sec/sec, V = 500.0 mm/sec, VP = 2000.0 mm/sec, compensation difference ±200.0 mm, compensation length 2000.0 mm.


Diagonal Flying Saw

Overview

The diagonal flying saw (diagonal slave) is a slave axis that is velocity synchronised to the moving master axis diagonally (with a constant angle θ) in such a way that the velocity component of the slave axis in the direction of the master's motion is equal to the master velocity.

Geometry: Diagonal Angle θ

If v is the current set velocity of a parallel slave axis, then the velocity of the diagonal slave axis is v/sin(θ), where θ (0.0° < θ ≤ 90.0°), indicates the complementary angle between the master direction and the slave direction. In the synchronisation phase, therefore, the slave axis is coupled to the master axis with a coupling factor of 1/sin(θ).

Diagonal saw: geometry

Synchronisation Conditions for the Jerk Restricted/Linear Diagonal Acceleration Algorithm

The diagonal slave axis requires a certain time to pass from its initial condition (base position, velocity 0.0, acceleration 0.0) to its final condition (synchronisation position, master velocity, master acceleration). During this time the master axis covers the distance from the dynamic master coupling position to the master synchronisation position. The basic algorithms require that:

|Slave coupling position - slave synchronisation position| = 0.5 ×|dynamic master coupling position - master synchronisation position| / sin(θ).

It follows that the distance between the dynamic master coupling position and the master synchronisation position must be greater than 2.0× sin(θ) times the distance between the slave coupling position - slave synchronisation position.

Dynamics

The velocity of the slave axis once it has reached the parallel phase is equal to 1.0/sin(θ) times the velocity of the master axis at that time. This velocity is greater than the velocity of the master axis, because the slave axis, in addition to the parallel component (which is the master velocity) must also have an orthogonal component.


Flying Saw and Flying Diagonal Saw at Velocity

Overview

The Flying Saw at Velocity (parallel slave axis) is a slave axis moving in parallel with a moving master axis, whose velocity is synchronised as quickly as possible to the velocity of the master axis. It is understood here that in coupling the slave axis to the master axis, the master axis is moving with a (constant) set velocity, and that the slave axis is at its base (coupling) position. The whole system is partially implemented as a linear path controller (slave acceleration phase (jerk restricted) and slave parallel travel) and partly under time control (slave delay phase (jerk restricted) and slave stationary).

The diagonal flying saw at velocity (diagonal slave axis) is a slave axis whose velocity is synchronised to the moving master axis as quickly as possible diagonally (with a constant angle) in such a way that the velocity component of the slave axis in the direction of the master's motion following the synchronisation is equal to the master velocity.

General

Apart from the way in which the coupling is executed, the flying (diagonal) saw at velocity is identical in its algorithms to the flying (diagonal) saw to position (and velocity). The direction of the slave axis is here specified as the direction of the master axis. If, at the time of coupling, the master axis does not have any direction (e.g. an encoder axis that happens to be stationary), the coupling is aborted.

Coupling Parameters

θ Diagonal Angle

The additional start data is calculated internally, and the start is automatically initiated straight away.

Start parameters

Start parameters | Meaning and boundary conditions
Diagonal Angle θ | Complementary angle between master direction and slave direction, 0.0° < θ ≤ 90.0°, parallel slave: θ = 90.0°

Interfaces

System Manager

PLC Blocks

The slave axis couples on the fly as quickly as possible to velocity.


Flying Saw with Online Conversion to Master PTP Axis

This versatile slave type is started as a flying saw. It is coupled at the synchronisation point to the velocity of the master axis. It can then be locally synchronised again by means of position compensation in the synchronous phase, after which it can be uncoupled online in the synchronous phase from the master and can itself be converted into a PTP master axis. At this point force is not applied, after which all the master functions are available.

Requirements

The logical precondition for this conversion is that (i) the flying saw is started as a parallel slave, and that (ii) the current direction of the flying saw agrees with the logical direction at the start. It is most dynamically favourable if the flying saw is converted during the synchronous phase.

The dynamic precondition for a conversion is that the new dynamic parameters are such that the new master axis can be stopped at any time. One implication of this is that the new dynamic parameters (those of the new master axis) must not be weaker than the old dynamic parameters (in the synchronous phase, these are those of the old master axis for the flying saw, otherwise those of the old master axis of the flying saw) multiplied by the coupling factor.

The physical precondition for a smooth dynamic conversion is that the velocity of the flying saw does not fluctuate too much at the time of the conversion.

Condition Following Conversion

Following the conversion, the flying saw is a PTP master axis with full functionality. The instruction given to the axis at that time implies that, following the conversion, the axis will initially operate without force (that is with an acceleration of 0), and that it then retains the velocity that has been reached in that way and drives to the target position ±∞ , whereby the direction is maintained at the time of the transformation.

Functionality Following Conversion

All master functions are available: override, stop, position compensation, 'new end position' and 'new velocity and new end position'.

Start parameters

Start parameters | Meaning and boundary conditions
Master synchronisation position P_ms | Position at which the master should be located (in its co-ordinate system) when the slave is to be a synchronised to it, |P_ms - P_mcd| = 2 × |P_ss - P_sc|
Slave synchronisation position P_ss | Position at which the slave should be located (in its co-ordinate system) when it is to be a synchronised to the master, |P_ms - P_mcd| = 2 × |P_ss - P_sc|
Diagonal Angle θ | Parallel slave: θ = 90.0°
Coupling factor cf | Coupling factor cf ≠ 0.0

Interfaces

System Manager

PLC Blocks