About Motion Types

When you are in the Teach dialog box, you can alter the motion type for an operation.

The tables below provide explanations the motion types.

This page discusses:

Linear Move

For this type of move, stop only when the singular (ending) point gets close.

Orientation ModeNear (Shortest Angle)Keep Config / Keep TurnKeep Config / Set TurnSet Config / Keep TurnSet Config / Set Turn
WristIgnore input turns and config. Compute turns and config (use current config) to get shortest angles for 6 joints. Must match joint 4,5,6; try 1,2,3. (Default)Input config and input turns ignored. Use current config. Keep turns for joint 4,5,6. Try to keep turn for joint 1,2,3 Input config ignored. Use current config. Use new turns for joint 4,5,6. Find shortest angle for any unset joint 4,5,6 turn. Try to match new turns for joint 1,2,3. Could be any input config. Use current if not set. Keep turns for joint 4,5,6. Try keep turn for joint 1,2,3 Could be any input config. Use current if not set. Use new turns for joint 4,5,6. Find shortest angle for any unset joint 4,5,6 turn. Try to match new turns for joint 1,2,3
1 Axis (Default)Based on the start and the goal xform, use quaternion method to interpolate the xform of the middle point. The turn number of the goal point will be the same as the start point. (Default = Near)Cannot use input config. Based on the start and the goal xform, use quaternion method to interpolate the xform of the middle point. The turn number of the goal point will be the same as the start point.
2 Axis (May create a new method)N/A (Use 1 Axis instead) Same as 3 Axis
3 Axis (May not be coded for using Roll, Pitch, Yaw rotation method. )Based on the start and the goal xform use Roll, Pitch, Yaw rotation method to interpolate the xform of the middle point. The turns of the goal point will be the same as the start point.

Joint Move

For this type of move, the robot does not move to a singular ending point.

Near (Shortest Angle)Keep Config / Keep TurnKeep Config / Set TurnSet Config / Keep TurnSet Config / Set Turn
Use new input config. Input turns ignored. Compute turns to get 6 shortest angles. (Default)Input config and turns ignored. Keep current config and turns. Can construct the Joint target based on the xform, config and turns, then do the joint interpolation. Keep config. Use new turns. If any joint turn info not set, use shortest angle for that joint. Can construct the Joint target based on the xform, config and turns, then do the joint interpolation. Use new config. If no new config, use current config. Keep turns. Can construct the Joint target based on the xform, config and turns, then do the joint interpolation. Use new config and turns. If no new config, use current config. If any joint turn info not set, use shortest angle for that joint. Can construct the Joint target based on the xform.

Circular Move

The following circular move types are considered.

  • One-point circular move: If a Circular Move point is directly after a Linear Move point, then an arc move is planned that is tangent to the line end at the Linear Move point.
  • Two-point circular move (first case): A Circular Move point is directly after a Circular Via point.
  • Two-point circular move (second case): If a Circular Move point is directly after another Circular Move point, then an arc move is planned. The arc center is determined by this Circular Move point, the previous Circular Move point and the point ( any point ) before the previous Circular Move point. The difference between the two cases of two-point circular moves is that in this case, the arc is planned from any point to the Circular Move point. Thus, the arc is planned only from the previous Circular Move point to Circular Move point.

Motion TypeOrientation ModeNear (Shortest Angle)Keep Config / Keep TurnKeep Config / Set TurnSet Config / Keep TurnSet Config / Set Turn
Circular ViaNoneMotion planner does not plan a move at this via point; only saves necessary information.
Circular Movewrist, 1 Axis, 2 Axis, 3 AxisMotion planner plans a move from the start point through via point to goal point. The interpolation is done from the start point through via point to goal point depending on the orientation mode, as is the case for Linear Move.Same as Linear Move.

Linear Orientation Interpolation Approaches

Different linear orientation interpolation approaches are described below.

Wrist Axis Interpolation for a Linear Move

With wrist axis interpolation mode, the TCP position still moves along a straight line. However the wrist axis joints do not use the equivalent axis angles technique, but rather use pure joint motion. The key elements for this technique are:

  • The user still specifies two positions in the same manner as with single axis interpolation. However, internally, the positions are converted to a combination of a Cartesian position (x, y, z) and joint values for the wrist (joints 4, 5, and 6). This is done by a special inverse kinematics wrapper function.
  • These positions can have different wrist configurations. For example, the wrist configuration can be noflip at the start and flip at the end. It is still not possible to move to/from different elbow and arm configurations.
  • Also, during simulation, the wrist joint values can change from one turn number to another. Again, this is possible because the wrist is interpolated using joint interpolation.
  • The computation is as follows:

    • First find the travel distance between the start and end is found
    • The Cartesian travel distance is computed in the same manner as with the single axis case.
    • For each joint in the wrist, the change in start and end position is found. This is found by simply subtracting the two values.

  • The time/speed calculations are similar to the ones in single axis mode. For the Cartesian position the same calculations are used, however for each wrist joint the move time is found. Then using the largest time the other times/speeds are scaled so that they all take the same amount of time.
  • During simulation the TCP position is determined in the same technique as the single axis technique (that is interpolated along the straight line between targets). The wrist axis joints are interpolated first using joint interpolation. Then an offset transformation is computed between the tcp to the end of the first non-wrist joint (i.e. joint 3) as shown in the image below. Using this offset, a special version of the inverse kinematics is called which only solves for joints 1, 2, and 3. The combination of joints is returned.


The different linear orientation interpolation approaches are accessible in the context menu from the Teach dialog box. They are described in the table below.

1 AxisTCP rotates against 1 axis to reach the target orientation. Turn number of robot joints could be changed.
2 AxisN/A. Use 1 axis if 1 axis motion can reach the tag with turn number specified. Otherwise, use 3 axis instead.
3 AxisBeginning tag and ending tag could have different turn numbers, which might not be reached by rotating against 1 Axis. Using 3 Axis solves the issue. However, if the 1 Axis approach can reach the target and meet turn number requirement, 1 Axis is used automatically.
WristTCP is on straight line while interpolation happens on joint 4, 5, 6. Robot config and joint turn numbers are all undetermined.