Vous êtes sur la page 1sur 16

Autonomous and Mobile Robotics

Prof. Giuseppe Oriolo


Motion Control of WMRs:
Trajectory Tracking
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 2

feedback control is needed because the application of


nominal (open-loop) control inputs would lead to
unacceptable performance in practice

kinematic models are used to design feedback laws


because (1) dynamic terms can be canceled via
feedback (2) wheel actuators are equipped with low-
level PID loops that accept velocities as reference

we consider a unicycle in the following


motion control
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 3
motion control problems

trajectory tracking
(predictable transients)
posture regulation
(no prior planning)
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 4

the desired (reference) trajectory (x


d
(t), y
d
(t)) must
be admissible: there must exist v
d
and !
d
such that
trajectory tracking

thanks to atness, given (x


d
(t), y
d
(t)) we can compute
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 5

rather than using directly the state error q


d
q , use its
rotated version dened as

we nd
(e
1
, e
2
) is e
p
(previous gure) in a frame rotated by "
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 6

now use the input transformation

we obtain
which is clearly invertible
linear
time-varying
nonlinear
time-varying
nonlinear
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 7

linearize the error dynamics around the reference


trajectory (e ! 0, hence sin e
3
! e
3
)
via approximate linearization

dene the linear feedback

we obtain
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 8

letting

caveat: this does not guarantee asymptotic stability,


unless v
d
and !
d
are constant (as on circles and lines);
even in this case, asymptotic stability of the unicycle is
not global (indirect Lyapunov method)
with a > 0, # " (0,1), the characteristic polynomial
of A(t) becomes time-invariant
real
negative
eigenvalue
pair of complex
eigenvalues with
negative real part
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 9

the actual velocity inputs v, ! are obtained plugging


the feedbacks u
1
, u
2
in the input transformation

note: k
2
# $ as v
d
# 0, hence this controller can
only be used with persistent cartesian trajectories
(stops are not allowed)

note:(v, !) # (v
d
, !
d
) as e # 0 (pure feedforward)

global stability is guaranteed by a nonlinear version


if k
1
, k
3
bounded, positive, with bounded derivatives
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 10
via input/output linearization

choose the cartesian coordinates of point B as output

idea: nd an output whose dynamics can be made


linear via feedback, i.e., with an input transformation
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 11

if b %= 0, we may set
obtaining

differentiating wrt time


determinant = b
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 12

" is not controlled with this scheme, which is based on


output error feedback (compare with the previous)

the desired trajectory for B can be arbitrary; in


particular, square corners may be included

achieve global exponential convergence of y


1
, y
2
to the
desired trajectory letting
with k
1
, k
2
> 0
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 13
simulations
0 5 10 15
0
1
2
3
4
|s|
|
m
|
cartesian error
-6 -4 -2 0
0
1
2
3
4
5
6
|m|
|
m
|
tracking a circle via approximate linearization
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 14
simulations
-6 -4 -2 0
0
1
2
3
4
5
6
|m|
|
m
|
0 5 10 15 20 25 30
0
0.5
1
1.5
2
2.5
3
3.5
|s|
|
m
|
cartesian error
tracking an 8-gure via nonlinear feedback
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 15
simulations
0 2 4 6 8 10 12 14 16
-0.5
0
0.5
1
|
m
/
s
|
driving velocity
0 2 4 6 8 10 12 14 16
0
0.5
1
1.5
|s|
|
r
a
d
/
s
|
steering velocity
0 1 2 3 4 5 6
0
1
2
3
4
5
|m|
|
m
|
tracking a square via i/o linearization
b = 0.75 & the unicycle rounds the corners
Oriolo: Autonomous and Mobile Robotics - Motion Control of WMRs: Trajectory Tracking 16
simulations
0 2 4 6 8 10 12 14 16
0.5
1
1.5
|s|
|
m
/
s
|
driving velocity
0 2 4 6 8 10 12 14 16
0
10
20
30
|s|
|
r
a
d
/
s
|
steering velocity
0 1 2 3 4 5 6
0
1
2
3
4
5
|m|
|
m
|
tracking a square via i/o linearization
b = 0.2 & accurate tracking but velocities increase

Vous aimerez peut-être aussi