A basic grasp generator for objects such as blocks or cylinders for use with the MoveIt pick and place pipeline. Does not consider friction cones or other dynamics. It also has support for suction grippers.
Its current implementation takes as input a pose vector (postition and orientation) and generates a large number of potential grasp approaches and directions. Also includes a grasp filter for removing kinematically infeasible grasps via threaded IK solvers.
This package includes:
- Pose-based grasp generator for a block
- Separate grasp generators for custom objects such as rectanguar or cylindrical objects
- Grasp filter
- Demo code and visualizations
Developed by Dave Coleman, Andy McEvoy, and Mike Lautman at PickNik Consulting with many contributors.
Note: this package has not been released yet
sudo apt-get install ros-melodic-moveit-grasps
Install From Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies.
Melodic (Ubuntu 18.04):
Re-use or create a catkin workspace:
export CATKIN_WS=~/ws_catkin/ mkdir -p $CATKIN_WS/src cd $CATKIN_WS/src
Download the required repositories and install any dependencies:
git clone firstname.lastname@example.org:ros-planning/moveit_grasps.git wstool init . wstool merge moveit_grasps/moveit_grasps.rosinstall wstool update rosdep install --from-paths . --ignore-src --rosdistro melodic
Configure and build the workspace:
cd $CATKIN_WS catkin config --extend /opt/ros/melodic --cmake-args -DCMAKE_BUILD_TYPE=Release catkin build
Source the workspace.
For detailed usage instructions visit the MoveIt Grasps tutorial.
Testing and Linting
catkin build --no-status --no-deps --this --make-args roslint
catkin lint -W2 --rosdistro melodic
Use the following command with catkin-tools to run tests.
catkin run_tests --no-deps --this -i