Motion Parameters

Motion parameters are parameters related to motion operations. These parameters are set using functions such as SetParam and SetLimitParam.

This page contains explanations for the following motion parameters:

Quick Stop Dec

Variable Name:

quickStopDec

Type:

double

Unit:

user unit / second^2

Minimum Value:

1e-6

Maximum Value:

274877906943

Default Value:

100000

The deceleration to stop the axis at when the axis is stopped using quick stop.

To execute a quick stop, call the ExecQuickStop function.

The differences between quick stop and the regular Stop function are:

  • Quick stop uses a preset quick stop deceleration parameter (this parameter) to determine the deceleration rate. Regular stop uses the deceleration parameter that was specified to the command the axis is stopping from.

  • Quick stop always uses the Trapezodial profile type (that is, the deceleration rate is constant). Regular stop uses the profile type that was specified to the command the axis is stopping from.

  • A regular stop can be overridden by a quick stop, but a quick stop cannot be overridden by a regular stop.

Prohibit Overtravel

Variable Name:

prohibitOvertravel

Type:

ProhibitOvertravelType

Default Value:

ChangeDeceleration

This parameter determines whether an axis is allowed to overtravel beyond the target position, reverse direction, and move back to the target position if a profile could not be generated otherwise. For example, the axis may overtravel if an override is executed while the axis is at a high enough velocity such that it cannot decelerate to zero velocity before reaching the target position.

When executing an interpolation command, the value of this parameter for the first axis of the interpolation is applied.

Also see Overtravel.

Linear Intpl Override Type

Variable Name:

linearIntplOverrideType

Type:

LinearIntplOverrideType

Default Value:

FastBlending

This parameter determines the method by which a linear interpolation override is executed.

When executing a linear interpolation override, the value of this parameter for the first axis of the override linear interpolation is applied.

The FastBlending linear interpolation override type will transition the original interpolation to a stop motion and blend it with the motion of the override interpolation. This is the default and recommended linear interpolation override type.

With the FastBlending linear interpolation override type, if only part of the axes of an interpolation command is overridden, the remaining axes will decelerate to a stop.

The Blending linear interpolation override type will blend the motions of the two interpolations. During the blending segment, the velocities of the two interpolations will be added. The override linear interpolation will not start while the remaining time of the original interpolation is greater than the total time that the override interpolation takes to complete.

The Smoothing linear interpolation override type will insert a smoothing segment between the original and override interpolations. The Linear Intpl Override Smooth Percent determines the amount of smoothing to apply as a percentage.

Also see Interpolation Overrides.

Linear Intpl Override Smooth Percent

Variable Name:

linearIntplOverrideSmoothPercent

Type:

unsigned int

Unit:

%

Minimum Value:

0

Maximum Value:

100

Default Value:

30

This parameter determines the amount of smoothing to apply during linear interpolation overrides, as a percentage of the travel distance of the override linear interpolation.

This parameter only has an effect if the Linear Intpl Override Type parameter is set to Smoothing.

This parameter has no effect on circular interpolation overrides.

Circular Intpl Override Type

Variable Name:

circularIntplOverrideType

Type:

CircularIntplOverrideType

Default Value:

FastBlending

This parameter determines the method by which a circular interpolation override is executed. When executing a circular interpolation override, the value of this parameter for the first axis of the override circular interpolation is applied.

The FastBlending circular interpolation override type will transition the original interpolation to a stop motion and blend it with the motion of the override interpolation. This is the default and recommended circular interpolation override type.

With the FastBlending circular interpolation override type, if only part of the axes of an interpolation command is overridden, the remaining axes will decelerate to a stop.

The Blending circular interpolation override type will blend the motions of the two interpolations. During the blending segment, the velocities of the two interpolations will be added. The override circular interpolation will not start while the remaining time of the original interpolation is greater than the total time that the override interpolation takes to complete.

Also see Interpolation Overrides.

Interrupted Intpl Use Quick Stop

Variable Name:

interruptedIntplUseQuickStop

Type:

bool

Default Value:

FALSE

If an interpolation command is interrupted (one of the interpolating axes triggers a limit switch, reaches the software limit, generates an amp alarm, etc.), all interpolating axes will decelerate to a stop. For axes with this parameter set to FALSE, the axes will decelerate along the original interpolated path, retaining the composite deceleration of the original interpolation command. For axes with this parameter set to TRUE, the axes will decelerate independently at the deceleration of the Quick Stop Dec parameter.

Single Turn Reduce To Half Turn

Variable Name:

singleTurnReduceToHalfTurn

Type:

bool

Default Value:

TRUE

If set to TRUE, the travel direction of absolute position commands for Single Turn Mode axes will be adjusted so that the travel distance is at most half of the Single Turn Encoder Count.

Also see Single Turn Mode.

Enable Global Starting Velocity

Variable Name:

enableGlobalStartingVelocity

Type:

bool

Default Value:

FALSE

TRUE: The value specified in Starting Velocity for the motion commands of this axis will be ignored and overwritten by the value of the Global Starting Velocity parameter.

FALSE: Starting Velocity is specified normally.

For interpolation commands, the value of this parameter for the first specified axis is applied.

Global Starting Velocity

Variable Name:

globalStartingVelocity

Type:

double

Unit:

user unit / second

Minimum Value:

0

Maximum Value:

274877906943

Default Value:

0

If Enable Global Starting Velocity is TRUE, the value set for this parameter will overwrite the Starting Velocity used by this axis during motion.

Enable Global End Velocity

Variable Name:

enableGlobalEndVelocity

Type:

bool

Default Value:

FALSE

TRUE: The value specified in End Velocity for the motion commands of this axis will be ignored and overwritten by the value of the Global End Velocity parameter.

FALSE: End Velocity is specified normally.

For interpolation commands, the value of this parameter for the first specified axis is applied.

Global End Velocity

Variable Name:

globalEndVelocity

Type:

double

Unit:

user unit / second

Minimum Value:

0

Maximum Value:

274877906943

Default Value:

0

If Enable Global End Velocity is TRUE, the value set for this parameter will overwrite the End Velocity used by this axis during motion.

Enable Global Min Velocity

Variable Name:

enableGlobalMinVelocity

Type:

bool

Default Value:

FALSE

TRUE: The value specified to the Global Min Velocity parameter will set a minimum velocity at which the axis moves at during motion commands. The axis will never move at a velocity below the minimum velocity, regardless of the values set for Velocity, Starting Velocity, and End Velocity.

The minimum velocity parameter is only supported for position commands (such as StartPos), jog commands (such as StartJog), and velocity commands (such as StartVel). This parameter is not supported for interpolation commands.

FALSE: The axis has no minimum velocity.

For interpolation commands, the value of this parameter for the first specified axis is applied.

Global Min Velocity

Variable Name:

globalMinVelocity

Type:

double

Unit:

user unit / second

Minimum Value:

0

Maximum Value:

274877906943

Default Value:

0

If Enable Global Min Velocity is TRUE, this value sets the minimum velocity that the axis may move at during most position commands.

Enable Global Moving Average Profile Time Milliseconds

Variable Name:

enableGlobalMovingAverageProfileTimeMilliseconds

Type:

bool

Default Value:

FALSE

TRUE: The value specified in Moving Average Time Milliseconds for the motion commands of this axis will be ignored and overwritten by the value of the Global Moving Average Profile Time Milliseconds parameter.

FALSE: Moving Average Time Milliseconds is specified normally.

The Moving Average Time Milliseconds profile parameter is used by the TrapezoidalMAT profile type.

For interpolation commands, the value of this parameter for the first specified axis is applied.

Global Moving Average Profile Time Milliseconds

Variable Name:

globalMovingAverageProfileTimeMilliseconds

Type:

double

Unit:

milliseconds

Minimum Value:

0

Maximum Value:

120000

Default Value:

0

If Enable Global Moving Average Profile Time Milliseconds is TRUE, the value set for this parameter will overwrite the Moving Average Time Milliseconds used by this axis during motion.

API Wait Until Motion Start

Variable Name:

apiWaitUntilMotionStart

Type:

bool

Default Value:

TRUE

TRUE: Motion API functions will wait until the motion has started before returning execution to the calling thread.

FALSE: Motion API functions will return immediately, before the motion is actually started by the engine.

The motion command of an API function will typically start during the processing of the next communication cycle. If this parameter is set to FALSE, calling a motion API function, and then calling an override motion API function before the next communication cycle will cause errors such as StartingPreviousCommand to be returned. If this parameter is set to TRUE, override API functions can be called without considering the timing of the communication cycles. However, each motion API function will only return after the next communication cycle is finished, so the executing thread will be briefly blocked for up to the duration of one communication cycle (this value can be obtained from the Cycle Time Milliseconds status).

See Function Calls That Are Blocking for a list of functions affected by this parameter.

Linear Intpl Profile Calc Mode

Variable Name:

linearIntplProfileCalcMode

Type:

LinearIntplProfileCalcMode

Default Value:

AxisLimit

This parameter will determine the method in which the profile parameters for the linear interpolation are calculated from the profile parameters specified for each interpolating axis.

When executing a linear interpolation, the value of this parameter of the first axis specified in the linear interpolation command will determine the linear interpolation profile calculation mode. See LinearIntplProfileCalcMode for the available options.