Professional Documents
Culture Documents
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
(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 .
; i = 1,2,..., m
pi =
J (q ) q& d = 0
i
of robot i and must satisfy (2), q~i is the tracking error and
finally z i is the observation error. Throughout this paper,
(3)
(J
Ji
T 1
Qi (q i ) = ( I J i + J i )
(4)
(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 .
C i (q i , a)
ki a
Yi
(6)
is the
(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
(16)
&
+ J
+
i
di
di
(q i , q& i ) ( p& di i p i + i Fi )
&
where A (q i , q& i ) is defined as
ak j
&
A (q i , q& i ) =
q& oi
q i
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 .
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)
(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
K i ( s i ri ) + J iT (q i ) ( i + k f i Fi )
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 ,
(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)
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
x( ) y( ) d
0
t
= x(t )
ri + ( i i1 i 2 ) ri
y ( ) d
y ( ) d ) x&( ) d
(
(46)
( si ( ) + ri ( ) ) d
is
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
( 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
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
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
y 0.5 sin ( )
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
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
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
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.
3.5
time(sec)
Fig. 2.
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)
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