Uncertainty in Grasping and Feeding

Post on 03-Jan-2016

41 views 0 download

Tags:

description

Uncertainty in Grasping and Feeding. Frank van der Stappen Utrecht University Shanghai, China, May 9, 2011. Outline. Algorithmic Automation Grasping: finger misplacements Feeding: pose variations Inaccurate manipulators and imprecise parts. RISC: 15 Years Ago. - PowerPoint PPT Presentation

Transcript of Uncertainty in Grasping and Feeding

Uncertainty in Grasping and Feeding

Frank van der Stappen

Utrecht University

Shanghai, China, May 9, 2011

Outline

• Algorithmic Automation

• Grasping: finger misplacements

• Feeding: pose variations

• Inaccurate manipulators and imprecise parts

RISC: 15 Years Ago

‘Simplicity in the factory’ [Whitney 86] instead of ‘ungodly complex robot hands’ [Tanzer & Simon 90]

Reduced Intricacy in Sensing and Control [Canny &

Goldberg 94]:• simple ‘planable’ physical actions, by• simple, reliable hardware components• simple or even no sensors

Algorithmic Automation

• Complete,• efficient, and• provably correct planning algorithms

using • geometry,• data structures, and• modeling and

simulation

planner

Outline

• Algorithmic Automation

• Grasping: finger misplacements

• Feeding: pose variations

• Inaccurate manipulators and imprecise parts

Grasp Analysis

• Form Closure: Analysis of Instantaneous Velocities [1870s]

• Force Closure: Analysis of Forces and Moments [1970s]

– 4 fingers sufficient for most 2D parts– 7 fingers sufficient for most 3D parts

• 2nd Order Immobility: Analysis in Configuration Space [1990s]

– 3 fingers sufficient for most 2D parts– 4 fingers sufficient for most 3D parts

Wrench Analysis

Force closure: wrenches w1,…,wk induced by fingers should be able to resist any external wrench [Lakshminarayana 1978], so

w1,…,wk form a positive basis for wrench space, so

convex hull of w1,…,wk has O in its interior.

w1

w2

w3w4

Computing the Grasps or Fixtures

• Four points along four edges

4a,3a,2a,1a edges

4321 )a,a,a,a(FC :Output

4321 a and ,a,a,a on points with grasps ofset

complexity )1(O

n edges

Output-Sensitive Grasp Synthesis

• Naïve:

• Output-sensitive:

)a,a,a,a(FC compute do )a,a,a,a( allfor 43214321

)a,a,a,a(FC compute do )P(Q)a,a,a,a( allfor 43214321 })a,a,a,a(FC|)a,a,a,a{()P(Q compute 43214321 )n(O 2

)Kn(O 2

)1(O)n(O 4 x )n(O 4=

)K(O|))P(Q(|O )1(O )K(Ox =

Algorithmic Approach

2D

2D

2D

nn

? n²

naive: n combinations

4smart: ± n operations

2

data structure

Finger Misplacement

• Algorithm reports continuous set of all four-finger grasps

• Some grasps are very sensitive to finger mispacements

• Postprocessing step in ‘configuration space’ of all grasps: [Ponce et al 1995, vdS et al 2000]

– determine grasp that minimizes sensivity to finger misplacement

– select the grasps that allow for a given misplacement of all fingers

Independent Grasp Regions in 2D

• Identify combinations of regions on part boundary that allow for independent finger placements [Nguyen 1988].

w1

w2

w3w4

Insensitivity to Finger Misplacements

• Place fingers at the centers of the independent grasp regions: allowed misplacement is computable.

Independent Grasp Regions in 3D

• Given a rectilinear polyhedron, identify all combinations of 7 patches that admit independent finger placement.

Boundary is subdivided into n patches of size ε x ε to guarantee allowed misplacement of ε/2.

εε

Different Algorithmic Challenges

• Red-blue containments and crossings instead of red-blue intersections

Caging

• Rigid motion of the fingers

Caging

• Rigid motion of the fingers forces part to move along

Caging

• Fingers cage a part if there exists no motion that takes

the part from its current placement to a remote placement without colliding with a finger.

If the current placement lies in a bounded component of free configuration space then the part is caged.

Outline

• Algorithmic Automation

• Grasping: finger misplacements

• Feeding: pose variations

• Inaccurate manipulators and imprecise parts

Part Feeding

• Feeders based on various actions: push, squeeze, topple, pull, tap, roll, vibrate, wobble, drop, …

Parts Feede

r

Feeding with Fences

• Every 2-dimensional part can be oriented by fences over a conveyor belt.

• Shortest fence design efficiently computable [Berretty, Goldberg, Overmars, vdS 98].

www.durafeed.com

Vibratory Bowl Feeders

• Parts vibrate upward along a helical track.

• Obstacles force wrongly oriented parts back to the bottom of the bowl.

• Design of obstacles.

Algorithmic Trap Design

• Filtering traps for vibratory bowl feeders

• Combination of rejection functionality of traps and reorientation functionality of fences

Blades

Blades

Assumptions

• Parts– identical polyhedra– quasi-static motion– singulated

• Zero friction• No toppling• Locally linear track

Part Reorientation and Rejection

• Reorientation: track pose to blade pose– Blade angle– Blade height

• Rejection: blade pose− Blade width

Modeling

blade angle

blade width wblade height

h

INPUTPolyhedral part P & Center of mass C

OUTPUT

Set of blades b(,h,w) feeding P

ALGORITHM

Blade Space

Blade width

Blade height

Blade angle

hw

• Point represents a blade• Surfaces subdivide space

Critical Surface

Blade width

Blade height

Blade angle

• Critical surface for every initial pose, consisting of patches (one per possible reorientation)– Above surface: part in that pose falls– Below surface: part in that pose survives

S

Critical Arrangement

Blade width

Blade angle

• B is a blade that feeds P1

• Valid solutions: points above all but one surface: 1-level

P1

P2

P3

B

Blade height

Physical Experiments

pose I

blade

track wall

• Discrepancies with prediction by model– Part motion– Part model– Part variations

Uncertainty in Reorientation

Uncertainty in Reorientation

pose A

pose B

Height

Uncertainty in Reorientation

pose I

Angle

Width

Patches of initial part pose I’s critical surface correspond to final part poses

patch Bpatch A

Angle

h=H

Consider cross-section at blade height h

Uncertainty in Reorientation

Height

Width

Angle

Width

blade

Model predicts that the blade reorients the part to pose A after which it is rejected but the experiments shows that it occasionally gets fed in pose B

Uncertainty in Reorientation

patch B

patch A

Alter Patches

width

patch A patch B

angle

w

Pose B may be fed by the blade

width

angle

Adjust width of the patch

Uncertainty in Reorientation

patch A patch B

Outline

• Algorithmic Automation

• Grasping: finger misplacements

• Feeding: pose variations

• Inaccurate manipulators and imprecise parts

Uncertainty

• Determine manipulation plans that work despite given variations in – part shape– manipulator actions

• Analysis• Existence• Synthesis

Imperfect Parts

• For a given task and a family of shapes, plan actions that accomplish the task for any shape in the family

Inaccurate Manipulators

• For a given part, task, and a range of perturbations of any possible action, plan actions such that even the perturbed versions of the actions in the plan accomplish the task

AMPLIFI

New project: Algorithms for manipulation planning with imperfect parts and inaccurate manipulators

Open PhD position, funded by NWO:• MSc degree in computer science or mathematics• interest in (and preferably background) in algorithms design• interest in applications in Robotics and Automation.

Thank You!

Papers available from http://people.cs.uu.nl/frankst/

Joint work with: Mark Overmars, Ken Goldberg, Elon Rimon, Mark de Berg, Xavier Goaoc, Chantal Wentink, Robert-Paul Berretty, Jae-Sook Cheong, Onno Goemans, Mostafa Vahedi, Heinrich Kruger, Herman Haverkort, Anthony Lewandowski, Marshall Anderson, Gordon Smith