Vous êtes sur la page 1sur 18

COMMANDE OPTIMALE

ENSET MOHAMMEDIA
GECSI-2 &SEER-2
2020-2021
Commande Optimale: Introduction

 Problèmes de la simple commande par retour d’état


La méthode consistant à définir le comportement du système en ne définissant que les
pôles n’est pas toujours satisfaisante.
Parmi les problèmes généralement soulevés :
1. L’erreur de position est modifiée ;
2. On ne contrôle en aucune façon la dynamique des signaux autres que la sortie:

Risque des phénomènes de saturation sur les variables d’état.


Risque des phénomènes de saturation sur les variables de commande.

 Solution: Définir d’un indice de performance (critère)


Catégories des critères Quelques formulations
- minimiser un temps ; • L’énergie du signal d’erreur (ISE: Integral of Square of the Error).
- optimiser une amplitude ; 𝑇

- minimiser une erreur ; 𝐽= 𝜀 2 𝑡 𝑑𝑡


0
- minimiser une consommation. • La durée quadratique moyenne vis-à-vis du signal d’erreur
( ISTE Integral of Time multiplied by the Square Error).
𝑇
𝐽= 𝑡𝜀 2 𝑡 𝑑𝑡
0
Commande Optimale: Introduction

 Exemple de questions
On considère un véhicule de masse m, on note y(t) sa position et u(t) une force appliquée au véhicule
permettant de contrôler son mouvement à l'instant t > 0.

La position y et la force u sont liées par l‘équation différentielle :

1. On suppose la position et la vitesse du véhicule connues à l'instant 0:


2. On souhaite choisir u de sorte que le véhicule rejoigne l'origine (et reste ensuite à l'origine)
en un temps minimum.

3. La force u doit satisfaire une contrainte du type : 𝑢(𝑡) < 𝑀

(x1(t), x2(t) représentent la position et la vitesse du véhicule à l'instant t)


Commande Optimale: Introduction
 Contexte

Les systèmes à commander sont:


1. linéaires,
2. à coefficients constants.
3. Stabilisables par retour d’état.

Définition
Un système linéaire est stabilisable s’il existe une commande en boucle fermée telle
que le système commandé soit stable.

Remarque

Si la commande utilise un retour d’état, il suffit que les éventuels modes instables
du système soient gouvernables (commandables).
Commande Optimale: Introduction
 Choix du critère

** Qui dit commande optimale dit critère pour choisir cet optimum **

Le but d’un système de commande est de réaliser :

– Le rejet rapide des perturbations (l’état du système converge rapidement


vers son équilibre après une perturbation)

– Minimiser l’énergie pour assurer le suivi de consigne et le rejet des


perturbations

 Conclusion:

On se trouve donc face à une obligation de compromis entre une convergence rapide et
une minimisation de l’énergie de commande
Principe de la commande quadratique
 Exemple du critère
1. Rejet des perturbations (conditions initiales non nulles)

Soient deux systèmes avec la même condition initiale(≠0) on souhaite savoir


en combien de temps les systèmes vont retourner à l’équilibre.

 
On constate que
   (t )dt
2 2
x1 (t ) dt x 2
0 0
On peut donc dire qu’un rejet rapide de perturbation est respecté par la minimisation de

J x   x 2 (t )dt
0
Principe de la commande quadratique
2. Rejet des perturbations : Cas multivariable

Dans le cas multivariable on défini une matrice de pondération Qc (symétrique


définie non négative). On peut ainsi affecter un poids différent à chaque composante
du vecteur d’état

J x   x T (t ).Qc .x(t )dt
0
3. Energie de commande
De la même façons on peut évaluer l’énergie de commande par :

J u   u 2 (t )dt
0
Dans le cas multivariable on défini une matrice de pondération Rc (symétrique
définie positive). On peut ainsi affecter un poids différent à chaque composante
du vecteur de commande

J u   u T (t ).Rc .u (t )dt
0
Principe de la commande quadratique
 Critère de compromis

Des observations précédentes, on peut définir un critère de compromis entre


l’énergie de commande et la dynamique du système.

 
J LQ  J x  J u   x (t )Qc x(t )dt   u T (t ) Rc u (t )dt
T

0 0


 
J LQ   x T (t )Qc x(t )  u T (t ) Rc u (t ) dt
0

Qc matrice symétrique définie non negative : ponderation de l' état


Rc matrice symétrique définie positive : ponderation de la commande

C’est la commande linéaire quadratique


Commande linéaire quadratique (LQ)
1. PROBLÈME LQ
Le problème est de calculer la matrice K qui permet de déterminer le
retour d’état u(t)=- K.x(t) qui minimise, en régime libre, le critère LQ

 
 
 J LQ   x (t )Qc x(t )  u (t ) Rc u (t ) dt
T T

 0
u (t )   K .x(t )

Schéma de commande en régime libre
Commande linéaire quadratique (LQ)
2. SOLUTION DE LA COMMANDE LQ

Avec l' hypothèse :


 Qc matrice symétrique définie non negative et Rc matrice symétrique définie positive
La solution du problème de régulation LQ est donnée par la loi de commande :
u (t )   K .x(t )
avec
1
K  Rc B T P, K : Gain de Kalman
avec P solution symétrique de l' équation algébrique de RICCATI
1
0  PA  AT P  PBR B T P  Qc
Jmin = x T 0 . P. x(0)
D’une façon générale, cette commande cherche à répondre à des objectifs de:
1. Stabilité : retour à l’état d’équilibre après une perturbation ;
2. Performance de régulation : rejet d’une perturbation, ainsi que la rapidité du rejet.
En termes de performances, il s’agit donc de déplacer les valeurs propres de la boucle
fermée dans le demi-plan complexe gauche, le plus loin possible de l'axe imaginaire.
Commande linéaire quadratique (LQ)

3. SOUS MATLAB

Commande “lqr”: K=lqr(A,B,Q,R)

[K,S,e] = lqr(A,B,Q,R)

1
 K: Gain de Kalman: Résolution du problème LQ K  Rc B T P
 S: Resolution de l’équation de Riccati continue : 0  PA  AT P  PBR 1 B T P  Qc
 E: valeurs propres de la matrice ABF=A-B.K
Commande linéaire quadratique (LQ)
4. EXEMPLE
1
G ( p) 
p3  2 p 2  3 p  4

  2  3  4 1   2
 
 x(t )   1 0 0  x(t )  0u (t ) x0   2

  0 1 0  0  2
 y (t )  0 0 1x(t )

1 0 0
Qc  0 1 0 ; Rc    avec   1;1 / 10;1 / 100
0 0 1
rang (C ( A, B ))  3  A, B  est commandable donc la condition (A, B) stabilisable est verifiée
Commande linéaire quadratique (LQ)
Code Matlab Simulation en régulation (Consigne=0)

clear all; close all; clc;


A=[-2 -3 -4; 1 0 0; 0 1 0];B=[1;0;0];C=[0 0 1];

Q=[1 0 0; 0 1 0; 0 0 1]; R=1;

x0=[-2;-2;-2]; %Conditions Initiales

[K,S,e]=lqr(A,B,Q,R) %Calcul du retour d'état optimal (gain de kalman)

sysbf=ss(A-B*K,B,C,0)%Système en boucle fermée

[y,t,x]=initial(sysbf,x0); %Réponse en régime libre

subplot(2,1,1);plot(t,y); grid %Affichage de la sortie (y=x(3))

u=-K(1)*x(:,1)-K(2)*x(:,2)-K(3)*x(:,3);% Calcul de la commande

subplot(2,1,2);plot(t,u); grid
Commande linéaire quadratique (LQ)
Simulation en régulation yc=0

Rc=1  K= [0.6314
0.9623
0.1231] ;

Pôles :

-1.7212
-0.4551 + 1.4793i
-0.4551 - 1.4793i
Commande linéaire quadratique (LQ)
Rc=1/10  K= [2.7229
4.1529
1.0990 ]

Pôles :

-2.8337
-0.9446 + 0.9524i
-0.9446 - 0.9524i

En diminuant la pondération sur la commande on accélère le système (les pôles du système


on été déplacé plus à gauche) mais la valeur de la commande a augmenté.
Commande linéaire quadratique (LQ)
Rc=1/100  [9.6215
15.5293
6.7703]

Pôles :

-9.8516
-0.8849 + 0.5569i
-0.8849 - 0.5569i

En diminuant la pondération sur la commande on accélère le système mais la valeur


de la commande a fortement augmenté.
Commande linéaire quadratique (LQ)

On diminue R on accélère le Système

Rc=1

Rc=0,1

Mais Comment choisir la matrice R ? Rc=0,01


Commande linéaire quadratique (LQ)

Exercice

On dispose d’un système de premier ordre décrit par l’équation:


x t = ax t + bu t ; avec: a = −1 et b = 0,5
1. Calculer le régulateur du retour d’état K tel que u t = −𝐾𝑥(𝑡) qui minimise le critère
+∞
𝐽1 = 𝑥 2 𝑡 + 𝑢2 𝑡 𝑑𝑡
0
2. Donner alors l’expression de la fonction de transfert en boucle fermée (consigne non nulle)
3. Pour différencier entre l’état et la commande , le critère à minimiser est:
+∞
𝐽2 = 𝑥 2 𝑡 + 𝛼. 𝑢2 𝑡 𝑑𝑡
0
a. Calculer le paramètre de retour K
b. Tracer l’évolution du pole en boucle fermée lorsque 𝛼 varie de 0 à +∞

Vous aimerez peut-être aussi