Trajectory planning Trajectory planning – – 1 1
Basilio Bona ROBOTICA 03CFIOR 1
Trajectory planning Trajectory planning 1 1 Basilio Bona 1 - - PowerPoint PPT Presentation
Trajectory planning Trajectory planning 1 1 Basilio Bona 1 ROBOTICA 03CFIOR Introduction The robot planning problem can be decomposed into a structured class of interconnected activities, at different hierarchical levels, usually
Basilio Bona ROBOTICA 03CFIOR 1
Basilio Bona 2 ROBOTICA 03CFIOR
Basilio Bona 3 ROBOTICA 03CFIOR
Objective … … ... Operation
Move Path Reference … …
Basilio Bona 4 ROBOTICA 03CFIOR
Task
… … … …
…
Basilio Bona 5 ROBOTICA 03CFIOR
Basilio Bona 6 ROBOTICA 03CFIOR
1( )
2( )
3( )
4( )
5( )
6( )
desired speed desired acceleration
Basilio Bona 7 ROBOTICA 03CFIOR
TRAJECTORY PLANNER Desired path Desired kinematic constraints Joint reference samples
r
Basilio Bona 8 ROBOTICA 03CFIOR
Robot dynamic constraint
r
Controller Actuator Gearbox Robot
r
TRAJECT PLANN
Basilio Bona 9 ROBOTICA 03CFIOR
Controller Actuator Gearbox Robot Transducer JECTORY ANNER
Task Space Joint Space
f
f
Task-space path
Joint-space path Inverse Kinematics
Basilio Bona 10 ROBOTICA 03CFIOR
Task-space and joint-space paths can be different, since the inverse kinematics function is highly nonlinear
Basilio Bona 11 ROBOTICA 03CFIOR
A simple joint space PTP path may generate a “strange” task space path
f
Basilio Bona 12 ROBOTICA 03CFIOR
f f
Initial value Final value
Basilio Bona 13 ROBOTICA 03CFIOR
f
Convex combination
PROFILE GENERATOR CONVEX COMBINATION
1( )
2( )
3( )
4( )
Basilio Bona 14 ROBOTICA 03CFIOR
4( )
5( )
6( )
This approach allows a coordinate motion coordinate motion, i.e., a motion of all joints that starts and ends at the same time instants, providing a smoother motion of the entire mechanical structure, avoiding unwanted jerks that can introduce undesirable vibrations
Basilio Bona 15 ROBOTICA 03CFIOR
max max max
max max max max
− + − +
Acceleration constraints Positive acceleration may be different from negative acceleration (deceleration) Velocity constraints
t
1
t
2
t
f
t
f
s ( ) s t ɺ
max
s ɺ
s
t t
1
t
1
t
2
t
2
t
f
t
f
t ( ) s t ɺɺ
max
s + ɺɺ
max
s + ɺɺ
Area A +B −B
f
f
Basilio Bona 16 ROBOTICA 03CFIOR
max
f f
− + −
max
f f
− − +
Basilio Bona 17 ROBOTICA 03CFIOR
Basilio Bona 18 ROBOTICA 03CFIOR
Basilio Bona 19 ROBOTICA 03CFIOR
Basilio Bona 20 ROBOTICA 03CFIOR
Basilio Bona 21 ROBOTICA 03CFIOR
Basilio Bona 22 ROBOTICA 03CFIOR
0.2 0.4 0.6 0.8
0.5 1 1.5 2 2.5 0.2 0.4 0.6 0.8 1 1.2 1.4
Basilio Bona 23 ROBOTICA 03CFIOR
0.2 0.4 0.6 0.8
tempo (s) 0.2 0.4 0.6 0.8 tempo (s) 0.2 0.4 0.6 0.8
2 4 6 8 10
max max max
+ −
0.2 0.4 0.6 0.8 0.5 1 1.5 2 2.5 tempo (s) 0.2 0.4 0.6 0.8 0.2 0.4 0.6 0.8 1 1.2 tempo (s)
Basilio Bona 24 ROBOTICA 03CFIOR
max max max
+ −
0.2 0.4 0.6 0.8
2 4 6 8 10 tempo (s)
Basilio Bona 25 ROBOTICA 03CFIOR
1 1
k N
−
Basilio Bona 26 ROBOTICA 03CFIOR
Basilio Bona 27 ROBOTICA 03CFIOR
f
k
vmax=2 amaxp=8 2 2 1 Phase 1 Phase 2 Phase 3
Basilio Bona 28 ROBOTICA 03CFIOR
k =
1
13 k =
2
22 k = 43
f
k = k
amaxp=8 amaxm=5 alfa=1 deltat=0.02
max
k
vmax=2 amaxp=8 amaxm=5 alfa=1 deltat=0.02
Basilio Bona 29 ROBOTICA 03CFIOR
k =
1
13 k =
2
22 k = 43
f
k =
max
k
vmax=2 amaxp=8 amaxm=5 alfa=1 deltat=0.02
Basilio Bona 30 ROBOTICA 03CFIOR
k =
1
13 k =
2
22 k = 43
f
k =
max
Basilio Bona 31 ROBOTICA 03CFIOR
Basilio Bona 32 ROBOTICA 03CFIOR
Which one?
Basilio Bona 33 ROBOTICA 03CFIOR
This plot shows the difference between the exact computation and the incremental interpolation Notice that the final value of the profile is larger than 1, since no correction of the commuting instants was implemented
Basilio Bona 34 ROBOTICA 03CFIOR
This plot shows the error between the two values; as one can see, during the constant velocity phase, no error arises
Basilio Bona 35 ROBOTICA 03CFIOR
This plot shows the difference between the exact computation and the absolute interpolation Large errors arise, mainly due to the errors accumulated in the first and third phase
Basilio Bona 36 ROBOTICA 03CFIOR
Basilio Bona 37 ROBOTICA 03CFIOR
Delta=0.005 Delta=0.05
Basilio Bona 38 ROBOTICA 03CFIOR
max max
1 1 1 k k k k
+ + + +
Basilio Bona 39 ROBOTICA 03CFIOR
k
+
max trans max
max
Basilio Bona 40 ROBOTICA 03CFIOR
k
Basilio Bona 41 ROBOTICA 03CFIOR
max
Basilio Bona 42 ROBOTICA 03CFIOR
k
1
d k max k k max
+
Braking space
max 2
d k k
Basilio Bona 43 ROBOTICA 03CFIOR
* 2 1 1
d k k k k D
+ +
max
Max deceleration exceeded
Basilio Bona 44 ROBOTICA 03CFIOR
k
max
Basilio Bona 45 ROBOTICA 03CFIOR
k
Velocity becomes negative
Basilio Bona 46 ROBOTICA 03CFIOR
0.26 0.25
Exact commutation time Approximate commutation time
The acceleration profiles approximately follows the standard profile
Basilio Bona 47 ROBOTICA 03CFIOR
Basilio Bona 48 ROBOTICA 03CFIOR
Basilio Bona 49 ROBOTICA 03CFIOR
Basilio Bona 50 ROBOTICA 03CFIOR
Basilio Bona 51 ROBOTICA 03CFIOR
i
1 i−
1
k i k i
−
Basilio Bona 52 ROBOTICA 03CFIOR
Basilio Bona 53 ROBOTICA 03CFIOR
Basilio Bona 54 ROBOTICA 03CFIOR