Robotics Chapter 5 – Path and Trajectory Planning

Slides:



Advertisements
Similar presentations
Kinematic Synthesis of Robotic Manipulators from Task Descriptions June 2003 By: Tarek Sobh, Daniel Toundykov.
Advertisements

Motion Planning for Point Robots CS 659 Kris Hauser.
Introduction University of Bridgeport 1 Introduction to ROBOTICS.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
Animation Following “Advanced Animation and Rendering Techniques” (chapter 15+16) By Agata Przybyszewska.
Forward and Inverse Kinematics CSE 3541 Matt Boggus.
Probabilistic Roadmap
Trajectory Generation
Path planning, 2012/2013 winter1 Robot Path Planning CONTENTS 1. Introduction 2. Interpolation.
Trajectory Planning.  Goal: to generate the reference inputs to the motion control system which ensures that the manipulator executes the planned trajectory.
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
Randomized Kinodynamics Motion Planning with Moving Obstacles David Hsu, Robert Kindel, Jean-Claude Latombe, Stephen Rock.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Trajectory Week 8. Learning Outcomes By the end of week 8 session, students will trajectory of industrial robots.
Trajectory Generation How do I get there? This way!
Planning Motions with Intentions By Chris Montgomery A presentation on the paper Planning Motions with Intentions written by Yoshihito Koga, Koichi Kondo,
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Forward Kinematics.
Randomized Motion Planning for Car-like Robots with C-PRM Guang Song, Nancy M. Amato Department of Computer Science Texas A&M University College Station,
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Configuration Space – Basic Path-Planning Methods.
CSCE 689: Forward Kinematics and Inverse Kinematics
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
Integrated Grasp and Motion Planning For grasping an object in a cluttered environment several tasks need to take place: 1.Finding a collision free path.
Mobile Robotics: 11. Kinematics 2
Inverse Kinematics Jacobian Matrix Trajectory Planning
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
Introduction to ROBOTICS
Velocities and Static Force
Definition of an Industrial Robot
IMPLEMENTATION ISSUES REGARDING A 3D ROBOT – BASED LASER SCANNING SYSTEM Theodor Borangiu, Anamaria Dogar, Alexandru Dumitrache University Politehnica.
1 CMPUT 412 Motion Control – Wheeled robots Csaba Szepesvári University of Alberta TexPoint fonts used in EMF. Read the TexPoint manual before you delete.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
World space = physical space, contains robots and obstacles Configuration = set of independent parameters that characterizes the position of every point.
© Manfred Huber Autonomous Robots Robot Path Planning.
Lecture 2: Introduction to Concepts in Robotics
AN-NAJAH NATIONAL UNIVERSITY DEPARTMENT OF MECHANICAL ENGINEERING
Chapter 5 Trajectory Planning 5.1 INTRODUCTION In this chapters …….  Path and trajectory planning means the way that a robot is moved from one location.
Chapter 5 Trajectory Planning 5.1 INTRODUCTION In this chapters …….  Path and trajectory planning means the way that a robot is moved from one location.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
The City College of New York 1 Dr. Jizhong Xiao Department of Electrical Engineering City College of New York Inverse Kinematics Jacobian.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
CS-378: Game Technology Lecture #13: Animation Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica.
Chapter 7: Trajectory Generation Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: 1.
Introduction to Motion Planning
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Kinematic Redundancy A manipulator may have more DOFs than are necessary to control a desired variable What do you do w/ the extra DOFs? However, even.
Outline: Introduction Solvability Manipulator subspace when n<6
Trajectory Generation
Robotics Chapter 5 – Path and Trajectory Planning
Optimal Path Planning Using the Minimum-Time Criterion by James Bobrow Guha Jayachandran April 29, 2002.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Review for Midterm.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Singularity-Robust Task Priority Redundancy Resolution for Real-time Kinematic Control of Robot Manipulators Stefano Chiaverini.
Robotics Chapter 3 – Forward Kinematics
Physically-Based Motion Synthesis in Computer Graphics
CSCE 441: Computer Graphics Forward/Inverse kinematics
Instructor Prof. Shih-Chung Kang 2008 Spring
Trajectory Generation
Character Animation Forward and Inverse Kinematics
Zaid H. Rashid Supervisor Dr. Hassan M. Alwan
Last lecture Configuration Space Free-Space and C-Space Obstacles
CSCE 441: Computer Graphics Forward/Inverse kinematics
Presented By: Aninoy Mahapatra
Inverse Kinematics 12/30/2018.
Outline: Introduction Solvability Manipulator subspace when n<6
Chapter 4 . Trajectory planning and Inverse kinematics
Presentation transcript:

Robotics Chapter 5 – Path and Trajectory Planning Dr. Amit Goradia

Topics Introduction – 2 hrs Coordinate transformations – 6 hrs Forward Kinematics - 6 hrs Inverse Kinematics - 6 hrs Velocity Kinematics - 2 hrs Trajectory Planning - 6 hrs Robot Dynamics (Introduction) - 2 hrs Force Control (Introduction) - 1 hrs Task Planning - 6 hrs

Robot Motion Planning Path planning Trajectory planning, Geometric path Issues: obstacle avoidance, shortest path Trajectory planning, “interpolate” or “approximate” the desired path by a class of polynomial functions Generate a sequence of time-based “control set points” for the control of manipulator from the initial configuration to its destination.

Definitions Configuration: Specification of all the variables that define the system completely Example: Configuration of a dof robot is Configuration space (C-space): Set of all configurations Free configuration: A configuration that does not collide with obstacles Free space ( F ) : Set of all free configurations It is a subset of C

Path v/s Trajectory Path: A sequence of robot configurations in a particular order without regard to the timing of these configurations. Trajectory: It concerned about when each part of the path must be attained, thus specifying timing. Sequential robot movements in a path

Path Planning: Problem Definition Problem statement: Compute a collision-free path for a rigid or articulated moving object among static obstacles. Input Geometry of a moving object (a robot, a digital actor, or a molecule) and obstacles How does the robot move? Kinematics of the robot (degrees of freedom) Initial and goal robot configurations (positions & orientations) Output Continuous sequence of collision-free robot configurations connecting the initial and goal configurations

Trajectory Planning: Problem Definition Problem statement Turn a specified Cartesian-space trajectory of Pe into appropriate joint position reference values Input Cartesian space path Path constraints including velocity and acceleration limits and singularity analysis. Output a series of joint position/velocity reference values to send to the controller

Trajectory Planning

Joint Space v/s Task Space Joint-space description: The description of the motion to be made by the robot by its joint values. The motion between the two points in joint space is not predicted. Task space description: The motion between the two points is known at all times and controllable. It is easy to visualize the trajectory, but is difficult to ensure singularity robustness.

Task Space Planning Sequential motions of a robot to follow a straight line. Cartesian-space trajectory (a) The trajectory specified in Cartesian coordinates may force the robot to run into itself, and (b) the trajectory may requires a sudden change in the joint angles.

Path not in workspace Start & goal in different solution branches May need to flip between configurations

Trajectory Planning Point to point motion Continuous path motion Teach initial and final points; intermediate path is not critical and is computed by the controller Applications: Moving of parts, spot welding, automated loading and unloading of machines; pick-and-place motion Continuous path motion Used when there is a need to follow a complex path through 3-D space, possibly at high speeds (spray painting, welding, polishing) Points generally taught by manual lead through with high speed automatic sampling

Point to Point Motion Simple point-to-point smooth trajectory with a few constraints on the lift-off and set-down positions. There are 3 ways a manipulator can move from point to point: slew motion joint interpolated motion straight line motion Slew motion: all joints move to their required new position as quickly as possible. All axes begin motion at the same time but arrive at their destination at different times. This generally results in joint wear and unpredictable arm motions. Joint interpolated motion requires the controller to calculate which joint will take the longest to arrive at its destination and slow other joints down accordingly. A separate velocity is calculated for each axis. Manipulator motion is generally smooth and wear is reduced. Straight line motion is a particular case of continuous path motion.

Point to Point Motion Joint based trajectory for a single joint using point to point motion. Lift-off and set-down points provided for satisfying acceleration constraints

Cubic Polynomial Trajectories Single joint (1 DOF): We Know , We also Know , Want to find , , and Where So we have four Constraints: Lets try a Cubic polynomial

Cubic Polynomial Trajectory To determine the coefficients we need to look at our boundry conditions. Namely: Position at t=0 Velocity at t=0 Position at t=final Velocity at t=final Plugging these in we get. Solving for a2 and a3

Cubic Polynomial Trajectory So the an are If the initial and final velocity is zero then So finally the acceleration is given by or

Minimum Torque Trajectories Is a good solution?? Solve the following minimization problem: The solution is:

Quintic Polynomial Trajectory Cubics allow us to define the position and velocity at each location in the trajectory. However, the acceleration is discontinuous. If we also want to specify the acceleration we would need a Quintic or order 5 polynomial. Use the initial and final positions, velocities and accelerations as our boundary conditions to solve for the coefficients.

Quintic Polynomial Trajectory

Quintic Polynomial Trajectory Compute inverse for each joint

Pick and Place Operations Path Profile Velocity Profile Acceleration Profile

Boundary Conditions 1) Initial position 2) Initial velocity 3) Initial acceleration 4) Lift-off position 5) Continuity in position at t1 6) Continuity in velocity at t1 7) Continuity in acceleration at t1 8) Set-down position 9) Continuity in position at t2 10) Continuity in velocity at t2 11) Continuity in acceleration at t2 12) Final position 13) Final velocity 14) Final acceleration

Known Parameters Initial and Final Positions (given) Velocities (normally 0) Accelerations (normally 0) Intermediate Positions (Lift-off and set-down) Velocities (continuous with previous trajectory segment) Accelerations (continuous with previous trajectory segment)

Solution Nth order polynomial must satisfy N+1 conditions 4-3-4 trajectory t0t1, 5 unknowns t1t2, 4 unknowns t2tf, 5 unknowns

Task Space Trajectory Planning Procedure: Obtain function for task space path Sample function to get discrete points (in task space) Apply IK and Jacobian calculations Fit functions to joints Sample to get discrete reference points (in joint space).

Sample Task Space Analytic Functions Analytic function to describe task space motion: Differentiate to get rate of change Sample trajectory to get m sample points

Inverse Kinematics and Jacobian Use Inverse Kinematics to convert task space trajectory into joint space vector. Handle multiple solutions Handle problems related to existence of solutions m ~ 10

Inverse Kinematics and Jacobian Using Inverse Jacobian convert task space velocities to joint space velocities Handle singular configurations

Fit Continuous Curves in Joint Space Spline or Polynomial Fit & derivatives:

Fit Continuous Curves in Joint Space ….. Piecewise polynomials: one polynomial for each joint for each time interval (and we can easily take derivatives) one for each time interval (i, i+1)

Sample Continuous Curves in Joint Space Sample Joint positions and speeds Sample Sample N ~ 1000+

Example Straight Line Motion Parameterize a straight line using time x(t), y(t), f(t) Move along line with constant velocity v Equation of line: Velocity: Solve

Parameterize the Straight Line Velocity:

Sample Continuous Path

Path Planning Approaches: Classifications Methods exploring a “search graph” Attempt to capture the topology of the C-space Pre-processing of the C-space independently of any goal Multiple query type Examples: PRM’s, Voronoi diagrams, Cellular decomposition Methods incrementally building a search tree No attempt at capturing the topology of the C-space Goal dependent methods Single query type Examples: A* algorithm, Rapidly-exploring Random Trees(RRT)

Potential Field Approaches A heuristic function (artificial potential field) is defined on the configuration space to steer robot towards a goal through gradient descent. Random walks are used to escape local minimum traps. Efficient for holonomic planning but depends on the choice of a good heuristic function. Choosing a good heuristic function is difficult when obstacles and differential constraints are added to the problem.

Path Planning Approaches Probabilistic Roadmaps A graph is constructed on configuration space by generating random configurations and attempting to connect pairs of nearby configurations with a local planner. Local planning is efficient Connecting configurations is a difficult task, particularly for complicated nonholonomic dynamical systems. (non-linear control problem)