MoveGripper#

The MEGP 25* grippers are equipped with incremental encoders, so it is impossible to directly measure the absolute positions of the gripper jaws. Thus, during the homing of the robot, the gripper is also homed by completely closing and then opening its fingers, until resistance is met in each direction. The maximum fingers opening is detected and is a positive number not larger than 6 mm (MEGP 25E) or 48 mm (MEGP 25LS). Most importantly, the fingers opening, a non-negative distance, is defined as the sum of the distances traveled by each jaw from their fully-closed positions detected during homing.

The MoveGripper command makes the gripper fingers move towards the specified fingers opening.

Syntax#

MoveGripper(d)

Arguments#

  • d: desired fingers opening, a non-negative value in mm, from 0 to the maximum fingers opening detected during homing.

Further details#

Unlike other position-mode Move* commands, the MoveGripper command does not return an error if the desired finger opening is blocked by an object. The fingers will continue applying force toward the desired opening using the force set by the SetGripperForce command, and the “holding part” gripper status will be true (see GetRtGripperState).

If the object is removed, the fingers will move to the desired fingers opening.

You can adjust the grip force with SetGripperForce and control the gripper speed with SetGripperVel.

Note

The gripper commands GripperOpen, GripperClose, and MoveGripper are queued like other motion commands but, their execution runs in parallel with robot motion:

  • They start at the beginning of the blending (or deceleration) phase of the preceding motion command in the queue.

  • They continue executing in parallel with any subsequent motion commands, which begin immediately as the gripper command starts.

To coordinate with motion commands:

  • To ensure a gripper command starts only after the robot has come to a complete stop, insert a Delay or use SetCheckpoint and wait for it before posting the gripper command.

  • To ensure the robot remains stationary until the gripper command completes, insert a Delay or use GetRtGripperState to detect when the gripper is holding or has released the part.

Usage restrictions#

This command is added to the robot’s motion queue and can only be executed when the robot is ready for motion, not in an error state and when no safety signal conditions are present. Otherwise, the robot will report one of the following:

  • [1005][The robot is not activated.]

  • [1006][The robot is not homed.]

  • [1011][The robot is already in error.]

If no gripper is connected, the robot will report the following:

  • [1038][No gripper connected.]

Note

Unlike the GripperOpen and GripperClose commands, MoveGripper is not available when the robot is activated in recovery mode (and not homed) as gripper’s available range is detected during homing.

Cyclic protocols#

In cyclic protocols, the MoveGripper command is represented by MotionCommandID 32. See Section 4.2 for more details.