Vous êtes sur la page 1sur 15

Commande floue dun pendule invers N.

NASRI

Commande floue dun pendule invers

Ralis par
Sofiene guedri
Encadr par
Mr Anouar Ben Khalifa

Anne universitaire 2017-2017

1 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

.Le modle du pendule invers

I- Introduction :

On va tudier un processus de commande floue permettant de maintenir en


position verticale un pendule invers.
On mesure la vitesse angulaire ainsi que langle dinclinaison, et on calcule chaque
instant la force devant tre applique pour maintenir le pendule dans la position
verticale.

II- Principe :

Le pendule invers tudi est compos dun chariot mobile en translation sur
un axe horizontal, supportant un pendule.
Le pendule fix sur le chariot est libre en rotation. Il admet un angle de 360.

Figure 3 : Les diffrents tats possibles du pendule invers

II- 1- Le modle du pendule invers :

Aprs linarisation du modle autour du point du fonctionnement 0 , qui


correspond la position verticale du pendule.

c..d : cos 1 et sin 0 et en simplifiant diffrentes quations , on obtient les


deux quations diffrentielles suivantes :

8 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

6 6.g (mp mc)


.F .
L(mp 4.mc) L.(mp 4.mc)

.. 4 3.g.m
X .F
mp mc mp 4.mc

Figure 4 : Le pendule invers

Avec :
F : Force (commande) teta : grandeur commande
mc : masse du chariot (=1Kg) mp : masse du pendule (=0.1Kg)
g : acclration gravitationnelle (=9.8 m/s) L :Longueur du pendule(=0.5m)
La priode dchantillonnage = 10 ms

II- 2- La reprsentation dtat du modle discrtis :

La reprsentation dtat sera donc :

Le schma bloc suivant est ralis sous Simulink , afin dobtenir la reprsentation
dtat du systme tudi.

9 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Figure 5 : Le schma bloc du systme.


Les paramtres obtenus sont les comme suit :

II- 3- Trac des paramtres du systme :

Le test du modle a permis de tracer le graphe de teta et de x .

Figure 6 : Trac des paramtres du systme (teta, dteta).

10 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Figure 7 : Trac des paramtres du systme (X).

11 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Chapitre III :

Le contrleur flou.

I- Introduction :

Lobjectif est dasservir langle tout en maintenant le pendule dans sa position


verticale. ie : on a considr quun seul degr de libert selon .

II- Schma d'une commande floue :

La mise en oeuvre d'une commande floue fait apparatre trois grands


modules. Le premier module traite les entres du systme. On dfinit tout d'abord
un univers de discours, un partitionnement de cet univers en classes pour chaque
entre, et des fonctions d'appartenance pour chacune de ces entres.

r (t) e (t) y (t)


Contrleur flou Processus
e (t-1)

Figure 8 : Schma dun contrleur flou

Lerreur (appel teta dans ce travail) est lcart angulaire entre le signal de sortie Y(t)
et le signal de consigne r(t). La variation de lerreur (appel dteta dans ce travail) est
la diffrence entre lerreur linstant k et celle linstant (k-1).

III- Principe de calcul de la commande : le calcul passe par trois tapes.

III- 1-La fuzzification :

La fuzzification, consiste attribuer la valeur relle de chaque entre, sa


fonction d'appartenance chacune des classes pralablement dfinies, donc
transformer l'entre relle en un sous ensemble floue.

12 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Forme des fonctions dappartenance :


On a choisi des fonctions dappartenance triangulaire.

Figure 9 : Les deux entres teta et dteta .

On a dfini que la variation maximale de langle est de 10 en valeur absolue.

III- 2-Linfrence floue :

La seconde tape consiste en l'application des rgles floues. Opration ralise


dans le moteur d'infrence qui permet le calcul, tout en suivant les rgles dfinies
dans la table de la figure 10 .

Algorithme de contrle du pendule invers :

teta
F
N Z P

N PG P Z
Dteta

Z P Z N

P Z N NG

Figure 10 : Algorithme de contrle.

13 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

NG : Ngative grande.
N : Ngative. Z : Zro. P : Positive.
PG : Positive grande.

III- 3- Les rgles floues :

Daprs lalgorithme, on aura les rgles floues suivantes :

1. If (teta is N) and (dteta is N) then (F is PG) (1)


2. If (teta is N) and (dteta is Z) then (F is P) (1)
3. If (teta is N) and (dteta is P) then (F is Z) (1)
4. If (teta is Z) and (dteta is N) then (F is P) (1)
5. If (teta is Z) and (dteta is Z) then (F is Z) (1)
6. If (teta is Z) and (dteta is P) then (F is N) (1)
7. If (teta is P) and (dteta is N) then (F is Z) (1)
8. If (teta is P) and (dteta is Z) then (F is N) (1)
9. If (teta is P) and (dteta is P) then (F is NG) (1)

III- 4- La dfuzzification :

L'tape de dfuzzification qui est la transformation inverse de la premire


tape, permet de passer d'un degr d'appartenance d'une commande la
dtermination de la valeur donner cette commande. ( la mthode choisie est celle
du centre de gravit).

La sortie F :

Figure 11 : La sortie F .

14 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

La commande floue doit donner une solution numrique pour tre exploitable.

Exemple de dfuzzification :

Dans notre cas pour : teta=10 et dteta=4 /s F= -2.95 N.

On le vrifie avec Rule viewer de Matlab.

Figure 12 : Rule viewer de Matlab .

IV- Les rsultats de la simulation :

La simulation est ralis sous Matlab 7, lensemble des programmes sont


organiss sous forme dinterface. On accde en tapant pendule_flou dans
lespace de travail.

15 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Figure 13 : Linterface graphique.

Pour une consigne nulle , on a les figures suivantes :

Figure 14 : Le signal de commande appliqu.

16 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Figure 15 : Le signal teta et dteta .

Commentaire :

Il est clairement apparent , que pour une consigne nulle : teta et dteta sont
pratiquement nulles.
La figure suivante montre la rponse du contrleur flou, qui est aussi nulle.

Figure 16 : La sortie du contrleur flou.

Le contrleur flou gnre une commande nulle, du fait que lerreur est nulle.

17 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Pour un signal de consigne reprsent comme suit :

Figure 17 : le signal de consigne (en bleu)


Et le signal de sortie (en rouge).

Commentaire :

La sortie suit bien la consigne qui varie dans le temps.


On remarque de lgers dpassements 130 et 230 environ.

Le signal de consigne appliqu donne les rsultats suivants :

Figure 18 : Le signal teta .

18 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Figure 19 : Le signal dteta .

On constate que les dviations sont infrieures 10 en valeur absolue, tel que
dfini au dpart.

Figure 20 : La sortie du contrleur flou.

Chaque impulsion dans ce signal reprsente la force appliquer pour compenser la


dviation que subit le pendule.

19 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Comparaison :

Figure 21 : Variation de la sortie du contrleur flou avec teta .

Commentaire :

On remarque que le contrleur ragit en fonction des variations de teta .

20 www.blogmatlab.blogspot.com/
Commande floue dun pendule invers N.NASRI

Conclusion :

Parmi les points forts et les avantages de la commande floue, Les variables
linguistiques. Ces dernires sont bien adaptes la traduction du raisonnement
qualitatif humain. Le fait d'utiliser des prdicats flous permet d'exprimer des
situations graduelles.

La commande floue s'est surtout montre robuste par sa flexibilit : adaptation facile
des domaines dont on ne possde pas de modle mathmatique. Ce qui la rend
applicable des systmes complexes. Mais aussi vis--vis des incertitudes.

Cependant, la commande floue est limite quand le systme est assez complexe (ie :
lorsquon a un nombre lev de rgles floues).
Sans ngliger que les techniques de rglage sont essentiellement empiriques. Et la
dpendance de lexpertise reste toujours consistante malgr tout le dveloppement
technologique connu.

21 www.blogmatlab.blogspot.com/

Vous aimerez peut-être aussi