Tải bản đầy đủ (.pdf) (11 trang)

Điều khiển hệ hụt cơ cấu chấp hành

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (730.85 KB, 11 trang )

Fuzzy adaptive EKF motion control for
non-holonomic and underactuated cars with
parametric and non-parametric uncertainties
F. M. Raimondi and M. Melluso
Abstract: A new fuzzy adaptive motion control system including on-line extended Kalman’s filter
(EKF) for wheeled underactuated cars with non-holonomic constraints on the motion is presented.
The presence of parametric uncertainties in the kinematics and in the dynamics is treated using suitable differential adaptation laws. We merge adaptive control with fuzzy inference system. By using
fuzzy system, the parameters of the kinematical controller are functions of the lateral, longitudinal
and orientation errors of the motion. In this way we have a robust control system where the
dynamics of the motion errors is with lower time response than the adaptive control without
fuzzy. Also Lyapunov’s stability of the motion errors is proved based on the properties of the
fuzzy maps. If data from incremental encoders are employed for the feedback directly, sensor
noises can damage the performance of the motion control in terms of the motion errors and of
the parametric adaptation. These noises are aleatory and denote a kind of non-parametric uncertainties which perturb the nominal model of the car. Therefore an EKF is inserted in the adaptive
control system to compensate for the above non-parametric uncertainties. The control algorithm
efficiency is confirmed through simulation tests in Matlab environment.

1

Introduction

In recent years much attention has been focused upon the
control of non-holonomic mechanical systems [1]. A
mobile wheeled car actuated by a differential drive is
usually studied as a typical non-holonomic system, where
non-holonomic constraints arise under the no-slip constraints. Our approach is about motion control of nonholonomic wheeled cars. Due to non-holonomic motion,
the cars are underactuated. In fact there are three generalized coordinates i.e. lateral position, longitudinal position
and car orientation to be controlled, whereas there are two
control inputs only, that is steering and longitudinal
inputs. About the motion control, older research effort use
only kinematical controllers [2]. The main idea is to


define velocity control inputs which stabilize the closed
loop system. However, if one considers kinematical controller only, then one assumes that there exists perfect velocity
tracking, that is the control signals affect the car velocities
instantaneously and this is not true. More recently control
researchers have targeted the problem of motion control
of underactuated wheeled cars using a backstepping
approach [3, 4] which allows many of the steering system
commands to be converted to torques, taking into account
dynamic parameter (mass, inertia, friction). The fundamental problems of the backstepping control are the parameters
uncertainties, i.e. the unknown dynamical parameters of the
car, that is mass, inertia, position of the mass centre and
the partialy known kinematical parameters, that is ray of
# The Institution of Engineering and Technology 2007
doi:10.1049/iet-cta:20060459
Paper first received 25th October 2006 and in revised form 22nd January 2007
The authors are with the Dipartimento di Ingegneria dell’Automazione e dei
Sistemi, University of Palermo, Italy
E-mail:
IET Control Theory Appl., 2007, 1, (5), pp. 1311 –1321

the wheels, distance from the reference point of the
motion to the mass centre. In this sense adaptive control
schemes have been presented [5– 7]. In [5, 7] adaptive
laws of the dynamical parameters only have been developed, whereas in [6] adaptive laws both the dynamical
and the kinematical parameters have been presented.
However in all the works above the parameters of the kinematic control laws are constant for every value of the
motion errors, so that they must be chosen suitably to guarantee a good dynamics of the motion errors; also the
problem of on-line localization, that is an optimal estimation of the car’s position, has not been treated. Really,
at each sampling instant the position of the car is estimated
on the basis of the encoders’ increment along the sampling

interval. A drawback of this method is that the errors of each
measure caused by the encoder are summed up. Many
researchers have solved the problem of localization, by an
off-line sensors data fusion based on the use of extended
Kalman’s filters (EKF) [8 – 10]. An interesting approach
has been developed in [11], where a conventional PID
control strategy with a Kalman-based active observer controller has been used to solve a problem of path following
for non-holonomic cars. To apply EKF it is necessary for
a discrete non-linear system model which describes the
state transition relationship during a sampling interval. A
discrete model for non-holonomic cars has been proposed
[10] where the position coordinates of the car have been
expressed with respect to a ground reference. About
fuzzy inference mechanism for non-holonomic and underactuated cars, fuzzy controllers have been presented [12,
13], where the stability of the motion is not always
assured. In [14] a dynamical fuzzy control law with
Lyapunov’s stability proof has been proposed, whereas in
[15] a kinematical control law, where the parameters have
been obtained using a suitably fuzzy inference system,
has been shown and the asymptotical stability of the
1311


motion error has been proved. However, by using the
approach of [15], because of the noises of the encoders positioned in right and left wheels of the car, the feedback
signals of the control system (i.e. the actual position and
orientation of the car provided by the encoders) are
noised. The aleatory noises above are responsible for nonparametric uncertainties which perturb the model of the
car. The non-parametric uncertainties above can corrupt
the performance of the fuzzy control system in terms of

dynamics of the motion errors and in terms of the dynamical
parametric adaptation.
In order to continue this research line, a fuzzy adaptive
motion control system with on-line EKF for non-holonomic
and underactuated cars is presented. The following contributions are given:
1. Merging of adaptive kinematic and dynamic controllers
with a fuzzy inference system where stability and convergence analysis is built on Lyapunov’s theory, based on the
properties of the fuzzy maps. This assures robustness and
lower time response than the adaptive control without
fuzzy [6].
2. A sampled chained form model for non-holonomic car
with non parametric uncertainties. In [10] the position coordinates of the car are expressed in a ground reference,
whereas in our work the coordinates are expressed in a
body fixed reference. In this way the noises of the proprioceptive sensors (i.e. encoders positioned in right and left
wheels of the car) are naturally expressed in a frame
attached to the car body.
3. A methodology for solving the on-line sensors data
fusion problem through EKF. An EKF has to be introduced
in the fuzzy adaptive control system above to fuse data from
multiple proprioceptive sensors (i.e. encoders, vector
compass and sensor position) and to estimate the filtered
feedback signals, that is the actual position of the car by
on-line recursive predictions and corrections. The EKF
compensates the non-parametric uncertainties effects (i.e.
discontinuities in the dynamics of the motion errors and
of the parametric adaptation).
By using our fuzzy solution, the constant parameters
of the conventional kinematic control laws [3, 6] are
obviated. In fact, in our approach, the parameters are
nonlinear functions of the motion errors and this assures

faster convergence and more robustness than the conventional adaptive controller [6]. Based on the input – output
properties of the fuzzy map, the asymptotical stability of
the motion errors has been proved in Section 4.2. Section
4.3 adds an adaptive kinematical control with stability
proof to solve the problem of partialy known kinematical
parameters. In Section 5, based on the adaptive backstepping approach [6], a dynamical extension is presented.
The EKF estimates the filtered state from the noised
outputs provided from more odometric sensors and
assures a good localization. The filter above requires to
derive a linear discrete time stochastic state space
representation of the car model and of the measure
process. About the state space representation, we introduce
a sampled form of the kinematic ‘chained form’ model [16]
where the inputs are provided by the data of the encoders.
About the measure equations, we consider data provided
from proprioceptive sensors of position and orientation.
2

Time continuous models for wheeled cars

Fig. 1 Constrained wheeled car with references

dynamic model in generalized coordinates is given in
[3, 5, 6]
_ q_ ¼ E(q)t À AT (q)l
M(q)q€ þ C(q,q)

(1)

where M(q) [

_ [ matrix; C(q,q)
nÂ1
t[<
is a vector including torques applied to right
and left wheels; A(q) [ multipliers. Supposing that the m constraints are time invariant leads to
A(q)q_ ¼ 0

(2)

Let S(q) [ set of smooth and linearly independent vectors spanning
the null space of A(q), that is
A(q)S(q) ¼ 0

(3)

We indicate with (x0(t), y0(t)) the P coordinates (see
Fig. 1) at time t in an inertial cartesian frame (x, y) and
with f(t) the car orientation with respect to the inertial
basis at the same time. Also let r be the ray of the wheels
(see Fig.1). Let C be the mass center of the car, which is
on the X-axis, and let d be the distance from P to C.
For the later description, mc is the mass of the car without
the driving wheels, mw is the mass of each driving wheels,
Ic, Iw and Im are the inertia moments of the body around a
vertical axis through P, the wheel with a motor about the
wheel axis, and the wheel with a motor about the wheel
diameter, respectively. It is possible to find a v [

vector as it follows
vT ¼ [u(t)

v(t)]

(4)

where u(t) and v (t) are, respectively, the linear and angular
body-fixed (X, Y ) time varying velocities. Indicate with
u˙ r (t) and u˙ l (t) the time varying angular velocities of right
and left wheels, respectively. The relationship between v
and the angular velocities above is the following
2
3
1 b
!
˙u r (t)
6
r 7
¼4r
(5)
5v
1 Àb
u˙ l (t)
r
r
Equation (5) can be rewritten as follows
2
3
1 b

6
r 7
h¼4r
5v
1 Àb
r
r

(6)

where
Let us consider a mobile car of Fig. 1 with generalized coordinates q [ 1312

Â
Ã
hT ¼ u˙ r (t) u˙ l (t)
IET Control Theory Appl., Vol. 1, No. 5, September 2007


Now considering the vector
T

q ¼ [x0 (t) y0 (t) f(t)]

(7)

leads to the following kinematic model
2
3 2

3
!
cb cos f(t) cb cos f(t)
x_ 0 (t)
˙ r (t)
u
4
5
4
5
q_ ¼ y_ 0 (t) ¼ cb sin f(t) cb sin f(t)
u˙ l (t)
f˙ (t)
c
Àc

where
c ¼ r=2b
About the dynamic model in body fixed coordinates
(X, Y ), differentiating (8), replacing it into (1) and performing additional operations with S(q) lead to
 h_ þ V
 m (h)h ¼ Bt
M

"
 m (h) ¼
V

b 2 c2 m þ c2 I þ I w
b2 c2 m À c2 I


b2 c2 m À c2 I
b2 c2 m þ c2 I þ Iw

#
#

0 À sin (v(k)T) cos (v(k)T)
h

xT (k) ¼ Àv(k)T

u(k)

sin (v(k)T )
cos (v(k)T ) À 1
u(k)
v(k)
v(k)
(16)

where u(k) and v(k) are derived as sampling of the components of the vector given by (4). The localization sensors
(i.e. vector compass and position proprioceptive sensor)
directly produce the full-state of the car. So, if q coordinates
are used, it yields

where z is the output vector and C is an identity matrix.
Applying the transformation (11) and considering an additive
measurement noise n(k) (i.e, non parametric uncertainty perturbing the output equation) lead to


I ¼ mc d 2 þ Ic þ 2mw b2 þ 2Im

 and V
 m matrices are, respectively, the Inertia and
The M
Coriolis matrices in body-fixed (X, Y ) coordinates system
(see Fig. 1). The vector t has in its components the
torques applied to the right and left wheels, respectively.
Substituting (6) into (8) leads to
2
3
!
cos f(t) 0
u
q_ ¼ 4 sin f(t) 0 5
(10)
¼ S2 (q)v
v
0
1

z(k) ¼ CRÀ1 (f)j(k) þ n(k) ¼ g(j(k)) þ n(k)

Preliminarily we consider the following change of coordinates
j(t) ¼ [j1 (t) j2 (t) j3 (t)]T ¼ R(f)[x0 (t) y0 (t) f(t)]T
(11)
where

where the statistical parameters of the noise are
E{n(i)nT (j)} ¼ 0


E{n(k)} ¼ 0;

E{n(k)nT (k)} ¼ R

(12)

IET Control Theory Appl., Vol. 1, No. 5, September 2007

cos j1 (k)
À sin j1 (k)

j(k þ 1) ¼ A(k)j(k) þ x(k) þ w(k)
k[Z

(19)

À1

Applying the transformation (11) to model (10) leads to
a chained form model [16]. An analogical to digital converter
(ADC) obtains samples of the chained form model.
We assume constant sampling period Dtk ¼ T and
denote k þ 1 ¼ (k þ 1)T, k [ Z. So, from sampling of the
vector (11), we can define the sampled vector j(k). After
some algebra, the perturbed sampled state space model yields

w3 (k)]

for i = j


j(k þ 1) ¼ A(k)j(k) þ x(k) þ w(k)
Dy(k) ¼ Hgj (k)Dj(k) þ n(k)
(20)
2
À(j2 (k) sin (j1 (k)) À j3 (k) cos (j1 (k)))
6
Hgj (k)j¼jà (k) ¼ 4 À(j2 (k) cos (j1 (k)) þ j3 (k) sin (j1 (k)))

2

wT (k) ¼ [w1 (k) w2 (k)

(18)

and R is the diagonal covariance matrix. Note that, in consequence of the rotation (11), the g function of (18) is naturally
nonlinear. Also w(k) and n(k) noises are independent. We
may write a new governing equation that linearizes the
measurement process. It yields

3
Discrete time kinematic model for
non-holonomic and underactuated cars
with non-parametric uncertainties

3
0
0
À1
R(f) ¼ 4 cos f(t) sin f(t) 0 5

À sin f(t) cos f(t) 0

(17)

z(k) ¼ Cq(k)

tT ¼ [tr (t) tl (t)]

where
m ¼ mc þ 2mw ;

(14)

where Q is the diagonal covariance matrix. Also it is:
2
3
1
0
0
6
7
(15)
A(k) ¼ 4 0 cos (v(k)T) sin (v(k)T ) 5

(9)

0
2bc3 dmc (u˙ r À u˙ l )
0
À2bc3 dmc (u˙ r À u˙ l )


B ¼ diag[1 1];

for i = j

E{w(k)wT (k)} ¼ Q
(8)

"

E{w(i)wT (j)} ¼ 0

E{w(k)} ¼ 0;

¼ S(q)h

 ¼
M

where w(k) is the process noise with Gaussian statistical distribution. This is a non parametric uncertainty which perturbs
the state-input model (13). Statistical mean and variance of
the noise above are the following:

(13)

0

sin j1 (k)

3


7
cos j1 (k) 5

(21)

0

where j à (k) is solution of the process model (13) without
noise.
Remark 1: With respect to q coordinates, the new reference
in j coordinates is with the same origin of the world frame
but rotated so as to align the axis with the car orientation.
Therefore the noises of the new ji (i ¼ 1, 2, 3) variables
are expressed in a frame attached to the car body. Since
the noises are caused by sensors located in the automatic
1313

i


car, the reference using j coordinates is more natural than
the reference using q coordinates.
4
Adaptive fuzzy kinematic motion control
of nonholonomic and underactuated cars:
Lyapunov’s stability analysis
4.1 Fuzzy kinematical motion control and
preliminary input – output properties of the fuzzy
system for the Lyapunov’s stability

Let the reference position be:
x_ r (t) ¼ ur (t) cos fr (t)
y_ r (t) ¼ ur (t) sin fr (t)

(22)

f˙ r (t) ¼ vr (t)
where ur(t) ) 0 for all t is the reference linear velocity and
vr(t) is the reference angular velocity. Then the motion
error between the reference position qr ¼ [xr (t)
yr (t) fr (t)]T and the actual position q given by (7) can be
expressed in the car local frame (X, Y ) as in [3]
2

3
ex
e ¼ 4 ey 5
ef
3
2
32
xr (t) À x0 (t)
cos f(t) sin f(t) 0
¼ 4 À sin f(t) cos f(t) 0 54 yr (t) À y0 (t) 5
fr (t) À f(t)
0
0
1

(23)


a Input memberships
b Output memberships

where ex and ey are the lateral and longitudinal position
errors, while ef is the orientation error of the wheeled car.
It is evident that the components of the vector (23) are
time functions. We omit the argument for simplicity
notation.
Now a new fuzzy kinematic control law is proposed
uc (t) ¼ ur (t) cos ef þ kx (t)ex

(24)

vc (t) ¼ vr (t) þ ur (t)(ky (t)ey þ kf (t) sin ef )
where uc(t) and vc(t) are the kinematic control laws in terms
of steering and longitudinal velocities. The control law
above depends on the error vector (23) and on the following
parameters
kT (e) ¼ [kx (t) ky (t) kf (t)]

Remark 2: The generalized bell functions have been
chosen for the smoothness which assures continuous functions to guarantee the Lyapunov’s stability of the control
system.

Remark 3: To guarantee the stability of the motion errors,
the parameters kx , ky and kf are positive numbers.
At this point one must investigate on the input –output
properties of the fuzzy system. The properties above have
to be the following:

Property 1a: The parameters (25) are continuous time
functions;
Property 2a: The vector k(e(t)) (cf. 25) is equal to zero if
only if e is equal to zero that is

M ¼ Medium; H ¼ High;

Opp ¼ Opposite:
1314

The inputs of the fuzzification process are the absolute
values of the motion errors, so that the input sets are singleton (cf. 23), whereas the outputs of the input fuzzification
memberships are the degree of membership in the qualifying linguistic sets (always the interval between 0 and 1).
The implemented method for the logical ‘and’ and for the
implication are the ‘minimum’ and the ‘fuzzy minimum’
respectively. The consequents of each rule have been
recombined using a maximum (max) method. The defuzzification method is the ‘centroid’. So the outputs of the fuzzy
system are crisp values that is the parameters (25) (see
Fig. 2b).

(25)

Parameters (25) are provided by a fuzzy controller. In this
way the parameters of the kinematic control law are not
constant as in the conventional controllers [3, 6], but they
are nonlinear functions of the motion errors (23). Since
the fuzzy maps are adjusted based on the control performance, the updating of the parameters (25) assures a good
robustness and faster convergence than the conventional
adaptive control without the fuzzy system [6]. Now the
fuzzy inference system is described. Fig. 2 shows the

input and output membership functions. The fuzzy rules
are shown in Table 1. The input and output memberships
are generalized bell functions and three linguistic labels
are defined:
S ¼ Small;

Fig. 2 Membership functions

kT (e) ¼ [kx (t) ky (t) kf (t)] ¼ 0 , e ¼ 0
IET Control Theory Appl., Vol. 1, No. 5, September 2007


Table 1:

Table of the rules

No Rules

Ex

Ey

Ef

Kx

Ky

Kf


1

S

S



S

S

S

2

S

M



S

M

S

3


S

H



M

H

S

4

M

S



M

S

S

5

M


M



M

M

S

6

M

H



M

H

S

7

H

S




H

M

S

8

H

M



H

M

S

9

H

H




H

H

S

10

S

S



M

M

M

11

S

M



M


M

M

12

S

H



M

H

M

13

M

S



M

M


M

14

M

M



M

M

M

15

M

H



M

H

M


16

H

S



H

M

M

17

H

M



H

M

M

18


H

H



H

H

M

19

S

S

OPP

M

M

H

20

S


M

OPP

M

M

H

21

S

H

OPP

M

H

H

22

M

S


OPP

M

M

H

23

M

M

OPP

M

M

H

24

M

H

OPP


M

H

H

25

H

S

OPP

H

M

H

26

H

M

OPP

H


M

H

27

H

H

OPP

H

H

H

28

S

S

M2

M

M


M

29

S

M

M2

M

M

M

30

S

H

M2

M

H

M


31

M

S

M2

M

M

M

32

M

M

M2

M

M

M

33


M

H

M2

M

H

M

34

H

S

M2

H

M

M

35

H


M

M2

H

M

M

36

H

H

M2

H

H

M

37

S

S


S2

S

S

S

38

S

M

S2

S

M

S

39

S

H

S2


M

H

S

40

M

S

S2

M

S

S

41

M

M

S2

M


M

S

42

M

H

S2

M

H

S

43

H

S

S2

H

M


S

44

H

M

S2

H

M

S

45

H

H

S2

H

H

S


Property 3a: All the outputs of the fuzzy inference system
are positive numbers and are bounded that is
0

kx (t)

kx max ;

0

ky (t)

ky max

0 kf (t) kf max
Property 4a: The fuzzy inference system assures that
 T  
dky
dky dey
de
! 0 8t:

de
dey dt
dt
IET Control Theory Appl., Vol. 1, No. 5, September 2007

Now considering the fuzzy control law (24) and differentiating (23) lead to the following closed loop model
Â
Ã

e_ T ¼ e_ x e_ y e_ f
2
3
(vr (t) þ ur (t)(ky (t))ey þ kf (t) sin ef )ey À kx (t)ex
6
7
¼ 4 À(vr (t) þ ur (t)(ky (t)ey þ kf (t) sin ef )ex þ ur (t) sin ef 5
Àur (t)(ky (t)ey þ kf (t) sin ef )
(26)
4.2 Lyapunov’s stability proof based on the
input – output properties of the fuzzy system
From the fuzzy inference system, equations and properties
so far, the first main results of this work follow.
Theorem 1: Let the kinematic model and the fuzzy
kinematic control laws be (10) and (24), respectively.
Let the linear reference velocity ur(t) be positive. The
properties 1a – 4a are verified for hypothesis. Then the
equilibrium state of the non autonomous closed loop
system (26) is the origin of the state space and this is asymptotically stable.
Proof: Since the vector k(e) (cf. 25) is equal to zero if only
if e is equal to zero, the equilibrium state of the closed loop
system (26) is the origin of the state space. The system (26)
is non-autonomous. The following Lyapunov function is
chosen
1
V0 ¼ (e2x þ e2y ) þ (1 À cos ef )g(t)
2

(27)


g(t) ¼ 1=ky (t)

(28)

ky (t) . 0 ) g(t) . 0 8t

(29)

where

and for hypothesis

Therefore the Lyapunov’s function (27) is positive definite. The time derivative of (27) is
_
(30)
V_ 0 ¼ ex e_ x þ ey e_ y þ e_ f sin ef g(t) þ (1 À cos ef )g(t)
where
!
dky =dt
(dky =de)T (de=dt)
d
1
_ ¼
¼À 2
¼À
(31)
g(t)
ky (t)
ky2 (t)
dt ky (t)

By substituting (26) into (30), it yields
V_ 0 ¼ Àkx (t)e2x À ur (t)kf (t) sin2 (ef )g(t)

(32)

_
þ (1 À cos ef )g(t)
The function (32) is negative semidefinite. In fact, due to
property (3a) of the fuzzy map, the first and second term of
(32) are non-negative and, because of property (4a), the
third term of the same function is non-negative. Now the
function above does not depend on ey error. Since it results
1
V0 ¼ (e2x þ e2y ) þ (1 À cos ef )g(t)
2
þ (1 À cos ef )gmax

1 2
(e þ e2y )
2 x
(33)

where
gmax ¼ max [g(t)]

(34)
1315


then the (27) is a decrescent function. Therefore vector (23)

is bounded and the equilibrium state of the closed loop
system (26) is stable. Since the second time derivative of
(27) depends on bounded variables, it is a bounded function.
Therefore the function (32) is uniformly continuous. From
Lyapunov-like Barbalat’s Lemma it yields
lim V_ 0 (t) ¼ 0

t!1

(35)

Theorem 2: Let the kinematic model and the fuzzy control
law be (10) and (24), respectively. The linear reference and
angular velocities are bounded functions and the angular
velocity reference converges to zero. Assume the following
adaptive kinematic control law

vc (t) sin ef
b¯_ ¼ d
ky (t)

a¯_ ¼ gex uc (t);

g, d . 0

(41)

From (32) and (35), ex and ef converge to zero. From the
second equation of (26) that is


Then the motion errors of the closed loop system (40)
converge to zero.

e_ y ¼ À(vr (t) þ ur (t)(ky (t)ey þ kf (t) sin ef )ex þ ur (t) sin ef

Proof: An extended state vector can be defined
h
i
e T ¼ ex ey ef a^ b^

the function e_ y converges to zero. Therefore the steady state
error along y direction is constant. Examining the third
equation of (26) leads to
e_ f (1) ¼ Àur ky (1)ey

(36)

where e y is the steady state value of ey . Since ef converges
to zero, ey converges to zero. Now ky is equal to zero if e y is
equal to zero. Therefore the equilibrium point of the closed
loop system (26) is asymptotically stable
A
4.3 Fuzzy adaptive kinematic motion control with
Lyapunov’s stability proof
Herein, the second main result of this work is explained. An
adaptive controller is added to previous fuzzy control and
the stability is proved. This step is necessary because the
kinematical parameters as the ray of the wheels and particularly the distance between the driving wheels and the axis of
symmetry can be difficult to be determined accurately.
Preliminarily, after simple calculations, the closed loop

kinematical control system can be written as follows
2 r
2 r
r 3
r 3
2 3
À þ ey
À À
ex
6 2 2b 7
6 2 2b 7
7
6 r
7
r
d6 7 ˙ 6
˙
ex 7
À ex 7
þ u l (t)6
4 ey 5 ¼ u r (t)6
6
7
6
7
2b
dt
4
5
4 2br

5
r
ef
À
2b
2b
2
3
ur (t) cos ef
6
7
(37)
þ 4 ur (t) sin ef 5
vr (t)
We set

a ¼ 1=r; b ¼ b=r

(38)

Differential equation (37) can be exploited by considering the estimation errors of the kinematical parameters (38)

a^ ¼ a¯ À a; b^ ¼ b¯ À b
where a¯ and b¯ are the estimated values. It results
2
3
2 3
ex
À1



d6 7
a^
6
7
u (t)4 0 5
4 ey 5 ¼ 1 þ
dt
a c
ef
0
2
3
!
ey
b^
6
7
v (t)4 Àex 5
þ 1þ
b c
À1
Â
ÃT
þ ur (t) cos ef ur (t) sin ef vr (t)

(39)

(40)


Now it is possible to formulate the following theorem.
1316

(42)

The Lyapunov function can be chosen as follows
V1 ¼ V0 þ

1 2
1 ^2
a^ þ
b
2ga
2db

g, d . 0

(43)

where V0 is given by (27). Since V0 is positive definite, it is
obvious that V1 is positive definite. Substituting the fuzzy
control law (24) into (41) and differentiating (43) lead to

a^ _
(a À gex uc (t))
V_ 1 ¼ V_ 0 þ
ga
vc (t) sin (ef )
b^ ¯_
b Àd

þ
db
ky (t)

!
(44)

where uc(t) and vc(t) are given by (24) and V_ 0 is given by
(32). Function (44) is negative semidefinite if and only if
(41) is verified. In this case it results
V_ 1 ¼ V_ 0

(45)

Since the function (45) does not depend on ey component
(cf. 32), it is negative semidefinite. Therefore the closed
loop system (40) is stable and the components of the state
vector (42) are bounded. It is also possible to calculate the
second time derivative of the Lyapunov function (43).
Since it depends on bounded variables, from Barbalat’s
Lemma it results
lim V_ 1 (t) ¼ 0

t!1

(46)

Therefore ex and ef converge to zero. Now, by substituting (24) into (40), it results
!
b^

(vr (t) þ ur (t)(ky (t)ey
e_ f ¼ À 1 þ
b
þ kf (t) sin ef )) þ vr (t)

(47)

Since ef converges to zero, e_ f converges to zero; therefore ey converges to zero only if the angular velocity reference vr converges to zero
A
Remark 4: From the previous results, the adaptive fuzzy
kinematic control law can be written in terms of angular
velocity of left (u˙ lc ) and right (u˙ rc ) wheels as it follows
!
!
!
uc (t)


u˙ rc (t)
(48)
hc ¼ ˙
¼
vc (t)
a¯ Àb¯
u lc (t)
where a¯ and b¯ are the solutions of the differential equations
(41), while uc(t) and vc(t) are the fuzzy control laws given
by (24).
Remark 5: Note that the control of the mobile car is
expressed in terms of the angular velocities of the right

IET Control Theory Appl., Vol. 1, No. 5, September 2007


and left wheels. In this way we have two control components. Really three variables are controlled, that is the
longitudinal and the lateral position and the orientation of
the car. Consequently the system is underactuated.

From (41) and (48) the fuzzy kinematical adaptive tracking controller model can be written as
hc ¼ hc (e,a¯ ,b¯ ) ¼ hc (q,qr ,a¯ ,b¯ )

a¯_ ¼ f1 (e,a¯ ) ¼ f1 (q,qr ,a¯ )
5

Adaptive dynamic motion control extension

b¯_ ¼ f2 (e,b¯ ) ¼ f2 (q,qr ,b¯ )

Here, a low-level adaptive controller based on backstepping
method [3, 4, 6], is added to previous fuzzy adaptive highlevel control for nonholonomic and underactuated cars. The
conventional computed torque controller [3] requires exact
knowledge of the dynamics of the car in order to work properly. In this work, instead, an adaptive mechanism is
inserted because the dynamical parameters of the model
(9) cannot be accurately known.
Preliminarily important properties of the dynamical
model (9) and kinematical model (8) must be presented.
Property 1.b: The linearity in the parameters p of the dynamical model (9) is shown
 h˙ þ V
 m (h)h ¼ Y(h,h˙ )p
M


(49)

where the vector p [ 2 2 2
3
b c m þ c2 I þ I w
Â
ÃT 6
7
p ¼ p1 p2 p3 ¼ 4 b2 c2 m À c2 I
5 (50)
"
Y(h,h˙ ) ¼

2bc3 dmc

u¨ r
u¨ l

u¨ l
u¨ r

(u˙ r À u˙ l )u˙ l
À(u˙ r À u˙ l )u˙ r

#
(51)

The elements of the vector p consist of unknown dynamical parameters.


Also the Lyapunov function (43) appears as it follows
V1 ¼ V1 (e,a¯ ,b¯ ) ¼ V1 (q,qr ,a¯ ,b¯ )

3
r
cos f(t) "
#
x_ 0 (t)
2
62
7 ˙
7 u r (t)
r
r
6
7 6
7
4 y_ 0 (t) 5 ¼ 6
6 2 sin f(t) 2 sin f(t) 7 u˙ (t)
4
˙
r
r 5 l
f (t)
À
2b
2b
2r
3
2r

3
cos f(t)
cos f(t)
62
7
62
7
6r
7
6r
7
˙
˙
6
7
6
¼ 6 sin f(t) 7u r (t) þ 6 sin f(t) 7
7u l (t)
4 2r
5
42 r
5
À
2b
2b
2
32 3
2
r
cos f(t)

cos f(t) 0
6
76 7
6
¼ 4 sin f(t) 0 54 2r 5u˙ r (t) þ 4 sin f(t)
0
1
0
2b
2 3
r
62 7˙
 4 r 5u l (t) ¼ S1 u1 u˙ r (t) þ S2 u2 u˙ l (t)
2

3

2r

cos f(t)

0

3

7
0 5
À1
(52)


2b
where u1 and u2 are parametric vectors whereas S1 and S2
are matrices whose elements consist of known functions.
Now, by inserting the new fuzzy inference system of the
previous sections, the results on the adaptive backstepping
technique [6] are reformulated.
IET Control Theory Appl., Vol. 1, No. 5, September 2007

(54)

Assumption 1: The adaptive tracking controller (53) exists
for the kinematical model (8). Also there exists a positive
definite and radially unbounded function V1 such that
@V
@V
@V
@V
V_ 1 ¼ 1 q_ þ 1 q_ r þ 1 f1 þ 1 f2
@q
@qr
@a¯
@b¯

0

(55)

where all the signals are bounded.
Now the following adaptive dynamical control law can be
chosen [6]


T !
!
tl (t)
@V
À1
1 ^
S

¼ B ( À Kd h~ þ Yp^ À
@q
tr (t)


@V1
_
Si h˜ i i ¼ 1, . . . , 2; p_^ ¼ ÀCYT h~
(56)
u^ i ¼ Li
@q
where tl is the control torque applied to the left wheel; tr is
the control torque applied to the right wheel; u^ i is the estimation of ui , i ¼ 1, 2 (cf. 52); Y and p are given by (50) and
(51); p^ is the estimation of the dynamical parameters of p
vector; Si (i ¼ 1,2) matrices are given by (52), V1 is
given by (44) and satisfies the assumption 1; S^ is the
Jacobian matrix (cf 8) and it depends on estimated kinematic parameters u^ i for i ¼ 1,2; h~ is given by
h~ ¼ hc À h ¼ [h˜ 1 h˜ 2 ]T

Property 2.b: The kinematical model (8) appears as it
follows:


(53)

(57)

where hc is given by (48) and h is the dynamical velocity
vector of model (9); k d, C and Li are simmetric and positive
definite matrices with appropriate dimensions.
In this way h~ converges to zero asymptotically [6].
Remark 6: Here, the adaptive fuzzy kinematic control (48)
has been converted into adaptive torque control law (56).
Therefore the torque control has been selected in (9)
so that the nonholonomic car exhibits the desired behaviour
thus justifying the specific choice of the velocity h. Also,
by using the kinematic model (8), the dynamic velocity
may be converted into actual position p. The measurement
of the actual position and orientation using encoders
only can be affected by Gaussian noises. The noises
above cause non parametric uncertainties in the kinematic
model of the car (cfr. 13, 18). Therefore an EKF in the
feedback of the fuzzy control system above has to be
inserted, to fuse data provided from more sensors and to
obtain good estimations of the position and orientation of
the car.
6

EKF in feedback of the adaptive fuzzy control

From output data provided by encoders, an information on
the actual feedback position signal q for the adaptive

control system of the previous section may be obtained suitably. However the information above is corrupted by noises
of the encoders. Therefore an EKF has to be introduced in
the adaptive control system. From data of more sensors
(i.e. data fusion with encoders, vector compass and position
1317


Now consider the following incremental update:
^
 þ K(k)(Dy(k) À Hg (k)Dj(k))

Dj(k)
¼ Dj(k)
j

(61)

where K(k) [ <3Â1 is the Kalman’s gain and Hgj (k) is given
by (21). Adding jà (k) on both sides of (61) and considering

jà (k) ¼ j(k)
lead to
^
 þ K(k)(y(k) À g(j(k))
j(k)
¼ j(k)

(62)

Now we seek the optimal Kalman’s gain

(
)
3
X
ˆ
var[(ji (k) À j i (k))]
Ko (k) ¼ arg min
K(k)

i¼1

After some computations it yields
Ko (k) ¼ F(k)Hgj (k)(Hgj (k)F(k)(Hgj (k))T þ R)À1
Po (k) ¼ (I À Ko (k)Hgj (k))F(k)

(63)

The steps of the Kalman’s algorithm for the sensors data
fusion are the following
† evaluate the gain factor by using the first equation of
(63);
† solve the equation of measurement update (62);
† update the error variance by using the second equation of
(63);
† prediction of the future state by using (59);
† prediction of the covariance error,
where
F(k þ 1) ¼ A(k)P(k)AT (k) þ Q

(64)


† update the time and repeat the steps.
^
After the estimation of j(k),
applying the inverse of the
transformation (11) and using a ‘digital to analogic converter’ with ‘zero order hold’ lead to analogical information q^
for generating the motion errors (23) and for applying the
adaptive control laws (48) and (56).
Fig. 3 Block schemes of the fuzzy adaptive control
a Block scheme without EKF
b Block scheme with EKF

7

sensor) the filter above estimates a filtered position signal
for the feedback. Consider the sample state model (13) in
j coordinates to elaborate the encoders data. Furthermore,
consider the output equations Dy(k) of (20) to have position
and orientation measurements from vector compass and
^
sensor position. We desire estimates j(k)
of the state j(k)
based on observation of the output y(k) alone. The
Kalman’s filtering task is to determine a Kalman gain K
to minimize the variance of the ‘a posteriori’ estimation
error, which is denoted D(k)
T
^
^
D(k) ¼ E{(j(k) À j(k))(j(k)

À j(k))
}

Simulation tests

Simulation tests are performed in Matlab environment where
the kinematic and dynamic models (cfr. 8, 9) with the fuzzy

(58)


Let us consider ‘a priori’ state estimate j(k)
so that

^ À 1) þ x(k À 1)
j(k)
¼ A(k À 1)j(k

(59)

with error variance given by
T


}
F(k) ¼ E{(j(k) À j(k))(j(k)
À j(k))

1318


(60)

Fig. 4 Reference non-holonomic motion (solid line);motion of
the car (dashed line)
IET Control Theory Appl., Vol. 1, No. 5, September 2007


Fig. 5 Motion errors
a,b Longitudinal and lateral motion error
c,d Steady state of the longitudinal and lateral motion error
e, f Longitudinal and lateral motion errors using gains given by (66) and fuzzy approach

adaptive control laws (48) and (56) have been implemented
suitably. The EKF algorithm has been implemented using C
language with sequential acquisition and filtering of the
informations provided by proprioceptive sensors, that is
encoders, position sensors and vector compass which have
been simulated using Matlab Simulink.
IET Control Theory Appl., Vol. 1, No. 5, September 2007

Fig. 3 shows the block schemes of the fuzzy adaptive
control systems without and with EKF, which have been
projected in this paper.
While in case of fuzzy adaptive control without EKF,
the feedback signal is q (cf. 7), in case of the same
control strategy with EKF, the feedback one is q^ (i.e. an
1319


estimation of the position of the car as it is explained in

Section 6).
The simulation results were obtained using the
LABMATE platform nominal parameters, that is.
b ¼ 0:75 m;
r ¼ 0:15 m;
mw ¼ 1 Kg;

d ¼ 0:3 m;
mc ¼ 30 Kg
Ic ¼ 15:6 Kg Á m2 ;

Iw ¼ 0:005 Kg Á m2 ;

Im ¼ 0:0025 Kg Á m2 :

The parameters of the adaptive laws (41) and (56) are

g ¼ 0:005; d ¼ 20:75; Kd ¼ 5 Ã I2 ; c ¼ 5 Ã I3
where I2 and I3 are identity matrices (2 Â 2) and (3 Â 3)
respectively. In case of adaptive kinematic control without
fuzzy, the parameters of the velocity control law (24) are
chosen as
kx ¼ ky ¼ kf ¼ 5

Fig. 6 Control torques

(65)

The initial conditions for the reference and car positions
are the following

(xr (0), yr (0), fr (0)) ¼ (0, 0, 3:48 rad)
(x(0), y(0), f(0)) ¼ ( À 30, 20, 5:68 rad)
The sample time for the EKF is T ¼ 1024 s. The initial
values for the EKF parameters are
F(0) ¼ diag(0:9 0:7 0:7);
R ¼ diag(0:00003 0:00003 0:00003);
Q ¼ diag(0:1 0:1 0:1)
We compare for cases
1. adaptive dynamic and kinematic motion control without
fuzzy system and without EKF [6], where the parameters of
the velocity control are constant (cf. 65) (see Fig. 3a, where
one eliminates the fuzzy inference system block);
2. adaptive dynamic and kinematic motion control without
fuzzy system and with EKF (see Fig. 3b, where one eliminates the fuzzy inference system block and uses constants
parameters given by 65);
3. adaptive dynamic and kinematic motion control with
fuzzy system and without EKF, where the parameters of
the velocity control depend on the fuzzy system described
in Section 4.1 (see Fig. 3a);
4. adaptive dynamic and kinematic motion control with
fuzzy system and with EKF (see Fig. 3b).

and d show the same errors, where the quality of the steady
state is evident. Fig. 5e shows the motion errors in case of
adaptive control with application of (66) and in case of our
fuzzy adaptive approach.
In Figs. 5a and b one considers the motion error from 0
to 8 s for showing in a better way the initial transient
and the improvement of the adaptive fuzzy control with
respect to the adaptive control without fuzzy [6]. By

comparing the performances of the control systems with
and without EKF, one observes that, both in case of
adaptive fuzzy control and in case of adaptive control
without fuzzy, the EKF filters the measurement noises of
the longitudinal motion error in a good way. By comparing
the performances of the control system with and without
fuzzy inference system, both with EKF and without, one
notes a lower response time in case of adaptive control
with fuzzy system than in case of adaptive control without
fuzzy. The EKF improves also the steady state performances.
Figs. 5e and f show the better performances of the initial transient in case of our fuzzy approach than in case of adaptive
control using the gains (66). Fig. 6 shows the control
torques (56) in case of fuzzy adaptive control with EKF.
Consider outside disturbances violating the nonholonomic constraints. The following simulation tests
show the performances of the fuzzy adaptive motion
control system with and without EKF. The disturbance
above can be caused by the impact of the wheeled car with
the external environment, as for example the road conditions
and the contact between the wheels and the ground where the

Note that, if the components of the vector k(e) (cf. 25) are
linear functions, the properties which assure the stability are
verified. Therefore one may consider the following case
kT (e) ¼ [k1 abs(ex ) k2 abs(ey ) k3 abs(ef )]

(66)

where
k1 ¼ k2 ¼ k3 ¼ 5
We compare the performances of the feedback adaptive

controller where the gains are given by (66) with the
fuzzy adaptive approach of our paper.
Fig. 4 shows the reference and the actual motions of the car
in case of our algorithm (i.e. case 4). The reference trajectory
is feasible, that is it does not violate the non-holonomic constraints. Figs. 5a and b show the longitudinal and lateral
motion errors of the car in cases 1–4 respectively. Figs. 5c
1320

Fig. 7 Lateral motion error with perturbations
IET Control Theory Appl., Vol. 1, No. 5, September 2007


underactuated cars. We have presented merging of adaptive
control laws and fuzzy systems. The adaptive control laws
solve the problems of kinematical and dynamical uncertainties of the parameters of the car, whereas the fuzzy systems
guarantee robustness and lower response time of the motion
errors than adaptive control without fuzzy. Based on the
Lyapunov’s method and on the properties of the fuzzy
maps, the asymptotical stability of the motion errors has
been proved. However, the actual position and orientation
of the car are corrupted by sensorial noises of the encoders
positioned in the right and left wheels. The noises above are
responsible for non-parametric uncertainties in the model of
the car. Therefore we have inserted an EKF in the feedback
of the fuzzy adaptive control system for filtering the data.
We have shown that, based on data fusion of more proprioceptive measurement sensors, the EKF estimates the filtered
position of the car in a very good way. The presence of the
EKF improves the dynamic of the fuzzy adaptive control
system in terms of the lateral and longitudinal motion
errors and of the parametric adaptation.


9

Fig. 8 Dynamical parameters adaptation
a adaptation without EKF
b adaptation with EKF

car moves. So the simulation tests consist of generating the
slipping of the wheels by a step disturbance of the actual
lateral position y for every 5 s (cf. Fig. 7). In particular we
show the lateral error from 0 to 15 s.
The EKF filters the sensorial noises in a good way, but it
does not filter the disturbances perturbing the nonholonomic constraints. In any way the disturbances above
are compensated by the closed loop fuzzy adaptive
control only.
Fig. 8 shows the adaptation of the dynamical parameters
p^ (cf. 56) in case of fuzzy adaptive control without and with
EKF.
Note that the steady state values of the parameters are
constants in presence of EKF (see Fig. 8b), whereas large
discontinuities occur in absence of EKF (see Fig. 8a).
Therefore the filter improves the performance of the
motion control system.
8

Conclusions

In this paper we have considered a direct fuzzy adaptive
EKF motion control for ground non-holonomic and


IET Control Theory Appl., Vol. 1, No. 5, September 2007

References

1 Bloch, A.M.: ‘Nonholonomic mechanics and control’ (Springer,
New York, 2003)
2 Aicardi, M., Casalino, G., Bicchi, A., and Balestrino, A.: ‘Closed loop
steering of unicycle-like vehicles via Lyapunov techniques’, IEEE
Robot. Autom. Mag., 1995, 2, pp. 27– 35
3 Fierro, R., and Lewis, F.L.: ‘Control of a Nonholomonic mobile
robots: backstepping kinematics into dynamics’, Robot. Syst., 1997,
14, (3), pp. 149– 163
4 Jiang, Z.P., and Nijmeijer, H.: ‘Tracking control of mobile robots:
A case study in backstepping’, Automatica, 1997, 33, (7),
pp. 1393–1399
5 Dong, W., Liang, X., and Huo, W.: ‘Tracking control of uncertain
dynamic nonholonomic systems and its application to wheeled
mobile robots’, IEEE Trans. Robot. Autom., 2000, 16, (6),
pp. 870–874
6 Fukao, T., Nakagawa, H., and Adachi, N.: ‘Adaptive tracking control
of a nonholonomic mobile robot’, IEEE Trans. Robot. Autom., 2000,
16, (5), pp. 609– 615
7 Mnif, F., and Touati, F.: ‘An adaptive control scheme for
nonholonomic mobile robot with parametric uncertainty’, Int. Adv.
Robot. Syst., 2005, 2, (1), pp. 59–63
8 Fabrizi, E., Oriolo, G., Panzieri, S., and Ulivi, G.: ‘A KF based
localization algorithm for nonholonomic mobile robot’. Proc. 6th
IEEE Mediterranean Conf. on Control and Systems, Alghero, Italy,
1998, pp. 130–135
9 Jetto, L., Longhi, S., and Venturini, G.: ‘Development and

experimental validation of an adaptive extended Kalman Filter for
the localization of mobile robots’, IEEE Trans. Robot. Autom.,
1999, 15, (2), pp. 219 –229
10 Kwon, S.J.: ‘Robust Kalman filtering with perturbation estimation
process for uncertain systems’, IEE Control Theory Appl., 2006,
153, (5), pp. 600–606
11 Coelho, P., and Nunes, U.: ‘Path following control of mobile robots in
presence of uncertainties’, IEEE Trans. Robot., 2005, 21, pp. 252 –261
12 Bentalba, S., Hajjajj, A., and Rachid, A.: ‘Fuzzy control of a mobile
robot: a new approach’. Proc. IEEE Conf. on Control Applications,
1997, pp. 69–72
13 Lam, K.H., Lee, H.T., Leung, F.H.F., and Tam, P.K.S.: ‘Fuzzy model
reference control of wheeled mobile robots’. Proc. 27th IEEE Conf. on
Industrial Electronics society, IECON, 2001, pp. 570– 573
14 Raimondi, F.M., and Melluso, M.: ‘A new fuzzy robust dynamic
controller for autonomous vehicles with nonholonomic constraints’,
Robot. Auton. Syst., 2005, 2, (2–3), pp. 115– 131
15 Raimondi, F.M., Melluso, M., and Ciancimino, L.S.: ‘A new
kinematic and dynamic direct adaptive fuzzy control of constrained
mobile wheeled vehicles’. Proc. IEEE on ETFA Conf., Catania,
Italy, 2005, vol. 2, pp. 181 –188
16 Murray, R.M., and Sastry, S.S.: ‘Nonholonomic motion planning:
Steering using sinusoids’, IEEE Trans. Autom. Control., 1993, 38,
(5), pp. 700–716

1321




×