Vous êtes sur la page 1sur 5

INSA de Toulouse, spécialité AEI 4ème année

Examen d’Automatique - Commande Numérique des Procédés


Corrigé
Documents et calculatrice autorisés.
Sujet volontairement long (3 problèmes) pour couvrir plusieurs aspects du cours (barème ≥ 20).
Quasiment toutes les questions peuvent être traitées séparément les unes des autres.
On trouve une annexe avec quelques résultats numériques utiles.
4 Janvier 2005

Premier problème Donner la fonction de transfert du système


échantillonné. Le système est-il stable ?
Soit le système mécanique donné par l’équation
différentielle du second ordre suivante : Réponse : En utilisant la formule C(zI − A)−1 B et le
calcul de l’inversion matricielle donnée en annexe (avec
ẍ(t) + x(t) = u(t) a = cos(T ) et b = sin(T )) on trouve :

où u(t) est une force qui commande le système. On dispose Y (z) (1 − cos(T ))(z + 1)
= 2 , pôles: cos(T ) ± j sin(T )
pour ce système d’un capteur de position y(t) = x(t). U (z) z − 2 cos(T )z + 1
1 - Donner une représentation d’état du système en
Si on prend T1 pour avoir la√ période d’échantillonnage la
faisant le choix de   plus courte, les pôles sont 2/2(1 ± j) ce qui caractérise
x
X= un mode oscillant juste stable car le module des pôles est

1.
comme vecteur d’état. Si on prend T en respectant au plus juste les critères
2
Réponse : du théorème de Shannon et en limitant la cadence de
     numérisation, les pôles sont ±j ce qui caractérise un mode
 Ẋ = 0 1 0 oscillant juste stable car le module des pôles est 1.
X+ u

−1 0 1
Pour un choix de T3 , pour se simplifier les calculs, les
 y =  1 0 X

2
pôles sont −1 et −1 et la fonction de transfert devient z+1 .
Le système est juste stable. La simplification zéros/pôles
2 - On souhaite commander le système à l’aide implique une perte de commandabilité ou d’observabilité.
d’un calculateur. Donner la représentation d’état
du système échantillonné (convertisseur numérique- 4 - On envisage une commande proportionnelle en
analogique modélisé par un bloqueur d’ordre zéro) à la boucle fermée de la forme
période T .
uk = kp (yck − yk )
Réponse : On applique les formules d’échantillonnage
pour les modèles dans l’espace d’état et en utilisant le cal- où yck est un signal de consigne. Caractériser les valeurs de
cul de l’exponentielle donnée en annexe on trouve : kp pour lesquelles le système de boucle fermée est stable.
     Réponse : La fonction de transfert en boucle fermée est :
 Xk+1 = cos(T ) sin(T ) 1 − cos(T )
Xk + uk

− sin(T ) cos(T ) sin(T ) Y (z) kp (1 − cos(T ))(z + 1))
   = 2
 yk = 1 0 X k Yc (z) z − (kp − (2 + kp ) cos(T ))z + 1 + kp (1 − cos(T ))

3 - Choisir une période d’échantillonnage parmi les trois Le critère de Jury appliqué au polynôme caractéristique de
suivantes : ce système, donne:

T1 = π/4 s , T2 = π/2 s , T3 = π s a0 + a1 + a2 = (2 + 2kp )(1 − cos(T )) > 0


a0 − a1 + a2 = 2(1 + cos(T )) > 0
et garder cette valeur pour la suite de la première partie. |a2 | − a0 = −kp (1 − cos(T )) > 0

1
Les pôles sont de module strictement plus petit que 1 si et Réponse : Il faut prendre le vecteur d’état :
seulement si −1 < kp < 0 et T 6= 0 [π].  
q
Pour les périodes d’échantillonnage T1 = π/4 et T2 = Xa =  x1 
π/2, le système est stabilisable, il y a suffisamment x2
d’échantillons pour réguler la dynamique du système.
Pour T3 = π les pôles sont de modules égaux à un dans 7 - Calculer un correcteur par retour d’état
l’intervalle −1 < kp < 0 et de module plus grand que 1 u = −KXa
ailleurs. Le système n’est pas asymptotiquement stabilis-
able par cette loi de commande. pour ce système, qui place les pôles en −1, −2 et −3.
5 - On prend kp = −1, en considérant que les con- Réponse :
ditions initiales sont nulles, calculer les quatre premiers
PA (p) = p3 + p , PA−BK (p) = p3 + 6p2 + 11p + 6
échantillons de la réponse impultionnelle de la boucle
fermée. Ce qui donne, car nous sommes dans la base compagne de
Réponse : Pour un gain de retour proportionnel kp = commande :  
−1, le système en boucle fermée devient K = 6 10 6
8 - En adoptant la notation suivante
Y (z) (cos(T ) − 1)(z + 1))
=  
Yc (z) (z + 1)(z + cos(T )) K = kq k1 k2
En simplifiant le pôle −1 qui est juste stable on a la rela- pour le gain de retour d’état, choisir parmi les trois
tion récurrente : schémas suivants lequel permet une régulation du système
G(p) qui assure des pôles en boucle fermée égaux à −1, −2
yk+1 = −cos(T )yk + (cos(T ) − 1)yck et −3 ainsi qu’une précision entrée-sortie pour des signaux
indiciels.
et donc pour les différents choix de période
d’échantillonnage en prenant yc0 = 1 puis yck = 0
pour tout k 6= 0 : Figure 1:
yc y
+ G(p)
T1 T2 T3 −−

2−2
y1 2 −1 −2 [ k1 k2 ]
√ X
2−1
y2 2 0 −2

2−2
kq 1/p
y3 4 0 −2

2−1
y4 4 0 −2
Figure 2:
Second problème
yc y
+ kq 1/p G(p)
Soit le système −
    
 Ẋ = 0 1 0 [ k1 k2 ] X
X+ u

G(p) : −1 0 1
 y =  1 0 X

On place un second système en série tel que Figure 3:


yc q u y
1
Q(p) = Y (p) + 1/p kq + G(p)
p − −
6 - Montrer que le système obtenu admet la représentation [ k1 k2 ] X
d’état suivante
    

 0 1 0 0
 Ẋa =  0 0 1  Xa +  0  u

Réponse : Seuls les schémas 1 et 3 permettent le place-
0 −1 0 1


 ment de pôles souhaité. Le schéma de la figure 3 as-
 
q = 1 0 0 Xa sure une intégration dans la chaı̂ne d’action du système

2
(intégrale de l’erreur entre la consigue yc et la sortie y) il avec
permet donc la précision du système bouclé.  √ √   √ 
√2/2 √2/2 1−
√ 2/2
9 - On souhaite réaliser la régulation du schéma de la A= B=
− 2/2 2/2 2/2
figure 3 à l’aide de calculateurs numériques :  
C= 1 0
 
U (z) = F (z)(Yc (z) − Y (z)) − k1 k2 X(z)
Le vecteur d’état Xk n’étant pas mesuré, proposer un ob-
où X(z) et Y (z) sont respectivement l’état et la sortie du servateur dynamique pour ce système avec des dynamiques
système G(p) échantillonné à la cadence T = π/4s (con- les plus rapides possibles. On note H la matrice de gain
vertisseur numérique-analogique modélisé par un bloqueur de l’observateur.
d’ordre zéro). Réponse : Le modèle d’état est cohérent avec ce qui a
Par un choix de méthode de discrétisation, donner une déjà été fait dans la question 2. On recherche un observa-
fonction de transfert F (z) qui permet l’approximation teur de la forme :
numérique de la loi de commande du schéma de la figure
3. X̂k+1 = (A − HC)X̂k + Buk + Hyk

Réponse : F (z) est la discrétisation de l’opérateur Pour le calcul de H on procède par étapes. Premièrement
kq /p ce qui donne respectivement par les méthodes de le polynôme caractéristique du système à observer :
discrétisation avant, arrière, Tustin : √
PA (z) = z 2 − 2z + 1
T kq T kq z T kq (z + 1)
, ,
z−1 z−1 2(z − 1) Deuxièmement, le polynôme caractéristique souhaité pour
l’observateur (pôles à zéro pour avoir une réponse pile en
10 - Donner une représentation d’état pour la fonction au maximum deux échantillons) :
de transfert Q(z) = F (z)(Yc (z) − Y (z)) sous la forme :
 PA−HC (z) = z 2
vk+1 = Aq vk + Bq (yck − yk )
qk = Cq vk + Dq (yck − yk ) Troisièmement, le gain de l’observateur dans la base com-
pagne d’observation :
Réponse : Les opérateurs F (z) obtenus par      
discrétisation s’écrivent respectivement : 0 1
√ −1
H̆ = − = √
0 − 2 2
T kq T kq T kq
, + T kq , + T kq /2 Quatrièmement le calcul de la matrice de changement de
z−1 z−1 z−1
base vis à vis de la base compagne d’observation :
On pose dans chaque cas    √ √ 
CA + a1 C − 2/2 2/2
1 M o = =
V (z) = (Yc (z) − Y (z)) C 1 0
z−1
Cinquièmement, le calcul du gain de l’observateur :
ce qui donne les représentations d’état suivantes de
l’opérateur F (z) (pour chaque discrétisation respective-  √ 
−1 2
ment) : H = Mo H̆ =
0
 
vk+1 = vk + yck − yk vk+1 = vk + yck − yk
, où Mo−1 est donnée en annexe.
qk = T kq vk qk = T kq (vk + yck − yk )  
vk+1 = vk + yck − yk 12- On note K̂ = k1 k2 . Donner en fonction
qk = T kq (vk + 1/2yck − 1/2yk ) des matrices A, B, C, H, kq , K̂, Aq , Bq , Cq et Dq une
représentation d’état littérale du correcteur numérique qui
C’est à dire dans tous les cas Aq = 1, Bq = 1, Cq = T kq = calcul uk en fonction de yck et yk , obtenu à l’issue des
3π/2 et respectivement pour les trois discrétisations : différentes étapes (questions 6, 7, 8, 9, 11).
Dq = 0 , Dq = 3π/2 , Dq = 3π/4 Réponse : La commande sur le système s’écrit uk =
qk − K̂ X̂k où l’on a remplacé la valeur non mesurée de
11 - La représentation d’état du système G(p) l’état Xk par la valeur reconstruite par l’observateur X̂k .
échantillonné est telle que : On pose le vecteur d’état du correcteur
 
vk

Xk+1 = AXk + Buk
Xkc =
yk = CXk X̂k

3
ce qui donne après quelques manipulations le correcteur Troisième problème
suivant
 c Soit le système
Xk+1 = Ac Xkc + B1c yck + B2c yk
uk = C c Xkc + Dq yck − Dq yk 1
G(p) =
p2 +1
avec les matrices
  13 - Calculer la fonction de transfert de ce système
Aq 0 échantillonné à la période T (convertisseur numérique-
Ac =
BCq A − HC − B K̂ analogique modélisé par un bloqueur d’ordre zéro).
   
Bq −Bq Réponse : On applique les formules d’échantillonnage
B1c = , B1c =
BDq H − BDq pour les fonctions de transfert pour obtennir :
c
 
C = Cq −K̂  
z−1 G(p)
G(z) = Z
L’application numérique donne z p
 

1 0 0
 z−1 1 p
√ √ √ = Z −
Ac =  (2 − √2) 3π

9 22 −√10 7 22 √−6 
 z p p2 + 1
4  
3π 2
−11 22 −5 22 z−1 z z(z − cos(T ))
4 = −
    z z − 1 z 2 − 2 cos(T )z + 1
1 −1 √ (1 − cos(T ))(z + 1)
c

2 c  √ = 2
B1 =  (1 − )Dh  , B2 =  2 − (1√− 22 )Dh z − 2 cos(T )z + 1
  
√ 2 
2
2 Dh − 22 Dh
C’est d’ailleurs ce que nous avions déjà calculé dans la
C c = 3π
 
2 −10 −6 question 3.
On remarque que les pôles de ce correcteur sont (valeurs Et choisir en première approximation pour T = 1s la
propres de Ac ) : fonction de transfert suivante :

−0.73 , − 6.44 , 1 0.5z + 0.5


z2 − 1.1z + 1
Le pôle en 1 est celui de l’intégrateur, les deux autres cor-
respondent à la combinaison observateur + retour d’état Réponse : C’est le résultat si on arrondi tous les coeffi-
et n’ont pas de raison d’être stables. Par contre, ce devrait cients à 1 chiffre derrière la virgule.
être le cas de la boucle fermée. Si on boucle ce correcteur
avec le système G(z) on trouve une représentation d’état On souhaite calculer un correcteur sous forme R.S.T.
dont la matrice des dynamiques s’écrit : comme indiqué sur la figure 4 qui assure les spécifications
suivantes :
A − BDq C BC c
 
- Rejet de perturbations du type échelon en entrée du
B2c C Ac système.
- Dynamique de régulation de constante de temps τr =
et les pôles de la boucle fermée sont par exemple pour le 1/ln(2) s
cas de discrétisation avant : - Dynamique de poursuite de constante de temps τp = 10s
−5.6420 , 0 , 0 , 0.44 ± j0.32 légèrement oscillante avec un amortissement ζp = 0.7.

Les pôles nuls sont ceux imposés à l’observateur, parmi


les autres l’un n’est pas stable. La discrétisation du cor- Figure 4:
recteur de la figure 3, n’a pas donné les résultats es- yc(z) ym(z) y(z)
Nm(z) T(z) +
comptés. Il faut dire que la discrétistion d’un retour d’état G(z)
Dm(z) S(z) −
était une idée saugrenue qui n’a pas de raison de donner
des résultats à moins que la période d’échantillonnage soit
vraiment faible. Si maintenant on refait tous les calculs R(z)
avec T = 0.1s, alors on trouve pour la boucle fermée les S(z)
pôles suivants :
14 - Déterminer les degrés minimaux pour les
0 , 0 , 0.8993 , 0.8572 , 0.5830
polynômes R(z), S(z) pour assurer les spécifications.
qui sont quasiment exactement les deux pôles nuls de Réponse : De façon à assurer la précision en présence
l’observateur et les trois pôles imposés par le retour d’état de perturbations du type échelon, on place un intégrateur
e−T = 0.9048, e−2T = 0.8187, e−3T = 0.7408. dans le régulateur ce qui revient à imposer S(z) =

4
S1 (z)(z−1)q avec q = 1. La boucle de régulation doit avoir la poursuite. Si l’on souhaite également assurer un gain
une dynamique convergente de constante de temps τr ce statique unitaire sur le transfert de poursuite il est aussi
qui conduit à imposer un pôle dominant réel e−T /τr = 0.5. possible de prendre
Le polynôme caractéristique de la boucle fermée se fac-
torise sous la forme P (z) = Pdom (z)Paux (z) = (z − Y (z)
Nm (z) = 0.02z 2 ⇒ lim =1
0.5)Paux (z) où les racines de Paux sont de module très z→1 Yc (z)
inférieur à 0.5. D’après les formules vues en cours, le
degré minimal pour R(z) est 2, il est de 1 pour S1 (z) :
ANNEXE
R(z) = r0 + r1 z + r2 z 2 , S(z) = (s0 + s1 z)(z − 1)    
0 t cos(t) sin(t)
et le polynôme Paux doit être choisi de degré 3. exp =
−t 0 − sin(t) cos(t)
15 - Calculer les polynômes R(z) et S(z) qui assurent
les spécifications en régulation.
 −1
Réponse : De façon classique on prend Paux (z) = z 3 , z−a −b
les pôles auxiliaires sont infiniment rapides en comparai- b z−a  
son du pôle dominant. R et S se déduisent de l’équation 1 z−a b
= 2
diophantine : z − 2az + a2 + b2 −b z−a

(s0 + s1 z)(z − 1)(z 2 − 1.1z + 1)


+(r0 + r1 z + r2 z 2 )(0.5z + 0.5)  √ √ −1  
− 2/2 2/2 0 1
= (z − 0.5)z 3 = √
1 0 2 1
ce qui donne en utilisant ce qui est donné en annnexe la
solution unique  −1    
−1 0 0.5 0 0 0 0.76
R(z) = 1.52 − 2.7z + 1.68z 2 S(z) = (0.76 + z)(z − 1) 
,  2.1 −1 0.5 0.5 0 


 0  
  1. 

 −2.1 2.1 0 0.5 0.5   0 = 1.52 
16 - Choisir un polynôme T (z) ainsi qu’un pré-filtre 
     
1 −2.1 0 0 0.5   −0.5   −2.7 
Nm (z) 0 1 0 0 0 1 1.68
pour assurer les spécifications en poursuite.
Dm (z)
Réponse : La fonction de transfert en poursuite s’écrit

Y (z) Nm (z)T (z)(0.5z + 0.5)


=
Yc (z) Dm (z)z 3 (z − 0.5)

T (z) est de degré au plus 2 (degré de S(z)), il est possible


de choisir
T (z) = z(z − 0.5)
de façon à compenser les modes stables de la régulation
pour qu’ils n’apparaissent pas sur le transfert de poursuite.
Pour ajuster les modes du transfert de poursuite on choisit
le polynôme Dm (z). Les modes à imposer sont tels que :

z1,2 p = e−T /τp ±jT ωp


p
avec ωp = ωn 1 − ζ 2 et ζωn = 1/τp . L’application
numérique donne en première approximation

z1,2 = 0.9 + 0.09j

et
Dm (z) = (z − z1 )(z − z2 ) = z 2 − 1.8z + 0.82
Reste à choisir Nm (z) de degré inférieur ou égal à Dm (z)
pour que l’opérateur soir causal. Sans aucune spécification
sur le gain statique on peut prendre par exemple Nm (z) =
z 2 pour compenser tous les pôles sauf ceux imposés pour

Vous aimerez peut-être aussi