0% ont trouvé ce document utile (0 vote)
60 vues3 pages

Régulateur LQG avec MATLAB : TP Mécatronique

Ce document présente un rapport sur la conception et la simulation d'un régulateur LQG pour un système dynamique linéaire à l'aide de MATLAB. Les étapes incluent la modélisation du système, l'estimation d'état via un filtre de Kalman, la conception d'un régulateur LQR, et la synthèse du régulateur LQG. Le rapport fournit également des détails sur les matrices du système, les bruits, et les simulations des réponses du système en boucle fermée.

Transféré par

mohammedmouhriz8
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
60 vues3 pages

Régulateur LQG avec MATLAB : TP Mécatronique

Ce document présente un rapport sur la conception et la simulation d'un régulateur LQG pour un système dynamique linéaire à l'aide de MATLAB. Les étapes incluent la modélisation du système, l'estimation d'état via un filtre de Kalman, la conception d'un régulateur LQR, et la synthèse du régulateur LQG. Le rapport fournit également des détails sur les matrices du système, les bruits, et les simulations des réponses du système en boucle fermée.

Transféré par

mohammedmouhriz8
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Rapport TP1 Commande des Systemes

Mécatronique

TP : Synthèse d'un régulateur LQG avec MATLAB

Objectif

Le but de ce TP est de concevoir et de simuler un régulateur LQG (Linear Quadratic Gaussian) pour
contrôler un système dynamique linéaire soumis à des perturbations. Le processus se décompose en
plusieurs étapes:

1. Modélisation du système : Représenter le système sous forme d'équations d'état.


2. Estimation d'état : Utiliser un filtre de Kalman pour estimer les états du système, qui ne sont pas
toujours directement mesurables.
3. Conception du régulateur LQR : Déterminer la loi de commande optimale au sens du critère
quadratique.
4. Synthèse du régulateur LQG : Combiner le filtre de Kalman et le régulateur LQR pour obtenir
le régulateur LQG.

Étape 1 : Définition du système

% Matrices du système
A = [1 -2; -3 2];
B = [0; 1];
C = [1 0];
D = 0;

% Bruits (Covariances)
Q = 0.01*eye(1); % Bruit de processus
R = 0.01; % Bruit de mesure

% Temps de simulation
T = 0:0.01:10;

% Modèle du système en espace d'état


sys = ss(A, B, C, D);

Étape 2 : Synthèse du filtre de Kalman

Rédigé par : TABUEU KAMGUEM Franck Ariel


Objectif : Estimer l'état réel du système (x) à partir des mesures bruitées (y).

%conception du filtre de kalman


[kest, L, ~] = kalman(sys, Q, R);

%observation de la dynamique du filtre seul


sys_kalman = series(kest, sys);

Étape 3 : Synthèse du régulateur LQR

Objectif : Trouver la loi de commande optimale qui minimise un critère quadratique.

% Matrices de pondération LQR


Qx = [10 0; 0 1];
Ru = 1;

% Calcul du gain LQR


K = lqr(A, B, Qx, Ru);

% Boucle fermée avec retour d'état idéal


Acl = A - B*K;
sys_lqr = ss(Acl, B, C, D);

Étape 4 : Régulateur LQG (Combinaison)

Objectif : Combiner le filtre de Kalman et le régulateur LQR pour obtenir le régulateur LQG.

% Temps de simulation
T = 0:0.01:10;

% Entrée au système (signal d'excitation : échelon + sinusoïde)


u = heaviside(T) + sin(2 * pi * 0.5 * T); % Échelon + sinusoïde

% Ajout d'une condition initiale non nulle pour les états


x0 = [1; -0.5]; % Condition initiale pour l'état réel

% Dynamique étendue pour le régulateur LQG


A_cl = [A - B * K, B * K; zeros(size(A)), A - L * C];
B_cl = [B; zeros(size(B))];
C_cl = [C, zeros(1, size(C, 2))];
D_cl = 0;

% Système en boucle fermée


sys_cl = ss(A_cl, B_cl, C_cl, D_cl);

% Simulation avec signal d'excitation


[y, t, x] = lsim(sys_cl, u, T, [x0; zeros(2, 1)]); % États initiaux pour x et estimé

Rédigé par : TABUEU KAMGUEM Franck Ariel


% Affichage de la réponse
figure;
subplot(2, 1, 1);
plot(t, y, 'LineWidth', 1.5);
title('Réponse du système en boucle fermée (LQG)');
xlabel('Temps (s)');
ylabel('Sortie y(t)');
grid on;

subplot(2, 1, 2);
plot(t, u, '--r', 'LineWidth', 1.5);
title('Signal d''excitation (entrée au système)');
xlabel('Temps (s)');
ylabel('Entrée u(t)');
grid on;

Rédigé par : TABUEU KAMGUEM Franck Ariel

Vous aimerez peut-être aussi