motion programming
TRANSCRIPT
-
8/12/2019 Motion Programming
1/57
Trajectory Planning
-
8/12/2019 Motion Programming
2/57
Trajectory Planning
Goal: to generate the reference inputs to theGoal: to generate the reference inputs to themotion control system which ensures that themotion control system which ensures that themanipulator executes the planned trajectorymanipulator executes the planned trajectory
Motion controlsystem
RobotTrajectory planning system
torques
Position, velocity, acceleration
-
8/12/2019 Motion Programming
3/57
Path and Trajectory
Path: the locus of points in the joint space or inPath: the locus of points in the joint space or inthe operational spacethe operational spaceTrajectory: a path on which a time law isTrajectory: a path on which a time law isspecified in terms of velocities and/orspecified in terms of velocities and/oraccelerationsaccelerations
t
-
8/12/2019 Motion Programming
4/57
Path and Trajectory
Trajectory planning algorithm
Path description
path constraints(obstacles)
constraints imposed byrobot dynamics (smooth)
(limits, not modeled
resonant modes)
Joint (end-effector)
trajectories in terms of position, velocity andacceleration
-
8/12/2019 Motion Programming
5/57
Path and Trajectory
Specification of geometric pathSpecification of geometric pathExtremal points, possi le intermediateExtremal points, possi le intermediatepoints,geometric primitives interpolating the pointspoints,geometric primitives interpolating the points
Specification of motion time lawSpecification of motion time lawTotal trajectory time, maximum velocity andTotal trajectory time, maximum velocity andacceleration, velocity and acceleration at points ofacceleration, velocity and acceleration at points ofinterestsinterests
-
8/12/2019 Motion Programming
6/57
Joint Space Trajectory
Inverseinematics
algorithm
Trajectory parameters in
operation space
Joint (end-effector)trajectories in terms of position, velocity and
acceleration
Trajectory parameters in joint space Trajectory
planningalgorithmInitial and final
end-effectorlocation, traveling
time, etc!
-
8/12/2019 Motion Programming
7/57
Joint Space Trajectory
!e"uirements for joint space trajectory!e"uirements for joint space trajectoryplanning algorithmplanning algorithm
The generated trajectory e easy to computeThe generated trajectory e easy to compute
Position and velocity #acceleration$ e continuousPosition and velocity #acceleration$ e continuousfunction of timefunction of time%ndesira le effects e minimi&ed%ndesira le effects e minimi&ed
Point'to'point motionPoint'to'point motion(oving from an initial to a final joint configuration in(oving from an initial to a final joint configuration ina given time ta given time t ff
-
8/12/2019 Motion Programming
8/57
Point-to-point Motion
)igure *'+ from )u, Gon&ale& and ee
#tf $#t+$
#t- $
#t. $ ift'off0
Set'down0
)inal
1nitial
-
8/12/2019 Motion Programming
9/57
Polynomial interpolationPolynomial interpolation
Example: initial and final position and velocity eExample: initial and final position and velocity egiven2given2
Point-to-point Motion
"##
#)( at at at at q nn nn ++++=
-
8/12/2019 Motion Programming
10/57
Point-to-point Motion
-
8/12/2019 Motion Programming
11/57
Point-to-point Motion
-
8/12/2019 Motion Programming
12/57
Example: initial and final acceleration also eExample: initial and final acceleration also egiven2given2
Six constraints #initial and final position, velocity andSix constraints #initial and final position, velocity and
accelerationacceleration3rder at least five3rder at least five
Point-to-point Motion
-
8/12/2019 Motion Programming
13/57
Trape&oidal velocity profileTrape&oidal velocity profile
4irectly verifying whether the velocity and4irectly verifying whether the velocity andacceleration violate the mechanical limitsacceleration violate the mechanical limits
Point-to-point Motion
-
8/12/2019 Motion Programming
14/57
5rea enclosed y the velocity profile 5rea enclosed y the velocity profile
given accelerationgiven acceleration
Point-to-point Motion
-
8/12/2019 Motion Programming
15/57
Point-to-point Motion
-
8/12/2019 Motion Programming
16/57
Point-to-point Motion
Given the following conditions:Given the following conditions:initial and final position are giveninitial and final position are giveninitial and final velocity are set to &eroinitial and final velocity are set to &ero(aximum velocity and acceleration are given(aximum velocity and acceleration are given
6hat7s the6hat7s the minimumminimum traveling time8traveling time8
-
8/12/2019 Motion Programming
17/57
Path Motion
4isadvantages of single high order polynomial4isadvantages of single high order polynomial 5 suita le num er of low order polynomials 5 suita le num er of low order polynomials
-
8/12/2019 Motion Programming
18/57
Operation Space Trajectory
9ot easy to predict end'effector motion due to9ot easy to predict end'effector motion due toinematics nonlinearityinematics nonlinearity
Path motion planning similar to joint spacePath motion planning similar to joint space
4ifferent method if the end'effector motion has to4ifferent method if the end'effector motion has tofollow a prescri ed trajectory of motion such asfollow a prescri ed trajectory of motion such asline, circle, etc2line, circle, etc2
-
8/12/2019 Motion Programming
19/57
Two-link Planar Arm
Parameters
-
8/12/2019 Motion Programming
20/57
;ams
(otion programming historically(otion programming historically
associated with mechanical camsassociated with mechanical cams;onstant speed rotation of camshaft;onstant speed rotation of camshaftconverted to varia le linearconverted to varia le linear
displacement of valve #or other devicedisplacement of valve #or other deviceattached to cam follower$attached to cam follower$ < ;amshafts in auto engines #all * stro es$;amshafts in auto engines #all * stro es$ < Sewing machine #older mechanical style$Sewing machine #older mechanical style$
-
8/12/2019 Motion Programming
21/57
Pictures of ;ams
http://www2http://www2 howstuffwor showstuffwor s 2com/camshaft.22com/camshaft.2 htmhtm
1ndustrial1ndustrial
;ar Engines;ar Engines
http://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htmhttp://www.howstuffworks.com/camshaft1.htm -
8/12/2019 Motion Programming
22/57
;am (otion Profiles ' 4!4
4well < !ise < 4well4well < !ise < 4well < initial period of no motion # dwell0$initial period of no motion # dwell0$ < rise0 to a maximum displacementrise0 to a maximum displacement < final period of no motion # dwell0$final period of no motion # dwell0$
dwell0
rise0
dwell0
Time, t
4isplacement, s
s=s max , v=-, a=-s=-, v=-, a=-
-
8/12/2019 Motion Programming
23/57
;am (otion Profiles ' 4!!4
4well < !ise < !eturn < 4well4well < !ise < !eturn < 4well < initial period of no motion # dwell0$initial period of no motion # dwell0$ < rise0 to a maximum displacementrise0 to a maximum displacement < 1mmediately return0 to origin1mmediately return0 to origin < final period of no motion # dwell0$final period of no motion # dwell0$
dwell0
rise0
dwell0Time, t
4isplacement, s s=s max , v=-, a -
s=-, v=-, a=- return0 s=-, v=-, a=-
-
8/12/2019 Motion Programming
24/57
;am (otion Profiles ' !!
!ise < !eturn!ise < !eturn < rise0 to a maximum displacementrise0 to a maximum displacement < 1mmediately return0 to origin1mmediately return0 to origin < 9o dwell0 < do same thing over again9o dwell0 < do same thing over again
rise0
Time, t
4isplacement, s s=s max , v=-, a -
return0s=-, v=-, a -
s=-, v=-, a -
-
8/12/2019 Motion Programming
25/57
5ccel2'>el2'4isp2 ?.
Time, t
5cceleration, 5 @ero order, 5 = constant
Time, t
>elocity, >
Time, t
4isplacement, S
T
T
T
)irst order, >= . t
Second order, S= +t+
-
8/12/2019 Motion Programming
26/57
5ccel2'>el2'4isp2 ?.a
Time, t
5cceleration, 5
Time, t
>elocity, >
Time, t
4isplacement, S
T
T
T
AT V =this area
e"uals this value
$
$# AT S =this area
e"uals this value
-
8/12/2019 Motion Programming
27/57
5ccel2'>el2'4isp2 ?.
Time, sec
5cceleration, 5
>elocity, >
4isplacement, S
T
- -2. -2+ -2A
T
+B m/s +
>.>+
>A
S.S+
SA
)ind numerical valuesfor >., >+, and >A
)ind numerical valuesfor S., S+, and SA
Suita le for a rise0
-
8/12/2019 Motion Programming
28/57
General ;urve Shape: y=Cx n
D
E
n=.
n=+
n=A
n=*
n=B
#
##
"
#
+==
+
n Kx
dx Kx Arean x n
5rea under the curve y=Cx n etween x=- and x=x . is
9ote that y . =Cx . n , so
##
####
+=
+=
n
x y
n
x Kx Area
n
-
8/12/2019 Motion Programming
29/57
5ccel2'>el2'4isp2 ?+
Time, sec
5cceleration, 5
>elocity, >
4isplacement, S
T
- -2. -2+ -2A
T
+B m/s +
>.>+ >A
S.S+
SA
)ind numerical valuesfor >., >+, and >A
)ind numerical valuesfor S., S+, and SA
Suita le for a dwell ' rise0
-
8/12/2019 Motion Programming
30/57
5ccel2'>el2'4isp2 ?A
Time, sec
5cceleration, 5
>elocity, >
4isplacement, S
T
- -2.B -2A
T
+B m/s +
>. >+
S.
S+
)ind numerical valuesfor >. and >+
)ind numerical valuesfor S. and S+
Suita le for a dwell ' rise0
-
8/12/2019 Motion Programming
31/57
5ccel2'>el2'4isp2 ?*
Time, sec
5cceleration, 5
>elocity, >
4isplacement, S
T
- -2. -2+ -2A
T
+B m/s +
>.>+ >A
S.S+
SA
)ind numerical valuesfor >., >+, and >A
)ind numerical valuesfor S., S+, and SA
Suita le for a dwell ' rise0
-
8/12/2019 Motion Programming
32/57
Time,sec 5
>
S
T
T
+B m/s +
>.
>+>A
S.S+
SA
)ind numerical valuesfor >* and >B
)ind numerical valuesfor S*, SB, and SF
Suita le for a rise'return0
'+B m/s + -2. -2+ -2A
-2* -2B -2F
>B>*
S*SB SF
-
8/12/2019 Motion Programming
33/57
5nalytical Solution
Solve the previous pro lem analytically:Solve the previous pro lem analytically:
-
8/12/2019 Motion Programming
34/57
Solve 9umerically
%se Excel and trape&oidal integration%se Excel and trape&oidal integrationtime 5cc >el 4isp
- +B - --2-. +B -2+B -2--.+B-2-+ +B -2B -2--B-2-A +B -2IB -2-..+B-2-* +B . -2-+
sec)"&!""!"(*sec
)"&!"()"!"($#
sec)"&!"(
sec)"!"( $
++= maamvmv
sec)"&!""!"(*sec
)"&!"()"!"($#
)"&!"()"!"(
++= mvvm sm s
-
8/12/2019 Motion Programming
35/57
5 9umerical Gimmic
%se this gimmic to improve accuracy when%se this gimmic to improve accuracy whenyou have a rupt changes in accelerationyou have a rupt changes in accelerationtime 5cc >el 4isp
-2+J +B I -2KJ-2+K +B I2+B .2-B.+B
-2+KKKKKKK +B I2B---- .2.+B-2A------. '+B I2B---- .2.+B-2A. '+B I2+B--- .2.KJIB-2A+ '+B I2----- .2+I
dou le up0 at anysharp transitions
-
8/12/2019 Motion Programming
36/57
(otion Programming ?+
!o ot Loint (otions!o ot Loint (otions
-
8/12/2019 Motion Programming
37/57
Typical !o ot (otion
)igure *'+ from )u, Gon&ale& and ee
#tf $#t+$
#t- $#t
.$
ift'off0
Set'down0
)inal
1nitial
-
8/12/2019 Motion Programming
38/57
Position ;onstraints
1nitial position,1nitial position, ..