Automated Design of Special Purpose Dexterous Manipulators - - PowerPoint PPT Presentation

automated design of special purpose dexterous manipulators
SMART_READER_LITE
LIVE PREVIEW

Automated Design of Special Purpose Dexterous Manipulators - - PowerPoint PPT Presentation

Automated Design of Special Purpose Dexterous Manipulators Christopher Hazard Motivation Challenges Humanoid Hands Goal: mirror human hand Impressive capability Important limitations Very expensive Costly mechanical


slide-1
SLIDE 1

Automated Design of Special Purpose Dexterous Manipulators

Christopher Hazard

slide-2
SLIDE 2

Motivation

slide-3
SLIDE 3

Challenges

slide-4
SLIDE 4

Humanoid Hands

  • Goal: mirror human hand
  • Impressive capability
  • Important limitations
  • Very expensive
  • Costly mechanical failures

ACT: anatomically correct testbed hand NASA Robonaut Hand Shadow Dexterous [1] “The ACT hand: Design of the skeletal structure” Weghe 2004 [2] “The robonaut hand: A dexterous robot hand for space” Lovchick 1999 [3] Shadow Dexterous: https://www.shadowrobot.com

slide-5
SLIDE 5

Low Cost (Simplified) Hands

  • underactuated designs
  • 3d printable components
  • cheap materials + simple construction
  • soft/compliant components
  • cheap embedded sensing

[1] “A modular, open-source 3D printed underactuated hand” Ma 2013 [2] “A compliant hand based on a novel pneumatic actuator” Deimel 2013 [3] "The highly adaptive SDM hand: Design and performance evaluation“ Dollar 2010

Pneumatic Hand (Diemel 2013) SDM Hand (Dollar 2010) 3D printed Hand (Ma 2013)

slide-6
SLIDE 6

Design Parameter Optimization

Ceccarelli 2004: workspace optimization

[1] “Articulated hands: Force control and kinematic issues” Salisbury 1982 [2] “A multi-objective optimum design of general 3R manipulators for prescribed workspace limits” Ceccarelli 2004 [3] “Contribution to the optimization of closed-loop multibody systems: Application to parallel manipulators” Collard 2005 [4]” An optimization problem approach for designing both serial and parallel manipulators” Ceccarelli 2005

Salisbury 1982: Stanford-JPL hand Collard 2005: Manipulability Optimization

slide-7
SLIDE 7

Trajectory Optimization

[1] “Construction and animation of anatomically based human hand models” Albrecht 2003 [2] "Synthesis of interactive hand manipulation." Liu 2008 [3] ”Dextrous manipulation from a grasping pose” liu 2009 [4] “Synthesis of Detailed Hand Manipulations Using Contact Sampling” Ye 2012 [5] "Contact-invariant optimization for hand manipulation." Mordatch 2012

Mordatch 2012 Ye 2012 Liu 2008

slide-8
SLIDE 8

Our Work

Optimization High Level Task Input Simplified Hand Design + Motion Plan

slide-9
SLIDE 9

Floating Motion Plan: Contacts, forces, object positions Step 2: Mechanism Synthesis Optimization User Input: Initial contact points (not necessarily optimal), base trajectory, motion objectives Step 3: “Whole Hand” Optimization Optimized Mechanism and Poses Mechanism and final motion plan (contacts, hand/object poses, forces) Step 1: Floating Contact Optimization Step 1b: Floating De-fuzzification

slide-10
SLIDE 10

Step 1: Floating Contact Optimization

slide-11
SLIDE 11

Floating Contact Optimization

Vertical Flip Pick and Rotate

Input:

  • Object goal poses
  • Initial contact points

Output:

  • Physically valid motion plan (contacts and forces)
slide-12
SLIDE 12

Step 1: Floating Optimization Problem

  • xO = object position + orientation
  • fj = contact force (contact j)
  • rj = contact position (contact j)
  • cj = contact invariant term
slide-13
SLIDE 13

Step 1: Floating Optimization Objective Terms

  • Task----specify goal of the manipulation
  • Physics—force and torque balancing + friction cone constraints
  • Contact Invariant terms—projection of contacts onto object surface
  • Additional Regularization Terms—smooth out the motion
slide-14
SLIDE 14

Task Objective Terms

  • Main objective type: object pose
  • Quatdist: angular distance between 2 orientations

Alternative/additional objectives:

  • End effector tracking between object and target points
  • Additional perturbing forces
slide-15
SLIDE 15

Physics Terms

  • x = object position
  • fj = contact force (contact j)
  • rj = contact position (contact j)
  • cj = contact invariant term

Derivative of angular momentum Applied Torque Applied Force Derivative of linear momentum

slide-16
SLIDE 16

Force and Contact Related Terms

Force Related Costs For contact i: fi = contact force ri = contact position (object local frame) ni = object surface normal (local frame) Alpha is a constant (sharpening factor) Contact Invariant Related Costs Contact Projection Distance onto Object

ftangent fnormal

fnorm ftangent

slide-17
SLIDE 17

Additional Regularization Terms

Acceleration of contact: finite differences Angular Momentum derivative Object acceleration: finite differences

slide-18
SLIDE 18

Floating Post-Processing

  • Binarize contact

variable

  • Threshold and

reoptimize

  • Continuous

Contact Variables

  • Contact variables

held fixed (binary)

slide-19
SLIDE 19

Step 2: Mechanism Synthesis

slide-20
SLIDE 20

Step 2: Mechanism Synthesis

Floating Optimization Synthesis Optimization: Joints per finger, joint axes, segment lengths, finger positions on base, hand poses

  • Fingers track individual contact trajectories
  • Independently controlled joints

Output: Optimized Mechanism + Poses Contact Motion Plan

slide-21
SLIDE 21

Continuous Synthesis Optimization

  • Morphological parameters M:
  • finger lengths
  • joint axes
  • locations of fingers on the base
  • Joint positions Q (hand poses at each keyframe)
  • Contact points P (on fingertips)
slide-22
SLIDE 22

Contact Point Costs

Synthesis Objective Terms

slide-23
SLIDE 23

Synthesis Objective Terms

Collision Penalties

Penetration Depth

slide-24
SLIDE 24

Additional Costs

Joint Limit Violation Distal link: min length and a large length

slide-25
SLIDE 25

Additional Costs

Lifted finger transitions smoothly from one side to the other Projection Error

slide-26
SLIDE 26

Controllability Constraints

Let E = {e0,…,ek} be an orthonormal basis of the Jacobian null space:

Torque Regularization: Jacobian Null Space:

Exerted F

slide-27
SLIDE 27

Controllability Constraints Demonstration

  • 1. Finger held still: optimal joints
  • 2. Finger rotates in plane

Joints slightly off axis: LjacNull = 0 Ltorque very high

  • 3. Finger rotates in plane:

Optimal joint configuration Exerted F Exerted F Exerted F

slide-28
SLIDE 28

Synthesis Design Loop

Finger 1 Finger 2 Finger 3 Random Recombination + Re-Optimization … … … … Individual Finger Designs: Optimized Independently with Random Seeds Pick best hand Add segments if LeeTarget + LjacNull> threshold Re-optimize

slide-29
SLIDE 29

Step 3: Whole Hand Optimization

slide-30
SLIDE 30

Whole Hand Optimization Problem

  • Adjusts the motion so it fits to the designed hand
  • Uses floating objectives + additional objectives
  • Also optimize for robot poses q
  • Morphology stays fixed
slide-31
SLIDE 31

Friction Cone wrt fingertip surface Contact projection onto fingertip surface

Additional Optimization Terms

Additional terms (from floating) adapted for hand:

Contact way outside friction cone w.r.t. finger

Hand Friction Cone Demonstration (without term)

Caused by (small) errant collision with object

slide-32
SLIDE 32

Controllability constraints Collision (includes ground, hand, object, external objects)

Additional Optimization Terms

Terms copied over from the synthesis step: Other:

slide-33
SLIDE 33

Slippage Terms

Slippage w.r.t. object Slippage w.r.t. finger

Bottom Line: distance slipped on object = distance slipped on fingertip (w.r.t. world frame) Slip directions w.r.t world frame line up Not a complete model, but helpful

Zero slip penalty

slide-34
SLIDE 34

Simple Manipulations

Translate Vertical Rotate

slide-35
SLIDE 35

Examples

180 Rotation Rotate and Bow Out

slide-36
SLIDE 36

More Examples

Pick up and rotate Vertical flip

slide-37
SLIDE 37

Alternative Objective: Drawing

Draw triangle Draw box

slide-38
SLIDE 38

Tabletop Rotation: Two versions

Tabletop overtop Tabletop from the side

slide-39
SLIDE 39

Building Up a Motion From Primitives

Horizontal (no gravity) Horizontal (with gravity)

slide-40
SLIDE 40

Building Up a Motion From Primitives

Circle in plane (with gravity) Circle in plane (no gravity)

slide-41
SLIDE 41

Building Up a Motion From Primitives

Hemisphere (with gravity)

slide-42
SLIDE 42

“Multi-objective” Chaining Example

Sphere Rotation

slide-43
SLIDE 43

“Multi-objective” Chaining Example

Sphere Rotation + translation

slide-44
SLIDE 44

“Multi-objective” Chaining Example

Sphere Rotation + xy translation

slide-45
SLIDE 45

Common Patterns

  • The mechanisms for each task look totally different!
  • Non-obvious/non-trivial designs
  • Different numbers of links for each hand: scales with complexity
  • Trajectory complexity tends to correspond to importance of fingers
  • Hands become more aesthetically pleasing as we add more complexity to

motion

slide-46
SLIDE 46

Limitations

  • Slippage dynamics not exact
  • discouraged, not prohibited
  • usually not problematic except at high curvature
  • User must provide a good base position and reasonable initial contacts
  • contacts selected with concept of fingers in mind
  • Random contact initialization:
  • can work but unreliable
  • disconnect between optimization steps
slide-47
SLIDE 47

Pencil Pickup Slip Demonstration

Acceptable Slippage Uncomfortable Slippage

slide-48
SLIDE 48

Automatic Contact Brittleness Demo

Sphere translate: Ok mechanism Sphere translate: Brittle mechanism

slide-49
SLIDE 49

Additional Topics For The Future

  • Multi-objective optimization
  • Initial Contact Planning
  • Robustness through Physical Simulation
  • Incorporating Dimensionality Reduction (Linkages/Synergies)
slide-50
SLIDE 50

Multi-Objective Optimization

Motion 1 Optimization Pipeline Motion 1 Optimization Pipeline Current Capability: Motion Chaining Extension: Optimize for Separate Motions Motion 2 Motion 3 Hand + Motion Plan + + Motion 2 Motion 3 Hand + Motion Plan

Problem: how do floating contacts match up?

  • --- (n!)k-1 combos for n fingers, k motions

Motion 1: Finger 1 Finger 2 Finger 3 Motion 2: Finger 1 Finger 2 Finger 3 Motion 3: Finger 1 Finger 2 Finger 3

slide-51
SLIDE 51

Initial Contact Planning/Additional Floating Heuristics

[1] Finger gaits planning for multifingered manipulation Xu 2007 [2] Towards an automatic robot regrasping movement … Vinayavekhin 2011

Vinayavekhin 2011: re-grasp on a cylinder Xu 2007: finger gaiting for sphere rotation Twirling a pencil

slide-52
SLIDE 52

Robustness Through Physical Simulation

Optimized Design + Motion Plan Robust Hand Design + Control Policy Whole Hand Optimization (Step 3) Physics Simulation Evolutionary Optimization: Mechanism + Control Policy

  • Use synthesized mechanism as seed
  • Control policy (torque): force feedback or open loop
  • Gradient free optimization (e.g. Covariance Matrix Adaptation)
  • Final step before fabrication
slide-53
SLIDE 53

Dimensionality Reduction

[1] "Computational design of mechanical characters" Coros 2013 [2] “Computational design of linkage-based characters” Thomaszewski 2014

Coros 2013: design and fabrication example Thomaszewski 2014: motor replacement steps Coros 2013: linkage tracks target curve (red)