Projet Diagnostic Des Systèmes Automatiques
December 17, 2022 | Author: Anonymous | Category: N/A
Short Description
Download Projet Diagnostic Des Systèmes Automatiques...
Description
Projet _____________________
iagnostic des systèmes automatiques
Encadré par : Mr CHERKAOUI Abdeljab Abdeljabbar bar
1
Réalisé par : ABOUFARS Noureddin Noureddinee EL IDRISSI Ilyas
Cahier des charges :
Modélisation de comportement en espace d'état d’un réservoir mélangeur pour contrôler la température T et la hauteur H. Pour cela on doit commander deux électrovannes : une Fc pour débit eau froide et une Fh pour débit eau chaude.
2
Modèle du réservoir de mélange ce projet examine la conception des observateurs pour une classe de systèmes dynamiques linéaires
dans laquelle l’incertitude du système peut être modélisée comme un terme additif de perturbation inconnue dans l'équation dynamique :
m entrées, p sorties, n équations d’état linéaires
Avec
u (t) est le vecteur d’entrée connu et d (t) est l’entrée inconnue ou vecteur de perturbation. Notre système est représenté par les matrices suivantes :
Paramètres du système K = 1 ./min
TC = 15 °C
hs = 4 m
TS = 35 °C
Ac = 2
3
TH = 65 °C
Les Matrices du modèle seront donc :
Un observateur est défini comme un observateur à entrée inconnue pour le système, si son vecteur d'erreur d'estimation d'état, e (t), défini comme suit :
) = x (t ) - x ^ ^((t ) e(t La structure d'un UIO d'ordre complet est donnée par le système dynamique :
Figure 1 : Observateur d'entrée inconnu (UIO)
4
où x est l'estimation d'état, z est l'état de l'observateur dynamique d'ordre complet et F, T, K et H sont
̑
des matrices à concevoir pour réaliser un découplage des entrées inconnues. La Figure 1 présente un diagramme synoptique de l’UIO. Le diagramme synoptique montre que l’UIO est essentiellement un système dynamique qui découple la dynamique d'estimation de l'état du terme de perturbation dans le (t) système d'origine. En développant e ͦ on obtient :
et il est facile de voir que pour rendre l'erreur d'estimation une fonction de F e (t):
Les équations:
Si toutes les valeurs propres de F sont stables, alors e (t) approchera de zéro de manière asymptotique. Les conditions nécessaires et suffisantes pour que le système de z soit une UIO pour le système de x sont:
(1) rank (CE ) = rank ( E E ) (2) (C; (C; A1) A1) est une paire détectable, où A1 A 1 = A = A - E [(CE [(CE )T CE ]-1( 1(CE CE )T CA alors nous pouvons calculer les matrices d'observateur suivantes:
Ensuite, l’observabilité du couple (C; A1) doit être vérifiée. Une étape importante de la conception d’une UIO consiste à stabiliser F = A1 − K1C. Si le couple (C ; A1) est détectable, vous pouvez y parvenir en utilisant le placement des pôles pour choisir la matrice de gain appropriée K1. On peut montrer que 5
l'observabilité du couple (C ; A1) est équivalente à l'observabilité du couple (C ; A) . Par conséquent, si le couple (C ; A1) est observable ou au moins détectable, le gain K1 peut être obtenu pour l'UIO. Par conséquent, si (C ; A1) est observable, il existe une UIO et K1 doit être calculé à l'aide du placement des pôles.
On peut passer à la réalisation du code Matlab, pour enfin simuler. Les figures ci-dessous l’illustrent :
A = [-1/8 0;0 -1/4] B = [1/2 1/2; 3.75 -2.5] C = [1 0 ;0 1] D = 0; E = [1;0] sys = ss(A,B,C,D) ss(A,B,C,D); ; rank(C*E) rank(E) H = E*inv((C*E) E*inv((C*E)'*(C*E))*(C* '*(C*E))*(C*E)' E)' T = eye(2)-H*C A1 = T*A rank(obsv(A1,C)) K1 = place(A',C',[-2,-10])' F = A1-K1*C K = K1 + F*H x1_0 = 10; x2_0 = -10; sim('TEMPHAUTEUR') sim('TEMPHAUTEUR' ) t = linspace(0, linspace(0,20,length(X_ 20,length(X_hat)); hat)); figure(1),plot(t,X),hold on on 'xb'),hold ),hold on on plot(t,X_hat(:,1),'xb' plot(t,X_hat(:,1), 'xg'),hold ),hold on on plot(t,X_hat(:,2),'xg' plot(t,X_hat(:,2), xlabel('Time in seconds'),ylabel( xlabel('Time seconds'),ylabel('State 'State trajectory and estimate') estimate' ) title('Dynamic title( 'Dynamic system state and UIO estimate' estimate') ) legend('x_1' legend( 'x_1', ,'x_2' 'x_2', ,'x_1 hat', hat','x_2 hat' hat') )
6
On vérifie d’abord que le rang (CE) = rang (E) = 1: rang (C * E) rang (E) ans = 1 ans =1 Le rang est égal à 1 selon les besoins. Les matrices d'observateur sont calculées ensuite : H = E * inv ((C * E) ’* (C * E)) * (C * E)’ T = oeil (2) -H * C A1 = T * A H= 1
0
0
0
T= 0
0
0
1
A1 = 0
0
0 -0.2500
Ensuite, l'observabilité du couple (A1; C) doit être vérifiée. vér ifiée. Si c'est le rang complet (rang (obsv (A1; C)) = 2), alors on peut appliquer le placement de pole: rang (obsv (A1, C)) ans = 2
Nous allons maintenant appliquer le placement des pôles afin de placer les pôles observateurs à [−2; 10]. K1 = lieu (A ’, C’, [ - 2, -10) ’ K1 = 1.8750 0
7
0
9.7500
Enfin, les matrices d'observateur F et K sont calculées: F = A1-K1*C K = K1 + F*H
F= -1.8750
0
0 -10.0000 K= 0
0
0
9.7500
Le schéma de principe Simulink au niveau de la racine pour le système dynamique du réservoir de mélange est :
8
Le schéma fonctionnel Simulink du sous-système dynamique est :
Le schéma de principe Simulink de l'UIO est :
Examinons les résultats de la simulation avec une perturbation survenue à t = 10 secondes. Les conditions initiales du système dynamique comme x1_0 = 10; x2_0 = -10; 9
On peut voir les trajectoires d'état dans les lignes continues. Le «x» en pointillé représente l’estimation
de l’UIO. Pour la perturbation donnée et les emplacements de pôles d’observateur choisis, l’observateur semble converger (supprimer toute erreur d’estimation) en moins de cinq secondes. Pour une entrée inconnue de type sinusoïdale la réponse du système est :
10
Pour une entrée inconnue de type perturbation ‘pulse’ la réponse du système est :
Pour une entrée inconnue issue d'un défaut réel enregistrer dans le fichier CSV suivant :
11
Pour la configuration suivante :
La réponse du système est :
12
View more...
Comments