Académique Documents
Professionnel Documents
Culture Documents
Yassine Ariba
version 2.0
⇒ principe de contre-réaction
Exemple
Exemple
1ière approche :
par essais ou par calculs, trouver la valeur u(t) = u0 telle que la puissance fournie
par l’élément chauffant compense les pertes avec l’extérieur et résulte en une
température θ = 40◦ .
1ière approche :
par essais ou par calculs, trouver la valeur u(t) = u0 telle que la puissance fournie
par l’élément chauffant compense les pertes avec l’extérieur et résulte en une
température θ = 40◦ .
Problèmes ?
θ change si θext varie.
θ change si des objets sont présents à l’intérieur.
La rapidité de convergence n’est pas contrôlée.
La commande n’est pas réactive.
2nde approche :
Un capteur est mis en place pour mesurer θ. Une loi de commande est élaborée
pour calculer automatiquement u(t) par rapport à la mesure et à la valeur de
consigne.
2nde approche :
Un capteur est mis en place pour mesurer θ. Une loi de commande est élaborée
pour calculer automatiquement u(t) par rapport à la mesure et à la valeur de
consigne.
Une étude expérimentale approxime la relation entre l’entrée u(t) et la sortie θ(t)
par
Une étude expérimentale approxime la relation entre l’entrée u(t) et la sortie θ(t)
par
Θ(p) 4
=
U (p) 240p + 1
Correcteur proportionnel
Correcteur proportionnel
0.8
température
0.6
kp = 0.5
0.4 kp = 1
kp = 2
kp = 5
0.2
0
0 100 200 300 400 500 600
temps (s)
Correcteur PI
Correcteur PI
0.8
température
0.6
0.4
0.2
0
0 100 200 300 400 500 600
temps (s)
Implémentation ?
Implémentation ?
⇒ réalisation analogique
Sommaire
Généralités
Perturbations
Erreur Signal de
Consigne + d'asservissement
Contrôleur Commande Système
Sortie réelle
Sortie
mesurée
Capteur
Généralités
Perturbations
Erreur Signal de
Consigne + d'asservissement
Contrôleur Commande Système
Sortie réelle
Sortie
mesurée
Capteur
Système de commande
Généralités
Perturbations
Erreur Signal de
Consigne + d'asservissement
Contrôleur Commande Système
Sortie réelle
Sortie
mesurée
Capteur
Système de commande
tension représentative
de la position Commande Position
souhaitée du moteur (angle)
+
- Etage de
puissance
Contrôleur
Système
- +
tension représentative
de la position
mesurée u capteur
potentiomètre
tension représentative
de la position Commande Position
souhaitée du moteur (angle)
+
- Etage de
puissance
Contrôleur
Système
- +
tension représentative
de la position
mesurée u capteur
potentiomètre
Position
consigne + commande (angle)
-
CNA
Etage de
puissance
Système
Contrôleur
- +
CAN
u capteur
Ordinateur potentiomètre
Position
consigne + commande (angle)
-
CNA
Etage de
puissance
Système
Contrôleur
roue
codeuse
Ordinateur
Capteur numérique
Avantages
Inconvénients
Sommaire
Signaux continus
( +
R −→ R
t −→ s(t)
s(t)
amplitude
s(t)
s[k]
amplitude
amplitude
t
k
s(t) sq(t)
amplitude
amplitude
temps temps
Signal analogique Signal quantifié
s(nTe) sq(nTe)
amplitude
amplitude
temps temps
Signal échantillonné Signal numérique
Y. Ariba - Icam, Toulouse. Automatique Numérique 18 / 87
Introduction Echantillonnage
s(t) se(t)
Fe
s(t) se(t)
Fe
s(t) se(t)
Te
0 t 0 t
s(t) se(t)
Fe
s(t) se(t)
Te
0 t 0 t
F Combien de fois par seconde devrions-nous relever le signal pour le restituer
correctement ?
1
⇒ fréquence d’échantillonnage (Fe = Te
)?
Y. Ariba - Icam, Toulouse. Automatique Numérique 19 / 87
Introduction Echantillonnage
0 t
0 t
Te
0 t
Te
0 t
Te
Intuitivement, choix de Fe :
Soit un signal s(t) ayant un spectre à support borné (S(f ) = 0 pour f > fmax )
s(t) S(f)
Transformée
de Fourier
temps fréquence
0 -fmax 0 fmax
Soit un signal s(t) ayant un spectre à support borné (S(f ) = 0 pour f > fmax )
s(t) S(f)
Transformée
de Fourier
temps fréquence
0 -fmax 0 fmax
Théorème de Shannon :
Pour préserver l’information contenue dans un signal analogique lors de son
échantillonnage, la fréquence d’échantillonnage doit être supérieure au double de
la largeur spectrale du signal :
Fe ≥ 2fmax
Sommaire
Conversion numérique-analogique
A partir des valeurs numériques calculées par l’ordinateur, quel signal doit être
généré pour la commande du système analogique ?
Conversion numérique-analogique
A partir des valeurs numériques calculées par l’ordinateur, quel signal doit être
généré pour la commande du système analogique ?
uk u(t)
uk u(t)
BOZ
CNA
0 k 0 t
Te
δk b0(t)
1 δk b0(t) 1
BOZ
CNA
k t
0 0 Te
δk b0(t)
1 δk b0(t) 1
BOZ
CNA
k t
0 0 Te
1 e−Te p 1 − e−Te p
B0 (p) = − =
p p p
Sommaire
Transformée de Laplace
L
s(t) −−−−−→ S(p)
Transformée de Laplace
L
s(t) −−−−−→ S(p)
L 1
échelon 1 −−−−−→ p
L 1
rampe t −−−−−→ p2
L 1
exponentielle (a > 0) e−at −−−−−→ p+a
L ω
sinus sin ωt −−−−−→ p2 +ω 2
⇒ S(p) = 1
⇒ S(p) = e−p a
se(t)
s(t)
se(t)
s(t)
se (t) = s(0)δ(t) + s(Te )δ(t − Te ) + s(2Te )δ(t − 2Te ) + s(3Te )δ(t − 3Te ) + . . . + s(kTe )δ(t − kT
se(t)
s(t)
se (t) = s(0)δ(t) + s(Te )δ(t − Te ) + s(2Te )δ(t − 2Te ) + s(3Te )δ(t − 3Te ) + . . . + s(kTe )δ(t − kT
y L
Se (p) = s(0) + s(Te )e−pTe + s(2Te )e−p2Te + s(3Te )e−p3Te + . . . + s(kTe )e−pkTe
Transformée en Z
+∞
L X
se (t) −−−−−→ Se (p) = s(kTe ) e−pkTe
k=0
Transformée en Z
+∞
L X
se (t) −−−−−→ Se (p) = s(kTe ) e−pkTe
k=0
Propriétés :
Retard, pour n ∈ N, n o
Z f [k − n] = z −n F (z)
Avance, pour n ∈ N,
n o n−1
X
Z f [k + n] = z n F (z) − f [k] z n−k
i=0
Rappelons que les fonctions temporelles f (t) ci-dessous sont nulles pour t < 0.
Signal échantillonné
Signal continu f (t) Transformée en Z : F (z)
f (kTe )
z
1 1
z−1
Te z
t kTe
(z − 1)2
k z
a
z−a
−at −akTe z
e e
z − e−aTe
Rappelons que les fonctions temporelles f (t) ci-dessous sont nulles pour t < 0.
Signal échantillonné
Signal continu f (t) Transformée en Z : F (z)
f (kTe )
z sin(ωTe )
sin(ωt) sin(ωkTe )
z 2 − 2z cos(ωTe ) + 1
z 2 − z cos(ωTe )
cos(ωt) cos(ωkTe )
z 2 − 2z cos(ωTe ) + 1
ze−aTe sin(ωTe )
e−at sin(ωt) e−akTe sin(ωkTe )
z 2 − 2ze−aTe cos(ωTe ) + e−2aTe
z 2 − ze−aTe cos(ωTe )
e−at cos(ωt) e−akTe cos(ωkTe )
z 2 − 2ze−aTe cos(ωTe ) + e−2aTe
Sommaire
exemple :
2y[k] + 4y[k − 1] + y[k − 2] = u[k] + 0.5u[k − 1]
ou encore
2y[k + 2] + 4y[k + 1] + y[k] = u[k + 2] + 0.5u[k + 1]
1
y[k] = bm u[k]+bm−1 u[k −1]+. . .+b0 u[k −m]−an−1 y[k −1]−. . .−a0 y[k −n]
an
1
y[k] = bm u[k]+bm−1 u[k −1]+. . .+b0 u[k −m]−an−1 y[k −1]−. . .−a0 y[k −n]
an
exemple :
1
y[k] = u[k] + 0.5u[k − 1] − 4y[k − 1] − y[k − 2]
2
Si y[k] dépend de valeurs d’entrées futurs, u[k + i], le système n’est pas causal.
12000
Evolution de la dette :
10000
8000
r = 0.02
6000
y[0] = 10000 (emprunt initial)
4000
400, k = 1, . . . , 5
u[k] = 150, k = 6, . . . , 10
2000
800, k = 11, . . . , 23
0
0 2 4 6 8 10 12 14 16 18 20 22 23
Modèle exponentiel :
population isolée,
pas de migrations,
ressources illimitées.
N [k + 1] = N [k] + r N [k]
300
population isolée,
200
pas de migrations,
ressources illimitées. 150
100
N [k + 1] = N [k] + r N [k]
50
y Z
y Z
y
Y (z) 1
Fonction de transfert en Z : F (z) = =
U (z) 1 + 3z −1 + 6z −2
y Z
y
Y (z) 1
Fonction de transfert en Z : F (z) = =
U (z) 1 + 3z −1 + 6z −2
U(z) Y(z)
F(z)
Y(z)= F(z) U(z)
Cas général :
Cas général :
y Z
Cas général :
y Z
y
Y (z) bm + bm−1 z −1 + . . . + b0 z −m
Fonction de transfert en Z : F (z) = =
U (z) an + an−1 z −1 + · · · + a0 z −n
Cas général :
y Z
y
Y (z) bm + bm−1 z −1 + . . . + b0 z −m
Fonction de transfert en Z : F (z) = =
U (z) an + an−1 z −1 + · · · + a0 z −n
U(z) Y(z)
F(z)
Y(z)= F(z) U(z)
Exemple :
Soit un système à temps discret, d’entré u[k] et de sortie y[k], régit par
Exemple :
Soit un système à temps discret, d’entré u[k] et de sortie y[k], régit par
Application de la transformée en Z :
Exemple :
Soit un système à temps discret, d’entré u[k] et de sortie y[k], régit par
Application de la transformée en Z :
Y (z) 5 + z −1
F (z) = =
U (z) 1 + 2z −1 − 4z −2
ou encore
Y (z) 5z 2 + z
F (z) = = 2
U (z) z + 2z − 4
Sommaire
Système échantillonné
Système échantillonné
Système échantillonné
G(p)
Le terme Z est obtenu à partir de la table des transformées.
p
F (p) F (z)
1 z
p z−1
1 Te z
p2 (z − 1)2
1 z
p+a z − e−aTe
1 Te z e−aTe
(p + a)2 (z − e−aTe )2
a z(1 − e−aTe )
p(p + a) (z − 1)(z − e−aTe )
ω ze−aTe sin(ωTe )
(p + a)2 + ω 2 z2 − 2ze−aTe cos(ωTe ) + e−2aTe
Exemple 1 :
Exemple 1 :
z − 1 n G(p) o
G(z) = Z
z p
Exemple 1 :
z − 1 n G(p) o
G(z) = Z
z p
G(p) 2 4 4
= = −
p p(p + 0.5) p p + 0.5
Exemple 1 :
z − 1 n G(p) o
G(z) = Z
z p
G(p) 2 4 4
= = −
p p(p + 0.5) p p + 0.5
1 − e−0.5 T e
z−1 4z 4z
G(z) = − −0.5
= 4
z z−1 z−e Te z − e−0.5 T e
2 1 − e−0.5 T e
G(p) = et G(z) = 4 avec Te = 1s
p + 0.5 z − e−0.5 T e
Step Response
3
Amplitude
0
0 2 4 6 8 10 12
Time (sec)
2 1 − e−0.5 T e
G(p) = et G(z) = 4 avec Te = 1s
p + 0.5 z − e−0.5 T e
Step Response
3
Amplitude
0
0 2 4 6 8 10 12
Time (sec)
Exemple 2 :
Exemple 2 :
z − 1 n G(p) o
G(z) = Z
z p
Exemple 2 :
z − 1 n G(p) o
G(z) = Z
z p
G(p) −1 1 1
= + 2 +
p p p p+1
Exemple 2 :
z − 1 n G(p) o
G(z) = Z
z p
G(p) −1 1 1
= + 2 +
p p p p+1
K = e−Te − 1 + Te
z−1 −z Te z z K(z − b)
a = e−Te
G(z) = + + =
z z−1 (z − 1)2 z − e−Te (z − 1)(z − a)
T (1−e−Te )
b=1− e K
1 z−b
G(p) = et G(z) = K avec Te = 200ms
p(p + 1) (z − 1)(z − a)
Step Response
1
0.8
0.6
Amplitude
0.4
0.2
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Time (sec)
1 z−b
G(p) = et G(z) = K avec Te = 200ms
p(p + 1) (z − 1)(z − a)
Step Response
1
0.8
0.6
Amplitude
0.4
0.2
0
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6
Time (sec)
Sommaire
Impulsion de Dirac
Z +∞
Signal défini par : δ(t)dt = 1
−∞
TL : ∆(p) = 1 TZ : ∆(z) = 1
δ(t) δ[kTe]
1∕T 1
T→0
t t
0 T 0
Y. Ariba - Icam, Toulouse. Automatique Numérique 51 / 87
Analyse d’un asservissement Quelques signaux standards
Echelon
1 z
TL : E(p) = TZ : E(z) =
p z−1
e(t) e[kTe]
1 1
t t
0 0
Rampe
e0 Te z
TL : E(p) = TZ : E(z) = e0
p2 (z − 1)2
e(t) e[kTe]
e0
t t
0 0
Sommaire
FTBF : FTBF :
3z 1
F (z) = 2
z
4z + 2 F (z) = 3
2
z+ 2
Z 3 1 k Z 1 4 k
Y (z) = F (z) −−−−→ y[k] = − Y (z) = F (z) −−−−→ y[k] = −
4 2 3 3
0.8
0.6 ³ ´k
3 1
y[k] = 4 − 2
0.4
0.2
−0.2
−0.4
0 2 4 6 8 10
150
100 ³ ´k
1 4
y[k] = 3 − 3
50
−50
−100
0 2 4 6 8 10 12 14 16 18 20
Définition
Un système est dit stable a si pour tout signal d’entrée borné le signal de sortie est
également borné :
Théorème
Un système à temps discret linéaire (F (z)) est stable ssi le module de chacun de
ses pôles est strictement inférieur à 1.
Critère de Jury.
Critère de Jury.
Critère de Jury
an z n + an−1 z n−1 + . . . + a1 z + a0
Un système numérique F (z) est stable ssi les coefficients de son polynôme
caractéristique vérifient (hypothèse : an > 0) :
a0 + a1 + a2 > 0
n=2 : a0 − a1 + a2 > 0
a2 − a0 > 0
a0 + a1 + a2 + a3 > 0
−a0 + a1 − a2 + a3 > 0
n=3 :
a3 − |a0 | > 0
a0 a2 − a1 a3 − a20 a23
+ > 0
a0 + a1 + a2 + a3 + a4 > 0
a0 − a1 + a2 − a3 + a4 > 0
n=4 :
a24 − a20 − |a0 a3 − a1 a4 | > 0
(a0 − a4 )2 (a0 − a2 + a4 ) + (a1 − a3 )(a0 a3 − a1 a4 )
> 0
0.3
0.25
0.2
Amplitude
0.15
0.1
0.05
0
0 5 10 15 20 25
Time (sec)
1.5
0.5
Amplitude
−0.5
−1
−1.5
0 20 40 60 80 100 120 140 160
Time (sec)
Exemple 3 :
2z 2 + z + 1
F (z) =
z3 + (K − 0.75)z − 0.25
Exemple 3 :
2z 2 + z + 1
F (z) =
z3 + (K − 0.75)z − 0.25
z−1 n k o (z − a)kb
G(z) = Z 2 =
z p (p + 1) (z − 1)(z − e−Te )
e−Te (Te +1)−1
avec a = e−Te +Te −1
et b = e−Te − 1 + Te .
(z − a)kb
F (z) =
z 2 + (kb − 1 − e−Te )z + e−Te − kba
k > 0
k > 0
26.4 > k 0.25 > k
2.4 > k 1 > k
k > 0
k > 0
26.4 > k 0.25 > k
2.4 > k 1 > k
Amplitude
1
k=1 0.8
0.5 0.6
k=0.2
0.4
0.2
0 0
0 5 10 15 20 25 30 35 0 20 40 60 80 100 120 140 160 180 200
Time (sec) Time (sec)
Sommaire
Indice de performance :
Indice de performance :
Pour une entrée de consigne donnée, vers quelle valeur tend l’écart :
lim ε(kTe ) = ?
k→∞
Expression de l’erreur ?
= E(z) − G(z)C(z)ε(z)
ε(z) 1 + G(z)C(z) = E(z)
Expression de l’erreur ?
= E(z) − G(z)C(z)ε(z)
ε(z) 1 + G(z)C(z) = E(z)
On a donc :
1
ε(z) = E(z)
1 + G(z)C(z)
Expression de l’erreur ?
= E(z) − G(z)C(z)ε(z)
ε(z) 1 + G(z)C(z) = E(z)
On a donc :
1
ε(z) = E(z)
1 + G(z)C(z)
F Généralement, la précision s’étudie pour des entrées de type donné (→ e(kTe )).
Y. Ariba - Icam, Toulouse. Automatique Numérique 67 / 87
Analyse d’un asservissement Précision d’un système asservi
e0
εp
t
0
Y. Ariba - Icam, Toulouse. Automatique Numérique 68 / 87
Analyse d’un asservissement Précision d’un système asservi
t
0
Y. Ariba - Icam, Toulouse. Automatique Numérique 69 / 87
Analyse d’un asservissement Précision d’un système asservi
Exemple 1 :
E(z) + ε(z) 4z Y(z)
- z+3
1 z+3
Expression de l’erreur : ε(z) = 4z
E(z) = E(z)
1+ z+3
5z + 3
Exemple 1 :
E(z) + ε(z) 4z Y(z)
- z+3
1 z+3
Expression de l’erreur : ε(z) = 4z
E(z) = E(z)
1+ z+3
5z + 3
Exemple 1 :
E(z) + ε(z) 4z Y(z)
- z+3
1 z+3
Expression de l’erreur : ε(z) = 4z
E(z) = E(z)
1+ z+3
5z + 3
1.2
0.8
0.6
0.4
0.2
0
0 5 10
Time (s)
Y. Ariba - Icam, Toulouse. Automatique Numérique 70 / 87
Analyse d’un asservissement Précision d’un système asservi
Erreur de vitesse :
εv = lim (1 − z −1 ) ε(z)
z→1
z−1 z+3 z
= lim e0
z→1 z 5z + 3 (z − 1)2
| {z }
E(z)
=+∞
Erreur de vitesse :
εv = lim (1 − z −1 ) ε(z)
z→1
z−1 z+3 z
= lim e0
z→1 z 5z + 3 (z − 1)2
| {z }
E(z)
=+∞
20
18
16
14
12
10
8
6
4
2
0
0 2 4 6 8 10 12 14 16 18 20
Time (s)
Y. Ariba - Icam, Toulouse. Automatique Numérique 71 / 87
Analyse d’un asservissement Précision d’un système asservi
Exemple 2 :
E(z) + ε(z) 0,5z Y(z)
- z2 - 1,5z + 0,5
Expression de l’erreur :
1 z 2 − 1.5z + 0.5
ε(z) = 0.5z
E(z) = E(z)
1 + z2 −1.5z+0.5 z 2 − z + 0.5
Exemple 2 :
E(z) + ε(z) 0,5z Y(z)
- z2 - 1,5z + 0,5
Expression de l’erreur :
1 z 2 − 1.5z + 0.5
ε(z) = 0.5z
E(z) = E(z)
1 + z2 −1.5z+0.5 z 2 − z + 0.5
Exemple 2 :
E(z) + ε(z) 0,5z Y(z)
- z2 - 1,5z + 0,5
Expression de l’erreur :
1 z 2 − 1.5z + 0.5
ε(z) = 0.5z
E(z) = E(z)
1 + z2 −1.5z+0.5 z 2 − z + 0.5
1.4
1.2
0.8
0.6
0.4
0.2
0
0 5 10 15 20
Y. Ariba - Icam, Toulouse. Time (s) Automatique Numérique 72 / 87
Analyse d’un asservissement Précision d’un système asservi
Erreur de vitesse :
εv = lim (1 − z −1 ) ε(z)
z→1
z − 1 z 2 − 1.5z + 0.5 z
= lim e0
z→1 z z 2 − z + 0.5 (z − 1)2
| {z }
E(z)
(z − 1)(z − 0.5) e0
= lim = e0
z→1 z 2 − z + 0.5 z − 1
Erreur de vitesse :
εv = lim (1 − z −1 ) ε(z)
z→1
z − 1 z 2 − 1.5z + 0.5 z
= lim e0
z→1 z z 2 − z + 0.5 (z − 1)2
| {z }
E(z)
(z − 1)(z − 0.5) e0
= lim = e0
z→1 z 2 − z + 0.5 z − 1
10
0
0 2 4 6 8 10 12
Time (s)
Y. Ariba - Icam, Toulouse. Automatique Numérique 73 / 87
Synthèse de correcteurs
Sommaire
Principe
Principe
Deux approches :
discrétisation
Sommaire
Méthodes de transposition
approximation
ε(t) u(t) εk uk
C(p) Cd(z)
dx(t) xk − xk−1
'
dt Te
dx(t) xk − xk−1
'
dt Te
1 − z −1 z−1
p −→ =
Te zTe
Z
approximation numérique xk−1 + xk
y(t) = x(t)dt −−−−−−−−−−−−−−−−−−−→ yk = yk−1 + Te
2
Z
approximation numérique xk−1 + xk
y(t) = x(t)dt −−−−−−−−−−−−−−−−−−−→ yk = yk−1 + Te
2
1
Dans le domaine de Laplace, l’intégration correspond à : Y (p) = p
X(p).
Te z + 1
La transformée en Z de l’opération de droite donne : Y (z) = X(z).
2 z−1
Exemple
100
Considérons un asservissement avec G(p) =
(p + 1)2
0.19p + 1
Un correcteur analogique a été calculé : C(p) =
0.06p + 1
Step Response
1.4
1.2
1
Amplitude
0.8
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
Time (sec)
Step Response
1.6
1.4
1.2
1
Amplitude
0.8
0.6
0.4
0.2
0
0 0.2 0.4 0.6 0.8 1
Time (sec)
1 1 − p T4e
B0 (p) ' (dév. en série) ou B0 (p) ' (approx. de Padé)
1+ p T2e 1 + p T4e
Sommaire
Implémentation
Schéma général de la commande numérique d’un système
Implémentation
Schéma général de la commande numérique d’un système
+ OU
Ils sont réalisés via une carte d’acquisition ou une carte électronique
accompagnant le µC.
Y. Ariba - Icam, Toulouse. Automatique Numérique 85 / 87
Synthèse de correcteurs Implémentation
⇒ équations récurrentes
⇒ équations récurrentes
Exemple :
U (z) 3z + 2
Cd (z) = = ⇐⇒ u[k] = 0.5u[k − 1] + 3ε[k] + 2ε[k − 1]
ε(z) z − 0.5
12 // equation du correcteur
13 sortie = 0.5* sortie_previous + 3* ecart + 2*
ecart_previous ;
19 return sortie ;
20 }