Self-Collision Detection. Planning for Humanoid Robots. Digital Human Research Center. Talk Overview

Similar documents
Self-Collision Detection and Prevention for Humanoid Robots. Talk Overview

Motion Planning. COMP3431 Robot Software Architectures

Motion Planning for Humanoid Robots

James Kuffner. The Robotics Institute Carnegie Mellon University. Digital Human Research Center (AIST) James Kuffner (CMU/Google)

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Dynamically-stable Motion Planning for Humanoid Robots

Online Generation of Humanoid Walking Motion based on a Fast. The University of Tokyo, Tokyo, Japan,

Dynamically-Stable Motion Planning for Humanoid Robots

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Generating Whole Body Motions for a Biped Humanoid Robot from Captured Human Dances

Configuration Space of a Robot

Leg Motion Primitives for a Humanoid Robot to Imitate Human Dances

Motion Planning for Whole Body Tasks by Humanoid Robots

Integrating Dynamics into Motion Planning for Humanoid Robots

A Local Collision Avoidance Method for Non-strictly Convex Polyhedra

Sampling-based Planning 2

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Sound and fast footstep planning for humanoid robots

Collision Detection. These slides are mainly from Ming Lin s course notes at UNC Chapel Hill

RRT-Connect: An Efficient Approach to Single-Query Path Planning

Instant Prediction for Reactive Motions with Planning

Adaptive Motion Control: Dynamic Kick for a Humanoid Robot

Motion Planning of Human-Like Robots using Constrained Coordination

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

Path Planning in Dimensions Using a Task-Space Voronoi Bias

15-494/694: Cognitive Robotics

Motion Planning, Part III Graph Search, Part I. Howie Choset

CS 231. Control for articulate rigid-body dynamic simulation. Articulated rigid-body dynamics

Intuitive and Flexible User Interface for Creating Whole Body Motions of Biped Humanoid Robots

A Walking Pattern Generator for Biped Robots on Uneven Terrains

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Integrating Grasp Planning and Visual Feedback for Reliable Manipulation

Motion Planning of Ladder Climbing for Humanoid Robots

Motion Planning for Humanoid Robots: Highlights with HRP-2

Simplified Walking: A New Way to Generate Flexible Biped Patterns

Real-time Replanning Using 3D Environment for Humanoid Robot

Whole-Body Motion Planning for Manipulation of Articulated Objects

Leg Motion Primitives for a Dancing Humanoid Robot

Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots

SHORT PAPER Efficient reaching motion planning method for low-level autonomy of teleoperated humanoid robots

Motion Planning for Dynamic Knotting of a Flexible Rope with a High-speed Robot Arm

Trajectory Optimization

Small-Space Controllability of a Walking Humanoid Robot

References. Additional lecture notes for 2/18/02.

Efficient Motion Planning for Humanoid Robots using Lazy Collision Checking and Enlarged Robot Models

Adaptive Tuning of the Sampling Domain for Dynamic-Domain RRTs

Tracking Minimum Distances between Curved Objects with Parametric Surfaces in Real Time

Distance and Collision Detection

Motion autonomy for humanoids: experiments on HRP-2 No. 14. Introduction

Accelerated Proximity Queries Between Convex Polyhedra By Multi-Level Voronoi Marching

Critique for CS 448B: Topics in Modeling The Voronoi-clip Collision Detection Algorithm

arxiv: v2 [cs.ro] 29 Jul 2016

Humanoid Teleoperation for Whole Body Manipulation

Fast foot prints re-planning and motion generation during walking in physical human-humanoid interaction

Real-time Continuous Collision Detection and Penetration Depth Computation

Control Approaches for Walking and Running

Non-Gaited Humanoid Locomotion Planning

Scalable Solutions for Interactive Virtual Humans that can Manipulate Objects

Hierarchical Optimization-based Planning for High-DOF Robots

Development of Vision System on Humanoid Robot HRP-2

CIMAT/CINVESTAV 2011 Tutorial: Filtering and Planning in I-Spaces PART 1: INTRODUCTION

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Six-Degree-of-Freedom Haptic Rendering Using Incremental and Localized Computations

Part I Part 1 Sampling-based Motion Planning

Part I Part 1 Sampling-based Motion Planning

Coordinated Motion Planning for 3D Animation With Use of a Chinese Lion Dance as an Example

Interaction Mesh Based Motion Adaptation for Biped Humanoid Robots

Geometric Path Planning McGill COMP 765 Oct 12 th, 2017

Deformable Proximity Queries and their Application in Mobile Manipulation Planning

Real-Time Footstep Planning in 3D Environments

Advanced Robotics Path Planning & Navigation

10/25/2018. Robotics and automation. Dr. Ibrahim Al-Naimi. Chapter two. Introduction To Robot Manipulators

Probabilistic Methods for Kinodynamic Path Planning

A Different Approach for Continuous Physics. Vincent ROBERT Physics Programmer at Ubisoft

Elastic Strips: Implementation on a Physical Humanoid Robot

Experimental Evaluation of the Dynamic Simulation of Biped Walking of Humanoid Robots

Abstract. 1 Introduction. 2 Translational Penetration Depth

Robot Motion Planning

Dynamically Stepping Over Obstacles by the Humanoid Robot HRP-2

CS 4649/7649 Robot Intelligence: Planning

Prof. Fanny Ficuciello Robotics for Bioengineering Visual Servoing

Collision Detection CS434. Daniel G. Aliaga Department of Computer Science Purdue University

Evolutionary Motion Design for Humanoid Robots

Simultaneous Tracking and Balancing of Humanoid Robots for Imitating Human Motion Capture Data

Last update: May 6, Robotics. CMSC 421: Chapter 25. CMSC 421: Chapter 25 1

Development of Production Environment for Motion Contents for Humans, Animals, and Other Structures

15-780: Problem Set #4

Planning and Executing Navigation Among Movable Obstacles

Written exams of Robotics 2

Path Planning. Jacky Baltes Dept. of Computer Science University of Manitoba 11/21/10

Learning Footstep Prediction from Motion. capture

Multi-Modal Motion Planning for a Humanoid Robot Manipulation Task

A sliding walk method for humanoid robots using ZMP feedback control

Robot Motion Planning

Coordinated Motion Planning for 3D Animation - With Use of a Chinese Lion Dance as an Example

Inverse Kinematics. Given a desired position (p) & orientation (R) of the end-effector

Randomized Path Planning for Redundant Manipulators without Inverse Kinematics

Human Motion Tracking Control with Strict Contact Force Constraints for Floating-Base Humanoid Robots

Using motion primitives in probabilistic sample-based planning for humanoid robots

Transcription:

Self-Collision Detection and Motion Planning for Humanoid Robots James Kuffner (CMU & AIST Japan) Digital Human Research Center Self-Collision Detection Feature-based Minimum Distance Computation: Approximate Geometric Models Talk Overview Minimum Distances for 3D Convex Polyhedral Models Coherency and Efficiency Safe Biped Walking Motion Planning Applications Conclusion 1

JSK Humanoid Research Platforms 1998-1999 2000-2001 H5 (30 DOF ; 33kg ; 1.27m ) H6 (35 DOF ; 55kg ; 1.37m ) [ Nagasaka, Konno, Nishiwaki, Kitagawa, Sugihara, Kagami, Inaba, Inoue ] [ Nishiwaki, Sugihara, Kagami, Kanehiro, Inaba, Inoue ] Humanoid H7 2001-2003 2

Online Walking Trajectory Generation Even without obstacles, balance criteria alone cannot guarantee safe motion! Need methods for detecting and preventing leg interference and body self-collision Efficient (low computation time) Reliable (computation time has low variance) Numerically robust Should be conservative (error-bounds) Self-Collision Occurs when one of more of the links of a robot collide Dangers of self-collision: Can cause robot to damage itself Through a loss of balance or control, can cause damage to the surrounding environment (including nearby people) Detecting and preventing potential self- collisions is fundamental to developing safe robots 3

Safe Biped Walking IDEAL: A colliding posture is never output by the controller, thus all trajectories executed by the robot are guaranteed to be free of self-collision CURRENT: All computed desired body trajectories are free of self-collision (prior to online balance compensation and PD control) Depends on the accuracy of both the kinematic and dynamic model of the robot and environment A Minimum Distance Approach Maintain closest points between pairs of links All pairs can be considered, or a subset of possibly-colliding pairs can be pre-computed [Kanehiro, Hirukawa 01] 4

Approximating Link Geometry Full CAD Model ( 314,588 triangles ) Convex Hulls ( 2,702 triangles ) Bounding Boxes ( 432 triangles ) Protective Convex Hulls CAD model Protective Hull Combined View 5

Self-Collision Detection GIVEN: Tree-like kinematic structure with N links: ASSUME: joint limits specified to prevent collisions between adjacent links. Remaining pairs to check: N( N 1) ( N 2 1) = N 2 3N + 2 2 30 links = 454 pairs Minimum Distance Computation CONVEX POLYHEDRA: GJK [Gilbert, Johnson, Keerthi 88] Lin-Canny [Lin, Canny 91] Enhanced-GJK [Cameron 97] V-Clip [Mirtich 98] H-walk [Guibas, Hsu, Zhang 99] NON-CONVEX POLYHEDRA: Sphere Trees [Quinlan 94] CFL [Kawachi, Suzuki 00] SWIFT++ : [Ehmann, Lin 01] 6

ADVANTAGES: Feature-based Minimum Distance Computation Exploits spatial and temporal coherency Minimum distance value and pairs of closest feature points can be updated in almost constant time No performance loss for near-colliding cases DISADVANTAGES: Typically limited only to closed, bounded, convex polyhedra (or hierarchical collections of them) Voronoi-based Minimum Distances feature hyperplanes Polyhedra B Voronoi region for edge e e v 1 v 2 Polyhedra A f 2 f 1 7

Voronoi-based Minimum Distances Dual-containment validates closest features Polyhedra B Voronoi region for vertex v v 2 v e v 1 Polyhedra A f 2 f 1 Voronoi-based Minimum Distances POSSIBLE STATES: Vertex Vertex (V-V) V) Vertex Edge (V-E) Vertex Face (V-F) Edge Edge (E-E) E) Edge Face (E-F) Algorithm keeps track of possible transitions between states 8

Coherency and Efficiency Closest feature pairs cached from previous computation: Subsequent checks verify Voronoi containment constraints Example 1 : In-Place Stepping 9

In-Place & Forward-Turning Step 14 links w/ 14 DOF Select = 19 active pairs Full = 73 active pairs 866 MHz dual Pentium III Time per config = 0.128 ms Time per config = 0.429 ms Whole-Body Self-Collision Detection 31 links w/ 30 DOF 76 active pairs 866 MHz dual Pentium III Time per config = 0.44 ms 10

Whole-Body Self-Collision Detection 31 links w/ 30 DOF Select = 76 active pairs Full = 425 active pairs 866 MHz dual Pentium III Time per config = 0.44 ms Time per config = 2.44 ms HUMAN OPERATOR Onboard computer running joystick server, collision checker & trajectory generator Joystick Client WIRELESS NETWORK 11

USER LAYER KERNEL LAYER (RT-Linux) Online Collision Checker Walking Trajectory Sequence Manager Online Balance Compensator desired trajectory desired joint angles Joystick Server Online Walking Trajectory Generator (3-step EST) PD servo 1 msec (1000 Hz) FIFO Queue Communication Trajectory Generation 65 samples, 50 ms spacing (60-105 msec) gyro data 6-axis FS joint angles Robot I/O Board (RIF-01 x 2) motor torque Collision Check (10mm tol) including joint position and joint velocity limit check (10-30 msec) ROBOT HARDWARE (motors, encoders, gyro, inclinometer, force sensors) 3-step Trajectory Time (1 step = 1 second) INITIAL POSTURE 0 1 2 3 Always maintains 3-step Emergency Stopping Trajectory 1 2 3 4 2 3 4 5 Joystick Command Cycle DURING EACH CYCLE: Read joystick command Calculate new 3-step trajectory Check new trajectory for self-collision 3 4 Collision Detected 4 5 6 5 FINAL POSTURE 6 7 12

Safe Online Joystick Control Self-collision check 3 steps in the future (60-6565 configurations) Minimum Distance Configuration Task-Based Control : Manipulation High-level Goal: Move object X from point A to point B INITIAL FINAL Software Components: Grasp Selection Inverse Kinematics Path Search Compute kinematic path by searching arm C-space 13

Path Planning with RRTs (Rapidly-Exploring Random Trees) BUILD_RRT (q init ) { T.init(q init ); for k = 1 to K do q rand = RANDOM_CONFIG(); EXTEND(T, q rand ) } EXTEND(T, q rand ) q new [ Kuffner & LaValle, ICRA 00] q init q near q rand RRTs Biased to Explore Large Voronoi Regions 14

Grow two RRTs towards each other q new q target q goal [ Kuffner, LaValle ICRA 00] q init q near 15

Online Manipulation Planning Other Applications : Motion Planning High-dim. C-space (30 DOF) Balance and obstacle constraints restrict space of feasible configurations GOAL: Compute a trajectory that: Connects the initial and final posture Collision-free (including self-collision) Dynamically-stable INITIAL FINAL C-space 16

Dynamic Stability Criteria Static stability: δc ( δ? ) = 0 x δc y ( δ? ) = 0 C = X(? ) C& = J(? )?& X(? ) J(? ) =? δ C = J(? ) δ? ( t) Dynamic stability: Moment of Inertia Contstraints Zero Moment Point (ZMP) d, 1 F < M x ( δ? ) < d d F < M ( δ? < d y y, 2 x, 1 y ) x, 2 µ F < M z ( δ? ) < µ F F F Ideal Centroid Projection foot d F y,1 M d z x x y,2 y Balance Compensation as an Optimization Problem AutoBalancer: online dynamics filter [Kagami, Kanehiro, Tamiya, Inaba, Inoue : WAFR 2000] = δ? cmd + δ? ret? p comp E comp ) = w i i= 1 δ? + δ ( δ? ( δ? 2 comp, i) 17

Virtual Puppet Interface Modified RRT-Connect RRT_CONNECT_STABLE (q init, q goal ) { T a.init(q init ); T b.init(q goal ); for k = 1 to K do q rand = STABLE_CONFIG(); if not (EXTEND(T a, q rand ) = Trapped) then if (EXTEND(T b, q new ) = Reached) then Return PATH(T a, T b ); SWAP(T a, T b ); Return Failure; } q new Verify obstacle and balance constraints for each incremental step motion target configurations are statically-stable stable postures without self- collision q init q near q rand 18

Single-leg leg Example Initial Pose Goal Pose Single-leg leg Example 19

Single-leg leg Example Dual-leg leg Example Initial Pose Goal Pose 20

Dual-leg leg Example Dual-leg leg Example 21

Summary Efficient approach to self- collision detection brings self- collision testing closer to the servo control layer Extend method to handle non- convex polyhedral models Optimize the number of distance calculations using maximum joint velocity bounds Applications in multi-robot coordination and computer animation of articulated figures Future Work Bring Self-collision testing closer to the servo control layer Extend method to handle non-convex polyhedral models Optimize the number of distance calculations using maximum joint velocity bounds Can be used to prevent collisions between environment obstacles of known geometry Applications in multi-robot coordination and computer animation of articulated figures 22

Collaborators Satoshi Kagami (AIST) Koichi Nishiwaki (U. Tokyo) Steve LaValle (Univ. of Illinois) Joel Chestnutt (CMU) Katsu Yamane (CMU & U. Tokyo) Hirochika Inoue (U. Tokyo) Masayuki Inaba (U. Tokyo) Takeo Kanade (AIST & CMU) Jean-Claude Latombe (Stanford) 23