You are on page 1of 6

Output Feedback Adaptive Decentralized Control of

Cooperative Robots
Nasser Sadati and Ehsan Elhamifar
Electrical Engineering Department, Sharif University of Technology, Tehran, Iran
sadati@sina.sharif.edu , elhamifar@ee.sharif.edu
AbstractIn this paper a decentralized control scheme for
multiple cooperative manipulators is developed to achieve the
desired performance in motion and force tracking, in the
presence of uncertainties in dynamic equations of the robots.
To eliminate the effects of uncertainties in the closed-loop
performance, a new adaptive control algorithm is proposed.
Based on the Lyapunov stability method, it is proved that all
the error signals in the closed-loop system which is compose of
a robot, an observer and a controller asymptotically converge
to zero. Also to avoid the difficulties of using velocity sensors
within the cooperative system, an output feedback control
scheme with a linear observer is used.

I. INTRODUCTION
The problem of controlling cooperative robots has
attracted the attention of many researchers during the last
decade [1]-[7]. This is mostly because of the development of
industries that utilize robots for complicated tasks such as
space and underwater robotic applications, handling and
transforming objects and assembly applications in electronic
industries.
There are some differences between the control of a
single robot and the cooperative ones that cause
conventional centralized algorithms can not be efficient
from practical point of view because of the system
complexity and time consuming calculations. So we seek
some efficient methods such as decentralized control
algorithms [2]-[5], [8] that can reduce these problems.
For control of robot manipulators it is necessary to use
the information of sensors mounted on the robots. For
position control, the encoders which have an acceptable
range of accuracy are used. But for the velocity
measurement, tachometers are used that are not very
accurate because of the presence of noise in the measured
signal which is amplified by increasing the control feedback
gains. Also using velocity sensors increases the weight of
each link that is undesirable from practical points of view.
So we seek efficient methods like utilizing velocity
observers that guarantee the velocity estimation without
error by using only the position information [10], [11].
Most of the works in the control of cooperative robots
that have used the output feedback method are based on the
exact knowledge of the dynamic equations of the robots [3],
[5]. On the other hand, decentralized control algorithms that
have considered uncertainties in the dynamic equations of
robots have proposed control inputs that are based on the

0-7803-9419-4/05/$20.00 2005 IEEE

knowledge of the velocity and sometimes the acceleration


terms of the robots [1], [2].
In this paper an adaptive decentralized control algorithm
for cooperative manipulators without velocity measurement
and by the assumption of uncertainties in the dynamic
equations of the robots is proposed. For this purpose, a
control input with an adaptive term in conjunction with a
linear observer in the controller structure is used to estimate
the values of velocities. Finally, based on the Lyapunov
stability method, the stability of the closed-loop system with
the proposed control input is investigated.
The structure of this paper is as follows. In section II, the
dynamic equations and some properties of the robot
structures are introduced. In section III by introducing
observers to estimate the velocities of robots, a control input
for each robot using its local information is proposed. In
section IV the Lyapunov based stability theorem is
investigated. In section V the performance of the proposed
algorithm by simulation of a cooperative robotic system is
shown. Finally, the paper concludes in section VI.

II. PROBLEM STATEMENT


Consider a system of m cooperative robots holding a
common object. The goal of the system is to 1) move the
object center of mass along the desired trajectory and 2)
exert the predefined force on the object at the contact points,
[9].
The dynamics of robot i can be expressed as:

M i (qi ) q&&i + Ci (qi , q&i ) q&i + D i q&i + Gi (qi ) J iT i = i

(1)
where q i is the vector of generalized coordinates of robot i
with dimension ni , M i (.) is the symmetric positive definite
inertia matrix, C i (.) is the Coriolis/centrifugal matrix and
Di is the positive semi-definite matrix relating to the joint
viscous friction coefficients of robot i . Also Gi (.)
represents the gravity vector, J i is the Jacobian matrix, i
is the force exerted on the end-effector of robot i by the
object and i is the vector of torque exerted on the joints of
robot i .
Assumption 1: The Jacobian matrix of robot i , J i , is
full rank; rank ( J i ) = Oi , where Oi is the number of
constraints available at the contact point of robot i with the
object. Also we assume that n i > O i .

Assumption 2: The cooperation model is holonomic. In


other words, the constraints at the contact between the object
and each robot are described by Oi dimensional equations
i (q i ) = 0
(2)
J i = i ( q i )

; i = 1,2,..., m

pi =

J (q ) q& d = 0
i

(.) is used as the estimate of (.) . Also it should be noted that


~

Also the constraint velocity is defined as p& i = J i (q i ) q& i . So


according to (2), we have
p& i = 0

of robot i and must satisfy (2), q~i is the tracking error and
finally z i is the observation error. Throughout this paper,

(.) = (.) (.) .


The auxiliary variables can also be defined as:
q& ri = Qi (q i ) (q& di i (q i q di ))
+ J i + (q i ) ( p& di i p i + i Fi )
s i = q& i q& ri = Qi (q i ) (q~& i + i q~i i z i )

(3)

where p i is the constraint position for the i th robot.


For decoupling the position from force control, the joint
space orthogonalization is used [3]. By defining
Ji+ = Ji

(J

Ji

T 1

Qi (q i ) = ( I J i + J i )

(4)

we can write q& i as


+
q& i = Qi (q i ) q& i + J i (q i ) p& i

(5)
Now, before going to the next section, some properties
of the robot structures are described.
Property1: M i (q i ) has the bounded minimum and
maximum eigenvalues 0 < i

i .

Throughout this note we use (.) for minimum eigenvalue


and (.) for maximum eigenvalue of (.).
Property2: Using the Christoffel symbols, the matrix
M& i (q i ) 2 C i (q i , q& i ) is skew-symmetric.
Property3: C i (q i , a) b = C i (q i , b) a , where a and b are
ni dimensional arbitrary vectors.
Property4:

C i (q i , a)

ki a

where 0 < k i <

and a is the arbitrary vector of dimension ni .


Property5: According to the property of linearity in the
parameters we can write
M i (qi ) q&&i + Ci (qi , q&i ) q&i + Di q&i + Gi (qi ) = Yi (qi , q&i , q&&i ) i
where

Yi

is the regressor matrix and i

(6)
is the

p i dimensional vector of parameters for robot i .

III. DECENTRALIZED CONTROL ALGORITHM


First, it is necessary to define the following variables:
pi = pi p di
i = i di
q~i = qi q di

(7)
(8)
(9)
zi = qi qi
(10)
where p di is the desired constraint position and must satisfy
(3), di is the desired force applied to the end-effector of
robot i , q di is the desired bounded trajectory of the joints

+ J i + (q i ) ( p& i + i p i i Fi )
q& oi = q& i i z i
ri = q& i q& oi = z& i + i z i

(11)

(12)

(13)
(14)
where i and i are diagonal positive definite matrices
with appropriate dimensions, and i is a positive constant.
Also
Fi =

( ) d
i

(15)
Now, to continue the mathematical calculations, the
derivative of (11) must be obtained
q&&ri = Q& i (q i , q& i )(q& di i (q i q di ))
0

+ J& i + (q i , q& i ) ( p& di i p i + i Fi )


+ Qi (q i ) (q&&di i (q& i q& di ))
+
+ J i (q i )( &p& di i ( p& i p& di ) + i i )

(16)

According to the fact that q& i is not measurable, we can not


obtain q&&ri from (16), so we have to use the approximation
of it which is given by
&
q&& = Q (q , q& )(q& (q q ))
ri

&
+ J

+
i

di

di

(q i , q& i ) ( p& di i p i + i Fi )

+ Qi (q i ) (q&&di i (q& i q& di ))


+
+ J i (q i )( &p& di i ( J i (q i ) q& oi p& di ) + i i ) (17)

&
where A (q i , q& i ) is defined as
ak j

&
A (q i , q& i ) =
q& oi
q i

So the dynamics equation of robot i can be written as


M i (qi ) s&i + C i (q i , q& i ) s i = M i (qi )q&&ri Ci (q i , q& i )q& ri

Di (s i + q& ri ) Gi (q i ) + J i T i + i
Also equations (16) and (17) can be related by
q&&ri = q&&ri + ei (ri )
&
ei (ri ) = Qi (q i , ri ) (q& di i (q i q di ))
&
J i + (q i , ri )( p& di i p i + i Fi )
+ i J i + (q i ) J i (q i )ri

(18)
(19)

(20)

&
&
where A (q i , ri ) = A& (q i , q& i ) A (q i , q& i ) .
Assumption 3: The inertia matrix of each robot is
perfectly known, but the matrices C i (.) , Di and Gi (.) are
not exactly available.
Now, using (19) and the Property 5, we can write
M i (qi ) s&i + Ci (qi , q&i ) si = M i (qi ) q&&ri Yi (vi ) i Ci (qi , q&ri ) si
+ M i (qi ) ei (ri ) Di si + JiT i + i

(21)

ri

v i = [ q iT

(22)
is a positive

, q& riT ]T .

definite matrix. More over


By using q& oi q& ri = s i ri and (21), we have
M i (q i ) s&i + C i (q i , q& i ) s i = M i (q i ) ei (ri ) Di s i
C (q , q& ) s + Y (v ) Y (v )
i

ri

(q i ) J i (q i ) ( i + k f i Fi )
T

(25)
where i is a positive constant. By substituting (19) in (25)
and taking the first derivative of (24) we obtain
s&i = r&i + i ri + ei (ri )
+ M i 1 (q i ) J i T (q i )(i + k f i Fi )

(26)
Now by multiplying M i (q i ) by (26) and using (23) and the
property 3, after some manipulations we obtain
M i (q i ) r&i = i M i (q i ) ri + K i ri C i (q i , q& i ) ri
C i (q i , s i + 2q ri ) s i + C i (q i , s i + q ri ) ri
D s K s + Y (v ) Y (v )
i i

i i

(27)

Also by adding and subtracting the term Yi (v i ) i to the


right hand side of (23) and (27), we can get
M i (q i ) s&i = C i (q i , q i ) s i C i (q i , q ri ) Di s i
+ J iT (q i ) ( i + k f i Fi ) K i ( s i ri )
~
+ M i (q i ) ei (ri ) + Yi (v i ) i + Yi (v~i ) i

(28)

and
M i (q i ) r&i = i M i (q i ) ri + K i ri C i (q i , q& i ) ri
C i (q i , s i + 2q ri ) s i + C i (q i , s i + q ri ) ri
~
D s K s + Y (v ) Y (v~ )
i i

i i

where Yi (v~i ) = Yi (v i ) Yi (v i ) .

xi = [s i T

ri T

Fi T ]

(30)
and q di are bounded, we can

M i (q i ) ei (ri )

M ei ri <

(31)

where M ei = ( M i ) h i .

1 T
x i Ti (q i ) x i
2
~
~
1
Vi 2 ( xi ) = tr ( iT i1 i )
(32)
2
where Ti (qi ) = block diag { M i (qi ), M i (qi ), i } and i is
a positive definite matrix, Vi1 ( x i ) must satisfy the following
inequality
Vi1 ( x i ) =

(23)
Now according to the assumption 3, we are ready to
define the observer with the dynamic equations as follows
q& i = q& oi + i z i + i z i
(24)
&q& = q&& + z
oi
ri
i i i
+ Mi

Define the states of the closed-loop system as follows

Considering the candidate Lyapunov function of the system


to be
Vi ( x i ) = Vi1 ( x i ) + Vi 2 ( x i )

K i ( s i ri ) + J iT (q i ) ( i + k f i Fi )

IV. STABILITY ANALYSIS

conclude from (20) that the bounded constant h i is


available, that is
ei (ri ) h i ri <

K i (q& oi q& ri ) J iT (q i ) ( d i k f i Fi )
where k f i is a positive constant and K i

i ri ,

which is a reasonable assumption according to the definition


of v~i .

by the assumption that xi

where v i = [ q iT , q& riT ]T .


The input vector i can also be chosen as
= M (q ) q&& + Y (v )
i

Assumption 4: It is assumed that Yi (v~i ) i

(29)

i1 x i

Vi1 (t ) i 2 x i

(33)
1
i1 = min (Ti )
2 qi
(34-a)
1
i 2 = max (Ti )
2 qi
(34-b)
Now we are ready to define the main theorem of this paper.
Theorem: Consider the cooperative robot system (1)
with constraint (2) and the control input (22), with the
observer (24)-(25). If we assume that q d i , pd i and their
first and second derivatives are bounded, then there exist
suitable controller gains that under the parameters updating
law in (47), the states, xi (t ) and the force tracking error,
i (t ) asymptotically converge to zero, as time increases.
In this way it is necessary that
C i (q i , q& ri ) i1
xi xi max
(35-a)
C i (q i , s i + q& ri ) i 2
xi xi max
(35-b)
C i (q i , s i + 2q& ri ) i 3
xi xi max
(35-c)
Also the controller gains must satisfy the following
inequalities
( K i ) 1 + 1i
(36)

i1 2 + 4 i 2
4 i1

(37)

where i1 and i 2 are defined as

i1 = M ei + i3 + i + ( Di )

i 2 = i2 + i + ( K i )
Proof: Rewrite the Lyapunov function defined in (32) as
1
Vi1 (t ) = s i T M i (q i ) s i
2
1 T
1
+ ri M i (q i ) ri + Fi T i Fi
(38)
2
2
By taking the derivative of the above equation, using (28)(29) we get
V& = k F T F + s T M (q ) e (ri )
i1

fi

s iT [C i (q i , q& ri ) + D i + K i ]s i
riT [ i M i (q i ) C i (q i , s i + q r i ) K i ] ri

+ ( M e i + i + i 3 + ( Di ) ) si
k f i ( i ) Fi

ri

+ ( si + ri )T Yi (vi ) i

si

(44)
T 1

(45)
asymptotically converges to zero, it is concluded
lim i = 0

Now, we obtain an update law that is applicable in real time.


Preposition: for the function u (t ) with the dynamic
equation u& (t ) = x(t ) y (t ) we can obtain u (t ) from the
following nested integrals

x( ) y( ) d
0
t

= x(t )

ri + ( i i1 i 2 ) ri

y ( ) d

y ( ) d ) x&( ) d
(

(46)

According to (12) and (14),

( si ( ) + ri ( ) ) d

is

measurable. So by using the above preposition we can


change the parameters update law obtained in (41), to the
following updating rule
t

i (t ) =

i YiT

(vi )

( s ( ) + r ( ) ) d
i

( ( K i ) i1 1 ) s i

i = ( i + J i M i(qi ) J i ) J i M i (qi )
Finally using assumption 4 and (51), we can get
i i Yi (v~i ) i i i ri

Now using (39)-(41) we can write for V&i = V&i1 + V&i 2 ,

( si

u (t ) =

(39)
Also by taking the first derivative of Vi 2 , defined in (32) we
have
~
&
V&i 2 = tr ( iT i1 i )
(40)
by consideration of the last term in the right hand side of
(39) and according to (40) we can obtain the parameter
update law as
&
i = i YiT (v i ) ( s i + ri )
(41)
Note that in (41), the values of s i and ri , according to (12)
and (14), are not measurable. We show later in the proof that
we can modify (41) to be able to calculate (t ) values.
V&i k f i ( i ) Fi

+ ( i i1 + i + i 2 + ( K i ) ) ri

~
i = i Yi ( v~i ) i

from (45) that

using the norm properties and assumption 4 we obtain


2
V& ( ( K ) ) s
i1

By neglecting the second term of the left hand side of the


above equation and using (43) we have

since ri

s iT [C i (q i , s i + 2q ri ) + Di ] ri
~
+ ( s i + ri ) T [ Yi (v i ) i + Yi (v~i ) i ]

i1

by multiplying both sides of the above equation by


J i M i (q i ) 1 , we get
~
J i s&i = J i M i (q i ) 1 (Yi i + J i i )
(43)
Using (12) and the property that J i Qi = 0 , we also obtain
J s& + J& s =

Y& (v ) ( s ( ) + r ( ) ) d d
i
i
i
i
i

(47)
Q.E.D.

V. SIMULATION RESULTS
(42)
As it can be seen, by using (36) and (37) we have a negative
To verify the validity of the proposed control algorithm
semi-definite V&i in (42). So from the Lyapunov stability we consider for numerical simulation, two three links planar
robots cooperatively manipulating a common object. Here,
method we can conclude that
the center of mass for each link is assumed to be located at
lim s i (t ) = 0 , lim ri (t ) = 0
t
t
the end of each link. The length of the first and second links;
~
l1 and l 2 , and the held object are equal to 1m. The length of
lim Fi (t ) = 0
, lim i = 0
t
t
the third link is sufficiently short and contained into the
When s i and ri are small enough, from (28) we have
object.
T
~
Let q1 j and q 2 j ; j = 1, 2, 3 , denote the joint angles of
M i (q i ) s&i = Yi ( v i ) i + J i i
the two robots. The configuration of the held object is
i1

denoted by the position coordinates x and y , and the


orientation . Since all of the end-effectors are rigidly
attached to the common object, we have 1 = 1 and
2 = 2 , where the forward kinematics i and coordinate
transformation i , from the object center of mass to the endeffectors of the i th robot are given by
x 0.5 cos ( )
1 =

y 0.5 sin ( )

ai 2 sin ( qi 2 ) ( q&i1 + q& i 2 ) 0


0
0
0
0

ai1 cos ( qi1 ) + ai 2 cos ( qi1 + qi 2 )


g

g i = 0.7
ai 2 cos ( qi1 + qi 2 )

with
a i1 = ( m i1 + m i 2 + m i 3 ) l12 = 5

a i 2 = (mi 2 + mi 3 )l1l 2 = 3

cos (q11 ) + cos (q11 + q12 )

sin (q11 ) + sin (q11 + q12 )

1 =

a i 3 = (m i 2 + mi 3 )l 22 + I i 3 = 3.05
a i 4 = I i 3 = 0.05
where mi1 , mi 2 , mi 3 , I i 3 , m0 and I 0 are system parameters.
The desired trajectories for the object center of mass and
exerted forces are also given by
xd 1 + 0.25 cos ( t / 2)
y d = 1 + 0.5 sin ( t / 2)


d / 6 sin ( t / 2)

x + 0.5 cos ( )
2 =

y + 0.5 sin ( )
2 + cos (q ) + cos (q + q )

21
21
22
2 =

q
q
q
sin
(
)
+
sin
(
+
)
21
21
22

Thus the holonomic constraints ( Oi = 2 ) are formed by


i (q i ) = i i = 0, i = 1, 2
The dynamic matrices for the object are also given by
M o = 0.7 diag { mo , mo , I o }
Co = 0

cos ( )
d 1 = d 2 = 40

sin ( )

g o = 0.7 [0 m o g 0]T
mo = 1 , I o = .25
Also the dynamic matrices for each robot are as follows
ai1 + 2 ai 2 cos ( qi 2 ) + ai 3
M i = 0.7 ai 2 cos ( qi 2 ) + ai 3

ai 4

ai 2 sin ( qi 2 ) q& i 2
Ci = 0.7 ai 2 sin ( qi 2 ) q& i1

ai 2 cos ( qi 2 ) + ai 3
ai 3
ai 4

ai 4
ai 4
ai 4

The simulation results illustrate the effectiveness of the


proposed algorithm to obtain the desired objectives. As
depicted in Fig. 1, the tracking error of the object center of
mass tends to zero as the time increases. Also the result of
the force tracking in Fig. 2 shows that the proposed method
causes exerted forces tend to their desired values as time
elapses. In Fig. 3, residual errors ( si ) of the robot 1 has been
shown to tend to zero. Also it is obvious from Fig. 4 that the
control inputs for robot 1 have a reasonable range of
variations.

1.4

40

1.2

dx

38
0.8
0.6

0.5

1.5

2.5

3.5

1.5

36

34

0.5

1.5

0.5

1.5

2.5

3.5

2.5

3.5

0.5
0

0.5

1.5

2.5

3.5

20

10

0.5

dy

-10

-0.5
-1

-20
0

0.5

1.5

2.5

time(sec)

Fig. 1.

Object center of mass tracking .

3.5

time(sec)

Fig. 2.

Force tracking for robot 1.

100
50

s1

-5

-50
-100

-10
-15

0.5

1.5

2.5

3.5

0.5

1.5

2.5

3.5

0.5

1.5

2.5

3.5

1.5

2.5

3.5

100
50

0
time

s2

-2

0
-50

-4
-6

-150

-100
0

0.5

1.5

2.5

3.5

-150

0.5

40

0.25

30
20

s3

10

-0.25

0
-0.5

0.5

Fig. 3.

1.5

time(sec)

2.5

3.5

-10

0.5

time(sec)

Residual errors for robot 1.

Fig. 4. Control inputs for robot 1.

VI. CONCLUSION
In this paper a decentralized position/force control
scheme for cooperative robot manipulators is presented
which can be effectively applied to every redundant
cooperative system. It is assumed that the dynamic equations
of each robot are not exactly known. It is shown how by
using an adaptive control input, the effects of these
uncertainties on the performance of each mechanical system
have been eliminated. The control input for each robot uses
only local information available through the local sensors,
mounted on the robot. In addition, using a linear observer,
velocity measurement of the joints is avoided. The proposed
control input causes the overall closed-loop system to be
stabilized which is proved by the Lyapunov stability
method.
The simulation results show that the proposed approach
works well in the presence of uncertainties in the dynamic
equations of the robots.
REFRERENCES
[1] K. Y. Lian, C. S. Chiu, P. Liu, Semi-decentralized adaptive fuzzy

control for cooperative multirobot systems with H


motion/internal
force tracking performance, IEEE Trans. Sys. Man Cybern. B, vol.
32, no. 3, 2002.
[2] W. Gueaieb, F. Karry, S. A. Shahran, A robust adaptive fuzzy
position/force control scheme for cooperative manipulators, IEEE
Trans. Contr. Sys. Technol., vol. 11, no. 4, 2003.
[3] Y. H. Liu, V. Parra-Vega, S. Arimoto, Decentralized cooperation
control: joint-space approaches for holonomic cooperations, in Proc.
IEEE Int. Conf. on Robotics and Automation, pp. 2420-2425, 1996.
[4] Y. H. Liu, S. Arimoto, Distributively controlling two robots handling
an object in the task space without any communication, IEEE Trans.
Automt. Contr., vol. 41, no. 8, 1996.

[5] M. A. Arteaga, L. A. Munoz, Control of cooperative robots without


velocity measurements, in Proc. IEEE/RSJ Int. Conf. on Intelligent
Robots and Systems, pp. 2837-2842, 2002.
[6] Y. H. Liu, S. Arimoto, V. Parra-Vega, and K. Kitagaki, Decentralized
adaptive control of multiple manipulators in cooperations, Int.. J
.Cont., vol. 67, no. 5, pp. 649-673, 1997.
[7] V. Parra-Vega, A. Rodriguez-Angeles, S. Arimoto, G. Hirzinger, High
precision constrained grasping with cooperative adaptive control,
Kluger Academic Publishers, 2001.
[8] M. L. Ni, M. J. Er, Decentralized control of robot manipulators with
couplings and uncertainties, in Proc. AACC, pp 3326-3330, 2000.
[9] O. Khatib, A unified approach for motion and force control of robot
manipulators: The operational space formulation, IEEE Journal on
Robotics and Automation, vol. 3, pp. 43-53, 1987.
[10] Y. H. Kim, F. L. Lewis, Neural network output feedback control of
robot manipulators, IEEE Trans. Robot. Automat., vol. 15, no. 2, 1999.
[11] E. Kim, Output feedback tracking control of robot manipulators with
model uncertainty via adaptive fuzzy logic, IEEE Trans. Fuzz. Syst.
vol. 12, no. 3, 2004.

You might also like