Skip to content

Latest commit

 

History

History
80 lines (53 loc) · 3.06 KB

File metadata and controls

80 lines (53 loc) · 3.06 KB

Grippers

ROS 2 gripper drivers that expose a common action-based API for low-level servo control and gripper-level open/close control.

Packages

  • gripper_msgs: ROS 2 action definitions (ServoControl, OpenGripper, CloseGripper).
  • gripper_servo_dynamixel: low-level DynamixelSDK (Protocol 2.0) servo/action package (Python).
  • gripper_servo_feetech: low-level Feetech STS/SCS servo/action package (C++).
  • gripper_two_fingers: gripper-level two-finger Dynamixel wrapper (Python).
  • gripper_feetech_test: gripper-level Feetech test wrapper (C++).
  • gripper_ros: launch files + centralized motor/gripper parameter YAMLs.

Action API

This ros packages use two action layers:

  • low-level servo control: /servo_control
  • gripper-level control: /open_gripper and /close_gripper

See docs/servo/ros2-interface.md for low-level servo ros2 specifications and examples. See docs/gripper/ros2-interface.md for gripper level ros2 specifications and examples.

Installation and Setup

Follow the Setup instructions in docs/installation.md to install dependencies and build the workspace.

Servo-level launch and testing

See gripper_servo_dynamixel/README.md for testing Dynamixel servos. See gripper_servo_feetech/README.md for testing Feetech servos.

Gripper-level launch:

Two-finger Dynamixel gripper

source install/setup.bash
ros2 launch gripper_ros gripper_soft_two_fingers.launch.py

load the visualization for the two-finger gripper:

source install/setup.bash
ros2 launch gripper_ros gripper_sim.launch.py model:=two-finger-gripper-standalone

This starts the gripper URDF in robot_state_publisher and rviz2 only. Run it alongside gripper_soft_two_fingers.launch.py when you want RViz to reflect live /joint_states from the gripper node.

Gripper control

Use the action CLI to send open/close goals (see docs/gripper/ros2-interface.md for details):

To open gripper:

source install/setup.bash
ros2 action send_goal /open_gripper gripper_msgs/action/OpenGripper "{torque: 0.0, use_torque_mode: false}"

To close gripper:

source install/setup.bash
ros2 action send_goal /close_gripper gripper_msgs/action/CloseGripper "{close_ratio: 1.0, torque: 0.0, use_torque_mode: false}"

Read the gripper action interface docs for more details on open/close goal fields and CLI usage. Read the servo action interface docs for direct low-level servo commands.

Additional documentation