Académique Documents
Professionnel Documents
Culture Documents
net/publication/228418848
CITATIONS READS
4 1,680
2 authors:
All content following this page was uploaded by Farid Khaber on 16 May 2014.
F. KHABER*, A. HAMZAOUI**
RESUME
Dans cet article, une approche combinant la commande adaptative classique et la commande floue, est utilisée
pour prendre en charge des systèmes non linéaires incertains. En effet les descriptions linguistiques décrivant le
fonctionnement du système sont incorporées dans le contrôleur. Les paramètres de ce dernier sont ajustés par des
lois d’adaptation appropriées. Pour garantir la stabilité des systèmes en boucle fermée, dans le sens que tous les
signaux impliqués sont uniformément bornés, la conception du contrôleur est faite selon la synthèse de
Lyapunov.
L’algorithme ainsi développé est appliqué pour réaliser une commande en poursuite d’un pendule inversé. Les
simulations sont réalisées sous l’environnement MATLAB 5.3.
∑ y (∏i=1 µ F (xi ))
cette approche est d’incorporer des règles M
n
linguistiques dans le contrôleur. Ce qui permet l
y ( x) =
i
l =1
∑ (∏i=1 µ F (xi ))
d’accroître la vitesse d’adaptation et d’améliorer M
(1)
n
l’erreur en régime permanent [6], [7]. l
i
l =1
En général, les contrôleurs adaptatifs flous sont
construits suivant les étapes suivantes : où
(i) Construction du contrôleur initial basé sur les x = [x, ... , xn]Test l’entrée du système flou ;
descriptions linguistiques données par les experts
humains sous la forme de règles flous (IF - THEN). yl est l’abscisse où la fonction µ G l (y ) atteint son
(ii) Développement des lois d’adaptation pour maximum. En écrivant la relation (1) sous une forme
ajuster on-line les paramètres du contrôleur flou. plus compacte, on obtient
Pour mettre en évidence les capacités du contrôleur
adaptatif flou conçu, il a été utilisé pour réaliser une y ( x) = θ T ξ (x ) (2)
commande en poursuite d’un pendule inversé.
où
2. APPROXIMATION FLOUE [
θ = y1 , L, y l ]
T
est un vecteur de paramètres ;
Il a été démontré que les systèmes flous, utilisant le
singleton fuzzifier, le produit d’inférence, et la
ξ(x)=[ ξ1(x),..., ξl(x)]T sont les fonctions floues de
défuzzification par centre de gravité, sont capables
base dont l’élément ξl(x) est défini par :
d’approximer n’importe quelle fonction réelle
continue dans un ensemble compact avec une
∏i =1 µ F (xi ) [ ]
n
− f (x ) + y m(n ) + k T e
1
u= (6)
g (x )
l
ξ ( x) =
l
∑ (∏i =1 µ F (xi ))
i
M
(3)
n
l
l =1 i ce qui donne :
36
Commande adaptative floue pour les systèmes non linéaires incertains finis
[( )
V&e = − eT Qe + eT Pbc × fˆ (x θ f ) − f (x ) + (gˆ (x θ g ) − g (x ))uc − g (x )u s
1
2
]
[
≤ − 2 e Qe + eT Pbc × fˆ (x θ f ) + f (x ) + gˆ (x θ g )uc + g (x )uc
1 T
]
[ fˆ (x θ ) + f (x) + gˆ (x θ )u
f g c ]
+ g (x )uc − eT Pbc g (x )u s (16)
f ( x ) ≤ f u ( x ) et g L (x ) ≤ g (x ) ≤ g u (x ) pour x ∈ U c ,
Si fˆ et ĝ sont du type (1), alors (22) peut être
où f u (x ) < ∞ , g u (x ) < ∞ et g L (x ) > 0 . réécrite de la façon suivante :
Sachant ces limites, le superviseur us est choisi e& = Λ c e − b c g (x )u s + b c w
comme suit [18] :
[
+ bc Φ Tf ξ (x ) + Φ gT ξ (x )u c ] (23)
(
u s = I1∗ sgn e T Pbc ) g 1(x )
L
où : Φ f =θ f −θ ∗f , Φ g =θ g −θ g∗ , et ξ (x )
[ ( )
× fˆ x θ f + f u
(x ) + gˆ (x θ g )uc + g (x )uc
u
] (17) représente les fonctions floues de base (3).
Considérons la fonction de Lyapunov :
où I 1∗ = 1 si V e > V , I 1∗ = 0 si V e ≤ V , et 1 T 1
V = 1 eT Pe + ΦfΦf + ΦTg Φ g (24)
sgn ( y ) = 1(− 1) si y ≥ 0(< 0 ) . 2 2γ 1 2γ 2
où : γ 1 et γ2
En substituant (17) dans (16) et en considérant le cas
sont des constantes positives.
Ve > V , on à :
La dérivé de V par rapport au temps est :
1
[
V&e ≤ − eT Qe + eT Pbc × fˆ + f + gˆu c + gu c
2
] V& = − 12 eT Qe − g (x )eT Pbcu s + eT Pbc w
−
g T
[ 1
]
e Pbc × fˆ + f u + gˆ u c + g u u c ≤ − e T Qe ≤ 0 (18) +
1
[
Φ Tf θ& f + γ 1e T Pbcξ ( x ) ]
gL 2
γ1
La prochaine étape consiste à remplacer fˆ et ĝ par
leurs expressions floues données par (1). +
γ2
1
[
Φ Tg θ&g + γ 2 e T Pbcξ ( x )u c ] (25)
Soient les paramètres optimaux suivants [18],
⎡ ⎤ avec Φ& f = θ& f , Φ& g = θ& g .
θ ∗f = min ⎢ sup fˆ (x θ f ) − f (x ) ⎥ (19)
⎣ x∈U c ⎦ A partir de (17) et g ( x ) > 0 on a :
⎡ ⎤ g ( x ) e T Pb c u s ≥ 0 .
θ g∗ = min ⎢sup gˆ (x θ g ) − g (x ) ⎥ (20)
⎣ x∈U c ⎦ Si on choisit les lois d’adaptation [2], [18]
[( ) ] [( )
(26)
w = fˆ x θ ∗f − f (x ) + gˆ x θ g∗ − g (x ) uc ] (21)
37
F. Khaber & al.
et forme (1).
li=1,2,...,mi et i = 1,2,...,n.
u x construire les bases de règles floues de base
Système + pour les systèmes fˆ (x ϑ f ) et gˆ (x θ g ) ,
-
chacune consiste en m 1 × m 2 × L × m n
règles dont les parties IF comprennent toutes
+ uc (.)
les combinaisons possibles des F i l i .
où
(l l )
3.2 Supposition 2 li = 1,2, L , mi , i = 1,2,L, n , et G 1,L, n , H (l1 ,L,ln )
sont des ensembles flous dans R
On dispose de descriptions linguistiques pour les
fonctions inconnues f et g sous la forme : construction des fonctions flous de base
Rg( s ) : IF x1 is B1s and x 2 is Bs2 and... and x n is Bsn les fonctions fˆ x θ f ( ) et gˆ (x θ ) sont construites
g
( )
fˆ x θ f = θ Tf ξ (x ) (34)
avec Air , B is , C r et D s sont des ensembles flous
dans R, r = 1,2, L , L f et s = 1,2, L , Lg . gˆ (x θ ) = θ ξ (x )
g
T
g (35)
38
Commande adaptative floue pour les systèmes non linéaires incertains finis
est donnée par (17), fˆ et ĝ sont donnée par L’équation dynamique du pendule inversé est
donnée par [18] :
(34) et (35) respectivement.
x&1 = x 2
Utiliser les lois d’adaptation suivantes pour
ajuster le vecteur de paramètres θ f mlx 22 cos x 1 sin x 1 cos x 1
g sin x 1 -
mc + m mc + m
(
⎧− γ 1eT Pbcξ (x ) si θ f < M f ou
⎪
) x& 2 =
⎛ 4 m cos 2 x 1 ⎞
+
⎛ 4 m cos 2 x 1 ⎞
u
⎜
l⎜ 3 - ⎟ ⎜
l⎜ 3 - ⎟
⎪ ⎛ ⎞ m c + m ⎟⎠ m c + m ⎟⎠
⎜ θ f = M f et e Pbcθ f ξ (x ) ≥ 0) ⎟
⎝ ⎝
T
T
⎪
⎪ ⎝ ⎠
θ& f = ⎨ θ θ ξ (x ) (36)
avec x1 = θ et x 2 = θ& .
T
⎪− γ 1eT Pbcξ (x ) + γ 1eT Pbc f f 2
⎪ θf où
⎪
⎪
⎩
(
si θ f = M f et e Pbcθ Tf ξ (x ) < 0
T
) g = 9.8 m/s² la gravité universelle.
mc=1kg la masse du chariot.
Utiliser les lois d’adaptation suivantes pour ajuster m =0.1kg la masse du pendule.
le vecteur de paramètres θg.
l = 0.5m la longueur du pendule.
pour le vecteur θg : chaque fois qu’un élément
θgi de θg est proche de zéro θg = ε utiliser :
⎧⎪− γ 2 eT Pbcξ i (x )uc si eT pbcξ i (x )u c < 0 5.1 Paramètres d’initialisation
θ&gi = ⎨ (37)
⎪⎩0 si eT Pbcξ i (x )uc ≥ 0 Le signal de référence ym (t ) = Π sin (t) .
30
(
⎪ θ g = M g et eT Pbcθ gT ξ (x )uc ≥ 0
⎪
) Les états et la commande
x1 ≤ Π 6 , x 2 ≤ Π 6 et u ≤ 180 .
⎪
θ&g = ⎨ θ gθ gT ξ (x )uc (38)
−
⎪ 2 γ e T
Pbc ξ ( x )u c + γ 2 e T
Pb c 2
En plus les constantes Mf = 16, Mg = 1.6, ε = 0.7,
⎪ θg γ1 = 50, γ2 = 1 et v = 0 . 267 .
⎪
(
⎪⎩si θ g = M g et e Pbcθ g ξ (x )uc < 0
T T
) 5.2 Mise en œuvre de l’algorithme
On considère le vecteur de gain k = [2 1 ] assurant
5. EXEMPLE DE SIMULATION la stabilité du système. La résolution de l’équation
de Lyapunov donne (pour Q = diag (10,10))
Il s’agit de développer un contrôleur adaptatif flou
⎡15 5⎤
pour commander un pendule inversé dont la P=⎢ ⎥.
description est donnée par la figure 1. ⎣ 5 5⎦
Les fonctions d’appartenance sont choisies de
forme gaussiennes (m1=m2=5 et i=1,2 et j=1,..,5).
θ& = x 2 ⎡ ⎛ x i + π / 6 − ( j − 1)π / 12 ⎞ 2 ⎤
µ F j ( xi ) = exp ⎢- ⎜ ⎟ ⎥
θ = x1 i
⎢⎣ ⎝ π / 24 ⎠ ⎥⎦
39
F. Khaber & al.
1994.
[2] B.S. Chen, H.J. Uang, and C.S. Tseng “Robust
tracking enhancement of robot systems including
motor dynamics : A fuzzy-based dynamic game
approach,” IEEE Trans. Fuzzy Syst. vol. 6, pp.
538-552, Nov. 1998.
[3] R. Hartani, H.T. Nguyen et B. Bouchon- Meunier,
“Sur l’approximation universelle des systèmes
flous,” RAIRO-APII-JESA, vol. 30, n°5, pp. 645-
663 , 1996.
[4] A. Isidori, Nonlinear Control Systems. Springer –
Verlag London, 1995.
[5] A. Isidori, Nonlinear Control Systems II. Springer
–Verlag London, 1999.
[6] F. Khaber, A. Hamzaoui, K. Benmahammed &
J.L. Sculfort, “Contrôle flou et stabilité d’un
Figure 3: Evolution de l’angle (x1) pour les conditions portique avec masse suspendue,” CNR-IUT 09-10
initiales (x1=-π/60, x2=0) juin 2000.
[7] F. Khaber, A. Hamzaoui, K. Benmahammed,
“Commande floue d’un système non linéaire,”
CIP’2001, 09-11 juin 2001.
[8] H.K. Khalil, Nonlinear Systems. Englewood
Cliffs, NJ: Prentice-Hall, 1996.
[9] B.B. Kook and W. Chul Ham, “Adaptive Control
of Robot Manipulator Using Fuzzy Compensator,”
IEEE trans. on Fuzzy Systems, vol. 8, n° 2, April
2000, pp. 718-737.
[10] C.C. Lee, “Fuzzy Logic in Control Systems:
Fuzzy Logic Controller—Part I and II,” IEEE
Trans. Syst. Man. Cybern. Vol. 20, no. 2, pp. 404-
435, 1990.
[11] H. Lee and M. Tomizuka , “Robust adaptive
control using a universal approximator for SISO
nonlinear systems,” IEEE Trans. Fuzzy Syst. vol.
8, no. 1, pp. 95-106, Feb. 2000.
[12] C. Melin et B. Vidilov « Stabilisation de systèmes
Figure 4: Evolution de l’angle (x1) pour les conditions par des contrôleurs flous (Partie I) ,” RAIRO-
initiales (x1=π/10, x2=0). APII-JESA, vol. 30, n°5, pp. 679-705, 1996.
[13] S.S. Sastry and M. Bodson, Adaptive Control :
6. CONCLUSION Stability, Convergence and Robusteness.
Englewood Cliffs, NJ: Prentice-Hall, 1989.
Dans ce travail, nous avons développé un contrôleur [14] J.E. Slotine and W. Li, Applied Nonlinear
flou adaptatif indirect, qui (i) ne nécessite pas un Control. Englewood Cliffs, NJ: Prentice-Hall,
modèle mathématique du système sous contrôle, (ii) 1991.
est capable d’incorporer directement des règles [15] L. X. Wang, “Fuzzy Systems are universal
floues IF-THEN décrivant le fonctionnement du Approximators,” IEEE trans. on Fuzzy Systems,
système, et (iii) garantit la stabilité globale du vol. 5, n° 8, May 1992, pp. 1164-1173
système en boucle fermée dans le sens que tous les [16] L.X. Wang, “Stable Adaptive Fuzzy Control of
signaux impliqués soient uniformément bornés. Le Nonlinear Systems,” IEEE Trans. Fuzzy Syst. vol.
contrôleur ainsi développé est utilisé pour une 1, pp. 146-155, 1993.
commande en poursuite d’un pendule inversé. Les [17] L. X. Wang, “Adaptive Fuzzy Systems and
résultats de simulation obtenus montrent que (i) le Control: Design and Stability Analysis,”
contrôleur flou adaptatif peut réaliser une bonne Englewood Cliffs. NJ: Prentice-Hall, 1994.
poursuite sans aucune information linguistique, et [18] L. X. Wang, “Stable Adaptive Fuzzy Controllers
(ii) l’incorporation de quelques règles floues dans le with Application to Inverted Pendulum Tracking,”
contrôleur permet d’améliorer la vitesse IEEE trans. on Man and Cybernetics, Part B:
d’adaptation et l’erreur de poursuite. Cybernetics. Vol. 26, n° 5, October 1996, pp. 677-
691.
[19] L. X. Wang, “A Course in Fuzzy Systems and
REFERENCES Control,” Upper Saddle River, NJ: Prentice-Hall,
[1] H. Bühler «Réglage par logique floue», Presses 1997.
universitaires polytechniques romandes, Suisse
40