Axis start

At the axis start, a jerk-limited dynamic profile is generated via the standard dynamic parameters (acceleration, deceleration, jerk) and the start parameters (set velocity and target position), and stored in form of a table (run time table), which is then used for the generation of the set values within the block execution task.

Units and reference systems 

Basic and pre-set units are millimeter [mm] and second [s], although the position can also be displayed in modulo values. Here, the units used are mm and s.
The axis can be started from its current position absolute, relative or modulo (in relation to a given modulo factor) to a target position.
The direction of travel of the axis is determined on the basis of the sign of the modulo position. If a modulo position smaller than the modulo factor is specified, (default value 360.0) the shortest path to that modulo position will be taken, with the specified direction being maintained. This end position may still be in the same or in the next modulo period (depending on the start position). In case of modulo position 0.0, the sign cannot be used to determine the direction of travel. By definition, this case is interpreted as positive direction of travel. To approach the position 0.0 in negative direction, a negative value close to 0, e.g. -1e-6 can be specified. 

If a modulo position is specified as being greater than or equal to the modulo factor, the target position is no longer reached by the shortest route, but only after the modulo position has been passed over once or several times. As always, the sign defines the direction of travel and the position value divided by the modulo factor defines the number of additional revolutions until subsequently stopping at the corresponding orientation. An example: modulo start at position +540.0 degrees with modulo factor 360.0 means that the axis is moved at least one period (360.0 + 180.0 = 540.0) in positive direction and then is stopped on the shortest way oriented at the modulo position 180.0 degrees.
Here, only absolute positioning is considered.
In the following a(t) is used for acceleration, v(t) for velocity and p(t) for position at time t after start of axis.
In this context accelerations/decelerations and velocities almost refer to path accelerations/decelerations (path acceleration/deceleration = signum(axis target velocity) × axis acceleration/deceleration ) and path velocities ( path velocity = magnitude of axis velocity).

Global dynamic parameters

Start parameters

Velocity profile and acceleration profile

The standard dynamics for servo axes is a jerk-limited 7-phase dynamics. The 7 phases are (optional phases are shown in brackets [])

  1. Acceleration phases a(t) > 0:
    • Acceleration increase: da(t)/dt = +J
    • [Constant acceleration: a(t) = A+],
    • Acceleration decrease: da(t)/dt = -J,
  2. [Constant velocity phase |v(t)| = V],
  3. Deceleration phases a(t) < 0:
    • Deceleration increase: da(t)/dt = -J
    • [Constant deceleration: a(t) = -A-],
    • Deceleration decrease: da(t)/dt = +J.

General notes and special cases

Procedure

  1. Prior to a start request: the Set PreParation task is awaiting new tasks, and in the Set ExeCution task only position control is operating.
  2. Set PreParation task: once the start parameters have been checked, a dynamic profile is generated and stored in a runtime table. The setpoint generation of the Set ExeCution task is than automatically enabled.
  3. Set ExeCution task: the setpoint generator calculates the current setpoints based on the runtime table and the expired time since the start and transfers them to the position controller. Setpoints for the setpoint generation are the local setpoints, i.e. the following parameters calculated during every cycle:
    • the position setpoint (for position control),
    • the velocity command value (for velocity pre-control),
    • the acceleration setpoint (for control with special controllers),
    • the set direction (for direction-independent feed monitoring).
  4. After the end of path: in the Set ExeCution task, once again only the position controller is executed.

Notes on the figures:

Scales: velocity [mm/s] / time [s]
Colors: 

            Set position: dark blue                        Actual position: light blue

            Target velocity: dark green        Actual velocity: light green 

            Set acceleration: dark red            Actual acceleration: light red

            Following error: yellow  

Dynamics I: acceleration/deceleration

Axis start 1:

 

Dynamics 1.1 Dynamic profile with A+ = A- = 5000.0 mm/s/s, R = 50000.0 mm/s/s, V = 2000.0 mm/s from 0.0 mm to 1000.0 mm

 

Axis start 2:

 

Dynamics 1.2 Dynamic profile with A+ = -5000.0 ,A- = 10000.0 mm/s/s, R = 50000.0 mm/s/s/s, V = 2000.0 mm/s from 0.0 mm to 1000.0 mm

 

Axis start 3:

 

Dynamics 1.3 Dynamic profile with A+ = A- = 15000.0 mm/s/s, R = 50000.0 mm/s/s, V = 2000.0 mm/s from 0.0 mm to 1000.0 mm 

Dynamics II: jerk (change in acceleration)

Axis start 4:

 

Dynamics 2.1  Dynamic profile with A+ = A- 5000.0 mm/s/s, R = 20000.0 mm/s/s, V = 2000.0 mm/s from 0.0 mm to 1000.0 mm

 

Axis start 5:

 

Dynamics 2.2 Dynamic profile with A+ = A- 5000.0 mm/s/s, R = 50000.0 mm/s/s, V = 2000.0 mm/s from 0.0 mm to 1000.0 mm

 

Axis start 6:

 

Dynamics 2.3 Dynamic profile with A+ = A- 5000.0 mm/s/s, R = 100000.0 mm/s/s, V = 2000.0 mm/s from 0.0 mm to 1000.0 mm 

Dynamics III: velocity reduction

Axis start 7:

 

Dynamics 3.1 Dynamic profile with A+ = A- 5000.0 mm/s/s, R = 50000.0 mm/s/s, V = 1500.0 mm/s from 0.0 mm to 800.0 mm

 

Axis start 8:

 

Dynamics 3.2 Dynamic profile with A+ = A- 5000.0 mm/s/s, R = 50000.0 mm/s/s, V = 1750.0 mm/s from 0.0 mm to 800.0 mm

 

Axis start 9:

 

Dynamics 3.3 Dynamic profile with A+ = A- 5000.0 mm/s/s, R = 50000.0 mm/s/s, V = 2000.0 mm/s from 0.0 mm to 800.0 mm

 

Global dynamic parameters

Dynamic parameters 

Meaning and boundary conditions

Acceleration A+

Acceleration limit (A+ > 0.0)

Deceleration A-

Deceleration limit (A- > 0.0)

Jerk J

Amount of the acceleration change constant (J > 0.0)

Notes on start parameters:

  1. For orders of magnitude from J to A+ or A- in units of mm and Saf cycle time T should apply with sufficiently large distances: J « min(A+, A-). (An example: with Saf- cycle time T = 1/1000 s , acceleration as well as deceleration A+ = A- = 10000 mm/s/s = 1/100 mm/T/T, jerk J = 100000 mm/s/s = 1/10000 mm/T/T results in J = 0.0001 " A+ = A-= 0.01.)
  2. To ensure that the set acceleration A+ or deceleration A- is actually reached, the jerk J must at least correspond to the critical jerk: J ≥ max( (A+)², (A-)²)/V.
Start parameters

Start parameters

Meaning and boundary conditions

Target velocity V

requested path set velocity (amount of the axis target velocity) (V > 0.0, V ≤ V_max)

Target position P

Position to be approached P (P_min ≤ P ≤ P_max)

Notes on start parameters:

  1. If the target velocity is greater than the maximum permitted velocityV_max for the axis, the start is refused and an error is generated.
  2. If the target velocity is greater than the reference velocityV_ref specified for the axis, then the start is refused and an error is generated.
    If the target velocity is equal or nearly equal to the reference velocity, then the axis has no or only little reserves for control.
  3. For orders of magnitude from A+ and A- to V in units mm and Saf- cycle time T should be valid with sufficiently large distances: max (A+,A-) " V. (An example: with Saf- cycle time T = 1/1000 s , target velocity V = 1000 mm/s = 1 mm/T, acceleration as well as deceleration A+ = A- = 10000 mm/s/s = 1/100 mm/T/T results in A+ = A- = 0.01 "1 = V.)
  4. If the target position P is outside of the software limit switches (P_min, P_Max), the start is refused and an error is generated.
  5. A start from outside the software limit switches (P_min, P_max) into the range within the software limit switches is permitted.