Vous êtes sur la page 1sur 33

Systèmes Asservis

Eléments de correction des


exercices

Philippe FEYEL

Philippe FEYEL | 2018 | Systèmes Asservis 1


TD1 - Exercice 1

Philippe FEYEL | 2018 | Systèmes Asservis 2


TD1 - Exercice 2
1.
 s 
K 0 1 + 
 ω1  , ω = 0.5 rad / s, ω = 10 rad / s, K = 0,5
3 1 2 0
 s 
s1 + 
 ω2 

2.

Philippe FEYEL | 2018 | Systèmes Asservis 3


TD2 - Exercice 1
1. Estimer la marge de gain, la marge de phase, la bande passante.
∆Φ > 112.5° , ∆G > 25 dB , ωc = 2 rad / s

 s 
K 0 1 + 
 ω1 
2. H= 3
, ω1 = 0.5 rad / s, ω2 = 10 rad / s, K0 = 0,5
 s 
s1 + 
 ω2 
3. Erreur statique nulle pour une consigne en échelon car un intégrateur. D = 0%

4.
Γ
H ( s) 1
εΓ ( s) = Γ( s), Γ( s) =
E ε Y 1 + H ( s) s
1 H
. H ( s)
εΓ = lim s εΓ ( s) = lim =1
1 s→0 s→0 1 + H ( s)

Philippe FEYEL | 2018 | Systèmes Asservis 4


TD2 - Exercice 2
1. 2. ωcTr = 3 ⇒ ωc = 0,5 rad / s
D = 20% ⇒ ∆Φ > 55°
système intégrateu r : correcteur statique suffit
K(s) = K 0 = 1

3.
Γ
1
ε s
K (s ) H s (s + 1)( s + 2)
lim ε(t ) = lim s =1
t →∞ s →0 1
1+
s (s + 1)( s + 2)
Philippe FEYEL | 2018 | Systèmes Asservis 5
4. ⇒ Action intégrale nécessaire ⇒ PID (un PI seul ne peut stabiliser le système)
2
 Ti 
1 + s 
 
K(s) = K 0 
1 2 
K(s) = K 0 1 + +T d s  −1 ⇒ , Ti = 10, K 0 = 1
T s Td ≈ bande passante = 0.5 rad / s T s
 i  T = 4T = 8
i d
i

5. ⇒ lim ite de stabilité pour retard τ : ω τ 180 = 90° ⇒ 3.14 s


ret c ret
π
6. 3 3 180
⇒ τret = Te ⇒ ωc Te = 9° ⇒ 0.2 s ⇒ 5 Hz c' est − à − dire 60 × la BP (0,07 Hz)
2 2 π
Philippe FEYEL | 2018 | Systèmes Asservis 6
Script Matlab…

s = tf (' s ' )
H = 1 /( s * ( s + 1) * ( s + 2));
figure ()
bode ( H );
Ti = 10; Td = Ti / 4;
K = 1 + 1 /(Ti * s ) + Td * s;
hold on;
bode ( K * H );
legend (' H ' , ' KH ' );
figure ()
step ( K * H /(1 + K * H ));

Philippe FEYEL | 2018 | Systèmes Asservis 7


TD2 - Exercice 3

1) erreur statique nulle pour consigne en échelon et en rampe


2 E (s)
Parabole ⇒ e(t ) = E0t 2 ⇒ E ( s ) = 3 ⇒ lim ε(t ) = lim s =2
s t →∞ s →0 1
1+ 2
s
1
Il s ' agit d ' un oscillateur de pulsation K si K est un correcteur statique H bf ( s ) =
s2 + K
2) Action intégrale nécessaire dans le correcteur PID
L'action D est indispensable pour stabiliser à cause des 3 intégrateurs de la BO
1 1 1 4
Td = = = , Ti = , K ≈ 10 5
ω c 3 / Tr 300 300

3) rejecteur sur S ⇒ zéro mal amorti dans K ( s) car dans ce cas H BO ( jω0 ) >> 1 ⇒ S ( jω0 ) << 1

4) rejecteur sur KS ⇒ rejecteur dans K ( s) car dans ce cas H BO ( jω0 ) << 1 ⇒ KS ( jω0 ) << 1

Philippe FEYEL | 2018 | Systèmes Asservis 8


TD3 - Exercice 1
I.1/
( M + m ) ɺɺ
x − mlɺɺ
θ + αxɺ = F (t )

−lɺɺ
θ + ɺɺ
x = gθ

I.2/
( M + m ) p 2 X ( p ) − mlp 2Θ( p ) + αpX ( p ) = F ( p )
 2
−lp Θ( p ) + p 2 X ( p ) = g Θ( p )

X ( p ) g + lp 2
H 2 ( p) = =
Θ( p ) p2
Θ( p ) p
H1 ( p ) = =
F ( p ) αg + ( M + m ) gp + αlp 2 + Mlp 3
I.3/
X ( p ) 35 p 2 + 10 θ( p ) 2.5 p
H1 ( p ) = = , H 2 ( p ) = =
θ( p ) p 2 F ( p )  p p2 
(1 + 280 p ) 1 + + 

Philippe FEYEL | 2018 | Systèmes Asservis  85 3  9
II.1/ C ( p ) = 1, H BO ( p ) =
(
25 1 + 3,5 p 2 )
 p p2 
p (1 + 280 p )  1 + +
 85 3 
 
p p2 2ξ p2 1
1+ + = 1+ p + 2 ⇒ ω0 = 3rad / s, ξ = 0.01 ⇒ Q = = 34 dB
85 3 ω0 ω0 2ξ 1 − ξ 2

2ξ p2 1 1
1 + 3,5 p = 1 +
2
p + 2 ⇒ ω0 = rad / s, ξ = 0 ⇒ Q = =∞
ω0 ω0 3, 5 2ξ 1 − ξ 2

Philippe FEYEL | 2018 | Systèmes Asservis 10


ωcTr ≈ 3 ⇒ ωc = 0, 2 rad / s
II.2/
D = 20% ⇒ ∆Φ = 60°

H BO ( p ) =
(
25 1 + 3,5 p 2 ) C ( p)
 p p2 
p (1 + 280 p )  1 + +
 85 3 
 

Le système est intégrateur suivi de consigne en échelon sans erreur statiques


Il suffit donc de stabiliser le bouclage avec un avance de phase réglé sur 0,2 rad/s
et pour apporter 60° de phase (puisque la phase de la BO vaut déjà -180°)

1 + Tp  60π  1 − a
C ( p) = K ⇒ sin  = ⇒ a = 0, 072
1 + aTp  180  1 + a
1 1 1
= 0, 2 ⇒ = 0, 0537 rad / s, ⇒ = 0, 745 rad / s
T a T aT

K = 0,12 pour que H bo ( jωbp ) = 1

Philippe FEYEL | 2018 | Systèmes Asservis 11


II.3/ Il faut ajouter une action intégrale en amont donc un PI avec une constante
d’intégration réglé au plus haut possible sans toucher aux marges précédentes
ωcTr ≈ 3 ⇒ ωc = 0, 2 rad / s
D = 20% ⇒ ∆Φ = 60°

1 + Tp 1 + Ti s
C ( p) = K
1 + aTp Ti s

Ti = 1/(2π0.001)

Philippe FEYEL | 2018 | Systèmes Asservis 12


II.4/ Réponses temporelles

X H BO ( s )
=
F 1 + H BO ( s )

X H1H 2
=
Γ 1 + H BO ( s )

Philippe FEYEL | 2018 | Systèmes Asservis 13


Structure cascade pour améliorer le rejet de perturbations

III.1.a)

2.5 p
H BO 2 ( p ) = 20 ∆G = ∞
 p p2 
(1 + 280 p ) 1 + + ∆Φ = 5°
 85 3 
 

III.1.b) ωcTr ≈ 3 ⇒ ωc = 20 rad / s


(remarque : Boucle interne 100 fois plus rapide que la
D = 20% ⇒ ∆Φ = 60° boucle externe)

On ne précise pas sans erreur statique du coup un avance de phase centré en 20


rad/s et apportant une phase de 60° suffit (puisque la phase de la BO vaut déjà -180°
à 20 rad/s) 1 + Tp  60π  1 − a
C2 ( p ) = K ⇒ sin  = ⇒ a = 0, 072
1 + aTp  180  1 + a
1 1 1
= 20 ⇒ = 5.4 rad / s, ⇒ = 74.5 rad / s
T a T aT

Philippe FEYEL | 2018 | Systèmes Asservis 14


K = 190 pour que H bo ( jωbp ) = 1
III.1.c) Pour rejeter les perturbations, il faut rajouter une action intégrale en amont et
donc compléter C2(p) d’un PI dont la constante d’intégration est réglé au plus haut
possible sans toucher aux marges précédentes.

1 + Tp 1 + Ti s
C2 ( p ) = K
1 + aTp Ti s

1
Ti =
2π1

Philippe FEYEL | 2018 | Systèmes Asservis 15


III.2.a) 20−1
H BF 2 ( p ) ≈ , ξ = 0.5, ω0 = 20 rad / s
p 2 2ξ
+ p +1
ω0 2 ω0

III.2.b) H BO1 ( p ) ≈ H BF 2 ( p ).H1 ( p ).C1 ( p )

1 + Tp  60π  1 − a
C1 ( p ) = K ⇒ sin  = ⇒ a = 0, 072
1 + aTp  180  1 + a
1 1 1
= 0, 2 ⇒ = 0, 0537 rad / s, ⇒ = 0, 745 rad / s
T a T aT

K = 0,12 pour que H bo ( jωbp ) = 1

1 + Ti s 1 + Tp
C1 ( p ) = K , Ti = 1/ (2π0.001)
Philippe FEYEL | 2018 | Systèmes Asservis
Ti s 1 + aTp 16
Tracés temporels avec Matlab

HM 1 HM 1
ε=− v → ε=− v
1 + K1HM 1 cascade 1 + H 2 K 2 M 2 + M 1HK1K 2

Philippe FEYEL | 2018 | Systèmes Asservis 17


TD4
Exercice 1

a) = 0.3 + 0.3 + 0.9 − 0.2


1+ 1+
= 0.3 = 0.3
1 − 0.9 + 0.2 (1 − 0.4 )(1 − 0.5 )

b) Les pôles sont = 0.4 et = 0.5 de module <1, donc stable

c) Théorème de la valeur finale discret : y = lim 1 − =2


- Ou via équation aux différences avec = constante et " = #


Amplitude

Philippe FEYEL | 2018 | Systèmes Asservis 18


TD4
Exercice 2
a) L’ordre du système est le degré du polynôme en z associé au dénominateur de
sa fonction de transfert. Ici, l’ordre est $.
# ' #
b) = = %# + % + ⋯ + %'
1− 1−
%# % %' '
= # + + ⋯+
1− 1− 1−
⇒ ) = # [%# Υ ) + % Υ ) − 1 + ⋯ + %' Υ() − $)]

' / / 1
= %# + % + ⋯ + %' Exemple avec - . = 0. 1 + 0. 23 + 0. 43
Amplitude

c)
#
= lim 1 − Philippe FEYEL
= (% + % + ⋯ + %' )
# Asservis
#
→ 1 −| 2018 | Systèmes 19
TD4
Exercice 3
Système stable car pôles inférieurs à 1 en module : 0,5 et − 0,5
) = 0.75" ) − 1 + 0.25 () − 2)

Amplitude

Philippe FEYEL | 2018 | Systèmes Asservis 20


TD4 s = zpk('s');
Te = 0.02;
Exercice 5 G = 200/(s*(1+0.04*s));

Magnitude (dB)
Gd = c2d(G,Te);

(;) 200
9) = 1− : avec ; =
; ; 1 + 0.04;
Résultat :

Phase (deg)
0.8522 (1 + 0.8467 )
=
(1 − )(1 − 0.6065 )
( bode(G) tracé avec = V WXYH )
b) Le gain limite assurant la stabilité est 1/ BC DEF GH obtenu pour IJ correspondant à
une phase de -180°.

Par lecture directe, IJ ≅ 50 rad/s et BC DEF GH ≅ 5dB

Q
Le gain limite assurant la stabilité en boucle fermée est donc LMNOP = 10 R = 0.56

On lit aussi les marges pour LM = 1 :


IM# = 66 rad/s
ΔT = −16°
Δ =
Philippe FEYEL −5dB
| 2018 | Systèmes Asservis 21
c) Il suffit de déterminer le gain du système lorsque la phase vaut -120°. Par lecture
directe :
I #° = 11 rad/s
BC DE R °GH ≅ 25 dB
RQ
Donc K = 10 R = 0.056.

Pour ce gain, Δ = 20dB.

Réponse indicielle en boucle fermée:


- Dépassement <10% (car marge de phase de 60°)
- IM \] ≅ 3 ⇒ Temps de 1er maximum d’environ 270ms

Code Matlab:
BF = feedback(0.056*Gd,1);
Amplitude

figure
step(BF)

Philippe FEYEL | 2018 | Systèmes Asservis 22


TD5 - Exercice 1
1/ Déterminer le modèle discret ^(3) du système {CNA; procédé; CAN}.

;
= 1− :
;
1
= 1− : _
;
`C +1 `C 1+
= 1− = 1−
2 −1 _ 2 1− _
`C 1+
=
2 1−

Philippe FEYEL | 2018 | Systèmes Asservis 23


2/ Résoudre ab + cd = a# a] avec a# = 1 (pas d’exigences particulières)

Pour un temps d’établissement fini, la fonction de transfert objectif devrait être un


filtre FIR (tous les pôles discrets placés en 0). Donc pour une expression en ,
a] = 1.

YHR
Il faut résoudre 1 − b + 1+ d =1

Cette équation ae + c = f est régulière car deg a + deg c > deg f

Solutions de degré minimal : deg b = deg c − 1 d’où b = ;# + ;


deg d = deg a − 1 d = j# + j

YHR
Soit à résoudre : 1 − ;# + ; + 1+ j# + j =1
Sous forme matricielle :
1 0 0 0 ;# 1
−2 1 `C /2 0 ; 0
j# = ⇒
1 −2 `C /2 `C /2 0
0 1 0 `C /2 j 0

1 3
d =Philippe FEYEL
5 −| 3 et b
2018 | Systèmes Asservis
= 1 +
2`C 4 24
Il reste à déterminer ` = `# pour assurer un gain statique unitaire de la
boucle fermée (pas d’autres exigences). Ici :

c 1 ` 1 1 1
= 1 ⇒ `# = =
a 1 b 1 +c 1 d 1 c 1 `C

3/
b =` M −d
1+; = `# M − j# + j
⇒ " ) = `# M ) − j# ) −j )−1 −; " )−1

1 5 3 3
" ) = M ) − ) + )−1 − " )−1
`C 2`C 2`C 4

Philippe FEYEL | 2018 | Systèmes Asservis 25


4/
Réponse à un échelon de consigne kl (3) (avec mn = /)

Rappel : la boucle fermée ainsi réalisée correspond ici à :


c` 1
o] = = (1 + )
ab + cd 2
1/`C
Step Response Step Response Step Response
1 1 1
0.9 0.9 0.8
0.8 0.8 Erreur rl q − p q 0.6
Commande s(q)
0.7
0.7 0.4
0.6
Amplitude

0.6 0.2
Amplitude

Amplitude
0.5
0.5 0
0.4
0.4 -0.2
0.3
0.3 -0.4
0.2

0.1
Sortie p q 0.2 -0.6

0
0.1 -0.8 −1/`C
0 1 2 3 4 5 0 -1
Time (seconds) 0 5 10 15 20 0 5 10 15 20
Time (seconds) Time (seconds)

Philippe FEYEL | 2018 | Systèmes Asservis 26


TD5 - Exercice 2
1) Modèle discret :

G est de la forme B(z)/A(z). La BP recherchée est de l’ordre de 3 rad/s.


Or :
3,482 | log(3,482)/Te | ≈ 25 rad/s >> 3 rad/s
0,2526 | log(0,2526)/Te | ≈ 27.5 rad/s >> 3 rad/s

Pour la synthèse, on peut donc simplifier le système G pour la synthèse du


correcteur, en G’ (attention à la conservation du gain statique ) :

G'=
47, 7244 × 3.482 × 0.2526 z −1
=
268 z −1
=
( )
B z −1

(1 − 0.9048z )(1 − 1.766 z


−1 −1
+ 0.8553 z −2 ) (1 − 0.9048z )(1 − 1.766 z
−1 −1
+ 0.8553 z −2 ) A( z ) −1

Philippe FEYEL | 2018 | Systèmes Asservis 27


2) La BO s’écrit BR/AS. La structure des polynômes est la suivante :
On peut compenser les pôles stables de A dans R,
Rajout d’une action intégrale dans S pour le rejet de perturbations

Ainsi on pose :
( )( ) ( )(
S = S1 z −1 1 − z −1 , R = R0 z −1 1 − 0, 9048 z −1 )
La spécification en boucle fermée impose un polynôme caractéristique de la forme :
Am(z-1) = A0(z-1) P1(z-1) avec :
( ) ( )
A0 z −1 = 1 − e poTe z −1 , p0 = −ω f ⇒ A0 z −1 = 1 − 0, 2948 z −1

 p = −2 e −ζω 0 Te cos ω T 1 − ζ 2 = −1, 4816



P1 ( z −1 ) = 1 + p1 z −1 + p2 z −2 ⇒ 1 0 e
−2 ζω 0 Te
 p2 = e = 0, 7408

Et donc en écrivant le mécanisme de compensation :


BT B BT B BT B
= m ⇔ = m ⇔ = m
AS + BR Am A+ A− S + BR Am ( )
A+ A− 1 − z −1 S1 ( z ) + BA+ R0 ( z ) Am


BT
=
Bm Bm ' B
= ⇔
− ( )
 A ( z ) 1 − z −1 S ( z ) + B ( z ) R ( z ) = A ( z )
1 0 m

( (
A+ A− 1 − z −1 ) )
S1 ( z ) + BR0 ( z ) Am Am T ( z ) = Bm '( z ) A+ ( z )

Philippe FEYEL | 2018 | Systèmes Asservis 28


Ainsi on a à résoudre :

(1 − 1.766 z + 0.8553z )(1 − z ) S ( z) + 268 z R ( z)


−1 −2 −1
1
−1
0

= (1 − 0.2948 z )(1 − 1, 4816 z + 0.7408 z )


−1 −1 −2

Cette équation ae + c = f est régulière car deg a (3) + deg c (1) > deg f (3)

deg b = deg c − 1 b1 = ;#
deg d = deg a − 1 d1 = j# + j +j

(
S ( z −1 ) = s0 1 − z −1 )
( )(
R ( z −1 ) = r0 + r1 z −1 + r2 z −2 1 − 0, 9048 z −1 )
Qui est bien de la forme donnée.

Philippe FEYEL | 2018 | Systèmes Asservis 29


Et donc :
( )( )
S ( z −1 ) = s0 + s1 z −1 1 − z −1

R ( z −1 ) = ( r + r z + r z + r z )(1 − 0,9048 z )
0 1
−1
2
−2
3
−3 −1

Reste à déterminer un T(z) :

T ( z ) = A+ ( z ) Bm '( z )

Am (1) (1 − 0.2948 )(1 − 1, 4816 + 0.7408 )


Par défaut Bm '( z ) = Bm ' = = = 0.0006820 ( boucle fermée de gain statique 1)
B (1) 268

(
⇒ T ( z ) = 0.0006820 1 − 0, 9048 z −1 )

Philippe FEYEL | 2018 | Systèmes Asservis 30


3) Suivi de consigne

pc ( z ) + 1 βc ( z) B( z −1 ) pe ( z )
−1
T (z )
− S ( z −1 ) A( z −1 )

R( z −1 )
ε(z)

( ) ( )
S z −1 = 1 − z −1

R ( z ) = 8, 415.10 (1 − 2, 0876 z + 1,103 z )(1 − 0.9048 z )


−1 −4 −1 −2 −1

T ( z ) = 7.239.10 (1 − 0.9048 z )(1 − 0.8187 z )


−1 −5 −1 −1

Philippe FEYEL | 2018 | Systèmes Asservis 31


z −1
(
lim 1 − z −1
)  BT 
 AS + BR − 1 pc ( z ) , pc ( k ) = 100000kTe ⇒ pc ( z ) = 100000Te
z
= 100000Te
( z − 1)2 ( )
2
z →1   1 − z −1

 BT  z −1
= lim  − 1100000Te
z →1  AS + BR  1 − z −1 ( )
 B (1) (T (1) − R (1) ) − A(1) S  z −1
= lim  100000Te
z →1  A(1) S + B(1) R (1)  1 − z −1 ( )
 − A(1) S  z −1
= lim  100000T
( )

z →1  A(1) S + B (1) R (1) 
e
1 − z −1

= lim

 (
− A(1) 1 − z −1  )
100000T z −1
z →1 
( )
 A(1) 1 − z −1 + B (1) R(1)  ( )
e
1 − z −1
 
− A(1)100000Te
= = −128561.77 W
B (1) R (1)

( ) ( )
S z −1 = 1 − z −1

R(z −1
) = 8, 415.10 (1 − 2, 0876 z + 1,103z )(1 − 0.9048z )
−4 −1 −2 −1

T (z −1
) = 7.239.10 (1 − 0.9048z )(1 − 0.8187 z )
−5 −1 −1

B(z −1
) = 268z −1

A( z −1
) = (1 − 0.9048 z )(1 − 1.766 z + 0.8553z )
−1 −1 −2

Philippe FEYEL | 2018 | Systèmes Asservis 32


4) Erreur statique nulle pour une consigne en rampe

 Bm − Am  p0 z −1
lim   = 0, Bm = BT = BBm '
z →1 
(
Am  1 − z −1 −1
)
( )
−2
Il faut donc que ( BT − Am ) α 1 − z −1

( )
−2
B ( z )T ( z ) − L( z ) 1 − z −1 = Am ⇒ d ' où T ( z ) (et L( z ))

33