Trajectory Planning.  Goal: to generate the reference inputs to the motion control system which ensures that the manipulator executes the planned trajectory.

Slides:



Advertisements
Similar presentations
Mechanical Design II Spring 2013.
Advertisements

Mechanical Design II Spring 2013.
From Kinematics to Arm Control a)Calibrating the Kinematics Model b)Arm Motion Selection c)Motor Torque Calculations for a Planetary Robot Arm CS36510.
MENG 372 Chapter 3 Graphical Linkage Synthesis
MENG 372 Chapter 8 Cam Design
Learning with Purpose February 4, 2013 Learning with Purpose February 4, Mechanical Design II Spring 2013.
University of Bridgeport
Numerical Methods.  Polynomial interpolation involves finding a polynomial of order n that passes through the n+1 points.  Several methods to obtain.
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
CAM.
Constant Jerk Trajectory Generator (TG)
P. Venkataraman Mechanical Engineering P. Venkataraman Rochester Institute of Technology DETC2011 –47658 Determining ODE from Noisy Data 31 th CIE, Washington.
Trajectory Generation
Chapter 18 Interpolation The Islamic University of Gaza
Dr. S.M. Malaek Assistant: M. Younesi
Path planning, 2012/2013 winter1 Robot Path Planning CONTENTS 1. Introduction 2. Interpolation.
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 6)
Mechanism Design Graphical Method
Mechanics of Machines Dr. Mohammad Kilani
Mechanical Design II Spring 2013.
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!
Inverse Kinematics Problem:
Manipulator Dynamics Amirkabir University of Technology Computer Engineering & Information Technology Department.
CSCE 689: Forward Kinematics and Inverse Kinematics
Path Control in Robotics
Lecture 9 Interpolation and Splines. Lingo Interpolation – filling in gaps in data Find a function f(x) that 1) goes through all your data points 2) does.
Inverse Kinematics Jacobian Matrix Trajectory Planning
Chapter 6 Numerical Interpolation
Introduction to ROBOTICS
Non-Linear Simultaneous Equations
Calibration & Curve Fitting
Definition of an Industrial Robot
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
Dynamics. Chapter 1 Introduction to Dynamics What is Dynamics? Dynamics is the study of systems in which the motion of the object is changing (accelerating)
Ch. 6 Single Variable Control
Chapter 9 Numerical Integration Flow Charts, Loop Structures Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
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.
Robotics Chapter 5 – Path and Trajectory Planning
Mechanics of Machines Dr. Mohammad Kilani Class 3 Position Analysis.
Today’s class Spline Interpolation Quadratic Spline Cubic Spline Fourier Approximation Numerical Methods Lecture 21 Prof. Jinbo Bi CSE, UConn 1.
1 Fundamentals of Robotics Linking perception to action 2. Motion of Rigid Bodies 南台科技大學電機工程系謝銘原.
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.
Review: Differential Kinematics
Chapter 7: Trajectory Generation Faculty of Engineering - Mechanical Engineering Department ROBOTICS Outline: 1.
Kinematics of Particles Lecture II. Subjects Covered in Kinematics of Particles Rectilinear motion Curvilinear motion Rectangular coords n-t coords Polar.
ME451 Kinematics and Dynamics of Machine Systems Introduction to Dynamics 6.1 October 09, 2013 Radu Serban University of Wisconsin-Madison.
Outline: Introduction Solvability Manipulator subspace when n<6
Trajectory Generation
T RAJECTORY P LANNING University of Bridgeport 1 Introduction to ROBOTICS.
City College of New York 1 John (Jizhong) Xiao Department of Electrical Engineering City College of New York Mobile Robot Control G3300:
Optimal Path Planning Using the Minimum-Time Criterion by James Bobrow Guha Jayachandran April 29, 2002.
CONTINUOUS PATH MOTION
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Industrial Automation and Robotics
ROBOTICS 01PEEQW Basilio Bona DAUIN – Politecnico di Torino.
Interpolation - Introduction
Velocity Propagation Between Robot Links 3/4 Instructor: Jacob Rosen Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA.
Trajectory Generation
Character Animation Forward and Inverse Kinematics
ME321 Kinematics and Dynamics of Machines
Inverse Kinematics 12/30/2018.
Outline: Introduction Solvability Manipulator subspace when n<6
Chapter 4 . Trajectory planning and Inverse kinematics
Constant Jerk Trajectory Generator (TG)
Presentation transcript:

Trajectory Planning

 Goal: to generate the reference inputs to the motion control system which ensures that the manipulator executes the planned trajectory Motion control system Robot Trajectory planning system torques Position, velocity, acceleration

Path and Trajectory  Path: the locus of points in the joint space or in the operational space  Trajectory: a path on which a time law is specified in terms of velocities and/or accelerations t

Path and Trajectory Trajectory planning algorithm Path description path constraints(obstacles) constraints imposed by robot dynamics (smooth) (limits, not modeled resonant modes) Joint (end-effector) trajectories in terms of position, velocity and acceleration

Path and Trajectory  Specification of geometric path  Extremal points, possible intermediate points,geometric primitives interpolating the points  Specification of motion time law  Total trajectory time, maximum velocity and acceleration, velocity and acceleration at points of interests

Joint Space Trajectory Inverse kinematics algorithm Trajectory parameters in operation space Joint (end-effector) trajectories in terms of position, velocity and acceleration Trajectory parameters in joint space Trajectory planning algorithm Initial and final end-effector location, traveling time, etc.

Joint Space Trajectory  Requirements for joint space trajectory planning algorithm  The generated trajectory be easy to compute  Position and velocity (acceleration) be continuous function of time  Undesirable effects be minimized  Point-to-point motion  Moving from an initial to a final joint configuration in a given time t f

Point-to-point Motion Figure 4-2 from Fu, Gonzalez and Lee  (t f )  (t 2 )  (t 0 )  (t 1 ) “Lift-off” “Set-down” Final Initial

 Polynomial interpolation  Example: initial and final position and velocity be given. Point-to-point Motion

 Example: initial and final acceleration also be given.  Six constraints (initial and final position, velocity and acceleration  Order at least five Point-to-point Motion

 Trapezoidal velocity profile  Directly verifying whether the velocity and acceleration violate the mechanical limits Point-to-point Motion

 Area enclosed by the velocity profile given acceleration Point-to-point Motion

 Given the following conditions:  initial and final position are given  initial and final velocity are set to zero  Maximum velocity and acceleration are given  What’s the minimum traveling time?

Path Motion  Disadvantages of single high order polynomial  A suitable number of low order polynomials

Operation Space Trajectory  Not easy to predict end-effector motion due to kinematics nonlinearity  Path motion planning similar to joint space  Different method if the end-effector motion has to follow a prescribed trajectory of motion such as line, circle, etc.

Two-link Planar Arm Parameters

Cams  Motion programming historically associated with mechanical cams  Constant speed rotation of camshaft converted to variable linear displacement of valve (or other device attached to cam follower) – Camshafts in auto engines (all 4 strokes) – Sewing machine (older mechanical style)

Pictures of Cams Industrial Car Engines

Cam Motion Profiles - DRD  Dwell – Rise – Dwell – initial period of no motion (“dwell”) – “rise” to a maximum displacement – final period of no motion (“dwell”) “dwell” “rise” “dwell” Time, t Displacement, s s=s max, v=0, a=0 s=0, v=0, a=0

Cam Motion Profiles - DRRD  Dwell – Rise – Return – Dwell – initial period of no motion (“dwell”) – “rise” to a maximum displacement – Immediately “return” to origin – final period of no motion (“dwell”) “dwell” “rise” “dwell” Time, t Displacement, s s=s max, v=0, a  0 s=0, v=0, a=0 “return” s=0, v=0, a=0

Cam Motion Profiles - RR  Rise – Return – “rise” to a maximum displacement – Immediately “return” to origin – No “dwell” – do same thing over again “rise” Time, t Displacement, s s=s max, v=0, a  0 “return” s=0, v=0, a  0

Accel.-Vel.-Disp. #1 Time, t Acceleration, A Zero order, A = constant Time, t Velocity, V Time, t Displacement, S T T T First order, V=k 1 t Second order, S=k 2 t 2

Accel.-Vel.-Disp. #1a Time, t Acceleration, A Time, t Velocity, V Time, t Displacement, S T T T this area equals this value this area equals this value

Accel.-Vel.-Disp. #1b Time, sec Acceleration, A Velocity, V Displacement, S T T 25 m/s 2 V1 V2 V3 S1 S2 S3 Find numerical values for V1, V2, and V3 Find numerical values for S1, S2, and S3 Suitable for a “rise”

General Curve Shape: y=Kx n Area under the curve y=Kx n between x=0 and x=x 1 is Note that y 1 =Kx 1 n, so

Accel.-Vel.-Disp. #2 Time, sec Acceleration, A Velocity, V Displacement, S T T 25 m/s 2 V1 V2 V3 S1 S2 S3 Find numerical values for V1, V2, and V3 Find numerical values for S1, S2, and S3 Suitable for a “dwell - rise”

Accel.-Vel.-Disp. #3 Time, sec Acceleration, A Velocity, V Displacement, S T T 25 m/s 2 V1 V2 S1 S2 Find numerical values for V1 and V2 Find numerical values for S1 and S2 Suitable for a “dwell - rise”

Accel.-Vel.-Disp. #4 Time, sec Acceleration, A Velocity, V Displacement, S T T 25 m/s 2 V1 V2 V3 S1 S2 S3 Find numerical values for V1, V2, and V3 Find numerical values for S1, S2, and S3 Suitable for a “dwell - rise”

Time, sec A V S T T 25 m/s 2 V1 V2 V3 S1 S2 S3 Find numerical values for V4 and V5 Find numerical values for S4, S5, and S6 Suitable for a “rise-return” -25 m/s V5 V4 S4 S5 S6

Analytical Solution  Solve the previous problem analytically: Hint – solve first parts (for t<0.3 sec), find boundary conditions for 2 nd parts

Solve Numerically  Use Excel and trapezoidal integration

A Numerical Gimmick  Use this gimmick to improve accuracy when you have abrupt changes in acceleration “double up” at any sharp transitions

Motion Programming #2 Robot Joint Motions

Typical Robot Motion Figure 4-2 from Fu, Gonzalez and Lee  (t f )  (t 2 )  (t 0 )  (t 1 ) “Lift-off” “Set-down” Final Initial

Position Constraints  Initial position,  1 – initial velocity and acceleration (normally=0)  Lift off position,  2 – velocity and acceleration must match here  Set-down position,  3 – velocity and acceleration must match here  Final position,  f – final velocity and acceleration (normally=0)

Typical Solution  “4-3-4” trajectory 4 th order polynomial from initial to lift-off 4 th order polynomial from initial to lift-off 3 rd order polynomial from lift-off to set- down 3 rd order polynomial from lift-off to set- down 4 th order polynomial from set-down to final 4 th order polynomial from set-down to final  “3-5-3” trajectory same as above but 3 rd and 5 th order poly same as above but 3 rd and 5 th order poly  5-cubic trajectory Cubic splines used for 5 segments Cubic splines used for 5 segments  lift-off to set-down split into 3 segments

“4-3-4” Trajectory  1 st segment:  2 nd segment:  3 rd segment:  14 unknowns – need 14 equations!

Boundary Conditions #1- #3 1.Initial position,  0 =  (t 0 ) (set t 0 =0)1.Initial position,  0 =  (t 0 ) (set t 0 =0)  2.Initial velocity =  0 (typically 0) 2. 3.Initial acceleration =  0 (typically 0)

Boundary Conditions #4- #5 4.Lift-off position,  (t 1 )4.Lift-off position,  (t 1 ) 4. 5.Lift-off position,  (t 1 )

Boundary Conditions #4- #5 4.Lift-off position,  (t 1 )4.Lift-off position,  (t 1 ) 4. 5.Lift-off position,  (t 1 )

Boundary Conditions #6- #7 6.Lift-off velocity match from both sides6.Lift-off velocity match from both sides 2. 7.Lift-off acceleration match both sides

Boundary Conditions #8- #9 8.Set-down position,  (t 2 )8.Set-down position,  (t 2 )  9.Set-down position,  (t 2 )

Boundary Conditions #10 - # Set-down velocity match from both sides10. Set-down velocity match from both sides Set-down acceleration match both sides

Boundary Conditions #12- #14 12.Final position,  (t f )12.Final position,  (t f )  13. Final velocity, v f (typically 0) Final acceleration, a f (typically 0)

Solution Format  14 simultaneous linear equations with 14 unknowns:  11 values required to find solution:

Solution Format  Solve using Matlab (or possibly Maple)

After Matlab Solution  Once we find the 14 coefficients, how do we find velocities and accelerations? – Take derivative of h 1 (t), h 2 (t), h 3 (t) to get velocity – Take derivative of velocity to get accel. – Both are easily plotted in Matlab or Excel

Problems  What if the velocities or accelerations we find are too large? – Increase times t 1, t 2, t f – Move the pick-up point closer to  (t 0 ) – Move the drop-off point closer to  (t f )

Motion Programming #3 Friday, October 19, 2001

Plan Motion Program

Inverse Kinematics  What is the minimum time T that meets velocity and acceleration constraints for both joints? from Inverse Kinematics:

Motion Programming #1 Work in groups of 2:Work in groups of 2:  Determine an “S” curve for each joint  Need something suitable for DRD motion  Turn in solution will have two groups show solution will have two groups show solution Use T = 1.0 second as a “reasonable” time

Straight-Line Motion  Define 10 “knot” points along the straight line  Find inverse kinematic solution at each point:

Motion Programming #2  Select T = 1 second as a “reasonable” time for complete straight line motion   Work in groups of 2:  Are there any constraints that need to be considered? What do you recommend to determine desired positions at intermediate times?