IEEE Robotics & Automation Magazine - June 2012 - 68

attempt to center the contact points between the fingertips.
Although these behaviors are simple and deal with objects
in a model-free way, they are successful in fixing many
minor errors that would have caused the grasp to fail. In an
experiment involving 68 grasps of 30 different objects,
where open-loop grasping using the cluster-based grasp
planner successfully grasped the object in 60 out of 68
attempts (88%), adding reactive grasp execution increased
the success rate to 66 out of 68 (97%). More details on the
reactive grasping behaviors can be found in [25].
Adaptive Grasp Force Control
A further issue when grasping and transporting objects is
the need to regulate the internal forces applied to the
object. If too much force is applied, deformable objects will
be crushed and poten* tially damaged, and if
too little force is applied,
Grasping objects based on
objects will be dropped.
A control scheme that
visual information can be
uses the PR2's tactile sensors and accelerometers
affected by errors in object
for regulating grasp forces
is presented in [32].
localization, perceived
Real-time data from the
gripper's fingertip tactile
shape, or calibration
arrays and accelerometers
are combined into signals
between the robot's
designed to mimic three
different human skin sencameras and its end
sors (SA-I, FA-I, and FAII). These signals are then
effectors.
* used in event-based, forceregulating controllers that
enable the PR2 to grasp soft objects without crushing
them, grasp harder when an object is slipping in the
hand, and release objects while placing when the object
hits the table.
Portability to Other Manipulation Platforms
Our algorithms and implementations for collision-free
arm motion, grasping, and manipulation are currently in
use on PR2s all around the world; however, to maximize
the impact of our work we have also sought to make it
straightforward to use our work on any manipulator. The
vision of this work is to allow a user to take the physical
description of his/her robot (in the URDF or COLLADA
format) and quickly and interactively configure a system
that will allow them to manipulate objects in either a simulated or physical environment.
For the first stage of this work, we focused on allowing
new users to configure our software for generating collisionfree arm trajectories interactively using a tool called the Arm
Navigation Wizard. This tool requires physical specification
of the robot and some user input; it produces all necessary
configuration and application files for collision-free arm
68

*

IEEE ROBOTICS & AUTOMATION MAGAZINE

*

JUNE 2012

navigation, including those for self- and environment collision checking, joint- and task-space planning, and IK.
The physical specification of the robot is assumed to
contain strictly mechanical properties of the robot: joint
locations and limits and link locations and geometry. It
lacks some first-order semantic information about which
joints and links constitute the robot's arm or arms and end
effector or end effectors. We require that users of the Arm
Navigation Wizard configure at least one group that can be
used for planning. For most users, this group will consist
of a kinematic chain corresponding to a robot arm. The
tool makes it easy to navigate a robot's kinematic tree to
determine the base and tip links of the kinematic chain,
and upon creation the chain is rendered graphically. Configuring groups for a robot's arm or arms is the only
required interaction in the Wizard.
The primary difficulty in configuring our motion planning
and execution system for a new robot involves configuring
the self-collision checking capabilities. Our software automatically categorizes pairs of links in a robot into three categories: 1) links that never collide with each other, 2) links that
always collide with each other, or 3) links that may sometimes
collide with each other. A uniform joint-space sampling is
used to generate multiple configurations that are tested
exhaustively for collisions between different pairs of links.
Data from these tests is used to determine which category
every pair of links falls into. This information is cached and
reused during motion planning to significantly speed up collision checking. We note that precisely determining which link
pairs will never be in collision is a difficult problem; future
work will involve dynamically focusing the samples on areas
of the joint space that produce more information.
The Arm Navigation Wizard allows users to get our system working on their robots in minutes or hours, whereas
it previously may have taken months. With this capability
and working in collaboration with two researchers from
Fraunhofer IPA, we were able to port the manipulation
capabilities described in the "Environment Modeling,
Motion Planning and Execution" and "Grasping" sections
to the Care-O-Bot [8]. The process, from generating
configuration files using the Wizard to executing trajectories on the Care-O-Bot, took only a few hours. Porting our
grasping and manipulation capabilities took more time (a
few days), but the end result was that both robots could
essentially run the same code despite having different sensing hardware, arms, and end effectors, as shown in Figure 1.
Future work involves developing cross-robot benchmarking suites for motion planning and extending the Wizard
to grasping and manipulation.
Applications
The system presented in this article has been used in
several applications, developed both by our group and
external groups. All the code developed for this system is
available in the ROS software platform and can be easily
downloaded and installed on new robots (www.ros.org/


http://www.ros.org/

Table of Contents for the Digital Edition of IEEE Robotics & Automation Magazine - June 2012

IEEE Robotics & Automation Magazine - June 2012 - Cover1
IEEE Robotics & Automation Magazine - June 2012 - Cover2
IEEE Robotics & Automation Magazine - June 2012 - 1
IEEE Robotics & Automation Magazine - June 2012 - 2
IEEE Robotics & Automation Magazine - June 2012 - 3
IEEE Robotics & Automation Magazine - June 2012 - 4
IEEE Robotics & Automation Magazine - June 2012 - 5
IEEE Robotics & Automation Magazine - June 2012 - 6
IEEE Robotics & Automation Magazine - June 2012 - 7
IEEE Robotics & Automation Magazine - June 2012 - 8
IEEE Robotics & Automation Magazine - June 2012 - 9
IEEE Robotics & Automation Magazine - June 2012 - 10
IEEE Robotics & Automation Magazine - June 2012 - 11
IEEE Robotics & Automation Magazine - June 2012 - 12
IEEE Robotics & Automation Magazine - June 2012 - 13
IEEE Robotics & Automation Magazine - June 2012 - 14
IEEE Robotics & Automation Magazine - June 2012 - 15
IEEE Robotics & Automation Magazine - June 2012 - 16
IEEE Robotics & Automation Magazine - June 2012 - 17
IEEE Robotics & Automation Magazine - June 2012 - 18
IEEE Robotics & Automation Magazine - June 2012 - 19
IEEE Robotics & Automation Magazine - June 2012 - 20
IEEE Robotics & Automation Magazine - June 2012 - 21
IEEE Robotics & Automation Magazine - June 2012 - 22
IEEE Robotics & Automation Magazine - June 2012 - 23
IEEE Robotics & Automation Magazine - June 2012 - 24
IEEE Robotics & Automation Magazine - June 2012 - 25
IEEE Robotics & Automation Magazine - June 2012 - 26
IEEE Robotics & Automation Magazine - June 2012 - 27
IEEE Robotics & Automation Magazine - June 2012 - 28
IEEE Robotics & Automation Magazine - June 2012 - 29
IEEE Robotics & Automation Magazine - June 2012 - 30
IEEE Robotics & Automation Magazine - June 2012 - 31
IEEE Robotics & Automation Magazine - June 2012 - 32
IEEE Robotics & Automation Magazine - June 2012 - 33
IEEE Robotics & Automation Magazine - June 2012 - 34
IEEE Robotics & Automation Magazine - June 2012 - 35
IEEE Robotics & Automation Magazine - June 2012 - 36
IEEE Robotics & Automation Magazine - June 2012 - 37
IEEE Robotics & Automation Magazine - June 2012 - 38
IEEE Robotics & Automation Magazine - June 2012 - 39
IEEE Robotics & Automation Magazine - June 2012 - 40
IEEE Robotics & Automation Magazine - June 2012 - 41
IEEE Robotics & Automation Magazine - June 2012 - 42
IEEE Robotics & Automation Magazine - June 2012 - 43
IEEE Robotics & Automation Magazine - June 2012 - 44
IEEE Robotics & Automation Magazine - June 2012 - 45
IEEE Robotics & Automation Magazine - June 2012 - 46
IEEE Robotics & Automation Magazine - June 2012 - 47
IEEE Robotics & Automation Magazine - June 2012 - 48
IEEE Robotics & Automation Magazine - June 2012 - 49
IEEE Robotics & Automation Magazine - June 2012 - 50
IEEE Robotics & Automation Magazine - June 2012 - 51
IEEE Robotics & Automation Magazine - June 2012 - 52
IEEE Robotics & Automation Magazine - June 2012 - 53
IEEE Robotics & Automation Magazine - June 2012 - 54
IEEE Robotics & Automation Magazine - June 2012 - 55
IEEE Robotics & Automation Magazine - June 2012 - 56
IEEE Robotics & Automation Magazine - June 2012 - 57
IEEE Robotics & Automation Magazine - June 2012 - 58
IEEE Robotics & Automation Magazine - June 2012 - 59
IEEE Robotics & Automation Magazine - June 2012 - 60
IEEE Robotics & Automation Magazine - June 2012 - 61
IEEE Robotics & Automation Magazine - June 2012 - 62
IEEE Robotics & Automation Magazine - June 2012 - 63
IEEE Robotics & Automation Magazine - June 2012 - 64
IEEE Robotics & Automation Magazine - June 2012 - 65
IEEE Robotics & Automation Magazine - June 2012 - 66
IEEE Robotics & Automation Magazine - June 2012 - 67
IEEE Robotics & Automation Magazine - June 2012 - 68
IEEE Robotics & Automation Magazine - June 2012 - 69
IEEE Robotics & Automation Magazine - June 2012 - 70
IEEE Robotics & Automation Magazine - June 2012 - 71
IEEE Robotics & Automation Magazine - June 2012 - 72
IEEE Robotics & Automation Magazine - June 2012 - 73
IEEE Robotics & Automation Magazine - June 2012 - 74
IEEE Robotics & Automation Magazine - June 2012 - 75
IEEE Robotics & Automation Magazine - June 2012 - 76
IEEE Robotics & Automation Magazine - June 2012 - 77
IEEE Robotics & Automation Magazine - June 2012 - 78
IEEE Robotics & Automation Magazine - June 2012 - 79
IEEE Robotics & Automation Magazine - June 2012 - 80
IEEE Robotics & Automation Magazine - June 2012 - 81
IEEE Robotics & Automation Magazine - June 2012 - 82
IEEE Robotics & Automation Magazine - June 2012 - 83
IEEE Robotics & Automation Magazine - June 2012 - 84
IEEE Robotics & Automation Magazine - June 2012 - 85
IEEE Robotics & Automation Magazine - June 2012 - 86
IEEE Robotics & Automation Magazine - June 2012 - 87
IEEE Robotics & Automation Magazine - June 2012 - 88
IEEE Robotics & Automation Magazine - June 2012 - 89
IEEE Robotics & Automation Magazine - June 2012 - 90
IEEE Robotics & Automation Magazine - June 2012 - 91
IEEE Robotics & Automation Magazine - June 2012 - 92
IEEE Robotics & Automation Magazine - June 2012 - 93
IEEE Robotics & Automation Magazine - June 2012 - 94
IEEE Robotics & Automation Magazine - June 2012 - 95
IEEE Robotics & Automation Magazine - June 2012 - 96
IEEE Robotics & Automation Magazine - June 2012 - 97
IEEE Robotics & Automation Magazine - June 2012 - 98
IEEE Robotics & Automation Magazine - June 2012 - 99
IEEE Robotics & Automation Magazine - June 2012 - 100
IEEE Robotics & Automation Magazine - June 2012 - 101
IEEE Robotics & Automation Magazine - June 2012 - 102
IEEE Robotics & Automation Magazine - June 2012 - 103
IEEE Robotics & Automation Magazine - June 2012 - 104
IEEE Robotics & Automation Magazine - June 2012 - 105
IEEE Robotics & Automation Magazine - June 2012 - 106
IEEE Robotics & Automation Magazine - June 2012 - 107
IEEE Robotics & Automation Magazine - June 2012 - 108
IEEE Robotics & Automation Magazine - June 2012 - 109
IEEE Robotics & Automation Magazine - June 2012 - 110
IEEE Robotics & Automation Magazine - June 2012 - 111
IEEE Robotics & Automation Magazine - June 2012 - 112
IEEE Robotics & Automation Magazine - June 2012 - Cover3
IEEE Robotics & Automation Magazine - June 2012 - Cover4
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2023
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2022
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2021
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2020
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2019
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2018
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2017
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2016
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2015
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2014
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2013
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2012
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_june2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_march2011
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_december2010
https://www.nxtbook.com/nxtbooks/ieee/roboticsautomation_september2010
https://www.nxtbookmedia.com