Download presentation
Presentation is loading. Please wait.
1
Motion Planning for Legged Robots on Varied Terrain Kris Hauser, Timothy Bretl, Jean-Claude Latombe Kensuke Harada, Brian Wilcox Presented By Derek Chan and Alan Schoen
2
Motivation Goal: Allow a legged robot to traverse varied environments Gaited walking is effective for flat or easy terrain However motion primitives (computed, programmed, or animated) are insufficient for rough terrain or varied environments Motion planners can determine candidate footfall contact positions over varied environments and generate continuous paths between these positions However the quality of the motion can be unrealistic These techniques can be combined
3
Motivation Non-gaited motion http://www.stanford.edu/~khauser/videos/humanoids2005/noise4.mpeg Non-gaited motion with motion primitives http://www.stanford.edu/~khauser/videos/wafr2006_hrp/noise_0.5.mpeg
4
Outline Robots Analyzed Motion Planner Improving quality using Motion Primitives Results Conclusion
5
Robots ATHLETE (NASA) Allowable Contacts: 6 feet 2.75m Diameter 850 kg (1875 lbs) Configuration: 3 translation, 3 orientation, and 36 joints angles HRP-2 (AIST) Allowable Contacts: 2 legs, 2 arms, 2 knees 1.54m tall 58 kg (128 lbs) Configuration: 3 translation, 3 orientation, and 30 joint angles
6
Motion Planner Review Planner is similar to: Timothy Bretl; “Motion Planning of Multi-Limbed Robots Subject to Equilibrium Constraints: The Free-Climbing Robot Problem” Footfalls are computed before the motion of the robot Planner uses stances and transitions Stances: a mapping of the feet to a given set of footfalls One stance applies to many configurations Adjacent stances differ by a single contact added or removed Transition: a configuration that exists in two adjacent stances Applied force at one of the contacts is zero
7
2 Stage Planner Generate a sequence of transitions between stances ending in the goal Expand this sequence into a continuous trajectory by finding paths between subsequent transitions A path in the stance graph does not necessarily mean a path exists between the desired start and end stances Thus for each stance one must perform a search in a transition graph Motion Planner Review
8
Constraints for Planner Viable configurations are limited by various factors: Contacts Feet contacts can not be further apart than the reach of the robot Static Equilibrium Center of mass must be above support polygon Force balance, torque balance, friction cones must be satisfied Joint Torque Limits Each joint can only apply so much torque to counteract gravity Collision with self and environment Precomputed bounding volume hierarchies
9
Stance Search Differs from Bretl since the contact points are predefined by the environment Planner samples contact locations across the terrain Possible stance set from the sampled contact locations is very large Thus the entire stance graph is not explicitly stored Like Bretl a priority queue is used to explore the stance space Adjacent stances are placed onto the queue This queue is used to determine a path between the start and end stances
10
Ordering the Graph Search Performance of the search over the stance graph can be improved by ordering the candidate stances using a heuristic Cost for stance is a weighted sum of: Distance to Goal (distance between current stance and final stance) Footfall Distribution (difference between contact points and normal stance on flat ground) Equilibrium Criteria (inversely proportional to the area of its support polygon) Planning time (time spent generating a transition for the stance)
11
Generating Transitions Rejection Sampling is not used The likelihood of randomly sampling a configuration which matches the necessary contact and equilibrium constraints of a transition is low Transitions are generated using custom techniques to find candidate configurations The candidate configurations are repaired using numerical inverse kinematics techniques
12
Custom Transition Creation ATHLETE Least squares plane through the contact points is used as a guide for the position and orientation for the chassis Select joint angles which cause the feet to be close to the contacts for the stance HRP-2 One of the body contacts is used as the root Starting from the root, joint angles for the rest of the body are sampled according to joint angle limits The joint angles are adjusted so that the contacts of the stance are approximately matched
13
Improving Motion Quality Goal: improve motion quality without losing ability to access areas of the terrain Plan: introduce motion primitives
14
Generating Primitives Take adjacent stances σ and σ’ Take stable configuration q Given σ, σ’, q choose a nonlinear optimized path which minimizes some function e.g.: Path length Joint Torque Energy Body Tilt Record the primitive as a nominal path in configuration space Note: each primitive ether adds or takes a contact point
15
Planning with Primitives Done on three levels. The primitive can be used to: –Find a path based on a given stance (σ) and transition (q in F σ ∩ F σ’ ) –Find a transition based on an initial and final stance 1.Find a new contact based on an initial stance
16
Finding a Path u, σ, σ’ and q are known u(t) = A(u(t) – u(0)) + q init Use affine transformation A such that: u(0) = q init and u(1) = q final Choose A close to the identity transformation First translate u(0) to q then bring u closer to the segment between q init and q final as t increases
17
Finding a Path Sample points along u(t) If sample point is not useable expand a neighborhood around it
18
Finding a Path Connect neighboring roots Grow trees from each disconnected pair: Grow concurrently Check for path between closest pair on each tree on each iteration
19
Finding a Transition u, σ and σ’ are known (find q) Find u such that σ u and σ u’ are as close as possible to σ and σ’ Minimize differences between contact points by: –Rotation around gravity vector –Translation Sample the transitions in growing neighborhood of u(1) u works, so it is a good strategy to stay near it
20
Finding a Contact u and σ are known (find σ’) Recall: u either adds or removes a contact If u removes a contact then σ’ is obvious If u adds a contact we need to find a place for the contact
21
Finding a Contact Map σ u to σ Vary transformation to adjust new contact placement Sample contacts Keep ones with similar properties to contact defined by u
22
Deciding on a Primitive Could look for: σ u similar to σ σ’ u similar to terrain Still an open question
23
Results with ATHLETE Gaited motion works well on gentle terrain but fails on difficult terrain Planner navigates both gentle and difficult terrain Planner works beyond limits of manual planning
24
Results for ATHLETE Gentle Terrain Gaited Planned
25
Results for ATHLETE Rough Terrain Gaited Planned
26
Results for ATHLETE Planner was robust under different morphologies
27
Results for HRP-2 Motion quality is greatly improved for lightly constrained motion: Using primitives to plan path, transition and point of contact was very effective
28
Results for HRP-2 Original Path Transition Contact
29
Results for HRP-2 Primitives improved motion quality and reduced planning time Quality and time drop off slowly as required motion deviates from primitive
30
Results for HRP-2 Primitives improved motion quality on a wide variety of difficult terrains Primitives were versatile
31
Future Work Integrate planner with controller Improve primitive generation techniques Create dynamically stable primitives Use planner to improve legged robot design
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.