700 likes | 1.47k Vues
Trajectory Planning. torques. Motion control system. Trajectory planning system. Robot . Position, velocity, acceleration. Trajectory Planning. Goal: to generate the reference inputs to the motion control system which ensures that the manipulator executes the planned trajectory.
E N D
torques Motion control system Trajectory planning system Robot Position, velocity, acceleration Trajectory Planning • Goal: to generate the reference inputs to the motion control system which ensures that the manipulator executes the planned trajectory
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 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 Trajectory planning algorithm
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 Trajectory parameters in operation space Trajectory parameters in joint space Inverse kinematics algorithm Trajectory planning algorithm Initial and final end-effector location, traveling time, etc. Joint (end-effector) trajectories in terms of position, velocity and acceleration
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 tf
Point-to-point Motion q(tf) Final q(t2) “Set-down” q(t1) “Lift-off” q(t0) Initial Figure 4-2 from Fu, Gonzalez and Lee
Point-to-point Motion • 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 http://www.howstuffworks.com/camshaft1.htm
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” Displacement, s “rise” s=0, v=0, a=0 s=smax, v=0, a=0 “dwell” Time, t
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”) s=smax, v=0, a0 Displacement, s “rise” “return” s=0, v=0, a=0 s=0, v=0, a=0 “dwell” “dwell” Time, t
Cam Motion Profiles - RR • Rise – Return • “rise” to a maximum displacement • Immediately “return” to origin • No “dwell” – do same thing over again s=smax, v=0, a0 Displacement, s “rise” “return” s=0, v=0, a0 s=0, v=0, a0 Time, t
Accel.-Vel.-Disp. #1 Zero order, A = constant Acceleration, A Time, t T First order, V=k1t Velocity, V Time, t T Displacement, S Second order, S=k2t2 Time, t T
this area equals this value this area equals this value Accel.-Vel.-Disp. #1a Acceleration, A Time, t T Velocity, V Time, t T Displacement, S Time, t T
Accel.-Vel.-Disp. #1b Suitable for a “rise” 25 m/s2 Acceleration, A Time, sec 0 0.1 0.2 0.3 V3 V2 Find numerical valuesfor V1, V2, and V3 V1 Velocity, V T S3 Find numerical valuesfor S1, S2, and S3 S2 Displacement, S S1 T
General Curve Shape: y=Kxn Area under the curve y=Kxnbetween x=0 and x=x1 is Note that y1=Kx1n , so
Accel.-Vel.-Disp. #2 Suitable for a “dwell - rise” 25 m/s2 Acceleration, A Time, sec 0 0.1 0.2 0.3 V3 V2 Find numerical valuesfor V1, V2, and V3 V1 Velocity, V T S3 Find numerical valuesfor S1, S2, and S3 S2 Displacement, S S1 T
Accel.-Vel.-Disp. #3 Suitable for a “dwell - rise” 25 m/s2 Acceleration, A Time, sec 0 0.15 0.3 V1 V2 Find numerical valuesfor V1 and V2 Velocity, V T S2 Find numerical valuesfor S1 and S2 Displacement, S S1 T
Accel.-Vel.-Disp. #4 Suitable for a “dwell - rise” 25 m/s2 Acceleration, A Time, sec 0 0.1 0.2 0.3 V3 V2 Find numerical valuesfor V1, V2, and V3 V1 Velocity, V T S3 Find numerical valuesfor S1, S2, and S3 S2 Displacement, S S1 T
Suitable for a “rise-return” 25 m/s2 0.4 0.5 0.6 Time, sec A -25 m/s2 0.1 0.2 0.3 Find numerical valuesfor V4 and V5 V3 V2 V4 V5 V1 V T Find numerical valuesfor S4, S5, and S6 S6 S5 S4 S3 S2 S S1 T
Analytical Solution • Solve the previous problem analytically: Hint – solve first parts (for t<0.3 sec), find boundary conditions for 2nd 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 anysharp transitions
Motion Programming #2 Robot Joint Motions
Typical Robot Motion q(tf) Final q(t2) “Set-down” q(t1) “Lift-off” q(t0) Initial Figure 4-2 from Fu, Gonzalez and Lee
Position Constraints • Initial position, q1 • initial velocity and acceleration (normally=0) • Lift off position, q2 • velocity and acceleration must match here • Set-down position, q3 • velocity and acceleration must match here • Final position, qf • final velocity and acceleration (normally=0)
Typical Solution • “4-3-4” trajectory • 4th order polynomial from initial to lift-off • 3rd order polynomial from lift-off to set-down • 4th order polynomial from set-down to final • “3-5-3” trajectory • same as above but 3rd and 5th order poly • 5-cubic trajectory • Cubic splines used for 5 segments • lift-off to set-down split into 3 segments
“4-3-4” Trajectory • 1st segment: • 2nd segment: • 3rd segment: • 14 unknowns – need 14 equations!
Boundary Conditions #1- #3 • 1. Initial position, q0=q(t0) (set t0=0) • 2. Initial velocity = w0 (typically 0) • 3. Initial acceleration = a0 (typically 0)
Boundary Conditions #4- #5 • 4. Lift-off position, q(t1) • 5. Lift-off position, q(t1)
Boundary Conditions #4- #5 • 4. Lift-off position, q(t1) • 5. Lift-off position, q(t1)
Boundary Conditions #6- #7 • 6. Lift-off velocity match from both sides • 7. Lift-off acceleration match both sides
Boundary Conditions #8- #9 • 8. Set-down position, q(t2) • 9. Set-down position, q(t2)
Boundary Conditions #10 - #11 • 10. Set-down velocity match from both sides • 11. Set-down acceleration match both sides
Boundary Conditions #12- #14 • 12. Final position, q(tf) • 13. Final velocity, vf (typically 0) • 14. Final acceleration, af (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 h1(t), h2(t), h3(t) to get velocity • Take derivative of velocity to get accel. • Both are easily plotted in Matlab or Excel