asservissements par logique floue

Transcription

asservissements par logique floue
ASSERVISSEMENTS PAR LOGIQUE FLOUE
Exercice 12.6.1 On veut régler un système par régulateur flou: Banc SIMA en position.
Cahier des charges: D1 ≅ 5 %. On dispose des mesures de position et de vitesse.
On a modélisé – et linéarisé – le banc SIMA du laboratoire d'automatique de l'EIG
(sans l'amplificateur de puissance) par ses matrices d'état:
As =
-1.5224e-001
1.5915e+000
-1.9076e+003
bs =
0
0
9.2600e+002
csT =
0
1
0
0
0
4.1266e+000
0
-1.1112e+004
bsv =
0
-8.0128e+001
0
0
ds = 0
L'amplificateur de puissance est modélisé par un filtre du premier ordre:
Kcm = 1,98
Tcm = 0,5 [ms]
A Créer un régulateur flou:
• définition des ensembles linguistiques pour les variables d'entrée (écart de position
et vitesse) et pour la sortie (tension de commande de l'ampli du moteur).
• établissement des règles de commande.
B Introduction sous MATLAB:
lancer la fonction fuzzy.
introduire la fuzzification des signaux.
introduire les règles de commande
spécifier les méthodes de calcul (et, ou, implications, ...)
enregistrer le régulateur sous un nom choisi.
C Ouvrir Simulink et SIMAflc1.mdl. Si on ne dispose pas du schéma Simulink mentionné
(créé à l'EIG), on en crée un à l'aide du modèle d'état ci-dessus et on le complète par un
régulateur flou (provenant de la librairie simulink\blocksets&toolboxes\simulink-fuzzy)
précédé d'un multiplexeur et de gains à la sortie et aux deux entrées. Raccorder l'écart de
position entre consigne (issue d'un bloc Step) et mesure à la première entrée et la mesure de
vitesse à la deuxième entrée. Ouvrir le bloc Fuzzy-Logic-Controller et inscrire le nom choisi en
B dans la fenêtre. Dans State–Space, placer les valeurs A = As et B = bs ci-dessus, puis
placer la matrice unité C = eye(3,3) et D = [0;0;0]. Pour Matrix–Gain1, K = csT et pour
Matrix–Gain2, K = [1 0 0].
-0.1
Step
Sum
Gain1
Mux
100
0.1
Gain3
Fuzzy Logic
Controller
Gain2
Mux
1.98
05.e-3s+1
Transfer Fcn
x' = Ax+Bu
y = Cx+Du
K
State-Space
Matrix
Gain1
K
Matrix
Gain2
D Lancer une simulation. Au besoin, modifier le régulateur flou et l'enregistrer sous un
nouveau nom avant de relancer une simulation. On peut aussi comparer avec un régulateur
classique (P, PI, PID, PD) inséré à la place du régulateur flou.
Enoncés d’exercices pour section 12.6
1
020222

Documents pareils