450 likes | 577 Views
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.
E N D
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
Complete, efficient, and provably correct planning algorithms using geometry, data structures, and modeling and simulation Algorithmic Automation 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. w2 w1 w4 w3
Computing the Grasps or Fixtures • Four points along four edges n edges
x = x = Output-Sensitive Grasp Synthesis • Naïve: • Output-sensitive:
Algorithmic Approach 2D 2D 2D data structure n² ? n² n n smart: ± n operations naive: n combinations 4 2
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]. w2 w1 w4 w3
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 Feeder
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].
Parts vibrate upward along a helical track. Obstacles force wrongly oriented parts back to the bottom of the bowl. Design of obstacles. Vibratory Bowl Feeders www.durafeed.com
Algorithmic Trap Design • Filtering traps for vibratory bowl feeders
Blades • Combination of rejection functionality of traps and reorientation functionality of fences
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 width w blade angle blade height h INPUT Polyhedral part P & Center of mass C OUTPUT Set of blades b(,h,w) feeding P ALGORITHM
Blade Space Blade width Blade height w h Blade angle • Point represents a blade • Surfaces subdivide space
Critical Surface • 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 Blade width S Blade height Blade angle
Critical Arrangement Blade width • B is a blade that feeds P1 • Valid solutions: points above all but one surface: 1-level P1 B P2 Bladeheight P3 Blade angle
Physical Experiments • Discrepancies with prediction by model • Part motion • Part model • Part variations track wall blade pose I
Uncertaintyin Reorientation pose A pose B
Uncertainty in Reorientation Width patch B patch A pose I Height Angle Patches of initial part pose I’s critical surface correspond to final part poses
Height Uncertainty in Reorientation Width h=H Angle Consider cross-section at blade height h
Uncertainty in Reorientation Width patch B blade patch A Angle 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
Alter Patches width patch A patch B w angle Pose B may be fed by the blade
Uncertainty in Reorientation width patch A patch B angle Adjust width of the patch
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