APIs, concepts, guides, and more
Point to Point Motion

Perform synchronized or coordinated motion with one or many axes.

🔹 What is Point-to-Point Multi-Axis Motion?

Point-to-Point Multi-Axis Motion performs synchronized or coordinated motion with multiple axes.

Point-to-Point motion allows us to move a multiaxis system to a specific point. There are two different motion profiles available for this type of motion: Trapezoidal and SCurve.

🔹 Trapezoidal Motion

Velocity Acceleration
Image Image

Trapezoidal motion accelerates each axis at the given rate until it reaches the specified velocity. When each axis approaches the specified location, it decelerates at the given rate to a stop. All accelerations and decelerations are constant, as shown by the figure above on the right. The above-left diagram shows a trapezoidal motion profile.

🔹 SCurve Motion

Velocity Acceleration
Image Image

SCurve motion also moves each axis to specific points, however, each axis is accelerated at a non-constant rate determined by the jerk percentage. A motion profile with 100% jerk percent is shown above on the left. A jerk percentage of 0% is the same as a trapezoidal motion profile. At 100% jerk, the acceleration and deceleration are never constant, as shown in the above right figure.

You can change the velocity, acceleration, and deceleration of a moveSCurve that is executing on the fly simply by calling the function again with different parameters.


  • Can you overwrite a motion command that is in progress?
    Yes, point-to-point motion commands can be overwritten on-the-fly.
  • Can you blend a point to point move with a velocity move?
    Yes, you can command a Move.Trapezoidal() with a specified final velocity so that you can ensure at the time the axis gets to its target position, it will be moving at the specified velocity.

🔹 Subsections

  • Absolute Motion : Use Absolute Motion to move directly to a specified position, ensuring the axis reaches a defined destination regardless of its previous position.
  • Relative Motion : Use Relative Motion to move an axis a specified distance from its current position, providing flexibility to adjust position based on current location rather than a fixed point.
  • SCurve Motion : SCurve Motion offers a smoother acceleration profile compared to Trapezoidal Motion, utilizing a "Jerk Percent" parameter to fine-tune how acceleration phases are shaped, allowing precise control over motion transitions and peak accelerations.