Beruflich Dokumente
Kultur Dokumente
Experimentation
Divisin de F
o
sica Aplicada, CICESE, Carretera TijuanaEnsenada km 107
Ensenada, B. C., 22800, MEXICO
email: rkelly@cicese.mx
Abstract: this paper addresses the tracking control of robot manipulators for the case when the
dynamics parameters are unknown. To this end,
we resort to the important property of fuzzy
systems as universal approximators. Via Lyapunov theory we prove, under the fact that SISO
functions approximation error can be achieved
with any prespecied degree of accuracy, that
the closedloop tracking errors are ultimately
bounded. We extend the single-input-singleoutput indirect adaptive fuzzy approach previously introduced in the literature to the more
general case of multi-input-multi-output fuzzy
control for nonlinear robot manipulators. The
exposed theory is validated experimentally on a
two degrees of freedom robot arm.
KeyWords: fuzzy control, adaptive control,
robot control, stability analysis, experimental
test.
Introduction
A control technique that has proved a very nice performance in the tracking control problem of robot manipulators is the computed torque control (inverse dynamics
approach) [20]; this control scheme linearizes the system and applies a linear PD control. However, the most
accuracy knowledge of the model of the plant is required
in order to operate properly. If the dynamics of the robot are well known, the computer torque control can
be implemented and even improved with the addition
of fuzzy systems that tune PD gains or compute the PD
control contribution as it is shown in [1], [3] and [7].
Nevertheless, not always the robot dynamics are well
known or they may change during a task execution.
Therefore adaptive fuzzy techniques have been introduced to the control of robot manipulators so as to estimate the parameters that describe the system dynamics and hereby compute the control law. Adaptive fuzzy
controls can be classied in: direct, when the fuzzy controller is a single fuzzy system constructed (initially)
from the control knowledge; and indirect, when the
fuzzy controller comprises a number of fuzzy systems
constructed (initially) from the plant knowledge [8]. A
very comprehensive study is shown in [9], where adaptive fuzzy control was both simulated and implemented
in simple non linear systems.
Some direct adaptive fuzzy approaches have been applied to the control of robot manipulators in [8],[10],
[11], and with cubic feedback in [12]. Indirect adaptive
fuzzy approaches are developed in [8], [13] and with genetic algorithms in [14]. However, none of these works
were experimentally validated.
The indirect adaptive fuzzy control proposed in this paper is characterized by a simplied design based on clas-
sical computed torque control, identifying the robot dynamics through adaptive fuzzy systems. The proposed
stability analysis proves and guarantees via Lyapunov
theory that position errors are uniformly bounded and
ultimately bounded.
The practical feasibility of the proposed controller is
shown in this paper by means of experiments on a two
degrees of freedom directdrive vertical robot arm. The
results show that the experimental response of the classical computed torque control is similar to that of the
adaptive fuzzy control, standing out the latter because
it does not require a knowledge of the robot dynamics. However, if the knowledge of the initial conditions
is available, this would help to have a faster position
tracking convergence.
2 Dynamics of robot
manipulators and control
problem formulation
3
The dynamics of a serial n-link robot can be written as
[20]:
M (q) + C(q, q)q + g(q) + f v (q) =
q
(2.1)
= M (q)[ d + Kv + Kp q ] + C(q, q)q + f v (q) + g(q)
q
q
where the joint position and velocity error vectors are
= f (x) + g(x)u
= x
y, u IR,
(3.2)
x IRn
q = F (q, q) + G(q, q)
(3.3)
f1 (q, q)
(q, q) =
.
Where F
and G(q, q) =
.
(q, q)
fn
.
.
..
.
.
3.1
Fuzzy system
fj (x| f )
p1
l1 =1
pn
ln =1
p1
l1 =1
pn
ln =1
2
i=1
yf1 ln
l
2
i=1
Ali (xi )
i
Ali (xi )
i
for j = 1, . . . n
gjk (x|g )
q1
l1 =1
q1
l1 =1
(3.9)
qn
ln =1
yg1 ln
l
qn
ln =1
2
i=1
2
i=1
B li (xi )
i
B li (xi )
i
for j = 1, . . . n, k = 1, . . . n
(3.10)
.
i=1 pi x1 , that is
.
IR
with pi = l1 ln ,
f =
.
l1 ...ln
yf
f (x) =
N1
i1 =1
N1
i1 =1
N2
i2 =1
N2
i2 =1
(3.6)
.
.
that is g =
with ri = l1 ln , so we can
.
yg1 ...ln
l
rewrite ( 3.9) and ( 3.10) as
such that
(3.7)
g(x)
x1
+...+
fj (x|f )
h1 +
g(x)
xn
g(x)
x2
hn
= T (x)
f
(3.11)
gjk (x|g )
T (x)
g
(3.12)
2
i=1
p1
l1 =1
h2
l1 ln (x) =
q1
l1 =1
pi 1, whose
pn
ln =1
2
i=1
n
i=1
Ali (xi )
2
i=1
(3.13)
Ali (xi )
i
n
i=1 qi
(3.8)
1, whose el-
B li (xi )
qn
ln =1
2
i=1
(3.14)
B li (xi )
i
3.2
Stability analysis
= Kv Kp q
q
(q, q|f ) + G(q, q|g ) F (q, q) G(q, q)
+F
(3.17)
T
Then, introducing the robot variables, the fuzzy approximators can be written in a compact form as
F (q, q| f )
G(q, q|g )1
T (q, q)
f
(3.15)
T (q, q),
g
(3.16)
..
meters vectors and f = 0
.
0
0
0 f2
1
.
IRnpi ,
.
g11
.
g = .
.
gn1
1
.
(q, q) = .
.
..
.
g1n
.
.
.
gnn
f
Dene = 1 2 n
= [F (q, q| )
q| ) G(q, q)] as the minimum
f
g
approximation error where F (q, q| ) and G(q, q| )
G(q, q) respectively between all the fuzzy approximators of the form ( 3.9) y ( 3.10); then ( 3.17) can be
equivalently rewritten as
d
dt
:= e = Ae + B
(3.18)
where
A=
0
Kp
I
Kv
IR2n2n
(3.19)
IRnri nri ,
IRnri .
B=
0
l1 = 2
NB
1
6
11
16
21
x2 \ x1
NB
NS
ZE
PS
PB
l2 = 2
l2 = 1
l2 = 0
l2 = 1
l2 = 2
l1 = 1
NS
2
7
12
17
22
V ( , , f , g )
qq
1
2
q
n
+
i=1
n
qT
l1 = 0
ZE
3
8
13
18
23
q q
V ( , , f , g ) =
1
[ f i ]T [ fi i ]
f
f
2i i
n
+
i=1 j=1
1
2
qT
n
+
i=1
n
1
[ gij ij ]T [ gij ij ]
g
g
2ij
1
i
n
+
i=1 j=1
V ( , , f , g )
1
2
+
q
T
T
q
1
2
n
+
i=1
n
q
T
qT
+
i=1 j=1
P =
Kp + Kv
I
I
I
fi i
f
1
ij
( qi + qi )i
+
i=1
fi + i ( qi + qi )i (q, q)
gij ij
g
(3.22)
fi
g
ij
= i ( qi + qi ) i (q, q)
i ) ij (q, q)j
= ij ( qi + q
(3.23)
(3.24)
with i = 1, 2 . . . n and j = 1, 2 . . . n.
When accomplishing the previous update laws, the time
derivative of the Lyapunov function is reduced to
=
1
2
T
q
qT
( qi + qi )i
(3.25)
i=1
(3.20)
Inspired from [21] we take P = P
q q
V ( , , f , g )
[g ij ]T gij
g
ij ij
q
T
gij + ij ( qi + qi ) ij (q, q )j
[ f i ]T fi
f
i i
n
l1 = 2
PB
5
10
15
20
25
l1 = 1
PS
4
9
14
19
24
1
[min {Q} 1]
2
> 0 as
(3.21)
1
2
1
2
qT
T
q
1
[min {Q} 1]
2
1
2
(3.26)
system (
< ). Hence, by stability theory of
q
perturbed systems is possible to conclude that
q
f
are uniformly bounded, and
is uniand
g
q
form ultimately bounded.
Furthermore, integrating both sides of ( 3.26) and selecting [min {Q}] > 1 we have
t
0
reference of torque signal. The control algorithm is executed at 2.5 msec sampling period in a control board
(based on a DS1103 32/64bit oating point DSP board
running with a 400Mhz microprocessor) mounted on a
PC host computer.
2
V (0) +
min {Q} 1
t
0
2
2
V (0) +
min {Q} 1
min {Q} 1
d
t
0
is also square
q
is also bounded;
q
then, from Barbalat Lemma we can conclude that
q
0
limt
=
IR2n .
0
q
So we have proven the following
gij
q
is uniformly ultimately
q
bounded. Furthermore, if is square integrable, then
q
0
limt
=
IR2n .
0
Experimental evaluation
4.1
C(q , q) =
g(q) = 9.81
f v (q) =
,
,
Experimental setup
In order to verify the eectiveness of the proposed adaptive fuzzy control, an extensive number of realtime
control experiments on a well identied directdrive robot arm were carried out. The experimental robot is a
two axis directdrive robot arm built at CICESE Research Center [22], [23]. The arm moves in the vertical
plane as shown in Figure 4.1. The actuators are direct
drive brushless motors operated in torque mode, so they
act as torque source and accept an analog voltage as a
|1 | 1max
150 [Nm],
2max
15 [Nm].
|2 |
4.2
Design parameters
4.3
F (q, q| f )
f1 (q, q)
f2 (q, q)
G(q, q|g )1
T11 11 (q, q)
g
T21 21 (q, q)
g
T1 1 (q, q)
f
T2 2 (q, q)
f
T12 12 (q, q)
g
T22 22 (q, q)
g
In all cases the input membership functions are symmetrical with respect to zero. This is shown in Figures
3.1 and 3.2, where pxj = {p2j , p1j , p0j , p1j , p2j } is
the set of the bounds of fuzzy set support (also called
fuzzy partition of the universe of discourse) which denes the input membership functions. The nal partitions of the universes of discourse were (in agreement
with the used notation pA = {p2 , p1 , p0 , p1 , p2 }):
For q:
pq1 = {60, 30, 0, 30, 60} [degrees]
pq2 = {60, 30, 0, 30, 60} [degrees].
For q:
pq1 = {180, 60, 0, 60, 180} [degrees/s]
pq2 = {180, 60, 0, 60, 180} [degrees/s].
fuzzy sets.
It can be seen that, for any input, the sum of the membership values of two adjacent fuzzy sets is one, and the
membership value for any xj > p2j , xj < p2j is equal
to one. Also, as we can see from Figure 3.1, only four
rules are red in a given instant. Since both inputs have
5 fuzzy sets (N1 = 5 and N2 = 5), then the number of
rules is M = 25 and it involves n = 25 product terms;
every of these terms have its corresponding singleton
membership function whose center is given by an adaptation parameter . This fact converts the fuzzy system
into adaptive fuzzy system.
Desired task
q d (t) =
[rad]
(4.1)
and was inspired from the structure of desired trajectories used by other authors for experimental evaluation
of control algorithms [24, 25].
In our application, the rst term of ( 4.1) was chosen
to exhibit a motion prole without abrupt changes in
position, velocity and acceleration but at the same time
to exploit the arm in its fastest motion without invading
the actuators saturating zone.
In expression ( 4.1), 1 and 2 represent the frequency
of desired trajectory for the shoulder and elbow joints
respectively. In our experimental tests, we use 1 = 7.5
rad/s and 2 = 1.75 rad/s.
To quantify the control performance, we use the root
mean square average of tracking error (based on the L2
1
T t0
q T q dt
(4.2)
t0
4.4
Experimental results
Position errors
q1
Applied torques
qd1
60
40
20
20
0.5
0
0
1
0
10
t [seg]
20
0
10
t [seg]
10
10
10
10
10
t [seg]
1
q2
150
6
qd2
q2 [deg]
0.5
100
50
0
2 [Nm]
200
q2 [deg]
40
1 [Nm]
q1 [deg]
q1 [deg]
0.5
2
0
2
0.5
50
1
0
10
t [seg]
10
t [seg]
t [seg]
q1
Applied torques
qd1
60
20
20
0.5
0
0
1
0
10
t [seg]
10
2
q2
6
qd2
100
50
0
2
0
2
50
0
t [seg]
2 [Nm]
150
20
0
t [seg]
q2 [deg]
200
q2 [deg]
40
1 [Nm]
q1 [deg]
q1 [deg]
0.5
40
4
2
2
0
10
t [seg]
10
t [seg]
t [seg]
f2 , f2
f1 , f1
1
seg2
f1
f1
50
0
f2
40
20
0
f2
20
0
10
t [seg]
0.2
g11
1
2.3
1
g11
2.2
2.1
0
t [seg]
10
10
0.1
0.1024
0.15
1
kgm2
2.4
g12
1
1
g12
1
g22 , g22
1
1
kgm2
2.5
1
g12 , g12
1
1
g11 , g11
1
1
kgm2
2.6
t [seg]
0.05
0
0
10
0.1022
0.102
0.1018
g22
1
1
g22
0.1016
0.1014
0
t [seg]
t [seg]
0.5
L2 [ ]
q
0.3421
0.4272
0.3421
0.3
0.2
0.1
0
CTC
AFC
Concluding remarks of
experiments
Conclusions
In this paper an indirect adaptive fuzzy control for robot manipulators was proposed. To this end we extended the single input single output indirect adaptive fuzzy approach to the general case of multiinput
multioutput systems. Via Lyapunov theory and stability theory of perturbed systems, we proved that the
states of the closed loop system, that is, the velocity and
position errors and the parameters of the fuzzy system
are bounded and furthermore the velocity and position
errors are uniformly and ultimately bounded.
The controller was experimentally validated on a 2 dof
robot manipulator achieving excellent results. A performance comparison was made between the proposed
adaptive fuzzy control and the classic computed torque
control, resulting with a similar response but our proposed adaptive fuzzy control has the advantage of not
requiring the knowledge of any parameter of the robot
model in contrast with the computed torque control
which require the overall knowledge of the dynamics
robot.
ACKNOWLEDGEMENT
Work partially supported by DGEST and CONACyT
(grant 45826).
REFERENCES
0.8
Norm or errors [deg]
4.5
Controller
CTC
AFC
0.4272
0.4
joint 1
joint 2
0.6497
0.6
0.4361
0.4
0.2480
0.2
0
CTC
0.2046
AFC