-
 

Package Summary

Tags No category tags.
Version 1.4.0
License GPL
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/shadow-robot/sr_interface.git
VCS Type git
VCS Version melodic-devel
Last Updated 2021-12-10
Dev Status UNMAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Execute moveit_msgs/Grasp grasps on the Shadow Hand.

Additional Links

Maintainers

  • Shadow Robot's software team

Authors

  • Mark Pitchless

sr_grasp

Tools for running grasps (moveit_msgs/Grasp) on the Shadow Hand. Handles pre and main grasps, interpolating the motion over a configuarable amount, using the position controllers. Can optionally stop the grasp on contact with the finger tactile sensors.

Also contains:

  • grasp_planner - A simple grasp planner for the shadow hand.
  • isr_grasp.utils - A python library.

grasp

Quick Start

Start either your real Shadow Hand (with position controllers) or a simulated one:

roslaunch sr_hand gazebo_hand.launch

Then start the grasp node:

rosrun sr_grasp grasp

Now start the quick grasp tool, which provides a quick command line way to run a full hand grasp:

rosrun sr_grasp quick_grasp
[INFO] [WallTime: 1420469735.467177] [2088.184000] Loaded grasps from file: /home/hand/indigo_ws/src/shadow_robot/sr_grasp/resource/grasps.yaml
[INFO] [WallTime: 1420469735.467525] [2088.184000] Looking for hand...
[WARN] [WallTime: 1420469738.040228] [2089.002000] No tactile topic found. This is normal for a simulated hand
[INFO] [WallTime: 1420469738.040807] [2089.002000] Found

Grasps:
0 - Power Grasp Vertical
1 - Pinch Horizontal
2 - Basic full grab
Current grasp: Power Grasp Vertical
Number select grasp, z zero hand, g grasp, p pre-grasp, q quit
: 

Working with grasp files.

Sets of grasps can be stored in YAML files containing a top level array of moveit_msgs/Grasp objects serialised to YAML the same way rostopic does. Although most of the fields are optional you must have an id and will need at least one pre-grasp posture and grasp posture. sr_grasp contains some example files in the resource directory.

quick grasp reads it’s ~grasps_file param to get the file name of grasps to use, defaulting to grasps.yaml in the sr_grasp package. So to use another file:

rosrun sr_grasp quick_grasp _grasps_file:=foo.yaml

You can use the n command to create a new grasp using the current hands pose as the grasp pose. The s command will re-write the file with the current list of grasps.

Actionlib

The main interface to the node is via actionlib, it exposes the sr_robot_msgs/Grasp action on the grasp/ topic. See the quick_grasp script for a python example of using this interface.

grasp_planner

Node implementing the sr_robot_msgs/PlanGrasp action to generate grasps. Currently returns a single, hardcoded grasp.

sr_grasp.utils

Python lib. Exports a mk_grasp function for quick generation of moveit_msgs/Grasp messages.

from sr_grasp.utils import mk_grasp

grasp = mk_grasp({
    'LFJ3': 1.4, 'RFJ3': 1.4, 'MFJ3': 1.4, 'FFJ3': 1.4,
    'LFJ0': 2.0, 'RFJ0': 2.0, 'MFJ0': 2.0, 'FFJ0': 2.0,
    'THJ1': 0.4, 'THJ2': 0.36, 'THJ3': 0.2, 'THJ4': 1.23, 'THJ5': 0.06, 
})


Converting sr_hand XML grasps

sr_hand has some grasps classes, interpolater and gui that work with an XML file found in sr_hand/scripts/sr_hand/grasps.xml. You can convert them to new style moveit messages in YAML using:

rosrun sr_grasp convert_xml.py sr_hand/scripts/sr_hand/grasps.xml > converted.yaml

Then load them up to play with:

rosrun sr_grasp quick_grasp _grasps_file:=converted.yaml

CHANGELOG

Changelog for package sr_grasp

1.4.0 (2015-04-07)

  • First release

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

Name Deps
sr_interface

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged sr_grasp at Robotics Stack Exchange