Motion

Motion

MoveL

MoveL

Primitive Description and Usage

  • Description: This primitive moves TCP linearly in Cartesian space. Users can specify multiple Cartesian waypoints. Every two successive waypoints are connected by a straight line with a blending zone radius. The motion along the path is time-optimal and satisfies the limitations on TCP velocity, acceleration and jerk.

  • Example Usage: Use this primitive to move the TCP linearly between waypoints.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

target*

Target TCP pose

COORD

m-deg

[traj_start* world*]

waypoints

Waypoints between initial and target poses

ARRAY_COORD

m-deg

[traj_start* traj_goal* traj_prev* world*]

vel

TCP linear velocity

DOUBLE

m/s

0.5 [0.0005 2.2]

zoneRadius

Blending zone radius while TCP approximating the waypoints

TYPE

mm

Z50 [ZFine Z1 Z5 Z10 Z15 Z20 Z30 Z40 Z50 Z60 Z80 Z100 Z150 Z200]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

3 [0 10]

acc

TCP linear acceleration

DOUBLE

m/s^2

1.5 [0.1 3.0]

jerk

TCP linear jerk

DOUBLE

m/s^3

200.0 [50.0 1500.0]

preferJntPos

Preferred target joint positions. When the robot moves in Cartesian space, each joint will move as close as possible toward the preferred position.

VEC_7d

deg

0.0 -40.0 0.0 90.0 0.0 40.0 0.0 [-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

configOptObj

Weights of three configuration optimization objectives, which respectively are to make the robot easier to translate in Cartesian space, easier to rotate in Cartesian space, and closer to the preferred joint position.

VEC_3d

none

0.0 0.0 0.5 [0.0 0.0 0.1 1.0 1.0 1.0]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

*Coordinate System Definition

Coordinate

Definition

Value Format

world

WORLD coordinate system, which is a fixed Cartesian coordinate system located at the center of the robot base

X Y Z Rx Ry Rz WORLD WORLD_ORIGIN

work

WORK coordinate system, which defines the position of the workpiece relative to the WORLD coordiante system

X Y Z Rx Ry Rz WORK WorkCoordName

tcp

TCP coordinate system, which is located at the Tool Center Point relative to the center of robot flange

X Y Z Rx Ry Rz TCP ONELINE

tcp_start

The fixed coordinate system which is located at the inital TCP pose of the primitive

X Y Z Rx Ry Rz TCP START

traj_start

The offset of a waypoint relative to the initial TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ START

traj_goal

The offset of a waypoint relative to the target TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ GOAL

traj_prev

The offset of a waypoint relative to the previous waypoint in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

waypointIndex

Index of the current waypoint the robot just passed. 0 means the initial pose.

INT

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

MoveJ

MoveJ

Primitive Description and Usage

  • Description: This primitive moves the robot by joint movement. Users can specify a joint position target and multiple joint space waypoints. The robot passes through all of them with the specified joint velocity and joint acceleration.

  • Example Usage: Use this primitive to move the robot through multiple joint positions.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

target*

Target joint position

VEC_7d

deg

[-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

waypoints

Waypoints between initial and target poses

ARRAY_VEC_7d

deg

[-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

vel

TCP linear velocity

DOUBLE

m/s

0.2 [0.0005 2.2]

zoneRadius

Blending zone radius while TCP approximating the waypoints

TYPE

mm

Z50 [ZFine Z1 Z5 Z10 Z15 Z20 Z30 Z40 Z50 Z60 Z80 Z100 Z150 Z200]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

1 [0 10]

relativeToStart

Enable relative target pose mode

BOOL

none

0 [0 / 1]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

waypointIndex

Index of the current waypoint the robot just passed. 0 means the initial pose.

INT

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

MovePTP

MovePTP

Primitive Description and Usage

  • Description: This primitive moves the robot to the target TCP pose with joint motion, typically in a curved line, by calculating inverse kinematics. The curved line follows a natural joint space trajectory and hence provides good dynamics performance. Users can specify target Cartesian pose as well as multiple Cartesian waypoints. The robot passes through these waypoints and target pose with specified kino-dynamic constraints including joint velocity and joint acceleration.

  • Example Usage: Use this primitive to move the TCP in free space with good acceleration performance. Recommended for fast movement, but the shape of the trajectory is not strictly required.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

target*

Target TCP pose

COORD

m-deg

[traj_start* world*]

waypoints

Waypoints between initial and target poses

ARRAY_COORD

m-deg

[traj_start* traj_goal* traj_prev* world*]

jntVel

Joint velocity for each joint

VEC_7d

deg/s

60.0 60.0 70.0 70.0 140.0 140.0 140.0 [0 0 0 0 0 0 0 120 120 140 140 280 280 280]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

1 [0 10]

jntAcc

Joint acceleration for each joint

VEC_7d

deg/s^2

360 360 420 420 840 840 840 [0 0 0 0 0 0 0 1000 1000 1000 1000 1000 1000 1000]

preferJntPos

Preferred target joint positions. When the robot moves in Cartesian space, each joint will move as close as possible toward the preferred position.

VEC_7d

deg

0.0 -40.0 0.0 90.0 0.0 40.0 0.0 [-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

*Coordinate System Definition

Coordinate

Definition

Value Format

world

WORLD coordinate system, which is a fixed Cartesian coordinate system located at the center of the robot base

X Y Z Rx Ry Rz WORLD WORLD_ORIGIN

work

WORK coordinate system, which defines the position of the workpiece relative to the WORLD coordiante system

X Y Z Rx Ry Rz WORK WorkCoordName

tcp

TCP coordinate system, which is located at the Tool Center Point relative to the center of robot flange

X Y Z Rx Ry Rz TCP ONELINE

tcp_start

The fixed coordinate system which is located at the inital TCP pose of the primitive

X Y Z Rx Ry Rz TCP START

traj_start

The offset of a waypoint relative to the initial TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ START

traj_goal

The offset of a waypoint relative to the target TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ GOAL

traj_prev

The offset of a waypoint relative to the previous waypoint in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

waypointIndex

Index of the current waypoint the robot just passed. 0 means the initial pose.

INT

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

MoveC

MoveC

Primitive Description and Usage

  • Description: This primitive moves the robot circularly to a target pose in Cartesian space. The robot’s initial pose, middle pose, and target pose must not be collinear. A complete circle can be performed by two MoveC primitives.

  • Example Usage: Use this primitive in applications that require the robot to execute circular/arc trajectories such as welding.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

target*

Target TCP pose

COORD

m-deg

[traj_start* world*]

middlePose*

Middle pose of the circular arc

COORD

m-deg

[traj_start* traj_goal* traj_prev* world*]

vel

TCP linear velocity

DOUBLE

m/s

1.0 [0.01 2.0]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

3 [1 10]

acc

TCP linear acceleration

DOUBLE

m/s^2

1.5 [0.1 3.0]

jerk

TCP linear jerk

DOUBLE

m/s^3

100.0 [90.0 10000.0]

equalRadius

Ability to convert orientation to linear distance

DOUBLE

none

0.1 [0.0 10.0]

preferJntPos

Preferred target joint positions. When the robot moves in Cartesian space, each joint will move as close as possible toward the preferred position.

VEC_7d

deg

0.0 -40.0 0.0 90.0 0.0 40.0 0.0 [-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

configOptObj

Weights of three configuration optimization objectives, which respectively are to make the robot easier to translate in Cartesian space, easier to rotate in Cartesian space, and closer to the preferred joint position.

VEC_3d

none

0.0 0.0 0.5 [0.0 0.0 0.1 1.0 1.0 1.0]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

*Coordinate System Definition

Coordinate

Definition

Value Format

world

WORLD coordinate system, which is a fixed Cartesian coordinate system located at the center of the robot base

X Y Z Rx Ry Rz WORLD WORLD_ORIGIN

work

WORK coordinate system, which defines the position of the workpiece relative to the WORLD coordiante system

X Y Z Rx Ry Rz WORK WorkCoordName

tcp

TCP coordinate system, which is located at the Tool Center Point relative to the center of robot flange

X Y Z Rx Ry Rz TCP ONELINE

tcp_start

The fixed coordinate system which is located at the inital TCP pose of the primitive

X Y Z Rx Ry Rz TCP START

traj_start

The offset of a waypoint relative to the initial TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ START

traj_goal

The offset of a waypoint relative to the target TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ GOAL

traj_prev

The offset of a waypoint relative to the previous waypoint in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

MoveIK

MoveIK

Primitive Description and Usage

  • Description: This primitive moves the robot to the target TCP pose in a straight line with joint motion by calculating inverse kinematics. Except for the target Cartesian pose, users can specify multiple Cartesian waypoints and the robot will pass through all of them with specified kino-dynamic constraints including joint velocity, joint acceleration, joint torque, Cartesian linear velocity, and Cartesian angular velocity. Currently, only Cartesian linear velocity is provided to the user as an input option. Other constraints use predefined values.

  • Example Usage: Moving the TCP in a straight line in free space. For general Cartesian move, it is recommended to use MoveL first to get the smoother trajectory, because the Cartesian jerk will be constrained (Currently MoveIK does not have this feature). Compared to MoveL, currently only MoveIK constrains the joint velocity/acceleration and torque. When the joint velocity and torque errors are easily triggered when using MoveL, it is recommended to use MoveIK instead.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

target*

Target TCP pose

COORD

m-deg

[traj_start* world*]

waypoints

Waypoints between initial and target poses

ARRAY_COORD

m-deg

[traj_start* traj_goal* traj_prev* world*]

vel

TCP linear velocity

DOUBLE

m/s

0.2 [0.001 2.0]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

1 [1 10]

jntAcc

Joint acceleration for all joints

DOUBLE

deg/s^2

100 [100 450]

preferJntPos

Preferred target joint positions. When the robot moves in Cartesian space, each joint will move as close as possible toward the preferred position.

VEC_7d

deg

0.0 -40.0 0.0 90.0 0.0 40.0 0.0 [-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

samplingNum

Sampling number on the trajectory for path optimization

INT

none

100 [10 1000]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

*Coordinate System Definition

Coordinate

Definition

Value Format

world

WORLD coordinate system, which is a fixed Cartesian coordinate system located at the center of the robot base

X Y Z Rx Ry Rz WORLD WORLD_ORIGIN

work

WORK coordinate system, which defines the position of the workpiece relative to the WORLD coordiante system

X Y Z Rx Ry Rz WORK WorkCoordName

tcp

TCP coordinate system, which is located at the Tool Center Point relative to the center of robot flange

X Y Z Rx Ry Rz TCP ONELINE

tcp_start

The fixed coordinate system which is located at the inital TCP pose of the primitive

X Y Z Rx Ry Rz TCP START

traj_start

The offset of a waypoint relative to the initial TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ START

traj_goal

The offset of a waypoint relative to the target TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ GOAL

traj_prev

The offset of a waypoint relative to the previous waypoint in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

MoveWait

MoveWait

Primitive Description and Usage

  • Description: This primitive moves the robot linearly in Cartesian space and provides additional functions to interact with I/O signal during the execution. At each waypoint, users can specify a DI (digital input) index and a target DI value to be 0 (low) or 1 (high). The robot will not go to the next waypoint until the specific DI is at the specified value. In the meantime, users can specify a maximum wait time at each waypoint. If the DI is not at the specified value within the maximum wait time, the state variable timeout index will be set, and plan execution will continue.

  • Example Usage: In this primitive, users can use an I/O signal to control the workflow. For example, having the robot wait for a GPIO command from the master controller in a production line.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

waypoint*

Waypoint pose

ARRAY_COORD

m-deg

[traj_start* traj_goal* traj_prev* world*]

vel*

TCP linear velocity

ARRAY_DOUBLE

m/s

1.0 [0.01 2.0]

acc*

TCP linear acceleration

ARRAY_DOUBLE

m/s^2

1.0 [0.1 10.0]

zoneRadius

Blending zone radius while TCP approximating the waypoints

ARRAY_TYPE

m

Z10 [Z0 Z1 Z5 Z10 Z15 Z20 Z30 Z40 Z50 Z60 Z80 Z100 Z150 Z200]

enableWait*

Enable Wait mode at this waypoint

ARRAY_BOOL

none

waitTime*

Wait time at this waypoint. If timeout, primitive execution will continue and the corresponding timeout index will be set.

ARRAY_DOUBLE

s

[0.1 1000]

diPortNo*

Digital input port number

ARRAY_INT

none

[0 15]

diValue*

Primitive execution is stopped until the digital input equals this value

ARRAY_INT

none

[0 1]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

3 [1 10]

ioModule

I/O module to set the DI port

TYPE

none

System [System Modbus]

jerk

TCP linear jerk

DOUBLE

m/s^3

1000.0 [10.0 10000.0]

cornerAcc

Acceleration at the corner

DOUBLE

m/s^2

20.0 [0.5 20.0]

cornerJerk

Jerk at the corner

DOUBLE

m/s^3

800.0 [10.0 10000.0]

equalRadius

Convert orientation angle to linear distance. It standards for the ability that the orientation follows the position.

DOUBLE

none

0.1 [0.0 10.0]

preferJntPos

Preferred target joint positions. When the robot moves in Cartesian space, each joint will move as close as possible toward the preferred position.

VEC_7d

deg

0.0 -40.0 0.0 90.0 0.0 40.0 0.0 [-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

configOptObj

Weights of three configuration optimization objectives, which respectively are to make the robot easier to translate in Cartesian space, easier to rotate in Cartesian space, and closer to the preferred joint position.

VEC_3d

none

0.0 0.0 0.5 [0.0 0.0 0.1 1.0 1.0 1.0]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

*Coordinate System Definition

Coordinate

Definition

Value Format

world

WORLD coordinate system, which is a fixed Cartesian coordinate system located at the center of the robot base

X Y Z Rx Ry Rz WORLD WORLD_ORIGIN

work

WORK coordinate system, which defines the position of the workpiece relative to the WORLD coordiante system

X Y Z Rx Ry Rz WORK WorkCoordName

tcp

TCP coordinate system, which is located at the Tool Center Point relative to the center of robot flange

X Y Z Rx Ry Rz TCP ONELINE

tcp_start

The fixed coordinate system which is located at the inital TCP pose of the primitive

X Y Z Rx Ry Rz TCP START

traj_start

The offset of a waypoint relative to the initial TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ START

traj_goal

The offset of a waypoint relative to the target TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ GOAL

traj_prev

The offset of a waypoint relative to the previous waypoint in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

waypointIndex

Index of the current waypoint the robot just passed. 0 means the initial pose.

INT

none

timeoutIndex

Index of the timeout waypoint. 0 means no timeout occurs.

INT

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

MoveTraj

MoveTraj

Primitive Description and Usage

  • Description: This primitive moves the robot along a predefined trajectory generated by the Trajectory Editor in a pure motion mode or a hybrid force/motion mode. A force control axis parameter (a 3d vector) determines the execution mode in this primitive. If the force control axis is a zero vector, the robot will run in pure motion mode. In this case, the robot will move along the trajectory by going through the pose specified at each waypoint. If the force control axis is not a zero vector, the robot will move along the trajectory by going through the waypoints; however, the TCP will follow the force trajectory along the force control axes (ignoring the pose information along the force control axes) and the motion trajectory along the non-force control axes.

  • Example Usage: In some applications, users may command the robot to go through a complicated trajectory consisting of many waypoints with specific geometry constraints. In such cases, it is very difficult to configure these waypoints by typing them in one after another; instead, users can use the Trajectory Editor to configure such a trajectory via a combination of teaching and editing, and the result can be saved in a trajectory file. In addition to geometric constraints, some tasks would also require the trajectory to comply with some force constraints. In the Trajectory Editor, users can further edit this trajectory by adding a wrench at each waypoint so that the trajectory is a hybrid force-motion trajectory.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

fileName*

Trajectory file name

FILE

none

[.traj]

fileLoadType

Trajectory file loading type

TYPE

none

FromProject [FromProject FromRuntime]

targetTolerLevel

Tolerance level to determine if the robot has reached the target. 1 means to check with the smallest tolerance, 0 means no tolerance check.

INT

none

3 [1 10]

forceCoord

Reference coordinate system for force control direction

COORD

m-deg

0 0 0 0 0 0 TCP ONLINE [world* tcp_start* tcp*]

forceAxis

Activated axes of force control coordinate to apply force or torque

VEC_6i

none

0 0 1 0 0 0 [0 0 0 0 0 0 1 1 1 1 1 1]

enablePreferJntPos

Flag to indicate if primitive parameter preferJntPos is enabled. If this parameter is set to TRUE, the value of the preferred joint positions in the trajectory file will become invalid and the robot will use the value of primitive parameter preferJntPos.

BOOL

none

1 [0 / 1]

preferJntPos

Preferred target joint positions. When the robot moves in Cartesian space, each joint will move as close as possible toward the preferred position.

VEC_7d

deg

0.0 -40.0 0.0 90.0 0.0 40.0 0.0 [-160 -130 -170 -107 -170 -80 -170 160 130 170 154 170 260 170]

configOptObj

Weights of three configuration optimization objectives, which respectively are to make the robot easier to translate in Cartesian space, easier to rotate in Cartesian space, and closer to the preferred joint position.

VEC_3d

none

0.0 0.0 0.5 [0.0 0.0 0.1 1.0 1.0 1.0]

maxVelForceDir

Maximum movement velocity along force control direction

VEC_3d

m/s

2.0 2.0 2.0 [0.005 0.005 0.005 2.0 2.0 2.0]

*Parameters marked with an asterisk must be assigned a value prior to executing the primitive.

*Coordinate System Definition

Coordinate

Definition

Value Format

world

WORLD coordinate system, which is a fixed Cartesian coordinate system located at the center of the robot base

X Y Z Rx Ry Rz WORLD WORLD_ORIGIN

work

WORK coordinate system, which defines the position of the workpiece relative to the WORLD coordiante system

X Y Z Rx Ry Rz WORK WorkCoordName

tcp

TCP coordinate system, which is located at the Tool Center Point relative to the center of robot flange

X Y Z Rx Ry Rz TCP ONELINE

tcp_start

The fixed coordinate system which is located at the inital TCP pose of the primitive

X Y Z Rx Ry Rz TCP START

traj_start

The offset of a waypoint relative to the initial TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ START

traj_goal

The offset of a waypoint relative to the target TCP pose in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ GOAL

traj_prev

The offset of a waypoint relative to the previous waypoint in the TCP coordinate system

X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

reachedTarget

Flag to indicate if the robot has reached the target

BOOL

none

waypointIndex

Index of the current waypoint the robot just passed. 0 means the initial pose.

INT

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

reachedTarget

=

1

logo

Grasp

Grasp

Primitive Description and Usage

  • Description: This primitive allows users to open or close the grippers with the predefined velocity and force. It currently only supports the following commercial grippers: Robotiq, DH-Robotics.

  • Example Usage: Use this primitive in pick and place applications. The robot first moves to a set position, then sends gripper width/force commands to the gripper to grasp or release objects. This primitive provides a simple way to manipulate grippers, which saves much more time than configuring grippers via tool commands.

Primitive Input Parameters

Input Parameter

Description

Type

Unit

Default Value & Range

gripVel

Gripper opening/closing velocity

DOUBLE

m/s

0.01 [0.0 ]

gripWidth

Target grip width

DOUBLE

m

0.0 [0.0 ]

gripForce

Target grip force

DOUBLE

N

30.0 [2.0 ]

waitGripComplete

Primitive is not terminated until the grasping action is completed.

BOOL

none

1 [0 / 1]

Primitive State Parameters

State Parameter

Description

Type

Unit

terminated

The termination flag of the primitive. It is set to true if the primitive is terminated.

BOOL

none

timePeriod

The time spent on running the current primitive.

DOUBLE

s

curGripWidth

Current grip width. This variable is only valid when the time period of this primitive exceeds 0.1s.

DOUBLE

m

reachGripForce

Flag to indicate if the gripper reached the target grip force. This variable is only valid when the time period of this primitive exceeds 0.1s.

BOOL

none

reachGripWidth

Flag to indicate if the gripper reached the target grip width. This variable is only valid when the time period of this primitive exceeds 0.1s.

BOOL

none

isGripMoving

Flag to indicate if gripper fingers are still moving. This variable is only valid when the time period of this primitive exceeds 0.1s.

BOOL

none

graspComplete

Flag to indicate if the grasping action is complete

BOOL

none

Primitive Output Parameters

Output Parameter

Description

Type

Unit

tcpPoseOut

The TCP pose when the primitive is terminated. It is represented in the world coordinate system.

COORD

m-deg

Default Transition Condition

State Parameter

Condition

Value

graspComplete

=

1

logo