Post on 04-Feb-2018
Petit cours d’automatique
– Pourquoi ce cours ?– Modele d’un systeme physique– Resolution par transformee de Laplace– Reponse en frequence, spectre– Commande par retro-action– Commande PID– Simulation Matlab/Simulink– Commande par ordinateur– Transformee en Z
– Simulation Matlab/Simulink
plan
Pourquoi ce cours ?Les systemes embarques s’adressent a de nombreux domaines d’application etbeaucoup de ces domaines traitent et controlent des donnees issues du mondephysique :
1. il est important de savoir comment les specialistes de ces domainesprocedent pour pouvoir cooperer avec eux ;
2. les ordinateurs interagissant avec les systemes physiques forment dessystemes complexes qui acquierent, par cette interaction, de nouvellesproprietes : des changements mineurs du point de vue informatique peuventavoir des consequences importantes du point de vue systeme ;
3. des langages et outils de simulation, d’origine automatique et traitement designal, deviennent par extension, des outils de programmation dontl’importance croıt ; certains sont devenus des standards de fait (avionique,automobile, . . .). Il est important de connaıtre et comprendre cette
« informatique venue d’ailleurs »plan
Modele d’un systeme physique
Une suspension de voiture
HH��
HH��
.................
aa.................
k f
x Forces en presence :
- ressort : −k(x− x0)
- amortisseur : −fx′
- inertie : mx′′
- force externe, pesanteur,...
bilan : equation differentielle
mx′′ + fx′ + kx = u
normalisation :
x′′ + 2zwx′ + w2x = w2u
– w pulsation propre– z amortissement
plan
Resolution par transformee de Laplace
X(s) = L(x) =∫ ∞
0
x(t)e−stdt
proprietes :
– linearite :
L(ax + by) = aL(x) + bL(y)
– transforme les equations differentielles en equations algebriques :
L(x′) = sL(x)− x(0)
– transforme les exponentielles en fractions rationnelles :
L(
tn
n!e−λt
)=
1(s + λ)n+1
plan
Application
x′′ + 2zwx′ + w2x = w2u ⇒ s2X + 2zwsX + w2X = w2U
X =w2
s2 + 2zws + w2U
Recherche de solutions :
– trouver les racines du denominateur (poles)– decomposer en elements simples et inverser la transformee.
Trois cas (reponse impulsionnelle U = 1) :
– z2 < 1 : racines complexes conjuguees :– z2 = 1 : racine double– z2 > 1 : racines reelles
plan
– z2 < 1 : racines complexes conjuguees :
X =A
s + zw + iw√
1− z2+
B
s + zw − iw√
1− z2
A =w2
−2iw√
1− z2, B =
w2
2iw√
1− z2
x =w√
1− z2e−zwt e
iw√
1−z2t − e−iw√
1−z2t
2i
x =w√
1− z2e−zwtsin(w
√1− z2t)
regime oscillant (suspension trop molle) !– z2 = 1 : racine double
x = w2te−wt
– z2 > 1 : racines reelles
x =w√
z2 − 1(e−w(z+
√z2−1)t − e−w(z−
√z2−1)t)
(suspension trop dure) !plan
Reponse en frequence, spectre
A la memoire de Joseph Fourier
u = e−iwt
U =1
s + iw
X = H1
s + iw
X = AH + B1
s + iw
B = H(−iw)
Les exponentielles complexes sont les vecteurs propres des operateurs ;H(−iw) est la valeur propre associee au vecteur propre e−iwt.
plan
Exemple de la suspension
H =w2
0
s2 + 2zw0s + w20
H(−iw) =w2
0
−w2 − 2izw0w + w20
H(−iw) est une fonction complexe de la frequence d’ excitation w Elle sedecompose en amplitude et phase :
|H(−iw)| =w2
0√(w2
0 − w2)2 + 4z2w20w
2
ArgH(−iw) = Arctg2zw0w
w20 − w2
les pages suivantes decrivent le spectre d’amplitude en fonction de w pourw0 = 1 et des valeurs croissantes de z2 = 0.5, 1, 2, 4.
plan
Commande par retro-action
Le systeme a commander : grue mono-dimensionnelle, linearisee
dLLLLLL
?
AAK
a
X0
X
mg
T
m→X ′′= k(
→X0 −
→X) + m
→g
- pesanteur : m→g
- tension du cable : k(→X0 −
→X)
- inertie : m→X ′′
Projection sur l’axe vertical :
my′′ = k(y0 − y)−mg
0 = kl −mg
k = m gl
Projection sur l’axe horizontal :
mx′′ = k(x0 − x)
x′′ = gl (x0 − x)
X = w2
s2+w2 X0
avec w =√
gl pulsation propre du pendule.
aucun amortissement !plan
Notion de feedback
Commander en fonction de l’ecart entre position desiree x0 et obtenue x :
g g- - - - -
6
?+- +
+x0
b
xeHC
e = x0 − x
x = H(Ce + b)
x = H(C(x0 − x) + b)
(1 + HC)x = H(Cx0 + b)
Calcul formel de ce diagramme !
x =HC
1 + HCx0 +
H
1 + HCb
plan
x =HC
1 + HCx0 +
H
1 + HCb
Idee de base : C grand
HC
1 + HC≈ 1 ,
H
1 + HC≈ 0 , x ≈ x0
Mais attention au pompage :
H = w2
s2+2zws+w2
C = k
⇒ HC
1 + HC=
w2k
s2 + 2zws + w2(1 + k)
w′ = w√
1 + k z′ =z√
1 + k
k grand : le systeme devient de plus en plus oscillant.
plan
Commande PID
Pour reduire les oscillations, ajouter de la derivee k′s
Pour rallier le but, ajouter de l’integrale k′′
s
C = k + k′s +k′′
s
Application a la grue (w = 1)
HC
1 + HC=
k′s2 + ks + k′′
s3 + k′s2 + (k + 1)s + k′′
plan
Placement des poles
Choix des parametres : identification a un denominateur
s3 + k′s2 + (k + 1)s + k′′ = (s + 1)(s2 + 1.4ws + w2)
s3 + k′s2 + (k + 1)s + k′′ = s3 + (1 + 1.4w)s2 + (w2 + 1.4w)s + w2
D’ou
k′′ = w2 , k = w2 + 1.4w − 1 , k′ = 1 + 1.4w
Par exemple
k′′ = 4 , k = 5.8 , k′ = 3.8
plan
Simulation Matlab/Simulink
1
s +2s+12
Transfer Fcn1
1
s +12
Transfer Fcn
In1 Out1
SubSystemStep
Scope
White Noise
1
Out1s
1
Integrator
5.8
Gain2
3.8
Gain1
4
Gain
du/dt
Derivative
1
In1
plan
Resultats
Sans bruit
0 5 10 15 20 25 300
0.5
1
0 5 10 15 20 25 300
0.5
1
Time offset: 0
Avec bruit
0 5 10 15 20 25 30
0
1
2
0 5 10 15 20 25 300
0.5
1
1.5
Time offset: 0
plan
Commande par ordinateur
Et les ordinateurs dans tout ca ?
idee generale : schemas d’integration a pas constant
– echantillonnage et fonctionnement periodique
deux techniques :
– construire un controleur continu et l’echantillonner ;
– echantillonner le systeme a controler et construire un controleur echantillonne(theorie de la commande echantillonnee).
Dans tous les cas, il faut choisir la periode.
plan
Commandeechantillonnee
Fondee sur le parallele
Continu Echantillonne
Modele equations differentielles equations aux differences
Solutions exponentielles puissances
Transformee L(f) =∫ ∞
0
f(t)e−stdt Z(f) =∞∑0
f(n)z−n
Integrale s−1 z
z − 1Retard e−Ts z−1
plan
Propri etes de la transformee enz
– linearite :
Z(ax + by) = aZ(x) + bZL(y)
– transforme les equations aux differences en equations algebriques :
Z(x(n + 1)) = z(Z(x)− x(0))
– transforme les puissances en fractions rationnelles :
Z(Cknan−k) =
(z
z − a
)k+1
plan
Choix de la periode
Solution theorique :
Theoreme de Shannon : la frequence d’echantillonnage doit etre superieure adeux fois la frequence de coupure.
Solution pratique : analyse numerique
Theoreme fondamental de l’analyse numerique
Theoreme des accroissements finis : Pour tout x, t, il existe α ∈ [0, 1] tel que
x(t + T ) =k∑0
T i
i!x(i)(t) +
T k+1
(k + 1)!x(k+1)(t + αT )
plan
Exemple : schema d’Euler
x(t + T ) ≈ x(t) + Tx′(t)
car
|x(t + T )− (x(t) + Tx′(t))| ≤ T 2
2supt|x′′(t)|
Application : exponentielle
x(t) = e−at x′′(t) = a2e−at ≤ a2
T 2a2
2≤ 0.01 ⇒ T ≤ 0.14
a
En pratique on prend
T =0.1a
.plan
Z, Laplace,. . .1z
est l’operateur retard unite
Si on choisit un pas d’echantillonnage T on peut donc ecrire :
1z
= e−sT
On a alors l’approximation du premier ordre (developpement limite)
e−sT ≈ 1− sT
Donc, au premier ordre,
1− sT ≈ 1z
sT ≈ 1− 1z
=z − 1
z
s ≈ z − 1zT
plan
Z, Laplace et Euler
s ≈ z − 1zT
Et Euler ?
Appliquons a une fonction de transfert H :
H(s) ≈ H(z − 1zT
)
On est passe d’un systeme continu a un systeme echantillonne, implantable surcalculateur
Cela correspond a la methode d’Euler :
sx(s) ≈ z − 1zT
x(z)
x′(t) ≈ x(n)− x(n− 1)T
plan
Simulation Matlab/Simulink
1
Out1
Hold
5.8
Gain2
3.8
Gain1
4
Gain
T
Integrator
0.1
Discrete Filter
1
In1
plan
Resultats
Sans bruit
0 5 10 15 20 25 300
0.5
1
0 5 10 15 20 25 300
0.5
1
Time offset: 0
Avec bruit
0 5 10 15 20 25 30
0
1
2
3
0 5 10 15 20 25 300
0.5
1
1.5
Time offset: 0
comparables a ceux obtenus en continu
plan
Z et Lustre
1
Out1
Hold
5.8
Gain2
3.8
Gain1
4
Gain
T
Integrator
0.1
Discrete Filter
1
In1
Le meme en Lustre :
y = 5.8*x + 4.0*yi + 3.8*yd ;
yi = T*x + (0.0 -> pre yi) ;
yd = (x - (0.0 -> pre x))/T ;
plan
DeZ a Lustre
En transformee en Z
Yi =Tz
z − 1X
D’ou
(z − 1)Yi = TzX
zYi = TzX − Yi
Yi = TX − 1zYi
Le meme en Lustre :
yi = T*x + (0.0 -> pre yi) ;
plan
Conclusion
On note la parente (filiation) entre Lustre et les methodes de l’automatique :
Tous deux reflechissent en termes de reseaux d’operateurs agissantglobalement sur des signaux.
L’automatique lineaire a un calcul symbolique plus riche (fractions rationnelles)mais limite au lineaire.
Lustre a aussi un calcul symbolique bien que plus restreint (commutation despre )
Cela explique sans doute la bonne acceptation de Lustre dans le monde del’automatique.
plan