Position-Based Straight-Line Moves

NI-Motion

Position-Based Straight-Line Moves

Position-based straight-line moves use the specified target position to generate the move trajectory. For example, if the motor is currently at position zero, and the target position is 100, a position-based move creates a trajectory that moves 100 counts (steps).

The controller requires the following information to move to another position in a straight line:

  • Start position—Current position, normally held over from a previous move or initialized to zero
  • End position—Also known as the target position, or where you want to move to
  • Move constraints—Maximum velocity, maximum acceleration, maximum deceleration, and maximum jerk
Tip  When you are using the NI SoftMotion Controller, you can load separate acceleration and deceleration jerk values.

The motion controller uses the given information to create a trajectory that never exceeds the move constraints and that moves an axis or axes to the end position you specify. The controller generates the trajectory in real time, so you can change any of the parameters while the axes are moving.

Straight-Line Move Algorithm

The straight-line move algorithm includes the following procedures:

  • Load target position—Specifies the end position
  • Load the move constraints—Loads the velocity, acceleration, deceleration, and jerk values
  • Start motion—Starts the move

The start position is always the current position of the axis or axes. You can load the end position as either an absolute position to move to or as a position relative to the starting position. Although you can update any parameter while the move is in progress, the new parameter is used only after a subsequent Start or Blend Move.

Tip  You must load the move constraints only if they are different from what was previously loaded.