La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Commande en espace d’état Guy Gauthier ing. Ph.D. SYS-823 - Juillet 2011.

Présentations similaires


Présentation au sujet: "Commande en espace d’état Guy Gauthier ing. Ph.D. SYS-823 - Juillet 2011."— Transcription de la présentation:

1 Commande en espace d’état Guy Gauthier ing. Ph.D. SYS Juillet 2011

2 Représentation en boucle ouverte  Équation :  m entrées, p sorties, n équations d’état linéaires.

3 Commande par retour d’état linéaire  Structure :

4 Représentation en boucle fermée (retour d’état linéaire)  Équation en boucle fermée :

5 Contrôlabilité  Au préalable, il faut vérifier si le système est contrôlable. Rang(M)=n  Matrice de contrôlabilité M :

6 Design par placement de pôles  Valeurs propres désirées pour (A-BK) : Parties réelles négatives; Choix des gains de la matrice de gains K.

7 Exemple de design  Soit le système suivant :

8 Étape 1  Vérifier si le système est contrôlable: Matrice de contrôlabilité Rang(M) = 3 = n  contrôlable.

9 Étape 2 (si complètement contrôlable)  Du polynôme caractéristique de la matrice A, déterminer les coefficients a 1, a 2,..., a n : Polynôme caractéristique :

10 Étape 2 (si complètement contrôlable)  Ainsi, pour l’exemple :  Donc :

11 Étape 3  Construire la matrice de transformation T = MW.  Matrice W :

12 Étape 3 (exemple)  Construire la matrice W :

13 Étape 3 (fin exemple)  Obtenir la matrice de transformation T :  Ici :

14 Étape 4  Choisir les valeurs propres désirées: Pôles en boucle fermée. Écrire le polynôme caractéristique correspondant.  Ce qui mène au coefficients :

15 Étape 4 (exemple)  Donc, si on choisi les pôles suivants:  Cela mène à : 11 22 33

16 Étape 5  Calcul de la matrice de gains K : Taille : 1 ligne et n colonnes.  Donc :

17 Étape 5 (exemple)  Dans l’exemple :

18 Exemple sur MATLAB ® % Entrée des matrices A et B » A=[0 1 0; 0 0 1; ]; » B = [0;0;1]; % Déterminer la matrice de contrôlabilité » M=ctrb(A,B); % Déterminer le rang de M » r=rank(M) r = 3 % Puisque le rang est de 3, le placement des pôles est possible

19 Exemple sur MATLAB ® (suite) % Calcul du polynôme caractéristique » JA = poly(A) JA = % Extraction des coefficients » a1 = JA(2); a2 = JA(3); a3 = JA(4); % Définition des matrices W et T » W = [a2 a1 1; a1 1 0 ; 1 0 0]; » T = M*W;

20 Exemple sur MATLAB ® (suite) % Calcul du polynôme caractéristique désiré en définissant la matrice diagonale J » J=[-2-4*j 0 0 ; *j 0; ]; » JJ=poly(J) JJ = % Extraction des coefficients désirés » aa1 = JJ(2); aa2 = JJ(3); aa3 = JJ(4);

21 Exemple sur MATLAB ® (suite) % Calcul de la matrice de gains K » K=-[aa3-a3 aa2-a2 aa1-a1]*inv(T) K = % Donc les gains k1, k2 et k3 sont: » k1 = K(1) k1 = -199 » k2 = K(2) k2 = » k3 = K(3) k3 =

22 Exemple sur SIMULINK ® (schéma bloc)

23 Exemple sur SIMULINK ® (résultats) x1x1 x2x2 x3x3 Temps (min) Amplitude

24 Exemple #2  Soit un système représenté par les matrices suivantes : » A = [ ; ; ; ]; » B = [0 ; -1 ; 0 ; 0.5]; » C = [ ; ]; MATLAB ®

25 Solution – Est-ce contrôlable ?  Vérifions : » M = ctrb(A,B); » r = rank(M) r = 4 % Oui MATLAB ®

26 Solution – Équation caractéristique de A  det(sI-A) donne ce polynôme de A :  Conclusion : » JA = poly(A); » a1 = JA(2); a2 = JA(3); a3 = JA(4); a4 = JA(5); MATLAB ®

27 Solution – Équation caractéristique désirée  En choisissant les pôles pour obtenir une dynamique ayant un temps de réponse à 2% de 2 secondes et un amortissement de ième ordre.  Puisque :

28 Solution – Équation caractéristique désirée  Le dépassement maximal étant :  Les pôles désirés sont donc :

29 Solution – Équation caractéristique désirée  L’équation caractéristique est finalement :  Les coefficients désirés : » J = [-2-2*sqrt(3)*j 0 0 0; *sqrt(3)*j 0 0; ; ]; » JJ = poly(J); » aa1 = JJ(2); aa2 = JJ(3); aa3 = JJ(4); aa4 = JJ(5); MATLAB ®

30 Solution – Matrice de transformation T  La matrice W étant déduite des coefficients de A, on peut obtenir la matrice T comme suit : » W = [a3 a2 a1 1; a2 a1 1 0 ; a ; ]; » T=M*W; MATLAB ®

31 Solution – Matrice des gains K  La matrice K est calculée comme suit : » K=-[aa4-a4 aa3-a3 aa2-a2 aa1-a1]*inv(T) K = MATLAB ®

32 Simulation (pendule inversé)  Schéma SIMULINK ® : y1 = x1 = angle du pendule (radians) y2 = x3 = position du chariot (mètres)

33 Simulation (pendule inversé) y1y1 Temps (min) y2y2 Conditions initiales : x1 = 0.1; x2 = 0 ; x3 = 0 ; x4 = 0

34 Simulation (pendule inversé) x1x1 Temps (min) x2x2 Conditions initiales : x1 = 0.1; x2 = 0 ; x3 = 0 ; x4 = 0 x3x3 x4x4

35 Réservoir de mélange À contrôler: Température T Hauteur h Commande: Débit eau froide F C Débit eau chaude F H

36 Modèle du réservoir de mélange  Équations :

37 Paramètres du système  Voici les paramètres du système : K = 1 m 2.5 /min h s = 4 m A c = 2 m 2 T H = 65 °C T C = 15 °C T S = 35 °C

38 Matrices du modèle  Donc : » A = [-1/8 0 ; 0 -1/4]; » B = [1/2 1/2 ; ]; » C = [1 0 ; 0 1]; MATLAB ®

39 Contrôlabilité  Calcul de M :  Rang de M = 2. » M = ctrb(A,B); » r = rank(M); r = 2 MATLAB ®

40 Équation en boucle fermée  Posant K :  Alors : % En symbolique » syms k11 k12 k21 k22 » S = A+B*[k11 k12; k21 k22]; MATLAB ®

41 Élimination de l’interaction  Il suffit que A+BK soit diagonal, donc :  Il faut donc que :

42 Élimination de l’interaction  En remplaçant, on trouve que : » S = A+B*[k11 -k22; 3/2*k11 k22] S = [ -1/8+5/4*k11, 0] [ 0, -1/4-25/4*k22] MATLAB ®

43 Placement des pôles  En ajustant les gains k 11 et k 22, on modifie la dynamique du système.  Indépendance de l’ajustement des 2 gains.  On désire un constante de temps de 2 min pour le niveau et de 5 min pour la température.

44 Équation caractéristique  L’équation caractéristique de A+BK est :  D’où :

45 Calcul de la matrice N  Il faut que BN soit une matrice diagonale.  Définissant N :  Alors :

46 Calcul de la matrice N  Pour BN diagonale, il faut :  Ce qui mène à :

47 Calcul de la matrice N  Donc la matrice N sera : » syms n11 n12 n21 n22 » U = B*[n11 n12; n21 n22] U = [ 1/2*n11+1/2*n21, 1/2*n12+1/2*n22] [ 15/4*n11-5/2*n21, 15/4*n12-5/2*n22] » U = B*[n11 -n22; 3/2*n11 n22] U = [ 5/4*n11, 0] [ 0, -25/4*n22] MATLAB ®

48 Simulation  Schéma SIMULINK ® : y1 = x1 = Δ niveau (mètres) y2 = x2 = Δ température (°C)

49 Simulation y 1 = Δh Temps (min) Échelons unitaires sur température à 1 min; sur niveau à 10 min. y 2 = ΔT °C ou m

50 Simulation u 1 = débit d’eau chaude Temps (min) Échelons unitaires sur température à 1 min; sur niveau à 10 min. u 2 = débit d’eau froide m 3 /min

51 Commande par retour de la sortie  Structure :

52 Représentation en boucle fermée (retour de sortie)  Équation en boucle fermée :

53 Observateur d’état (préambule)  Considérons le système suivant :  On peut faire l’approximation de l’état du système comme suit :

54 Observateur d’état  L’approximation est l’observateur d’état. En utilisant u et y comme entrée, il déduit la valeur du vecteur d’état.

55 Schéma bloc d’un observateur d’état Terme de correction

56 Observateur d’état complet  Schéma bloc :

57 Observateur d’état complet (Erreur)  L’erreur est évaluée comme suit :  Si les paramètres de l’observateur sont identiques aux paramètres réels, cela simplifie l’équation.

58 Observateur d’état complet (Erreur – suite)  Donc, comme A e = A, B e = B et C e = C:  La dynamique du vecteur d’erreur « e » est définie par les valeurs propres de la matrice A-K e C.

59 Observateur d’état complet (Dynamique de l’erreur)  Les valeurs propres de la matrice A- K e C sont ajustés pour que la dynamique soit beaucoup plus rapide que la dynamique du système réel.

60 Observateur d’état complet (Condition essentielle)  Pour pouvoir réaliser un observateur d’état, il faut que le système soit observable. Rang(N) = n  Matrice d’observabilité N :

61 Exemple de conception d’un observateur d’état complet  Soit le système suivant :

62 Étape 1  Vérifier si le système est observable: Matrice d’observabilité Rang(N) = 3 = n  observable.

63 Étape 2 (si complètement observable)  Du polynôme caractéristique de la matrice A, déterminer les coefficients a 1, a 2,..., a n : Polynôme caractéristique :

64 Étape 2 (si complètement contrôlable)  Ainsi, pour l’exemple :  Donc :

65 Étape 3  Construire la matrice de transformation Q = (WN * ) -1.  Rappel - Matrice W :

66 Étape 3 (exemple)  Construire la matrice W :

67 Étape 3 (fin exemple)  Obtenir la matrice de transformation Q :  Ici :

68 Étape 4  Choisir les valeurs propres désirées: Pôles en boucle fermée. Écrire le polynôme caractéristique correspondant.  Ce qui mène au coefficients :

69 Étape 4 (exemple)  Donc, si on choisi les pôles suivants:  Cela mène à : 11 22 33

70 Étape 5  Calcul de la matrice de gains K e :

71 Étape 5 (exemple)  Dans l’exemple :

72 Exemple sur MATLAB ® % Entrée des matrices A et B » A=[0 1 0; 0 0 1; ]; » B = [0;0;1]; » C = [0 0 1]; % Déterminer la matrice d’observabilité » N=obsv(A,C)’; % Déterminer le rang de N » r=rank(N) r = 3 % Puisque le rang est de 3, le placement des pôles est possible

73 Exemple sur MATLAB ® (suite) % Calcul du polynôme caractéristique » JA = poly(A) JA = % Extraction des coefficients » a1 = JA(2); a2 = JA(3); a3 = JA(4); % Définition des matrices W et Q » W = [a2 a1 1; a1 1 0 ; 1 0 0]; » Q = inv(W*N’);

74 Exemple sur MATLAB ® (suite) % Calcul du polynôme caractéristique désiré en définissant la matrice diagonale J » J=[-4-8*j 0 0 ; *j 0; ]; » JJ=poly(J) JJ = % Extraction des coefficients désirés » aa1 = JJ(2); aa2 = JJ(3); aa3 = JJ(4);

75 Exemple sur MATLAB ® (suite) % Calcul de la matrice de gains Ke » Ke=Q*[aa3-a3;aa2-a2;aa1-a1] Ke =

76 Exemple sur SIMULINK ® (schéma bloc)

77 Sous-système : Observateur

78 Exemple sur SIMULINK ® (schéma bloc) Sous-système : Observateur [B K e ]

79 Exemple sur SIMULINK ® (résultats) y =x 1 x2x2 x3x3 Temps (min) Amplitude erreur sur y

80 Si on ajoute l’aspect contrôle  Le contrôle par retour d’état sera le même que celui décrit au début de la présentation.  On avait obtenu la matrice de gain K :

81 Exemple sur SIMULINK ® (schéma bloc)

82 Exemple sur SIMULINK ® (résultats) Temps (min) y


Télécharger ppt "Commande en espace d’état Guy Gauthier ing. Ph.D. SYS-823 - Juillet 2011."

Présentations similaires


Annonces Google