Skip to content

Industrial Arm Grasping

James Taylor edited this page Aug 25, 2016 · 27 revisions

Table of Contents

Scenario
Experiments
-Control
-Primitive/Tessellation
-Inertial Modification

==========================

Scenario

Industrial Arm

For the industrial arm scenario, we acquired a model of the UR10 robotic arm from the ROS Industrial repository and converted it to GAZEBO’s SDF format. We combined this with a model that we composed of the Schunk MPG-80 hand, using CAD files from the manufacturer (and its technical schematics). We mated the Schunk hand to the UR10 arm to produce a 6-DOF arm with parallel gripper. The inertial properties for the UR10 arm came from the UR10’s URDF (and are presumably accurate). The inertial properties for the Schunk hand were set by approximating the bounding volume of the palm assembly and the individual fingers with boxes and apportioning the mass of the palm to be 80% of the total mass (described in the hand schematics); each of the two fingers were assigned the remaining 20% of the total mass. The box approximations were used for collision geometries in the geometric primitive experiments and the CAD meshes were used for collision geometries in the tessellated mesh experiments. The gripper prismatic joints were constrained by joint limits derived from the stroke per finger (defined in the schematics). Each gripper is actuated toward closure with 100N of force, which should be sufficient to maintain force closure on even dense objects.

The object to be grasped was modeled as a simple cube with equal dimensions of 100mm. This provided us with a primitive/primitive representation, which we hypothesized would yield more robust grasping than using primitive/mesh or mesh/mesh-based experiments. For the geometric primitive experiments a collision box was used; for the tessellated mesh experiments, a mesh was generated in BLENDER using the same dimensions as the cube. The mass of the object to be grasped was set to 1 kg, and its inertial tensor was derived from a box with given dimensions and mass.

The arm controller was designed to move the arm through randomized sinusoidal trajectories for all joints using PD-control. The amplitude of each sinusoid was tuned to be as large as possible without the arm colliding with either itself or the ground plane. The prismatic joints controlling the grippers applied 100N of constant force.

==========================

Experimental Results

Note: Videos of the results are available on the Videos page.

Control

Primitive Block/Primitive Hand Collision Geometry & Realistic Inertias

High Friction

Primitive Block/Primitive Hand Collision Geometry (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 2.249 2.25283
ODE (tuned) 14.382 30.0147
DART (default) 33.35 33.5573
Bullet (default) 8.505 8.53675
'Infinite' Friction

Primitive Block/Primitive Hand Collision Geometry ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.852 1.85148
ODE (tuned) 14.499 27.7441
DART (default) 43.673 44.0366
Bullet (default) 13.374 13.4436

==========================

Primitive\Tessellation

Polygonal Block/Primitive Hand Collision Geometry

High Friction

Polygonal Block/Primitive Hand Collision Geometry (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.656 1.65904
ODE (tuned) 1.656 2.59754
DART (default) NA NA
Bullet (default) NA NA

Note: NA is recorded for both DART and BULLET because they immediately crash and no data is captured from the simulation.

'Infinite' Friction

Polygonal Block/Primitive Hand Collision Geometry ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.656 1.65687
ODE (tuned) 1.656 2.64722
DART (default) NA NA
Bullet (default) NA NA

Note: NA is recorded for both DART and BULLET because they immediately crash and no data is captured from the simulation.

Primitive Block/Polygonal Hand Collision Geometry

High Friction

Primitive Block/Polygonal Hand Collision Geometry (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 19.839 19.9434
ODE (tuned) 4.148 9.20683
DART (default) 100 118.716
Bullet (default) 0.718 13.943
'Infinite' Friction

Primitive Block/Polygonal Hand Collision Geometry ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 11.249 11.2861
ODE (tuned) 4.119 9.1931
DART (default) 99.321 116.578
Bullet (default) 0.618 12.0107

Polygonal Block/Polygonal Hand Collision Geometry

High Friction

Polygonal Block/Polygonal Hand Collision Geometry (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.656 1.66013
ODE (tuned) 1.656 2.67976
DART (default) NA NA
Bullet (default) NA NA

Note: NA is recorded for both DART and BULLET because they immediately crash and no data is captured from the simulation.

'Infinite' Friction

Polygonal Block/Polygonal Hand Collision Geometry ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.656 1.657
ODE (tuned) 1.656 2.69536
DART (default) NA NA
Bullet (default) NA NA

Note: NA is recorded for both DART and BULLET because they immediately crash and no data is captured from the simulation.

==========================

Inertial Modification

Unit/Identity Inertia

High Friction

Inertial 1/1 Modification (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 11.419 11.4851
ODE (tuned) 100 187.913
DART (default) 100 100.596
Bullet (default) 0.702 13.7842
'Infinite' Friction

Inertial 1/1 Modification ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 14.873 14.9174
ODE (tuned) 100 182.079
DART (default) 63.572 63.8316
Bullet (default) 0.715 13.7165

1/2 Inertia

High Friction

Inertial 1/2 Modification (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.533 1.54477
ODE (tuned) 1.681 2.68096
DART (default) 20.946 21.1052
Bullet (default) 1.023 19.6004
'Infinite' Friction

Inertial 1/2 Modification ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.533 1.53322
ODE (tuned) 1.728 2.77965
DART (default) 31.152 31.2837
Bullet (default) 0.155 2.97533

1/4 Inertia

High Friction

Inertial 1/3 Modification (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.537 1.53907
ODE (tuned) 1.688 2.80886
DART (default) 1.489 1.49198
Bullet (default) NA NA

Note: NA is recorded for BULLET because it immediately crashes and no data is captured from the simulation.

'Infinite' Friction

Inertial 1/3 Modification ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 1.537 1.53924
ODE (tuned) 1.783 2.92318
DART (default) 1.486 1.49032
Bullet (default) 3.117 3.12313

1/4 Inertia

High Friction

Inertial 1/4 Modification (High Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 0.002 NA
ODE (tuned) 0.002 NA
DART (default) 0.002 NA
Bullet (default) NA NA

Note: NA is recorded for all dynamics engines because they immediately crash and no data is captured from the simulation.

'Infinite' Friction

Inertial 1/4 Modification ('Infinite' Friction)

Dynamics Total Sim Time (s) Total Real Time (s)
ODE (default) 0.002 NA
ODE (tuned) 0.002 NA
DART (default) 0.002 NA
Bullet (default) 0.161 3.09429

Note: NA is recorded for all dynamics engines except BULLET because they immediately crash and no data is captured from the simulation. Even though BULLET doesn't immediately crash, no data is generated.

1/10 Inertia

High Friction
'Infinite' Friction

Note: For all engines with the 1/10 inertia formulation, the dynamics engines crashed and no data was generated.

==========================

Metric
Multiple Block Grasping Experiments
Anaylsis
Videos