Professional Documents
Culture Documents
et Informatique
Unit SES
Signaux et Systmes
7me partie
Modlisation et rgulation:
trois applications
in s t i t u t d '
Au t o m a t i s a t i o n
in d u s t r i e l l e
(C)2005 freddy.mudry@eivd.ch
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2
Introduction . . . . . . . . . . . . . . . . .
Modlisation du circuit magntique . . . .
1.2.1 Inductance et rluctance . . . . . .
1.2.2 Calcul de la rluctance . . . . . . .
1.2.3 Calcul de linductance L(z) . . . . .
Calcul de la force magntique F(i, z) . . . .
Linarisation de la force magntique . . . .
Calcul des paramtres a et L . . . . . . .
Mesure du champ de force F(i, z) . . . . . .
Mesure de la constante de temps lectrique
Identication des paramtres . . . . . . . .
Fichier MatLab . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2.1
2.2
2.3
2.4
2.5
2.6
Introduction . . . . . . . . . . . . . . . . . . . . . . . . .
quations du systme . . . . . . . . . . . . . . . . . . . .
2.2.1 quations du balancier . . . . . . . . . . . . . . .
2.2.2 Linarisation des quations . . . . . . . . . . . . .
2.2.3 quations du systme dentranement . . . . . . .
2.2.4 quations linaires de lensemble . . . . . . . . .
Reprsentation dtat de lensemble . . . . . . . . . . . .
2.3.1 Valeurs numriques des paramtres . . . . . . . .
Rgulateur dtat . . . . . . . . . . . . . . . . . . . . . .
2.4.1 Critres doptimisation pour le rgulateur . . . . .
2.4.2 Gains du rgulateur . . . . . . . . . . . . . . . .
2.4.3 Comportement temporel en boucle ferme . . . . .
2.4.4 Rgulateurs Proportionnel-Driv . . . . . . . . .
2.4.5 Schma fonctionnel . . . . . . . . . . . . . . . . .
Simulation et rsultats exprimentaux . . . . . . . . . . .
Annexes . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.1 quations du pendule invers . . . . . . . . . . .
2.6.2 Forme canonique des quations non linaires . . .
2.6.3 Programme de simulation et synthse du rgulateur
(C)2005 freddy.mudry@eivd.ch
1
2
2
2
4
4
6
6
6
8
8
9
13
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
13
14
14
14
15
17
18
18
18
19
20
20
21
21
21
23
23
25
26
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
ii
Introduction . . . . . . . . . . . . . . . . . . . .
Description des rgulateurs PID . . . . . . . . .
3.2.1 Le rgulateur PID . . . . . . . . . . . . .
3.2.2 Le rgulateur PID modi . . . . . . . .
3.2.3 quivalent numrique du rgulateur PID .
Rponses dun processus apriodique . . . . . .
3.3.1 Rponse indicielle . . . . . . . . . . . .
3.3.2 Rponse frquentielle . . . . . . . . . .
3.3.3 Caractristiques dun processus dordre 3
Synthse par compensation des ples . . . . . . .
Mthodes de Ziegler et Nichols (ZN) . . . . . . .
3.5.1 Mthode de la rponse indicielle . . . . .
3.5.2 Mthode du point critique . . . . . . . .
3.5.3 Exemple . . . . . . . . . . . . . . . . .
Mthodes de strm et Hgglund (AH) . . . . .
3.6.1 Critre dajustage des paramtres . . . .
3.6.2 Mthode de la rponse indicielle . . . .
3.6.3 Mthode du point critique . . . . . . . .
3.6.4 Exemple . . . . . . . . . . . . . . . . .
Comparaison des rponses indicielles . . . . . .
Rgulateurs relais . . . . . . . . . . . . . . . .
3.8.1 Fonctions descriptives . . . . . . . . . .
3.8.2 Rgulateurs relais . . . . . . . . . . .
Rgulateurs PID auto-ajustables . . . . . . . . .
3.9.1 Auto-ajustage en labsence de bruit . . .
3.9.2 Auto-ajustage en prsence de bruit . . . .
3.9.3 Comparaison des rsultats . . . . . . . .
29
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
(C)2005 freddy.mudry@eivd.ch
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
29
30
30
30
32
34
34
35
35
37
37
37
38
39
40
41
41
42
42
46
47
48
49
51
52
53
54
1.1 Introduction
(C)2005 freddy.mudry@eivd.ch
1
lm
=
Sm
(1.1)
Ni=
H d l
(1.3)
B = H
(1.4)
B dS
B Sm
(1.5)
H dl
H lm
(1.6)
Ni
lm
Sm = N 2
Sm
lm
(1.7)
(1.8)
Sm 2 1 2
=
N = N = N2
i
lm
(1.9)
L
on obtient nalement
(C)2005 freddy.mudry@eivd.ch
z
3
2
Z
(1.11)
z
(1.13)
a
Portant ce rsultat dans lquation (1.10), la permance en fonction de la distance sparant
la sphre du noyau magntique scrit nalement :
2 + z = 0 1 +
1
1
1
=
1+
z
0
1+ a
(C)2005 freddy.mudry@eivd.ch
(1.14)
1
N2 N2
=
1+
z
0
1+ a
L() 1
z
1+ a
(1.15)
4 3
2$1 &$#" ! 0( %&$#" !
' )
%
) '
L(z)
L()
8 7 G A 9 8 7
0H"0FEDC0@07
B A 9 8
100%
50%
4 3
2$1 (0#" 6 $
' )
%
L() 1
1
z = Lmax
z
1+ a
1+ a
(1.16)
On voit aussi que la hauteur caractristique a reprsente la distance ncessaire pour rduire Lmax dun facteur 2.
(C)2005 freddy.mudry@eivd.ch
1
1
L i2 = L i di + i2 dL
2
2
(1.18)
(1.19)
(1.20)
Tenant compte de
la loi de Lenz u(t) = d/dt,
la loi dnissant linductance = L i
la variation dnergie magntique (quation 1.18),
lquation (1.20) scrit :
dWelec = i (u(t) dt) = i d
= i (L di + i dL)
= L i di + i2 dL
1
= dWmag + i2 dL
2
do
1
dWmag = dWelec i2 dL
2
(1.21)
1
dL(z)
dWmec
= i2
dz
2
dz
(1.22)
i2
L()
2a 1+ z
a
(C)2005 freddy.mudry@eivd.ch
(1.23)
F
i
i+
Q0
avec
F0 F(i0 , z0 ) =
Ki +
Kz
F
z
=
Q0
F
i
=
Q0
F
z
i2
L()
0
2 a 1 + z0
a
L()
i0
z
a
1+ a
i2
L()
0
a2 1 + z
a
do
z = F0 + Ki i Kz z
(1.24)
Q0
3
Q0
(1.25)
2
Q0
1
2 F0
z
a 1+ a
2 F0
i0
2 F0
Kz =
a + z0
Ki =
Q0
(1.26)
(1.27)
z
1+ a
L()
= 2a F0
i2
0
(1.29)
(C)2005 freddy.mudry@eivd.ch
0.3
0.25
Force [N]
0.2
0.15
0.1
Ki = 0.658 [N/A]
0.05
0.05
0.1
0.15
0.2
0.25
Courant [A]
0.3
0.35
0.4
0.45
0.5
0.5
0.45
0.4
0.35
Force [N]
0.3
0.25
0.2
K = 12.1 [N/m]
z
0.15
0.1
0.05
0
10
15
Distance [mm]
20
25
(C)2005 freddy.mudry@eivd.ch
Kz = +12 [N/m]
Ces valeurs sont comparer avec Ki,theorique (qu. 1.26) et Kz,max (qu. 1.27) :
Ki,theorique =
Kz,max =
2 F0 0.246 [N]
=
= 0.83 [N/A]
i0
0.3 [A]
2 F0 0.246 [N]
=
= 14.5 [N/m]
z0
17 [mm]
0.7
0.6
i(t) [A]
0.5
0.4
0.3
0.2
0.1
10
20
30
40
50
60
Temps [msec]
70
80
90
100
i0
Kz
elec
= 0.3 [A]
= 12 [N/m]
= 22 [ms]
z0
17 [mm]
(C)2005 freddy.mudry@eivd.ch
2 F0
z0 = 3.3 [mm]
Kz
et la variation de linductance
Lmax = 2a F0
(1 + z0 /a)2
= 0.34 [H]
i2
0
Enn, des quations (1.10) et (1.11), on tire le coefcient de proportionnalit entre les
rluctances 2 et 0 :
2
L()
=
=
= 5.2
0 Lmax
On en dduit que la rluctance du circuit magntique passant par la sphre est environ
cinq fois plus grande que celle de lenvironnement de la bobine et que la grande partie du
ux magntique ne circule pas au travers de la sphre.
(C)2005 freddy.mudry@eivd.ch
10
(C)2005 freddy.mudry@eivd.ch
Bibliographie
(C)2005 freddy.mudry@eivd.ch
11
Bibliographie
12
(C)2005 freddy.mudry@eivd.ch
2 M ODLISATION ET RGULATION D UN
PENDULE INVERS
2.1 Introduction
Dans le domaine scientique et celui de lenseignement, lautomatique a souvent recours
des cas dtudes particuliers, qui sont reprsentatifs de grandes classes dapplications, et
dont le caractre spectaculaire est conrm. De plus, avec lexprience, la connaissance de
ces cas sest afne et ils fournissent aujourdhui une base idale pour comparer de faon
valable les avantages et les inconvnients dapproches diffrentes. Le pendule invers est
un de ces cas-types.
(C)2005 freddy.mudry@eivd.ch
13
(t) =
x(t) =
fb
3g
3
sin((t))
x(t) cos((t))
(t) +
2Lb
4Jb
2Lb
fcc
mb Lb /2
F(t)
x(t) +
(2.1)
(2.2)
mg
(t) =
14
3g
fb
3
(t)
x(t)
(t) +
2Lb
4Jb
2Lb
(C)2005 freddy.mudry@eivd.ch
(2.3)
x(t) =
fcc
mb Lb /2
1
x(t) +
F(t)
(t) +
mcc + mb
mcc + mb
mcc + mb
(2.4)
Jm
kg m2
Jk
kg m2
J0
kg m2
u(t)
V
Description
vitesse de rotation du moteur
vitesse de rotation des poulies Pk
rayon des poulies Pk
gain de lamplicateur
constante de couple
rapport de rduction r2 /r1
inertie du moteur
inertie des poulies Pk
inertie totale rapporte au moteur
tension fournie par le rgulateur
(C)2005 freddy.mudry@eivd.ch
15
# "
16
(C)2005 freddy.mudry@eivd.ch
r3
F(t)
N
(2.5)
avec
J2 + J3 + J4
(2.6)
N2
Comme les acclrations longitudinale du chariot et angulaire du moteur sont relies entre
elles par lquation suivante :
J0 = Jm + J1 +
m (t) = N 3 (t) =
N
x(t)
r3
(2.7)
r3
r3
(2.9)
(2.10)
(2.11)
avec :
0 =
1 =
3g
2Lb
fcc
mcc +mb
1 =
N 2 J0
2
r3
1 =
2 =
fb
4Jb
mb Lb
2(mcc +mb )
2 =
2 =
3 =
3
2Lb
1
mcc +mb
NKa Km
r3
La rsolution de ce systme diffrentiel permet dcrire les acclrations (t) et x(t) par
rapport aux autres variables. On obtient ainsi la forme canonique du systme diffrentiel :
avec
a21 =
0 (1+3 1 )
12 2 +3 1
a22 =
1 (1+3 1 )
12 2 +3 1
a24 =
2 1
12 2 +3 1
a41 =
0 2
12 2 +3 1
a42 =
1 2
12 2 +3 1
a44 =
1
12 2 +3 1
b2 =
2 3 2
12 2 +3 1
b4 =
(2.12)
(2.13)
3 2
12 2 +3 1
(C)2005 freddy.mudry@eivd.ch
17
(t)
(t)
(t)
(t)
X(t) =
(2.14)
X(t) =
x(t)
x(t)
x(t)
x(t)
0
1
a21 a22
A=
0
0
a41 a42
0 0
0 a24
0 1
0 a44
(2.15)
0
b
B= 2
0
b4
(2.16)
(t)
0
1
0
0
(t)
0
(t) 40.4 0.217 0 1.54 (t) 50.0
x(t) = 0
x(t) + 0 u(t) (2.17)
0
0
1
x(t)
13.3
(t)
(t)
(2.18)
u(t) = K X = K K Kx Kx
x(t)
x(t)
Le vecteur-ligne K contient les gains associs chaque variable dtat. Dun point de vue
classique, on constate que ce rgulateur dtat est en fait un double rgulateur proportionnel
driv utilis pour rgler linclinaison du pendule avec (t) et (t) et rgler la position du
chariot laide de x(t) et x(t).
18
(C)2005 freddy.mudry@eivd.ch
Chariot-Courroie
Poulies
mb = 0.095 [kg]
r1 = 0.008 [m]
Lb = 0.40 [m]
r2 = 0.040 [m]
Km = 0.0525
r3 = 0.027 [m]
N=5
fb = 103
Nm
rad/sec
fcc = 0.3
N
m/sec
Entranement
Ka = 1
A
V
Nm
A
(2.19)
X t (t) Q X(t) + R u2 (t) dt
J(Q, R) =
0
avec
Q 0 0 0
0 Q 0 0
Q=
0
0 Qx 0
0
0 0 Qx
(2.20)
1 0 0 0
0 0 0 0
Q=
R=1
0 0 5 0
0 0 0 0
(C)2005 freddy.mudry@eivd.ch
(2.21)
19
Kx
Kx
=
=
=
=
4.98 [V /rad]
0.78 [V /(rad/sec)]
+2.24 [V /m]
+1.41 [V /(m/sec)]
On remarque immdiatement les signes des coefcients associs aux variables angulaires
et longitudinales qui introduisent une raction ngative sur (t) et (t) et une raction
positive sur x(t) et x(t).
Il est intressant de relever que cest la boucle dasservissement angulaire qui stabilise le
systme alors que la boucle dasservissement du chariot seul est instable.
X(t) = (A B K) X(t)
(2.22)
(2.23)
qui dcrit le systme boucl. Tenant compte des valeurs numriques, cette matrice vaut
0
1
0
0
220 39.7 112 70.9
Abf =
0
0
0
1
68.5 10.4 29.8 18.9
Les valeurs propres de la matrice Abf reprsentent les ples du systme asservi qui valent
p1,2 = 6.99 j3.71
p3,4 = 3.41 j2.43
On sait qu chaque paire de ples complexes conjugus sont associs une constante de
temps , une pulsation doscillation p et un coefcient damortissement dnis comme
suit
Re (pk.l )
1
(2.24)
=
pk,l = j p ,
pk,l
Dans notre cas, cela conduit des constantes de temps valant 0.14 et 0.29 secondes et
des coefcients damortissement de 0.88 et 0.81. On peut donc sattendre un rgime
transitoire denviron 1.5 seconde avec une lgre oscillation.
20
(C)2005 freddy.mudry@eivd.ch
(2.26)
avec
(2.25)
(2.27)
(2.28)
dex (t)
dt
(2.29)
u (t) = K p e (t) + Td
ux (t) = K px ex (t) + Tdx
avec
(2.30)
On voit ainsi que les gains du rgulateur dtat et les paramtres des rgulateurs PD sont
relis entre eux
K
K p = K
Td =
(2.31)
K
Kx
K px = Kx
Tdx =
(2.32)
Kx
Tenant compte des valeurs numriques, on a nalement :
K p = +4.98 [V /rad]
K px = 2.24 [V /m]
Td = 0.156 [sec]
Tdx = 0.631 [sec]
(C)2005 freddy.mudry@eivd.ch
21
Pendule invers
wx
Rx
Ampli
Moteur
Balancier
Chariot
ux
phi(t)
1
0.5
0
0.5
0.5
1.5
2.5
0.5
1.5
2.5
0.5
1.5
2.5
0.5
1.5
2.5
0.2
x(t)
0
0.2
0.4
v(t)
2
0
2
u(t)
4
2
0
2
temps [sec]
22
(C)2005 freddy.mudry@eivd.ch
2.6 Annexes
2.6 Annexes
2.6.1 quations du pendule invers
Pour dcrire le pendule invers, il faut dcomposer le corps en 2 parties (I) et (II) pour
lesquelles on crira les quations de la dynamique dun corps solide. Cette dcomposition
est illustre par la gure 2.7.
(I)
mg
mg
Fy
Fx
X
Fx
(II)
F(t)
Fy
F(t)
x(t)
Comme le balancier tourne autour dun axe qui nest pas xe,
il faut dcrire son mouvement par rapport son centre de gravit G :
quations du balancier
m xG = Fx
(2.33)
m yG = Fy mg
(2.34)
(2.35)
avec
Jb = m
quation du chariot
2
Lb
L2
=m
12
3
simplement :
M x = F(t) Fx
(C)2005 freddy.mudry@eivd.ch
(2.36)
23
quations de liaisons
xG = x L sin(),
yG = L cos()
do
xG = x L cos(),
yG = L sin()
xG = x L cos() + L2 sin()
(2.37)
yG = L sin() L2 cos()
(2.38)
Fx = m x m L cos + m L2 sin
(2.39)
Fy = mg m L sin m L 2 cos
(2.40)
Jb + mL2 cos2 + mL2 sin2 = +mL (x cos + g sin )+m L2 2 (sin cos sin cos )
mL2
+ mL2 = +mL (x cos + g sin )
=+
do
(t) = +
3
(x cos + g sin )
4L
3
3g
sin (t) +
x(t) cos (t)
2Lb
2Lb
(2.41)
do :
x(t) =
F(t)
mLb /2
On notera que dans ce calcul, les frottements nont pas t pris en compte.
24
(C)2005 freddy.mudry@eivd.ch
(2.42)
2.6 Annexes
(t) =
x(t) =
3
3g
fb
(t) +
sin((t))
x(t) cos((t))
2Lb
4Jb
2Lb
1
fcc
mb Lb /2
F(t)
mcc + mb
mcc + mb
mcc + mb
F(t) =
N 2 J0
NKa Km
x(t) +
u(t)
2
r3
r3
a1 (t) =
3g
2Lb
b1 (t) =
fcc
mt x(t)
c1 =
N 2 J0
r3
Lm =
Lb mb
2 mt
a2 (t) =
3
2Lb
cos (t)
N Ka Km
r3
a3 (t) =
fb
4Jb (t)
b4 =
1
mt
u(t)
on peut crire les quations non linaires sous une forme allge
La rsolution de ces 3 quations par rapport aux 3 inconnues (t), x(t), F(t) donne :
1
(a1 (t) a2 (t) a3 (t) (b1 (t) + b3 (t)) + b4 c1 (t) (a1 (t) a2 (t)) a3 (t)b4 c2 (t))
D(t)
1
(b1 (t) + b3 (t) + b2 (t) (a1 (t) + a2 (t)) b4 c2 (t))
x(t) =
D(t)
1
F(t) =
(c1 (b1 (t) + b3 (t) + b2 (t) (a1 (t) + a2 (t))) + c2 (t) (1 a3 (t)b2 (t)))
D(t)
(t) =
avec
D(t) = 1 a3 (t) b2 (t) + b4 c1
(C)2005 freddy.mudry@eivd.ch
25
26
(C)2005 freddy.mudry@eivd.ch
2.6 Annexes
a41 = a0*b2/den ; a42 = -a1*b2/den ; a44 = -b1/den ;
b20 = a2*b3*c2/den ; b40 = b3*c2/den ;
% Description du pendule inverse :
% Vecteur detat : Xs = [phi phid x xd] ; => Xs(4,1)
% vecteur des sorties : y = [phi x] ;
% vecteur des consignes : Xr = [1 0 1 0] ;
% Xsd = A Xs + B u avec A(4,4), B(4,1), u(1,1)
% y = C Xs + D u y(2,1), C(2,4), D(2,1)
% u = - Kreg Xs + N Xr Kreg(1,4), N(1,4), Xr(4,1)
A = [0 1 0 0
a21 a22 0 a24
0 0 0 1
a41 a42 0 a44] % matrice detat
B = [0 b20 0 b40] % matrice de commande
C = [1 0 0 0
0 0 1 0] ; % matrice de sortie
D = [0 0] ;
Xr = [1 0 1 0] ; % vecteur de consigne
% Poles en boucle ouverte :
pk = eig (A) ;
% Calcul du regulateur detat Kreg
% tel que : J = S [XsQXs + uRu]dt => minimum :
Qphi = 1 ; Qx = 5 ; R = 1 ;
Q = [Qphi 0 0 0
0 0 0 0
0 0 Qx 0
0 0 0 0] ;
Kreg = lqr(A, B, Q, R)
% Regulateurs PD
Kpa = -Kreg(1) ; Tda = Kreg(2) / Kreg(1) ;
Kpx = -Kreg(3) ; Tdx = Kreg(4) / Kreg(3) ;
RegA = Kpa * tf([Tda 1], [0.1*Tda 1]) ;
RegX = Kpx * tf([Tdx 1], [0.1*Tdx 1]) ;
% Modele detat en boucle fermee :
N = Kreg ;
Af = A - B * Kreg ;
Bf = B * N ;
Cf = C - D * Kreg ;
Df = D * N ;
pkf = eig(Af) % Poles en boucle fermee
sysbf = ss (Af,Bf,Cf,Df) ;
% Reponse statique :
Xstat = - inv(Af) * Bf * Xr ;
(C)2005 freddy.mudry@eivd.ch
27
% Informations :
Qphi, Qx, R % parametres pour la synthese LQR
Kpa, Tda % parametres du regulateur angulaire
Kpx, Tdx % parametres du regulateur longitudinal
Ttrans = -5 ./ real(pkf) % duree du regime transitoire
Tper = 2*pi ./ abs(imag(pkf)) % periodes doscillations
damp (sysbf) % amortissement et pulsations propres
% Calcul et tracage de la reponse temporelle
tmax = 5 ; dt = tmax / 250 ;
t = 0 :dt :tmax ; Xs0 = [pi/6 0 0 0] ;
[yf, xf] = initial (Af, Bf, Cf, Df, Xs0, t) ;
ut = Kreg * xf ; % signal de commande
a4 = [a41 a42 0 a44] ; % vecteur pour lacceleration xdd
xdd = a4 * xf + b40 * ut ; % acceleration longitudinale
phi = xf( :,1) ; phid = xf( :,2) ; % extraction des variables dtat
xt = xf( :,3) ; xd = xf( :,4) ;
figure (1) ;
subplot (4,1,1) ; plot (t, phi) ; ylabel(phi(t) [rad]) ; grid
texte = [ Qa = , num2str(Qphi,2)] ;
texte = [texte, Qx = , num2str(Qx,2), R = , num2str(R,2)] ;
title ([Evolution du pendule invers, texte]) ;
axis ([0 5 -0.5 1]) ;
text (4.3, 0.7, [Kpa = num2str(Kpa, 3)]) ;
text (4.3, 0.2, [Tda = num2str(Tda, 3)]) ;
subplot (4,1,2) ; plot (t, xt ) ; ylabel(x(t) [m]) ; grid
axis ([0 5 -0.6 0.2]) ;
text (4.3,-0.1, [Kpx = num2str(Kpx, 3)]) ;
text (4.3,-0.3, [Tdx = num2str(Tdx, 3)]) ;
subplot (4,1,3) ; plot (t, xd) ; ylabel(v(t) [m/sec]) ; grid
axis ([0 5 -3 2]) ;
subplot (4,1,4) ; plot (t, ut ) ; ylabel(u(t) [V]) ;
axis ([0 5 -2 5]) ;
xlabel (temps [sec]) ; grid
28
(C)2005 freddy.mudry@eivd.ch
(C)2005 freddy.mudry@eivd.ch
29
1
Ti
t
0
e(t)dt + Td
de(t)
dt
(3.1)
(3.2)
U(s)
1
= Kp 1 +
+ sTd
E(s)
sTi
(3.3)
Cette combinaison des terme P, I et D est aussi dsigne sous le nom de forme parallle ou
non-interactive. Le schma fonctionnel dun processus rgl laide dun tel rgulateur
est donn la gure 3.1. En plus des signaux dnis plus haut, on y trouve la perturbation
v(t), le bruit de mesure n(t) et le signal de sortie non bruit x(t).
v(t)
w(t)
e(t)
Gc(s)
u(t)
n(t)
Gp(s)
x(t)
30
(C)2005 freddy.mudry@eivd.ch
y(t)
1
Ti
e(t)dt + Td
ded (t)
dt
(3.6)
Tenant compte des dnitions des 3 carts, le signal de commande u(t) scrit :
u(t) = K p b w(t) +
1
Ti
t
0
w(t)dt + c Td
dw(t)
1
K p y(t) +
dt
Ti
t
0
y(t)dt + Td
dy(t)
dt
1
1
+ c sTd W (s) K p 1 +
+ sTd Y (s)
sTi
sTi
(3.7)
Le rgulateur PID ainsi modi fait apparatre deux fonctions de transfert associes la
consigne pour lune, et au signal rgl pour lautre :
G f f (s)
Gc (s)
U(s)
W (s)
U(s)
Y (s)
= Kp b +
Y (s)=0
1
+ c sTd
sTi
(3.8)
1
+ sTd
sTi
(3.9)
= Kp 1 +
W (s)=0
Le schma fonctionnel dun processus rgl laide de ce rgulateur est donn la gure 3.2. On dit que ce rgulateur possde deux degrs de liberts.
Dun point de vue pratique, deux autres modications sont frquemment apportes au
rgulateur PID.
1. An de diminuer linuence du bruit hautes-frquences, on limite le gain HF du
drivateur en remplaant le terme sTd par la fonction de transfert suivante
Gd (s) =
sTd
1 + sTd /N
(3.10)
(C)2005 freddy.mudry@eivd.ch
31
Gc(s)
v(t)
w(t)
Gff(s)
u(t)
n(t)
Gp(s)
x(t)
y(t)
(3.11)
(3.12)
(3.13)
Terme intgral
Lintgrale du terme I est remplace par la somme des carts et la diffrentielle dt, par la
priode dchantillonnage Te . On a donc :
Te
Te n
ui [n] =
e[k] = ui[n 1] + Ti e[n]
Ti k=0
(3.14)
32
(C)2005 freddy.mudry@eivd.ch
Pour trouver lquivalent numrique du terme driv, il faut partir de lquation diffrentielle reprsentant la fonction de transfert Gd (s)
Gd (s)
Ud (s)
sTd
=
Ed (s) 1 + sTd /N
sTd
N
= Ed (s) sTd
dt
N dt
ed [n] ed [n 1] Td ud [n] ud [n 1]
Te
N
Te
Td
NTe
Td
Td
(ed [n] ed [n 1]) +
ud [n 1]
Te
NTe
Td
NTd
(ed [n] ed [n 1]) +
ud [n 1]
Td + NTe
Td + NTe
(3.15)
Signal de commande
(3.16)
Algorithme numrique
Une fois les variables et paramtres initialiss, le rgulateur devra, chaque chaque instant
dchantillonnage, lire le signal rgl y laide du convertisseur A-N, obtenir la consigne
w qui est gnralement fournie par le programme de supervision et effectuer les oprations
suivantes :
e = wy
ep = b w y
ed = c w y
(C)2005 freddy.mudry@eivd.ch
33
Te
e
Ti
Ui,min ui Ui,max
ud =
NTd
Td
(ed ed1 ) +
ud1
Td + NTe
Td + NTe
Puis, tenant compte des grandeurs ainsi obtenues, il fournira le signal de commande u au
convertisseur N-A :
u = K p (e p + ui + ud )
et mettra jour la pile des valeurs prcdentes :
ed1 = ed ui1 = ui ud1 = ud
(3.17)
T = t2 t1
(3.18)
y()
a
=
t3 t1 L
(3.19)
L
t1
=
L+T
t2
(3.20)
34
y()
E
(C)2005 freddy.mudry@eivd.ch
(3.21)
0.8
63%
bo
y (t)
0.6
0.4
0.2
t1 = L
0.2
t2
t3
a
0
10
15
1
G
(3.22)
le gain relatif
=
G
1
=
G(0) Kcr K0
(3.23)
1
(1 + s)3
(C)2005 freddy.mudry@eivd.ch
35
Module [dB]
10
G
20
30
40
50
60
1
10
10
10
Phase [deg]
50
100
150
200
250
300
1
10
10
pulsation [rad/sec]
y()
= 0.27 [V /sec]
t3 t1
t1
L
= = 0.249 [/]
L+T
t2
y()
= 1 [/]
E
cr = = 1.73 [rad/sec]
le gain critique :
Kcr =
1
= 18.1 [dB] = 8.03 [/]
G
le gain relatif :
=
36
1
G
=
= 0.125 [/]
G(0) Kcr K0
(C)2005 freddy.mudry@eivd.ch
10
1 2
1 + 2
1 1 + 2 1
K0 3 42
(C)2005 freddy.mudry@eivd.ch
37
y)t)
1.5
1
0.5
0
10
15
20
25
30
10
15
temps [sec]
20
25
30
u(t)
4
2
0
2
38
(C)2005 freddy.mudry@eivd.ch
Kp
1/(pL) = 1/a
0.9/(pL) = 0.9/a
1.2/(pL) = 1.2/a
Ti
Td
3L
2L
0.5L
TAB . 3.1: Paramtres PID obtenus partir dune rponse indicielle (ZNt )
Type
P
PI
PID
Kp
0.5Kcr
0.4Kcr
0.6Kcr
Ti
Td
0.8Tcr
0.5Tcr
0.125Tcr
3.5.3 Exemple
Mthode de la rponse indicielle
1
y
=
= 0.27 [sec1 ]
t
t3 t1
le retard apparent :
L = t1 = 0.81 [sec]
Du premier tableau de Ziegler-Nichols, on tire les 3 paramtres du rgulateur PID
1.2
= 5.49 [/]
pL
= 2 L = 1.61 [sec]
= 0.5 L = 0.40 [sec]
Kp =
Ti
Td
1
= 8.03 [/]
G
la priode critique :
Tcr =
2
= 3.62 [sec]
(C)2005 freddy.mudry@eivd.ch
39
y)t)
1.5
1
0.5
0
10
15
20
25
30
10
15
temps [sec]
20
25
30
u(t)
4
2
0
2
40
(C)2005 freddy.mudry@eivd.ch
1
max
0 < < 1 + G p ( j)Gc ( j)
(3.24)
(3.25)
L
L+T
(3.26)
Kn = K0
2. le temps mort relatif
=
(C)2005 freddy.mudry@eivd.ch
41
1
G
=
G(0) Kcr K0
(3.28)
(3.29)
De la mme manire que pour la mthode temporelle, strm relie les paramtres du
rgulateur au gain relatif au travers de fonctions ayant la forme
f () = a0 exp a1 + a2 2
(3.30)
Les paramtres a0 , a1 , a2 servant au calcul des termes K p , Ti , Td ont t obtenus par ajustage de courbes au sens des moindres carrs. strm a alors pu construire le tableau 3.5
pour les rgulateurs PI et le tableau 3.6 pour les rgulateurs PID.
3.6.4 Exemple
Mthode de la rponse indicielle
42
(C)2005 freddy.mudry@eivd.ch
F IG . 3.7: Diagrammes dajustage des paramtres PID par la mthode de la rponse indicielle [3]. Les tests ont t faits sur de nombreux processus en recherchant des
rgulateurs ples dominants pour lesquels Ms = 1.4 , marqus , ou Ms = 2.0,
marqus . Chaque ensemble de points exprimentaux est ensuite ramen
une fonction du type f () = a0 exp a1 + a2 2 ajuste au sens des moindres
carrs. Les lignes traitilles correspondent aux rgles de Ziegler-Nichols.
(C)2005 freddy.mudry@eivd.ch
43
Kn K p
Ti /L
Ti /T
b
Ms = 1.4
a0
a1
0.29
-2.7
8.9
-6.6
0.79
-1.4
0.81
0.73
a2
3.7
3.0
2.4
1.9
a0
0.78
8.9
0.79
0.44
Ms = 2.0
a1
-4.1
-6.6
-1.4
0.78
a2
5.7
3.0
2.4
-0.45
TAB . 3.3: Paramtres dun rgulateur PI obtenus partir dune rponse indicielle (AHt )
Kn K p
Ti /L
Ti /T
Td /L
Td /T
b
a0
3.8
5.2
0.46
0.89
0.077
0.40
Ms = 1.4
a1
-8.47
-2.5
2.8
-0.37
5.0
0.18
a2
7.3
-1.4
-2.1
-4.1
-4.8
2.8
a0
8.4
3.2
0.28
0.86
0.076
0.22
Ms = 2.0
a1
-9.6
-1.5
3.8
-1.9
3.4
0.65
a2
9.8
-0.93
-1.6
-0.44
-1.1
0.051
TAB . 3.4: Paramtres dun rgulateur PID obtenus partir dune rponse indicielle (AHt )
K p /Kcr
Ti /Tcr
b
a0
0.053
0.90
1.1
Ms = 1.4
a1
2.9
-4.4
-0.0061
a2
-2.6
2.7
1.8
a0
0.13
0.90
0.48
Ms = 2.0
a1
1.9
-4.4
0.40
a2
-1.3
2.7
-0.17
TAB . 3.5: Paramtres dun rgulateur PI obtenus partir du point critique (AH f )
K p /Kcr
Ti /Tcr
Td /Tcr
b
a0
0.33
0.76
0.17
0.58
Ms = 1.4
a1
-0.31
-1.6
-0.46
-1.3
a2
-1.0
-0.36
-2.1
3.5
a0
0.72
0.59
0.15
0.25
Ms = 2.0
a1
-1.6
-1.3
-1.4
0.56
a2
1.2
0.38
0.56
-0.12
TAB . 3.6: Paramtres dun rgulateur PID obtenus partir du point critique (AH f )
44
(C)2005 freddy.mudry@eivd.ch
Kp
Ti
Td
b
K0 L/T
L/(L + T )
a0 exp(a1 + a2 2 )/Kn
a0 exp(a1 + a2 2 ) T
a0 exp(a1 + a2 2 ) T
a0 exp(a1 + a2 2 )
1 0.81/2.44
0.33 [/]
0.81/(0.81 + 2.44)
0.25 [/]
8.4 exp(9.6 0.25 + 9.8 0.252 )/0.33
4.28 [/]
2 ) 2.44
0.28 exp(3.8 0.25 1.6 0.25
1.59 [sec]
2 ) 2.44 0.40 [sec]
0.076 exp(3.4 0.25 1.1 0.25
0.22 exp(0.65 0.25 + 0.051 0.252 )
0.26 [/]
y)t)
1.5
1
0.5
0
10
15
20
25
30
10
15
temps [sec]
20
25
30
u(t)
4
2
0
2
Kp
Ti
Td
b
1/(Kcr K0 )
a0 exp(a1 + a2 2 ) Kcr
a0 exp(a1 + a2 2 ) Tcr
a0 exp(a1 + a2 2 ) Tcr
a0 exp(a1 + a2 2 )
1/(8.03 1)
0.125 [/]
0.72 exp(1.6 0.125 + 1.2 0.1252 ) 8.03
4.8 [/]
0.59 exp(1.3 0.125 + 0.38 0.1252 ) 3.62 1.83 [sec]
0.15 exp(1.4 0.125 + 0.56 0.1252 ) 3.62 0.46 [sec]
0.25 exp(0.56 0.125 0.12 0.1252 )
0.27 [/]
(C)2005 freddy.mudry@eivd.ch
45
1.6
ZNf
1.4
1.2
Compensation
y(t)
Compensation
AHf
ZNf et AHf
0.8
0.6
0.4
0.2
10
15
temps [sec]
20
25
30
46
(C)2005 freddy.mudry@eivd.ch
Kp
Ti
Td
b
ZN f
4.82
1.81
0.45
1.0
AH f
4.80
1.83
0.46
0.27
+D
e(t) = A sin(t)
e(t)
u(t)
N(A)
u(t)
-D
w(t)
e(t)
N(A)
u(t)
Gp(s)
y(t)
(C)2005 freddy.mudry@eivd.ch
47
4D
pour k impair
k
(3.31)
U( j)k=1 4D/ 4D
=
=
E( j)k=1
A
A
(3.32)
1
0.5
0
=0
0.5
1
0
0.2
0.4
0.6
0.8
1.2
1.4
1.6
1.8
1.4
1.6
1.8
1
+
0.5
0
0.5
1
0
0.2
0.4
0.6
0.8
1.2
48
(C)2005 freddy.mudry@eivd.ch
(3.33)
La fonction descriptive du relais avec hystrsis devient alors une fonction complexe qui
scrit :
U( j)k=1 4D j
N(A)
=
e
E( j)k=1
A
do :
2
4D
1
(3.34)
j
N(A) =
A
A
A
Dans lespace des frquences, les signaux dcart e(t), de commande u(t) et de sortie y(t)
sont relis entre eux par les quations suivantes (voir gure 3.10)
Y ( j) = G p ( j)U( j)
E( j) = W ( j) Y ( j) = Y ( j)
U( j) = N(A) E( j) = N(A) Y ( j)
La fonction de transfert du systme en boucle ouverte vaut alors :
Gbo ( j)
Y ( j)
= 1 = N(A) G p ( j)
E( j)
(3.35)
et, dans la mesure o la priode doscillations est assez proche de la priode critique Tcr ,
le module de la fonction descriptive est gal au gain critique
Kcr
4D
A
(C)2005 freddy.mudry@eivd.ch
(3.36)
49
u(t)
0.5
0
0.5
1
0
10
10
15
20
25
15
20
25
0.4
y(t)
0.2
0
0.2
0.4
temps [sec]
G p ( j) =
1
A
= exp (+ jasin(/A))
N(A)
4D
A
exp + j( + asin
4D
A
(3.37)
Dans cette quation, la pulsation doscillation nest pas indpendante ; elle est dtermine par la largeur 2 de lhystrsis et lamplitude A du signal de sortie.
On en dduit donc quen variant la largeur de lhystrsis, il est possible de mesurer la rponse frquentielle du processus dans une partie du troisime quadrant du plan complexe,
cest--dire, du point de vue de la phase, entre90 et 180 .
Une illustration en est donne par la gure 3.13 o lon voit les points obtenus en variant
la largeur de lhystrsis entre 0.0 et 0.8. La courbe continue correspond la rponse
thorique.
50
(C)2005 freddy.mudry@eivd.ch
1
0.8
gain
= 0.8
0.6
0.4
= 0.0
0.2
0
0.5
1.5
2.5
3.5
4.5
2.5
3
pulsation [rad/sec]
3.5
4.5
phase [deg]
50
= 0.8
100
150
= 0.0
200
250
0.5
1.5
w(t)
e(t)
u(t)
Gp(s)
y(t)
PID
(C)2005 freddy.mudry@eivd.ch
51
u(t), y(t)
0.5
0
0.5
1
0
10
15
20
25
20
25
1.4
1.2
1
yPID(t)
0.8
0.6
0.4
0.2
0
10
temps [sec]
15
A = 0.166
4D
= 7.65
A
En plus des deux rponses temporelles, on doit mesurer sparment le gain statique du
processus qui vaut
K0 = 1
Partant du tableau 3.6 et choisissant Ms = 2.0, on peut alors calculer les paramtres du
rgulateur PID comme suit :
52
(C)2005 freddy.mudry@eivd.ch
Kp
Ti
Td
b
1/(Kcr K0 )
a0 exp(a1 + a2 2 ) Kcr
a0 exp(a1 + a2 2 ) Tcr
a0 exp(a1 + a2 2 ) Tcr
a0 exp(a1 + a2 2 )
1/(7.65 1)
0.72 exp(1.6 0.13 + 1.2 0.132 ) 7.65
0.59 exp(1.3 0.13 + 0.38 0.132 ) 3.7
0.15 exp(1.4 0.13 + 0.56 0.132 ) 3.7
0.25 exp(0.56 0.13 0.12 0.132 )
0.13 [/]
4.56 [/]
1.85 [sec]
0.47 [sec]
0.27 [/]
u(t), y(t)
0.5
0
0.5
1
0
10
15
20
25
20
25
1.5
0.5
PID
(t)
0
0.5
10
temps [sec]
15
(C)2005 freddy.mudry@eivd.ch
53
A cause du bruit, lamplitude A du signal de sortie ne peut pas tre mesure en prenant
simplement son maximum. Il est ncessaire de la rechercher en calculant la premire
composante spectrale.
Pour ce faire, on extrait une ou plusieurs priodes du signal y(t) en rgime permanent et
on value numriquement lamplitude des fonctions cosinus et sinus en calculant :
a1 =
2
T0
T0
y(t) cos 2
0
N
t
dt
T0
2
T0
T0
y(t) sin 2
0
N
t
dt
T0
(3.38)
(3.39)
(3.40)
(3.41)
a2 + b2
1
1
(3.42)
b1
a1
(3.43)
et sa phase :
1 = atan
Sur la gure 3.16, on a ajout le signal y1 (t) = A1 cos(2t/T0 + 1 ) valu sur 2 priodes.
Kp
Ti
Td
b
modle = 0
4.80
4.56
1.83
1.85
0.46
0.47
0.27
0.27
= 0.05
3.2
2.1
0.53
0.27
Les paramtres calculs partir de mesures faites avec un relais hystrsis augmentent
la marge de stabilit tout en gardant pour le systme asservi avec le rgulateur PID un
comportement satisfaisant (gure 3.16).
Lors de lutilisation dun relais avec hystrsis pour diminuer la sensibilit au bruit, le
point mesur se situe avant le point critique. Dans ce cas, la pulsation est infrieure
et le gain du processus est plus grand que G . Cela conduit un gain K p infrieur celui
attendu et des paramtres Ti et Td plus levs.
54
(C)2005 freddy.mudry@eivd.ch
Bibliographie
[1] J.G. Ziegler, N.B. Nichols (1942) : Optimum settings for automatic controllers.
Trans. ASME, 64, pp. 759-768.
[2] I.M Horowitz (1963) : Synthesis of Feedback Systems. Acaddemic Press, New-York.
[3] K.J. strm, T. Hgglund (1995) : PID Controllers : Theory, Design and Tuning.
Instrument Society of America, 2nd edition, ISBN 1-55617-516-7.
[4] K.J. strm, T. Hgglund, C.C. Hang, W.K. Ho (1993) : Automatic Tuning and
Adaptation for PID Controllers - A Survey., Control Engineering Practice, 1 :4, pp.
699-714.
[5] K.J. strm, T. Hgglund (1984) : Automatic Tuning of Simple Regulators with
Specication on Phase and Amplitude Margin., Automatica, 20, pp. 645-651, 1984
(C)2005 freddy.mudry@eivd.ch
55