Module Contrôle Numérique durée 1h 45min
Département Maintenance en instrumentation 5ème INGENIEUR
Chargé de module : A. KACIMI IMSI - Université d’Oran
CORRECTION DU EMD N02(2014)
Questions de cours (4pts) :
1/ Faux. La stabilité interne d’un système est la stabilité des six transferts d’une boucle réelle. (1pt)
2/ Faux. Si les états non commandables sont tous stables, le système est stabilisable. (1pt)
3/ Vrai. Il ne contient pas de zéros instables, mais il faut respecter la causalité pour l’inverser. (1pt)
4/ Faux. Ça dépend des valeurs propres du modèle d’état linéarisé autour de ce point d’équilibre. (1pt)
Exercice 1 : (5pts)
1/ Il faut mettre d’abord la fonction de transfert du système sous la forme canonique suivante :
− k ( s − z0 )
G (s) =
(τ 1s + 1)(τ 2 s + 1)
Pour se faire on doit calculer les pôles du système avec :
s 2 + 13,14s + 37, 62 = 0 , dont la résolution donne : p1 = −8.9248 et p2 = −4.2152;
La fonction de transfert peut s’écrire alors comme :
−10
−10 ( s − 20 ) ( s − 20 ) −0.2658 ( s − 20 )
G= = 8.9248i4.2152 =
( s + 8.9248)( s + 4.2152 ) s + 1 s + 1 ( 0.112s + 1)( 0.2372s + 1)
8.9248 4.2152
On a alors k = 0.2658; τ 1 = 0.112s et τ 2 = 0.2372s . (1pt)
On écrit ensuite le modèle désirée en boucle fermée :
− ( s − z0 ) − ( s − z0 ) − ( s − 20 ) −0.05 ( s − 20 )
Hm ( s) = = = =
z0 (τ m s + 1) z0 ( ( tm / 2, 2 ) s + 1) 20 ( 0.0795s + 1) 0.0795s + 1
On appliquant le principe du modèle imposé, on a :
− k ( s − z0 )
C (s)
C (s)G (s) (τ1s + 1)(τ 2 s + 1) = − ( s − z0 ) = H s
H (s) = = m( )
1+ C (s)G (s) − k ( s − z0 ) z0 (τ m s + 1)
1+ C (s)
(τ 1s + 1)(τ 2 s + 1)
− k ( s − z0 ) C ( s ) − ( s − z0 ) kC ( s ) 1
= ⇔ =
(τ 1s + 1)(τ 2 s + 1) − k ( s − z0 ) C ( s ) z0 (τ m s + 1) (τ 1s + 1)(τ 2 s + 1) − k ( s − z0 ) C ( s ) z0 (τ m s + 1)
kz0 (τ m s + 1) C ( s ) = (τ 1s + 1)(τ 2 s + 1) − k ( s − z0 ) C ( s )
( kz0τ m s + kz0 − kz0 + ks ) C ( s ) = (τ 1s + 1)(τ 2 s + 1) ⇔ C ( s ) ( z0τ m + 1) ks = (τ1s + 1)(τ 2 s + 1)
C (s) = 1
(τ s + 1)(τ 2 s + 1) = τ 1τ 2 s 2 + (τ 1 + τ 2 ) s + 1 = (τ 1 + τ 2 ) + 1
+
τ 1τ 2 s
k ( z0τ m + 1) s k ( z0τ m + 1) s k ( z0τ m + 1) k ( z0τ m + 1) s k ( z0τ m + 1)
C (s) =
(τ 1 + τ 2 ) 1 + 1 + τ 1τ 2 s
k ( z0τ m + 1) (τ 1 + τ 2 ) s (τ 1 + τ 2 )
(τ 1 + τ 2 ) = 0.5072; T = τ + τ = 0.3493s; T = τ1τ 2 = 0.0761s
Kp = ( 1 2)
k ( z0τ m + 1) (τ 1 + τ 2 )
i d
(2pts)
−10 ( s − 20 )
G (s) s + 13,14s + 37, 62
2 −10 ( s − 20 ) −10 s + 200
H0 ( s) = = = 2 = 2
1+ G (s) − 10 ( s − 20 ) s + 13,14s + 37, 62 − 10s + 200 s + 3,14s + 237.62
1+ 2
s + 13,14s + 37, 62
On a donc : ωn = 237.62 = 15.4149 rad / s et
- De la forme canonique du second ordre de la FT du système, on calcul
3.14
ωn = 237.62 = 15.4149 rad / s et 2ζωn = 3.14 ⇒ ζ = = 0.1018 < 0.7
2i15.4149
Te est donc choisie à l’extérieur de l’intervalle [0.25 1.5], pour une petite valeur on prend donc
0.1 0.1
ωnTe < 0.25 ⇔ ωnTe = 0.1 ⇒ Te = = = 0.0065s ≃ 0.006 s (1pt)
ωn 15.4149
2 z −1
Avec la méthode de Tustin s = le PID analogique devient :
Te z + 1
Te
( z + 1)
2T z − 1 z −1 z −1
= 0.5072 1 + 0.0086
2T
C ( z ) = K p 1 + i + d + 25.3667 (0.5pt)
z −1 Te z + 1 z −1 z +1
13.38 z 2 − 25.72 z + 12.36
C ( z) = à vérifier avec matlab c2d.m ‘Tustin’
z2 −1
Pour la méthode de conservation des pôles et des zéros (matched), on a besoin des pôles et des zéros
du correcteur PID, qu’on va écrire sous la forme suivante :
∏(s − zj ) (
∏ z −e ) z j Te
(
∏ (−z j ) ∏ 1− e ) p j Te
C ( s ) = kc
Ζ
→ C ( z ) = kd = kc
j j j j
∏(z − e ) ∏ ( − p ) ∏ (1 − e )
avec k
∏(s − pj ) p j Te d z j Te
j
j j j j
Avec un intégrateur comme pole seul la dernière formule devient :
∏(s − zj ) Te ∏ z − e ( z j Te
) ∏ (−z j )
C ( s ) = kc → C ( z ) = kd
Ζ
avec k d = kc
j j j
s ( z − 1) (
∏ 1− e
j
z j Te
)
C (s) =
(τ 1s + 1)(τ 2 s + 1) = ( s + 1 / τ 1 )( s + 1 / τ 2 ) = ( s + 8.9248 )( s + 4.2152 )
k ( z0τ m + 1) s ( k ( z0τ m + 1) / (τ 1τ 2 ) ) s 25.9091s
On a deux zéros : z1 = -8.9248 et z2 = -4.2152 et un pole nul p = 0 ; et un gain kc = 1/25,0909 = 0.0386.
zd 1 = e = e−8.9248i 0.006 = 0.9479; zd 2 = e = e−4.2152 i 0.006 = 0.975; pd = e =1
z1Te z2Te 0 Te
(
∏ 1− e
p j Te
)
k d = kc ∏ ( − z j )
1
= 0.0386 ( 8.9248i4.2152 )
j
j ∏ 1− e
j
( z j Te
)z− (1 − 0.9479 )(1 − 0.975)
(1pt)
0.0386i37.6198
kd = = 1114.9 et
0.0521i0.0250
Te ∏ z − e( z j Te
) 0.006 ( z − 0.9479 )( z − 0.975) 6.689z 2 − 12.86z + 6.18
C ( z ) = kd = 1114.9 =
j
( z − 1) ( z − 1) ( z − 1)
à vérifier avec matlab c2d.m ‘Matched’
Exercice 2 : (6pts)
1/ Ce système est de type P1, car son degré relatif (deg den – deg num) est égale à 1 et il possède un
zéro stable situé dans le cercle unitaire du plan complexe Z. Il est de classe 1, car il possède un
intégrateur. 0.5pt
2.1/ On utilisant les données du cahier de charges on peut calculer le polynôme caractéristique
dénominateur de la FT désirée en boucle fermée.
ωd = ωn 1 − ζ 2 = 14.2857 1 − 0.7 2 = 10.2020 rad / s
c = e−ζωnTe = e −0.7 i14.2857 i 0.025 = 0.7788
Am ( z ) = z 2 − 2c cos (ωd Te ) z + c 2 = z 2 − 2i0.7788cos (10.202i0.025 ) z + ( 0.7788)
2
Am ( z ) = z 2 − 1.5072z + 0.6065
0.5pt
2.2/ Le pôle du polynôme observateur est
1 1
p0 = − =− = −50 ⇒ pd 0 = e p0Te = e −50 i 0.025 = 0.2865
τo 0.02
Ce qui donne :
1 z z
Ζ = = ⇒ A0 ( z ) = z − pd 0 = z − 0.2865
τ o s + 1 z − pd 0 A0 ( z ) 0.5pt
2.3/ Le calcul du correcteur passe par la résolution de l’équation de Bezout suivante :
A ( z ) S ( z ) + B ( z ) R ( z ) = Am ( z ) A0 ( z ) = P ( z )
On vérifie d’abord la condition de causalité suivante :
δ Am − δ Bm ≥ δ A − δ B ⇔ δ Am − (δ B + δ Bm' ) ≥ δ A − δ B ⇔ 2 − 1 ≥ 2 − 1 ⇔ 1 = 1
Puis on calcul les degrés des polynômes R(z) et S(z), par : 0.5pt
δ R = δ A − 1 = 2 − 1 = 1 ⇔ R ( z ) = r0 z + r1
δ S = δ Am + δ A0 − δ A = 2 + 1 − 2 = 1 ⇔ S ( z ) = z + s1 ( monique )
δ P = δ Am + δ A0 = 2 + 1 = 3 ⇔ δ P + 1 = 4 ( taille de la matrice de Sylvester M )
P ( z ) = Am ( z ) A0 ( z ) = ( z 2 − 1.5072z + 0.6065 ) ( z − 0.2865 ) = z 3 − 1.7937 z 2 +1.0383z − 0.1738
On construit la matrice de Sylvester qui est de taille 4x4, et on transforme l’équation de Bezout sous
forme matricielle comme :
1 0 0 0 1 1
−1.95 1 1.23i10 −3
0 s −1.7937
× 1 =
−3 −3
0.95 −1.95 1.21i10 1.23i10 r0 1.0383
0 0.95 0 1.21i10−3 r1 −0.1738
Nous formons à présent le système d’équations qui va nous permettre de calculer les inconnues :
−1.95 + s1 + 1.23i10−3 r0 = −1.7937 s1 + 1.23i10−3 r0 = 0.1563
−3 −3 −3 −3
0.95 − 1.95s1 + 1.21i10 r0 + 1.23i10 r1 = 1.0383 ⇔ −1.95s1 + 1.21i10 r0 + 1.23i10 r1 = 0.0883
0.95s1 +1.21i10−3 r1 = −0.1738 0.95s1 +1.21i10−3 r1 = −0.1738
Avec la valeur donnée de r0 , on calcul les deux autres coefficients en utilisant la 1ère et la 3ème
équation du système, par :
s1 = 0.1563 − 1.23i10−3 i150.24 s1 = −0.0285 s1 = −0.0285
⇔ ⇔
r1 = −0.1738 − 0.95 ( −0.0285 ) /1.21i10
−
r1 = −121.26
−3
1.21i10 r1 = −0.1738 − 0.95s1
3
Alors notre correcteur est : 1pt
R ( z ) 150.24 z − 121.26
C ( z) = =
S ( z) z − 0.0285
2.4/ Pour calculer le polynôme T(z) on utilise l’équation suivante : 0.25pt
Am (1) (1 − 1.5072 + 0.6065) z − 0.2865 = 40.7z − 11.66
T ( z ) = Bm' A0 ( z ) = A0 ( z ) = ( )
B (1) 10−3 (1.23 + 1.21)
3/ Avec la simplification du zéro qui ne doit pas être simplifié, le numérateur du système sera
factorisé comme :
B + = z + 0.98 et B − = 1.23i10−3 0.25pt
Le polynôme Am(z) s’obtient comme le polynôme A0(z) de la question précédente qui reste le même :
tm 0.175 1 1
τm = = = 0.0795s ⇒ pm = − = − = −12.5714 ⇒ pdm = e −12.5714 i 0.025 = 0.7303
2.2 2.2 τm 0.0795
Ce qui donne :
1 z z
Ζ = = ⇒ Am ( z ) = z − pdm = z − 0.7303
τ m s + 1 z − pdm Am ( z ) 0.5pt
Le calcul du correcteur passe par la résolution de l’équation de Bezout suivante :
A ( z ) S ( z ) + B ( z ) R ( z ) = A ( z ) B + ( z ) S ' ( z ) + B + ( z ) B − ( z ) R ( z ) = B + ( z ) Am ( z ) A0 ( z ) = P ( z )
A ( z ) S ' ( z ) + B − ( z ) R ( z ) = Am ( z ) A0 ( z ) = P ( z )
On vérifie d’abord la condition de causalité suivante :
δ Am − δ Bm ≥ δ A − δ B ⇔ δ Am − (δ B − + δ Bm' ) ≥ δ A − δ B ⇔ 1 − 0 ≥ 2 − 1 ⇔ 1 = 1
Puis on calcul les degrés des polynômes R(z) et S(z), par : 0.5pt
δ R = δ A − 1 = 2 − 1 = 1 ⇔ R ( z ) = r0 z + r1
δ S = δ Am + δ A0 − δ A = 2 + 1 − 2 = 1 ⇒ δ S ' = δ S − δ B + = 1 − 1 = 0 ⇔ S ( z ) = s0 = 1 ( monique )
δ P = δ Am + δ A0 = 1 + 1 = 2 ⇔ δ P + 1 = 3 ( taille de la matrice de Sylvester M )
P ( z ) = Am ( z ) A0 ( z ) = ( z − 0.7303)( z − 0.2865 ) = z 2 − 1.0168 z + 0.2092
On construit la matrice de Sylvester qui est de taille 3x3, et on transforme l’équation de Bezout sous
forme matricielle comme :
1 0 0 1 1
−1.95 1.23i10 −3 0 × r = −1.0168
0
−3
0.95 0 1.23i10 r1 0.2092
Nous formons à présent le système d’équations qui va nous permettre de calculer les inconnues :
−1.95 + 1.23i10−3 r0 = −1.0168 1.23i10−3 r0 = −1.0168 + 1.95 r0 = 758.67
⇔ ⇔
r1 = −602.27
−3 −3
0.95 + 1.23i10 r1 = 0.2092 1.23i10 r1 = 0.2092 − 0.95
Alors notre correcteur est :
R( z) R( z) 758.67z − 602.27
C ( z) = = + =
S ( z) B ( z) S ( z)
'
z + 0.98
1pt
Pour calculer le polynôme T(z) on utilise l’équation suivante :
Am (1) (1 − 0.7303) z − 0.2865 = 219.3z − 62.82
T ( z ) = Bm' A0 ( z ) = A0 ( z ) = ( )
B (1)
−
1.23i10−3
0.25pt
Avec la simplification du zéro mal placé z0 = - 0.98, le problème surgit dans le transfert entre consigne
Yc comme entrée et la commande U comme sortie, ce zéro simplifié devient un pôle mal placé à partie
réelle négative ce qui donne un signal de commande avec des oscillations (figure suivante) nocif pour
l’actionneur. 0.25pt
Step Response
300
200
100
Amplitude
-100
-200
-300
0 1 2 3 4 5 6 7
Time (sec)
Signal de commande avec simplification de zéro.
Step Response
50
40
30
Amplitude
20
10
-10
0 0.1 0.2 0.3 0.4 0.5 0.6
Time (sec)
Signal de commande sans simplification de zéro.
Exercice 3 : (5pts)
1/ La décomposition en éléments simple de la fonction de transfert G(s) va nous permettre de la mettre
en modèle d’état sous forme canonique modale, soit :
3s − 6 3( s − 2) A B C
G ( s) = = = + +
s + 3s − 6 s − 8 ( s + 4 )( s + 1)( s − 2 ) ( s + 4 ) ( s + 1) ( s − 2 )
3 2
A = lim {( s + 4 ) G ( s )} =
3
= −1
s →−4 ( s + 1) s=−4
B = lim {( s + 1) G ( s )} =
3
=1
s →−1 ( s + 4 ) s =−1
3( s − 2)
C = lim {( s − 2 ) G ( s )} = =0
s →−4 ( s + 4 )( s + 1) s =−4
Y ( s) 1 1 1 U (s) U (s) U (s)
G ( s) = =− + +0 ⇔ Y (s) = − + +0
U ( s) ( s + 4 ) ( s + 1) ( s − 2 ) ( s + 4 ) ( s + 1) ( s − 2 ) 1pt
Si on pose :
U (s) U (s) U (s)
X1 ( s ) = ; X2 (s) = ; X3 (s) = ;
( s + 4) ( s + 1) ( s − 2)
On faisant la transformée de Laplace inverse des Xi et de Y, on obtient :
.
x1 = −4 x + u
.
x2 = − x + u et y = − x1 + x2
.
x3 = 2 x + u
L’espace d’état équivalent est : 0.5pt
.
x1 −4 0 0 x1 1 x1
.
x = x2 = 0 −1 0 x2 + 1 u et y = [ −1 1 0] x2
.
. 0 0 2 x 1 x3
x3 3
On remarque que le système est complètement commandable car le vecteur B ne contient aucun zéro,
mais il partiellement observable car le vecteur ligne C contient un zéro (l’état x3 n’est pas observable).
0.5pt
En ce qui concerne la stabilisabilité le système est complètement commandable donc non concerné par
cette notion, par contre le système n’est pas détectable parceque l’état non observable (x3) est instable
car sur la matrice A sous forme canonique modale présente la valeur propre associée à cet état de
valeur réelle positive (λ3 = 2). 0.5pt
3 3
2/ La simplification de la fonction de transfert G(s) donne : G (s) = =
( s + 4 )( s + 1) s + 5s + 4
2
Qui donne la forme d’état sous forme canonique commandable suivante :
.
. x 0 1 x1 0 x
x = .1 = + u et y = [ 0 3] 1
−4 −5 x2 1 x2
x2 1pt
3/ Avec la méthode d’Euler N=1 et donc Ψ = I , alors
1 0 0 1 1 0.3
Ad = I + ATe Ψ = I + ATe = +
0.3 = −1.2 −0.5
0 1 −4 −5
0.5pt
0 0
et Bd = ΨTe B = Te B = 0.3 = Cd = C = [ 0 3]
1 0.3
Avec le BOZ approximé par N =2, on a :
1
AiTei AT 1 0 0 1 0.3 1 0.15
Ψ=∑ ≅I+ e = + =
i = 0 ( i + 1) ! 2 0 1 −4 −5 2 −0.6 0.25
On obtient donc :
1 0 0 1 1 0.15 0.82 0.075
Ad = I + ATe Ψ = + 0.3 =
0 1 −4 −5 −0.6 0.25 −0.3 0.445
1 0.15 0 0.0225
Cd = C = [ 0 3]
1pt
Bd = ΨTe B = 0.3 =
−0.6 0.25 1 0.1335
Responsable du module : Mr Kacimi Abderrahmane émargement :