Adaptive Grasping
GraspComp
Primitive Description and Usage
Description: This primitive controls the gripper to perform compliant grasping motions. The gripper moves along the contact direction to contact the surface of the object and maintains contact with the surface of the object during grasping. This primitive terminates when the grip force or grip force reaches the set value. During the grasping process, the robot keeps moving compliantly to avoid damaging the gripper or the object.
Example Usage: Use this primitive to grasp objects whose position is uncertain.
Primitive Input Parameters
Input Parameter |
Description |
Type |
Unit |
Default Value & Range |
---|---|---|---|---|
gripperType |
Type of gripper used by the primitive |
TYPE |
none |
GripperFlexivModbus ∈ [GripperDahuan GripperDahuanModbus Flexiv-GN01 GripperFlexivModbus Robotiq-2F-85 Robotiq-Hand-E] |
gripVel |
Gripper opening/closing velocity |
DOUBLE |
m/s |
0.01 ∈ [0.001 … 0.05] |
gripWidth |
Target gripping width |
DOUBLE |
m |
0.0 ∈ [0.0 … 0.1] |
gripForce |
Target gripping force. When using Grav, you can set gripVel and gripWidth to 0 to enable pure force control mode for the gripper. |
DOUBLE |
N |
30.0 ∈ [-50.0 … 50.0] |
contactAxis |
Contact (force control) direction in TCP coordinate system, which should be along one of TCP’s principal axes [X, Y, Z] |
VEC_3i |
none |
0 0 0 ∈ [-1 -1 -1 … 1 1 1] |
contactForce |
Target force along the contact axis after engaging the contact |
VEC_3d |
N |
0.0 0.0 0.0 ∈ [0 0 0 … ] |
compAxis |
Compliant axis in TCP coordinate system during gripping |
VEC_3i |
none |
0 0 0 ∈ [0 0 0 … 1 1 1] |
compForce |
Minimum force for robot to move compliantly |
VEC_3d |
N |
0.0 0.0 0.0 ∈ [0 0 0 … ] |
maxVelForceDir |
Maximum movement velocity along force control direction |
DOUBLE |
m/s |
0.5 ∈ [0.002 … 0.5] |
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 gripping width. This variable is only valid when the time period of this primitive exceeds 0.5s. |
DOUBLE |
m |
reachGripForce |
Flag to indicate if the gripper reached the target gripping force. This variable is only valid when the time period of this primitive exceeds 0.5s. |
BOOL |
none |
reachGripWidth |
Flag to indicate if the gripper reached the target gripping width. This variable is only valid when the time period of this primitive exceeds 0.5s. |
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.5s. |
BOOL |
none |
gripComplete |
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 |