Académique Documents
Professionnel Documents
Culture Documents
Chapter 5
Complementary Material
5.3.2 MRC Schemes: Known Plant Parameters
Proof of Lemma 5.3.4. For n = 1 , we have (s) = 0 , (s ) = 1 . Hence, (5.83) implies 1 = 2 = 0 and a unique solution for 3 . For n 2 , consider the monic greatest common divisor H p (s ) of Z p (s ) and R p (s ) . Then we can write Z p (s ) = Z p (s )H p (s ) , R p (s ) = R p (s )H p (s ) for some coprime polynomial pair Z p (s ) , R p (s ) . Since Z p (s ) is Hurwitz, H p (s ) also has to be Hurwitz. Hence we can divide both sides of (5.83) by H p (s ) and obtain
*T * 1*T (s) R p (s ) + k p (2 (s) + 3 (s)) Z p (s) = (s) R p (s) Z p (s)0 (s) Rm (s) .
It can be easily seen that the degree of the right-hand side is n p + n rh 2 , where rh is the degree of H p (s ) . Since Z p (s ) , R p (s ) are coprime, Theorem A.2.5 (see the Appendix) implies that there exist unique polynomials
n 2, n p rh 1 , respectively, such that a(s ) R p (s ) + b(s )Z p (s ) = (s ) R p (s ) Z p (s )0 (s ) Rm (s ) .
a(s ), b(s )
of degree
Once the unique solution a(s), b(s ) of the above equation is calculated, the general *T * solution for 1*T (s ), k p (2 (s ) + 3 (s )) can be obtained as
1*T (s ) = (s )Z p (s ) + a(s ),
*T * k p (2 (s ) + 3 (s )) = (s ) R p (s ) + b(s ),
(5C.1)
both sides of (5C.1). If R p , Z p are coprime (i.e., rh = 0 ) and n = n p , then f (s ) = 0 and hence the
, 3 is unique. solution of (5C.1) for 1 , 2
Page 5C.2
H 0 (s ) is a proper transfer matrix whose poles are stable, and e1 L2 L and goes to zero as t . Hence, from Lemma 3C.1 we have L2 L and | (t ) | 0 as t . Therefore, by definition of PE, is PE if H (s )r is PE. Since r is sufficiently rich of order 2 n , applying Theorem 3.4.3, this further implies that is PE if rank[H ( j1 ), H ( j2 ), , H ( j2 n )] = 2n on C 2 n for any 1, 2 , , 2 n R with i j
where
H R
D(s ) = k p Z p (s )(s) Rm (s ) ,
2 n( l +1)
l = deg((s )Z p (s ) Rm (s )) = 2 n 1 + qm ,
and
[ H ( j1 ),, H ( j2 n )] = H (1 ,, 2 n ) (1 ,, 2 n ) ,
where
Page 5C.3
submatrix
of
the
Vandermonde
matrix
and
i k , i k .
Therefore,
rank[H ( j1 ), , H ( j2 n )] = 2n if and only if rank( H ) = 2 n . Next we show that rank( H ) = 2n . Assume to obtain the contradiction that rank( H ) < 2 n . Then there exists a nonzero constant vector C R 2 n such that C T H = 0.
T , c3 , c4 ]T , where C1, C2 R n1 ; c3 , c4 R , this Using the decomposition C = [C1T , C2 implies that
+ c4 (s ) Rm (s )k p Z p (s ) = 0.
Observing that c4 is the coefficient of the s l term, we have c4 = 0 . This further implies that
(C
or, equivalently,
T 1
T ( s ) R p ( s ) + C2 (s )k p Z p (s ) + c3 (s )k p Z p (s )) km Z m (s ) = 0
i.e.,
k p Z p (s ) R p (s) = C1T (s ) . T c3 (s ) + C2 ( s )
Therefore, rank( H ) = 2 n and hence rank[H ( j 1 ), , H ( j2 n )] = 2n . Thus we have shown that is PE. Now consider (5.98) and (5.100), i.e.,
e = Ac e + Bc * T , e(0) = e0 , = e1sgn ( * ) , e1 = C e,
T c
(5C.2)
Page 5C.4
eT Pc e 2
1 2
| * | . From (5.101)
V =
for some constant 1 > 0 , noting that Lc > 0 . We can rewrite (5C.2) as
e = A(t )e ,
where
e e = ,
e1 = C T e ,
Ac A(t ) = * T (t )sgn ( ) Cc
Bc * T (t ) , 0
C C = c. 0
P=
1 Pc 2 0
. 0
* 1
0 , K (t ) = * sgn ( ) (t )
which satisfies the integral condition in Lemma A.8.4 since L . The system corresponding to (C , A + KC T ) can be written as
Ac e e = , A(t ) = T (t )sgn (* ) Cc
Bc * T (t ) C c , C = 0 , 0
x1 = Ax1 + Bc * T x2 , x2 = 0,
T y0 = Cc x1 . T Observing that *Cc (sI Ac )1 Bc is stable and minimum-phase, since , L and T is PE, = *Cc (sI Ac )1 Bc is PE as well because of Lemma 3C.1 (see Chapter 3:
Page 5C.5
Complementary Material). Therefore, using Lemma A.8.5, we have that (C , A + KC T ) is UCO, and the proof is complete.
5.4.1 to show that is PE. Now consider the error equations (5.110), (5.112), which have the same form as (5.98), (5.100). As in the proof of Theorem 5.4.1(i), we use Lemma 3C.1 and the results above stating that , L and is PE, and establish that the adaptive law (5.112) guarantees that | | converges to zero exponentially fast. Using (5.110), this also implies that e1 converges to zero exponentially fast.
e1 = Wm (s )(s + p0 )(s + p1 ) (u p T ) ,
where
Page 5C.6
u p = H 0 (s )u p , = H 0 (s ), H 0 (s ) =
1 , (s + p0 )(s + p1 )
and Wm (s ), p0 , p1 are chosen so that Wm (s ) = Wm (s) H 0 (s) = Wm (s)(s + p0 )(s + p1 ) with relative degree 1 is SPR. Without loss of generality let us consider
Wm (s ) = 1 (s + p0 )(s + p1 )(s + p2 )
where , are the estimates of * , * , respectively. The design procedure for n = 2 suggests using
up = T 1 = to obtain e
1 s + p2
[0] and e1 =
1 s + p2
u p = (s + p0 )(s + p1 )u p = (s + p0 )(s + p1 ) T
involving , which is not available for measurement, noting that could be obtained using the adaptive law chosen. Hence the choice of u p = T is not feasible. The difficulty of not being able to extend the results for n = 1, 2 to n 3 was circumvented only after the late 1970s. After that several successful MRAC schemes were proposed using different approaches [2,3,6]. In the following we present a design 1 : very similar to that in [3]. We first rewrite the equations for e1 and e
e1 = 1 1 1 = (e0 + T ), e e0 , e0 = u p T , s + p2 s + p2
Page 5C.7
2 1 2
T 1
= 1 sgn( ), = 1e0 ,
(5C.3)
where
u1 = 1 1 u p , 1 = (s + p0 ) = . s + p1 s + p1
e0 = p0 e0 + u1 + T 1 sgn( ) T 1 .
To counteract the term T 1sgn( ) , we use a so-called nonlinear damping term [4,5] in u1 as follows:
u1 = T 1 0 ( T ) e0 ,
2
(5C.4)
where 0 > 0 is a design constant. Using the above control law, we obtain
e0 = p0 + 0 ( T ) e0 + T 1sgn( ),
2
which will force e0 and hence e1 to converge to zero. To check the implementability of the control law, we substitute (5C.4) into u p = (s + p1 )u1 and obtain
u p = T + T 1 (s + p1 )0 ( T )2 e0 = T + T 1 40 T ( T )e0
2 0 ( p1 p0 ) ( T )2 e0 + 0 ( T ) e0 0 ( T ) 1sgn( ), 4 3
(5C.5)
differentiators. The stability properties of the above MRAC scheme are summarized in the following theorem. Theorem 5.4.6 The MRAC scheme (5C.3), (5C.5) guarantees that (i) all signals in the closed-loop plant are bounded and e0 (t ), e1 (t ) 0 as t; (ii) the estimate converges to a constant asymptotically independent of the richness of r . If r is sufficiently rich of order 2 n and Z p , R p are coprime, then the parameter error = and tracking error e1 converge to zero
Page 5C.8
asymptotically.
(5C.6)
p2 12 0 p0 r02 0 0 r02 ( T )2 + 0 1 e0 T p2 12 2 2 ( T )2 . 0 p2 e0 0 0 0 e0 2 2 p2
Choosing 0 = 20 p2 , we have
V p2 12 2 0 p0 e0 0. 2
of s 2Wm (s ) implies that y p, L and hence = (s + p0 )(s + p1 ) L . Therefore, all the closed-loop signals are bounded. Since e0 , e1 L and e0 , e1 L2 , it follows that e0 (t ), e1 (t ) 0 as t . (ii) Since 1, e0 L2 we have
d | 1 || e0 | d (
0
2 12 d ) 2 ( e0 d ) 2
1 1
, L i.e., = L1 and therefore , converge to a constant as t . It can be established that is PE, provided that r is sufficiently rich of order 2 n and Z p , R p are coprime, using similar arguments and steps as in the proof of Theorem
Page 5C.9
Since , L and is PE, using the same steps as in the proof of Theorem 3.6.1 we can show that and e1 converge to zero exponentially fast. If k p is unknown, we consider the equations for 1 , in (5C.6), i.e.,
1 = p2 1 + T e0 , = 1 sgn( ),
as an LTV system with 1, as the states and e0 as the input. Since for the above system (as shown above) and e1 converge to zero exponentially fast when e0 = 0 and is PE, and since (as shown in part (i)) L , e0 L L2 , and e0 (t ) 0 as
t , it follows from Lemma A.5.9 (in the Appendix) that 1 (t ), (t ) 0 as t.
where || || denotes the L2 norm,4 satisfies the following: (i) 1/m f , 2/m f L . (ii) If L and W (s ) is a proper transfer function with stable poles, then in addition to (i), u p/m f , y p /m f , /m f , W (s )/m f L . (iii) If r, L , then in addition to (i) and (ii), y p /m f , /m f L . Proof [1]. (i) Since 1 =
(s) ( s ) (s) ( s )
u p , 2 =
(s) ( s )
is at least 1 , the result follows from Lemma A.5.9 and the definition of m f . (ii) Since L , applying Lemma A.5.9 to (5.120), we obtain
y p (t ) c + c T c + c ,
1 + 2 + y p + r c u p + c y p + c cm f + c
we have y p /m f , /m f L . Since u p = T and L this further implies that
u p/m f L . Finally, since W (s ) c
stable, W (s )/m f L .
4
Page 5C.10
(iii) The result follows by differentiating (5.120) and (5.121), using (5.116) and the inequality || || || 1 || + || 2 || + || y p || + || r || , and applying Lemma A.5.2.
Proof of Theorem 5.5.1. Step 1. Express the plant input and output in terms of the adaptation error T This step is already described in detail in the outline of the proof. For L , which is guaranteed by the adaptive law, we apply Lemma 5.5.1 to establish that the signal m f bounds all signals in the closed-loop adaptive system and some of their derivatives. Step 2. Use the swapping lemmas and properties of the L2 norm to upper bound
|| T || with terms that are guaranteed by the adaptive law to have finite L2 gains Using Lemma A.11.2, we have
T = F1 (s, 0 ) T + T + F (s, 0 ) ( T ),
where
0 > 0
is an arbitrary
constant, and n is the relative degree of Wm (s ) . Similarly, using Lemma A.11.1, we have
1 T = Wm (s ) T Wm (s ) + Wc (s ) (Wb (s ) T ) ,
))
where Wb (s ), Wc (s ) are as defined in Lemma A.11.1 for W (s ) = Wm (s ) . Combining the two swapping lemma equalities above, we obtain
1 T T T = F1 T + T + FWm Wm (s ) + Wc (Wb ) .
Expressing the normalized estimation error in (5.119) as ms2 = T and substituting in the above equation, we obtain
) .
Hence we can rewrite the expression for T as 1 1 2 T T = F1 T + T + * FWm ms + Wc ((Wb ) ) . Applying Lemma A.11.2 again, we obtain
Page 5C.11
c n T + T + c0 ( + ms2 ), 0
(5C.7)
T cm f ,
ms2 c ms m f .
Therefore, for 0 > 1 and g = 2 ms2 + | |2 , (5C.7) leads to (5.124), where because of
ms , L2 , g L2 .
Step 3. Use the BG lemma to establish signal boundedness This step is already described in detail in the outline of the proof. Step 4. Show that the tracking error converges to zero From (5.119) we have
e1 = ms2 + .
adaptive law (5.119)), Lemma 5.5.2, and Lemma A.11.1, we have e1 L . Therefore, using Lemma A.4.7, we establish that e1 (t ) 0 as t . Step 5. Establish that the parameter error converges to zero By definition, we have
(sI F )1 gu p 1 (sI F ) gy p = Wm (s ) . yp r
1 Substituting u p = G p ( s ) y p and y p = Wm ( s )r + e1 into this, we have
= Wm (s )H1 (s )r + Wm (s )H 2 (s )e1 ,
where
1 1 (sI F )1 gG (sI F )1 gG p ( s )Wm ( s ) p ( s ) 1 1 (sI F ) gWm (s ) (sI F ) g . H1 (s ) = , H 2 (s ) = Wm (s ) 1 0 1
It was established in the proof of Theorem 5.4.1 that if r is sufficiently rich of order 2 n , then H1 (s )r is PE. Hence applying Lemma 3C.1, since Wm ( s ) is stable and minimum phase and e1 L2 , it follows that is PE. Next, we establish the convergence results. From (5.119), we have
ms2 = T , = sgn(k p/km ).
Page 5C.12
Using u p , y p L we have , L . Hence, since is PE and L2 , applying the arguments in the proof of Theorem 3.9.1, we establish that (t ), e(t ) 0 as t .
1 T 1 up = G p ( s )Wm ( s ) r + c .
0
Again as in the proof of Theorem 5.5.1 we use || || to denote the L2 norm and define the fictitious signal m 2 f
1+ || u p ||2 + || y p ||2 , for some > 0 , to satisfy Lemma 5.5.2.
Step 2. Use the swapping lemmas and properties of the L2 norm to upper bound
|| T || with terms that are guaranteed by the adaptive law to have finite L2 gains Note first that based on (5.133) and (5.134) it can be established using similar arguments , L ; , L . Using (5.132), we have as in the proof of Theorem 5.5.1 that ,1 k p p p 2
*T 1*T Wm (s )1 + 2 Wm (s )2 + 3*Wm (s ) y p = Wm (s )u p
1 kp
Z p (s )Q(s )
Wm (s ) up (s ) yp .
1 kp
W (s)
1 (s, t ) Wm (s ) u Z p (s, t ) Q p p (s ) k
1 (s, t ) (s ) R (s )) Wm (s ) y . (Q(s, t ) R 0 p m p (s ) kp
where i
i i* and
Page 5C.13
e1 =
1 1 * 0 (s ) Rm (s ) Wm (s ) y p = (c0 c0 ) y p , e2 = ( ) s k p k p e3 = Q( s ) Wm (s ) ( Z p (s )u p R p (s ) y p ) = 0. k p (s )
1 [1T , 2T , y p , Wm (s ) y p ]T and
Therefore, for
* we have
T Wm (s ) = e1 .
Furthermore,
applying
Lemma
A.11.3
to
where
e11 = 1 (s, t ) Wm (s ) u , (s, t ) Wm (s ) y Z Q(s, t ) R p p p p ( ) ( ) s s kp
Since
e11 = = = 1 (s, t ) Wm (s ) u (s, t ) Wm (s ) y Z Q(s, t ) R p p p p p (s ) (s ) k T Wm (s ) p (s ) 1 (s, t ) T Wm (s ) p (s ) = 1 Q Q(s, t ) p p k p p (s ) (s ) k W (s ) p (s ) 1 ms2 Wc (s )[Wb (s )T ] p , Q(s, t ) m p (s ) k
where Lemma A.11.1 is used to obtain the last equality, using Lemma 5.5.2, the (s, t ) , and the fact that L definition of Q and y p = Wm (s )(r + c1 T ),
0
e1 e11 + e12 c ms m f + c m f ,
where c denotes a generic positive constant. Furthermore, from (5.117) we have
1 1 y p ym = Wm * (u p *T ) = Wm * T . c0 c0
(5C.8)
Page 5C.14
Therefore,
* T T = T ( ) = (c0 c0 ) (Wm1 y p r ) = * c0 c0 T , * c0
i.e., T =
c0
* c0
T =
(5C.9)
where constant,
0 > 0
and
is
the
1 m
relative
c
n 0
degree
of
Wm ( s )
F1 (s, 0 ) c0 , F (s, 0 )W (s )
A.11.1 , we obtain
1 T 1 T = Wm Wm p + Wc Wb T = Wm e + Wc Wb T . 1
(5C.10)
Since c0 is bounded from below, i.e., applying Lemma A.5.10 and Lemma 5.5.2, we obtain
T c c n m f + m f + c0 e1 + m f . 0 0
(5C.11)
where g
2n ( 12 | |2 +0 (| |2 + 2 ms2 + | p |2 ))1/ 2 L2 .
0
Step 3. Use the BG lemma to establish signal boundedness This step is the same as Step 3 of (the outline of ) the proof of Theorem 5.5.1. Step 4. Show that the tracking error converges to zero Using T = (5.117), we have
1 1 1 e1 = y p ym = Wm * (u p *T ) = Wm * T = Wm T . c0 c0 c0 Applying Lemma A.11.1 and substituting (5C.10), we obtain
c0
* c0
T in
Page 5C.15
e1 =
c 1 e1 + Wc (s ) Wb (s ) T Wc (s ) 0 Wb (s ) T . 2 c0 c0
Using boundedness of all the signals and parameter estimates, (5C.8), and ms , , p L2 , this implies that e1 L2 . Using similar arguments as in the proof of Theorem 5.5.1, we have e1 L . Therefore, using Lemma A.4.7, we establish that e1 (t ) 0 as t .
where (i)
()t
1/m f , 2/m f , /m f , ms /m f L .
(ii) If L and W (s ) is a proper transfer function with all its poles in Re[ s ] < 0 / 2 , then in addition to (i), u p/m f , y p/m f , /m f , W (s )/m f ,
u p /m f , y p /m f L .
(iii) If r, L , then in addition to (i) and (ii), /m f L . (iv) For = 0 , m f = ms . Proof. (i) Using the same arguments as in the proof of Lemma 5.5.2(i), we have
1/m f , 2/m f , /m f L . Using ms2 = 1 + u pt
2 2 0
+ y pt
2 2 0
1 + u pt
2 2
+ y pt
2 2
, we
further have ms /m f L . (ii) Rewriting the equation for e1 = y p ym right before (5.169) as
y p = Wm (s ) T + + d + Wm (s )r ,
and using the expressions for , d , the fact that Wm , Wm m are strictly proper with all their poles in Re[ s ] < 0/2 , and , L , we establish that
y p (t ) c + c u p + c cm f + c;
i.e., y p/m f L . Using (i), this further implies that /m f L . Hence, since u p = T and , /m f L , we also have
up mf
Page 5C.16
observing
that
1 ( s ) + d sWm (s ) m (s ) (s)
u p + cd0 cm f + cd0
and
that
sWm (s ) is proper. (iii) The result is established using the same arguments as in the proof of Lemma 5.5.2(iii). (iv) The result follows by definition.
Proof of Theorem 5.7.5. Step 1. Express the plant input and output in terms of the parameter error term T . From (5.137), (5.138), we have
yp = up =
T 1T G0 (2 + 3 ) c0 G0 c0
r+
1T 1 T + , c0 c0
G0 D1 r + 1 T + T G ( T + ) , c0 G0 ( + ) 1 0 2 3
T 1 T 2 3
where
r + 1 T + y , y p = Wm * c0 1 T 1 u p = G0 Wm r + + , * u c
0
where u
T 2 +3 c0
Wm , y
T 1 c0
u p + cd0 c + c T + c Wm m
mf , mf ,
T 2 + 3 c0
Wm m
u p + cd0 c + c T + c Wm m
T i.e., m 2 + c Wm m f c+c
Step 2. Use the swapping lemmas and properties of the L2 norm to bound || T || from above with terms that are guaranteed by the robust adaptive laws to have small gains in the m.s.s. Using the same notation and the same steps as in the proof of Theorem 5.5.1, we have
1 T T T = F1 T + T + FWm Wm + Wc (Wb ) .
(5C.12)
Page 5C.17
ms2 = * ( *T + Wm T + + d ) ( T + Wm T ) = * ( T Wm + + d ) Wc (Wb T )
and hence
T Wm =
Substituting in (5C.12), we obtain
ms2 + * Wc (Wb T ) d. *
FW T = F1 T + T + *m
2 T ms + Wc (Wb )
) FW
)
1 m
[ + d ].
c gm f +
where
g=
2 2 0 2k + 0 2 ms2 +
2 2 d0 + S 2 ms2
Step 3. Use the BG lemma to establish boundedness This step is explained in detail in the outline of the proof. Step 4. Establish bounds for the tracking error e1 . It follows from (5.169) that
e1 = ms2 + .
Since
2
, ms , S ( 2 ms2 + d 2 ms2 )
2 s 2 2 s
and
, ms L ,
it
follows
2 2 0
that
e1
2 e12 d c(2 + d0 )+
c t 0, T > 0. T
Step 5. Establish convergence of the estimated parameter and tracking errors to residual sets From the definition of we have
T (s ) T (s ) = Wm (s ) up , yp , yp , r . (s ) (s )
T
Page 5C.18
1 1 u p = G0 (s ) y p y = G0 (s )(Wm (s )r + e1 ) y ,
where
1 T (s ) T (s) m = Wm (s ) G0 (s )Wm (s ) , Wm (s ) , Wm (s ),1 [r ], (s ) (s ) T T T T T 1 ( s ) ( s ) (s) T . e = Wm (s ) G0 (s ) , ,1,0 [ e1 ] Wm (s ) ,0 (s ) n+1 y s s ( ) ( )
T 2 Lemma 3.11.6 implies that m is PE with level 0 > O(2 + d0 ) if r is dominantly rich and Z p , R p are coprime. Hence there exist T > 0 such that
1 T
t +T
T m ( )m ( )d 0 I t 0.
hence
1 lT
t +lT
( )T ( )d
1 2lT
t +lT
T ( ) d m ( )m
1 lT
t +lT
e ( )eT ( )d
0 c 2 c(2 + d0 ) I 2 lT
satisfying
c lT
<
0 8
and for
, we have
1 lT
t +lT
( )T ( )d
0 I, 4
which implies that is PE. Applying the arguments in the proof of Theorem 3.12.2, we establish that when is PE, (5.169) guarantees that converges to a residual set whose size is of the order of the modeling error; i.e., satisfies | (t ) | c( + d0 ) + r (t ), where lim t r (t ) = 0 and the convergence is exponentially fast. From (5.171), we have
e1 (t ) =
1 Wm (s ) T + y . c0
Page 5C.19
e1 (t ) c( + d0 ) + cre (t ),
where re
exponentially as t as well. Thus, we have established that e1 , converges exponetially to the residual set S defined in the theorem.
5.10.1 MRC
In section 5.3 we have seen that for a given plant of the form (5.73) and a reference model of the form (5.76), if the plant parameters are known, then an MRC scheme can be constructed to force the closed-loop system (the integration of the plant (5.73) and the MRC) to behave as the reference model. The control parameters of this MRC scheme are obtained by solving (5.84). The MATLAB function mrcpoly can be used to solve (5.84) for a given design polynomial 0 (s ) . Denoting the coefficient vectors of Z (s ), R(s ), Z m (s ), Rm (s ), 0 (s ) as Z,R,Zm,Rm,L0, respectively, [thetau,thetay,thetar,RETYPE]=mrcpoly(Z,R,Zm,Rm,L0)
* * returns the parameter vectors u , y , r* . RETYPE is returned as 0 if the equation
solving process is successful and as 1 if it fails. Example 5.10.1 Consider the plant y =
1 s ( s +3)2
( s ) T u + y (s )
( s ) y ( s ) + r , (s) = [ s, 1]T , r y
Page 5C.20
u=
3s 9 51s 36 u+ 2 y + 35 y + r. s + s +1 s + s +1
2
z = *T
where
*T *T * = u , y , r* , z = Wm (s )u T T T = Wm (s ) ( H (s )u) , Wm (s ) ( H (s ) y) , Wm (s ) y, y , T
Wm (s ) =
[ s, 1] 1 ( s ) , H (s) = . = 2 3 (s ) s + s + 1 (s + 1)
T * the parameter vectors as u = [3 9]T , 3 s 9 s 2 + s +1 s 36 u + s51 y + 35 y + r . 2 + s +1
Now, we can generate the control signal as well as the signals in the SPM using the following code (added to the code of Example 5.10.1): Lambda = conv(Zm, Lambda0); theta = [thetau(:);thetay(:);thetar(:)]; dt = 0.01; % Time increment for simulation (sec). t = [0:dt:20]; % Process time (sec). tprev = [-5:dt:-dt]; ltprev =length(tprev);
Page 5C.21
lt = length(t); r = sin(4*t + pi/6) + 1; % Reference signal. rprev = sin(4*tprev + pi/6) + 1; % State initialization for the plant: [nstate, xp0] = ufilt('init',Zp,Rp,0); xp(:,1) = xp0; % State initialization for the reference model: [nstate, xm0] = ufilt('init',Zm,Rm,0); xm(:,1) = xm0; for k = 1:ltprev, dxm = ufilt('state',xm(:,1),rprev(k),Zm,Rm); xm(:,1)=xm(:,1) + dt*dxm; end % State initialization for linear parametric model: [nstate xl0] = umrcdrl('init',[3 0],Lambda,Zm,Rm); xl(:,1) = xl0; % Signal initialization: ym(1) = ufilt('output',xm(:,1),Zm,Rm); y(1) = 0; % Process: for k = 1:lt, u(k) = umrcdrl('control',xl(:,k),[y(k) r(k)],[3 0],Lambda,Zm,Rm,theta); [z(k), phi(:,k)] = umrcdrl('output',xl(:,k),[u(k) y(k)],[3 0],Lambda,Zm,Rm); dxl = umrcdrl('state',xl(:,k),[u(k) y(k)],Lambda,Zm,Rm); xl(:,k+1)=xl(:,k) + dt*dxl; dxm = ufilt('state',xm(:,k),r(k),Zm,Rm); xm(:,k+1)=xm(:,k) + dt*dxm; ym(k+1) = ufilt('output',xm(:,k+1),Zm,Rm); dxp = ufilt('state',xp(:,k),u(k),Zp,Rp); xp(:,k+1)=xp(:,k) + dt*dxp; y(k+1) = ufilt('output',xp(:,k+1),Zp,Rp); end % Outputs: ym = ym(1:lt); y = y(1:lt); The results are shown in Figures 5C.1 and 5C.2. Another means of simulation is using the Simulink block Adaptive Controller. One can use the scheme shown in Figure 5C.3, and choose the appropriate options and enter appropriate parameters in the menus of Adaptive Controller.
Page 5C.22
Page 5C.23
t Clock 1 s3 +6s2 +9s Plant time y y(t) u theta theta Adaptive Controller Adaptive Controller T.1 z(t) Relay Product phi phi(t) r(t) 1 Constant 1 s3 +3s2 +3s+1 Model y_m ym(t) u(t) z
Sine Wave
Figure 5C.3 Simulink scheme to generate the control signal in Example 5.10.2. Example 5.10.3 Consider, again, the plant and the reference model of Example 5.10.1. This time, let us assume that we dont know any information about * , except that * 0.1 6 = k p / km 10 . Now we need to use a parameter identification algorithm to estimate * . For this task, we can modify the Simulink scheme of Figure 5C.3 as shown in Figure 5C.4. In this scheme, Parameter Estimator is incorporated into Adaptive Controller. The parameter identification algorithm is selected to be LS * with forgetting factor = 1 and initial covariance P0 = 10 I . Knowledge about 6 is used for parameter projection, and is initialized as [0 0 0 0 0 0.1]T . The results are plotted in Figures 5C.5 and 5C.6. Although the parameter estimation is not successful, as seen in Figure 5C.6, Figure 5C.5 shows that control and tracking are successful. Above, one may prefer to use the MATLAB function umrcdrl incorporated with one of the MATLAB functions for PI, e.g., ucgrad (see Chapter 3), instead of using Simulink as well.
Page 5C.24
t Clock time
1 s3 +6s2 +9s Plant u phi 0 Parameter Estimator Parameter Estimator Adaptive Controller Adaptive Controller u(t) z z(t) theta Relay Product r(t) 1 Constant 1 s3 +3s2 +3s+1 Model theta(t) y_m ym(t)
y y(t)
Sine Wave
Figure 5C.4 Simulink scheme to generate the control signal in Example 5.10.3.
Page 5C.25
Figure 5C.6 Linear model parameter estimates of Example 5.10.3. Example 5.10.4 Consider the scalar plant
x = ax + bu,
where a, b are unknown parameters but b is known to be nonnegative. The objective is to choose an appropriate control law u such that all signals in the closed-loop system are bounded and x tracks the state xm of the reference model given by
xm = x m + r
b sa
since H (s ) = where
z=
1 u, s +1
1 = x, x . s + 1
T
Using z = *T and x =
b sa
simulate the plant, estimation of the parameters, and generation of the MRC signal for
Page 5C.26
Estimator and Adaptive Controller are used for simulation. The PI algorithm is selected to be LS with forgetting factor = 1 and P0 = 10 I , is initialized as
* * [0 0.1]T , and parameter projection for 2 is used assuming that 0.1 2 10 , as in Example 5.10.3. The results plotted in Figures 5C.7 and 5C.8 show that both the estimation and the tracking are successful.
Page 5C.27
Example 5.10.5 This example is the bilinear counterpart of Example 5.10.2. The B-SPM for the system in Example 5.10.2 can be constructed as
z = * ( *T + z1 ) ,
where
*T * = u *T y
r* , * =
T
1 , r*
T
z = y ym , ym = Wm (s )r ,
T T = Wm (s ) ( H (s )u) , Wm (s ) ( H (s ) y) , Wm (s ) y, ym , z1 = Wm (s )u,
[ s 1] 1 (s ) , H (s ) = . Wm (s ) = = 2 3 (s ) s + s + 1 (s + 1)
T
The control signal as well as the other signals in the B-SPM can be generated using the following lines instead of the corresponding lines in Example 5.10.2: [nstate xl0] = umrcdrb('init',[3 0],Lambda,Zm,Rm); u(k) = umrcdrb('control',xl(:,k),[y(k) r(k)],[3 0],Lambda,Zm,Rm,theta); [z(k),phi(:,k),z1(k)]=umrcdrb('output',xl(:,k),[u(k) y(k) r(k)],...[3 0],Lambda,Zm,Rm); dxl = umrcdrb('state',xl(:,k),[u(k) y(k) r(k)],Lambda,Zm,Rm);
Page 5C.28
The results are shown in Figures 5C.9 and 5C.10. One can use the Simulink block Adaptive Controller for simulation as well.
Figure 5C.10 B-SPM signals in Example 5.10.5. Example 5.10.6 This example is the bilinear counterpart of Example 5.10.3. The B-SPM constructed in Example 5.10.5 is used for parameter estimation. Instead of the LS algorithm, a gradient algorithm with = 100 I , = 100 , and ms = 1 is used, and 6 (0) = 1/ (0) is selected to be 1. The results are shown in Figures 5C.11 and 5C.12.
Page 5C.29
Figure 5C.12 B-SPM parameter estimates of Example 5.10.6. Example 5.10.7 This example is the bilinear counterpart of Example 5.10.4. The B-SPM for the system considered in Example 5.10.4 can be constructed as z = * ( *T + z1 ) , where
Page 5C.30
* = 1*
* * 2 , = T
1 , * 2
z = x xm , xm =
T
1 r, s +1
1 1 = x, xm , z1 = u. s + 1 s +1
Instead of the LS algorithm of Example 5.10.4, a gradient algorithm with = 100 I , = 100 , and ms = 1 is used, and 2 (0) = 1/ (0) is chosen to be 1. The results are shown in Figures 5C.13 and 5C.14.
Page 5C.31
Page 5C.32
2 a
1 a
0 of Example 5.10.8. a
T
As above, one may prefer to use the MATLAB function umrcidr incorporated with one of the MATLAB functions for parameter identification, e.g., ucgrad (see Chapter 3), instead of using Simulink.
Page 5C.33
Example 5.10.9 Consider the scalar plant of Example 5.10.4 with the same reference signal. We want to perform the same control task using indirect MRAC. Choosing p (s ) = s + 2 , parameter estimation is based on the linear model z = *T , where
z= 1 s 1 T * y, p u, y . = [ b a ] , = s + 2 s+2 s + 2
T
The Simulink blocks Parameter Estimator and Adaptive Controller are used for simulation. The PI algorithm is selected to be LS with forgetting factor = 1 and P0 = 10 I , is initialized as 0 = [1, 1]T , and parameter projection is not used. The results plotted in Figures 5C.17 and 5C.18 show that both the estimation and the tracking are successful.
Page 5C.34
0 ]T in Example 5.10.9. a
obtain the results shown in Figures 5C.19 and 5C.20. As can be seen in these figures, 1 and x diverge, and the adaptive control design fails. Next, we apply the robust PI algorithm with dead zone modification ( g0 = 0.05, ms = 1 ). The results plotted in Figures 5C.21 and 5C.22 show that the parameter estimates do not diverge and the tracking error remains in an allowable range.
Page 5C.35
Figure 5C.19 Output and control signals of Example 5.10.10 without robustness modification.
Page 5C.36
Page 5C.37
Bibliography
[1] P.A. IOANNOU AND J. SUN, Robust Adaptive Control, Prentice-Hall, Englewood Cliffs, NJ, 1996; also available online at http://www-rcf.usc.edu/~ioannou/ Robust_Adaptive_Control.htm. [2] A. FEUER AND A.S. MORSE, Adaptive control of single-input, single-output linear systems, IEEE Trans. Automat. Control, 23 (1978), pp. 557569. [3] A.S. MORSE, A comparative study of normalized and unnormalized tuning errors in parameter-adaptive control, in Proc. IEEE Conference on Decision and Control, 1991. [4] I. KANELLAKOPOULOS, P.V. KOKOTOVIC, AND A.S. MORSE, Systematic design of adaptive controllers for feedback linearizable systems, IEEE Trans. Automat. Control, 36 (1991), pp. 12411253. [5] M. KRSTIC, I. KANELLAKOPOULOS, AND P.V. KOKOTOVIC, Nonlinear and Adaptive Control Design, Wiley, New York, 1995. [6] A.S. MORSE, High-order parameter tuners for the adaptive control of linear and nonlinear systems, in Proc. US-Italy Joint Seminar on Systems, Models, and Feedback, Capri, Italy, 1992.