Sie sind auf Seite 1von 24

Le PID utilis en rgulation de position et/ou de vitesse de moteurs

lectriques
1
Christophe Le Lann
2
2006-2007
1
Contact extrieur : Gal Waiche, ingnieur, roboticien
2
Pour plus dinformations : www.totofweb.net
Table des matires
1 La thorie du PID applique aux moteurs lectriques 3
1.1 But atteindre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Modlisation mathmatique dun moteur lectrique . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 Boucle de retour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Asservissements et inuence des coecients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.1 Asservissement P . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.2 Asservissement PI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4.3 Asservissement PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Rglage des coecients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.6 Limitations et approximations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2 Application : Double asservissement dun moteur 11
2.1 Objectif de lasservissement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Modlisation du double asservissement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.1 Partie mcanique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.2 Partie lectronique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.3 Partie informatique embarque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.4 Partie informatique distante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Mise au point de lasservissement - Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Application : Asservissement en position et en vitesse dun robot 18
3.1 Objectif de lasservissement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.2 Modlisation dun robot deux moteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3.3 Mise en oeuvre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3.1 Partie mcanique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3.2 Partie lectronique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3.3 Partie informatique embarque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.4 Partie informatique distante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Mise au point de lasservissement - Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4 Conclusion 22
4.1 Synthse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.2 Alternatives lasservissement PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1
Introduction
Dans la plupart des processus industriels, il est indispensable de matriser certains paramtres physiques.
En automatique lorsque lon souhaite atteindre une certaine vitesse, temprature, position, angle..., il est donc
trs souvent ncessaire davoir recours un asservissement, cest dire un systme capable datteindre et de
maintenir une consigne en utilisant une mesure. Il sagit donc dun systme boucl, dont il reste dterminer
la fonction permettant de corriger la commande en fonction de la consigne initiale et de lerreur mesure.
Le PID est une mthode qui a fait ses preuves et qui donne de bons rsultats. On peut citer, parmi tant
dautres, quelques exemples concrets dutilisation : asservissement dangle pour des bras robotiques (ABB,
Kuka, Strabli, ...) et plus gnralement dans les servomoteurs, rgulation de raction chimique en chimie
pharmaceutique, convoyeurs industriels navettes indexes, ...
Fig. 1
(a) Schma-bloc dun moteur asservi en vitesse avec boucle de
retour unitaire
Fig. 2
(a) Schma-bloc dun moteur asservi en position avec boucle de retour
unitaire
Fig. 3
(a) Un asservissement angulaire ecace donne aux
bras robotiques KUKA une rptabilit de lordre du
dixime de mm!
2
Chapitre 1
La thorie du PID applique aux
moteurs lectriques
Lun des critres decacit dun PID (et mme de nimporte quel asservissement) est sa robustesse face
aux changements : est-il encore capable de donner de bons rsultats en cas de perturbations soudaines et/ou
importantes ou de lgres modications du systme (inertie, usure, ...) ?
1.1 But atteindre
On cherche faire atteindre une certaine valeur une variable du systme. Dans le cas dun moteur, il sagit
principalement dune vitesse ou dune position.
Les eets des perturbations doivent tre minimiss, voire eacs, et ce le plus vite possible (rgulation)
Les changements de consigne doivent tre suivis rapidement et avec une bonne prcision, si possible sans
dpassement (poursuite)
Nanmoins, ces critres de performance sont souvent antagoniques, et nous verrons que le rglage de lasservis-
sement en dtermine un compromis.
1.2 Modlisation mathmatique dun moteur lectrique
Un moteur lectrique courant continu est rgit par les quations physiques dcoulant de ses caractris-
tiques lectriques, mcaniques et magntiques. En utilisant le Thorme du Moment Cintique et des quations
dlectromagntique, on obtient un systme dquations direntielles linaires :
_

_
u(t) = e(t) + R.i(t) + L
di(t)
dt
e(t) = K
e
.(t)
c
m
(t) = K
c
.i(t)
c
m
(t) c
r
(t) = J
T
.
d(t)
dt
u Tension applique au moteur
e Force lectromotrice
i Intensit traversant moteur
Vitesse de rotation du rotor
c
m
Couple moteur gnr
c
r
Couple rsistant
Force lectromotrice : tension cre par le bobinage du moteur pour sopposer la variation du ux du
champ magntique le traversant.
On en dduit donc le modle suivant dans le domaine de Laplace :
Fig. 1.1
(a) Schma-bloc dun modle mathmatique de moteur lectrique
3
(p) =
K
c
K
e
K
c
+ RJ
T
p + LJ
T
p
2
U(p)
R + Lp
K
e
K
c
+ RJ
T
p + LJ
T
p
2
C
r
(p)
La fonction de transfert associe U possde les caractristiques suivantes :
(p)
U(p)
=
A
1 +
2

0
p +
1

2
0
p
2
A =
1
K
e
Gain statique
=
R
2
_
J
T
K
e
K
c
L
Facteur damortissement

0
=
_
K
e
K
c
LJ
T
Pulsation propre
Fig. 1.2
0
50
100
150
200
250
0 0.1 0.2 0.3 0.4 0.5
V
i
t
e
s
s
e

d
e

r
o
t
a
t
i
o
n

(
r
a
d
/
s
)
Temps (sec)
(a) Modlisation sous Maple de la courbe de rponse un
chelon de tension
On observe que, bien que le systme modlis soit du second ordre, lorsque linductance interne est ngligeable
devant la rsistance interne (ce qui est gnralement le cas) il sapparente un systme du premier ordre.
Remarque Les constantes K
e
et K
c
, si elles ne sexpriment pas dans la mme unit (V.s ou N.m.A
1
),
reprsentent la mme conversion de puissance lectrique en puissance mcanique. Elles sont gales dans les
units du systme international.
Valeurs numriques Les modlisations qui suivent sont bases sur les donnes constructeur dun moteur
Maxon :
Rfrence F2260/813
Tension nominale U
nom
= 24 V
Tension maximale U
max
= 32 V
Courant permanent maximal I
max
= 2.2 A
Rsistance aux bornes R = 1.91
Constante de couple K
c
= 60.3 mNm.A
1
Constance de vitesse K
e
= 60.3 mV.s
Inductance L = 0.63 mH
Moment dinertie rapport au rotor J
T
= 10
4
kg.m
2
(rotor seul)
Frottements Il est possible de modliser sommairement les frottements internes au moteur par la somme
deux types de frottements lmentaires :
un frottement uide : le couple rsistant est proportionnel la vitesse de rotation du rotor
un frottement sec :
pour un couple moteur faible (infrieur au couple darrachement C
arr
), le couple rsistant en est loppos,
empchant donc tout mouvement du rotor (le frottement uide est alors nul)
pour un couple moteur dpassant le couple darrachement C
arr
, le couple rsistant est tronqu une
valeur seuil C
sec
(le rotor peut alors tourner)
c
r
(t) =
_
_
_
K
fluide
.(t) + C
sec
pour c
m
(t) > C
arr
c
m
(t) pour C
arr
c
m
(t) C
arr
K
fluide
.(t) C
sec
pour c
m
(t) < C
arr
4
Moment dinertie rapport au rotor Dans le cas o le moteur met en mouvement un robot de masse M,
il est possible de dterminer le nouveau moment dinertie J
T
peru par le moteur sur son arbre en utilisant le
Principe Fondamental de la Dynamique et le Thorme du Moment Cintique et en connaissant le rayon R de
la roue :
_
_
_

F = M.

a
C
m
R
= M.a

C = J
T
. C
m
= J
T
.
a = R.
J
T
= M.R
2
1.3 Boucle de retour
tant donn que lasservissement dun moteur utilise une boucle ferme, il est ncessaire de disposer dun
capteur de position angulaire ou de vitesse angulaire. Linformation retourne pourra tre utilise directement
(cas dune boucle retour unitaire) ou retraite par calculs pour en dduire une information plus exploitable,
comme la vitesse de dplacement dun robot ou sa position, langle en sortie dun rducteur, ...
Pour ce faire, plusieurs dispositifs existent, parmi lesquels :
Encodeurs rotatifs incrmentaux (avec ou sans quadrature de phase, optique ou eet hall) : capteurs
quips dun dispositif optique ou magntique mettant N impulsions par tour. Les plus labors per-
mettent de dterminer le sens de rotation (deux signaux en quadrature, le dphasage donne le sens de
rotation), voire mme une position absolue.
Tachognratrices : capteurs renvoyant une tension analogique proportionnelle la vitesse de rotation.
Rgles optiques : utilisent linterfromtrie optique pour obtenir une trs haute rsolution (suprieure
1m).
Resolvers : utilisent des bobines en mouvement relatif produisant des signaux dphass renseignant sur
langle de larbre.
=
demande

mesure
ou =
demande

mesure
1.4 Asservissements et inuence des coecients
1.4.1 Asservissement P
Lasservissement de type P est le plus simple qui soit. Il sagit dappliquer une correction proportionelle
lerreur corrigeant de manire instantane tout cart de la grandeur rgler :
Consigne(t) = K
p
.(t)
L
Consigne(p) = K
p
.(p)
Son rle est damplier virtuellement lerreur pour que le systme ragisse plus vivement, comme si lerreur
tait plus grande quelle ne lest en ralit.
Il permet de vaincre les grandes inerties du systme et diminue le temps de monte en donnant de la
puissance au moteur (plus lerreur est grande, plus on donne de puissance au moteur). Lorsque lon augmente
K
p
, le systme ragit plus vite et lerreur statique sen trouve amliore, mais en contrepartie le systme perd
en stabilit. Le dpassement se fait de plus en plus grand, et le systme peut mme diverger dans le cas dun
K
p
dmesur.
Fig. 1.3
0
100
200
300
400
500
0 0.2 0.4 0.6 0.8 1
P
o
s
i
t
i
o
n

a
n
g
u
l
a
i
r
e

(
r
a
d
)
Temps (sec)
Consigne
Kp = 0.1
Kp = 0.2
Kp = 0.5
Kp = 1
Kp = 2
Kp = 5
(a) Modlisation sous Maple de la rponse un chelon dans un as-
servissement en position
5
Nanmoins, il faut toujours une certaine tension aux bornes du moteur pour que celui-ci puisse tourner. Cest
pourquoi, lorsque lon sapproche de la valeur demande, lerreur nest plus assez grande pour faire avancer le
moteur, ce qui fait que lon natteint jamais vraiment la valeur demande. Il subsiste alors une erreur statique,
qui est dautant plus faible que K
p
est grand.
Fig. 1.4
0
50
100
150
200
250
300
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04
V
i
t
e
s
s
e

d
e

r
o
t
a
t
i
o
n

(
r
a
d
/
s
)
Temps (sec)
Consigne
Kp = 0.2
Kp = 0.5
Kp = 1
Kp = 2
Kp = 5
(a) Modlisation sous Maple montrant la variation de lerreur statique en
fonction de Kp dans un asservissement en vitesse
1.4.2 Asservissement PI
Lasservissement de type PI est un asservissement de type P auquel on a ajout un terme intgral :
Consigne(t) = K
p
.(t) + K
i
.
t
_
0
() d
L
Consigne(p) = K
p
.(p) + K
i
.
(p)
p
= (p).
_
K
p
+ K
i
.
1
p
_
Le terme intgral complte laction proportionnelle puisquil permet de compenser lerreur statique et daug-
menter la prcision en rgime permanent. Lide est dintgrer lerreur depuis le dbut et dajouter cette erreur
la consigne : lorsque lon se rapproche de la valeur demande, lerreur devient de plus en plus faible. Le terme
proportionnel nagit plus mais le terme intgral subsiste et reste stable, ce qui maintient le moteur la valeur
demande.
Lintgrale agissant comme un ltre sur le signal intgr, elle permet de diminuer limpact des perturba-
tions (bruit, parasites), et il en rsulte alors un systme plus stable. Malheureusement, un terme intgral trop
important peut lui aussi entraner un dpassement de la consigne, une stabilisation plus lente, voire mme des
oscillations divergentes.
Fig. 1.5
0
50
100
150
200
250
300
350
0 0.01 0.02 0.03 0.04 0.05
V
i
t
e
s
s
e

d
e

r
o
t
a
t
i
o
n

(
r
a
d
/
s
)
Temps (sec)
Kp = 1
Consigne
Ki = 0
Ki = 100
Ki = 320
Ki = 1000
(a) Modlisation sous Maple de la rponse un chelon dans un asservisse-
ment en vitesse
6
1.4.3 Asservissement PID
Les termes proportionnel et intgral peuvent amener un dpassement de la consigne et des oscillations. Cela
implique pour le moteur des inversions de polarit, ce qui est loin dtre idal. Pour limiter ce phnomne
indsirable, on introduit un troisime lment : le terme driv. Son action va dpendre du signe et de la vitesse
de variation de lerreur, et sera oppose laction proportionnelle. Elle devient prpondrante aux abords de
la valeur demande lorsque lerreur devient faible, que laction du terme proportionnel faiblit et que lintgrale
varie peu : elle freine alors le systme, limitant le dpassement et diminuant le temps de stabilisation.
Consigne(t) = K
p
.(t) + K
i
.
t
_
0
() d + K
d
.
d
dt
(t)
Consigne(p) = K
p
.(p) + K
i
.
(p)
p
+ K
d
.p.(p) = (p).
_
K
p
+ K
i
.
1
p
+ K
d
.p
_
On obtient alors un asservissement compose dun terme proportionnel, un terme intgral et un terme driv :
on parle dasservissement PID.
Fig. 1.6
(a) Schma-bloc de limplantation du PID en rgulation de vitesse
Fig. 1.7
(a) Schma-bloc de limplantation du PID en rgulation de position
Fig. 1.8
0
50
100
150
200
250
300
350
400
450
0 0.1 0.2 0.3 0.4 0.5 0.6
P
o
s
i
t
i
o
n

a
n
g
u
l
a
i
r
e

(
r
a
d
)
Temps (sec)
Consigne
Kp = 9.1, Ki = 7.6, Kd = 0.13
(a) Modlisation sous Maple de la rponse un chelon dans un asservisse-
ment en position
Remarque Laction drive est surtout utilise dans le cas de variables non bruites, car la drivation est trs
sensible au bruitage du signal : on diminuera donc son inuence dans un asservissement de vitesse, pour lequel
la drive est lacclration, variable soumise de nombreuses perturbations.
7
Rcapitulatif de laction des coecients
Coecient Temps de monte Temps de stabilisation Dpassement Erreur statique
K
p
Diminue Augmente Augmente Diminue
K
i
Diminue Augmente Augmente Annule
K
d
- Diminue Diminue -
1.5 Rglage des coecients
Le rglage dun PID consiste trouver les meilleurs coecients K
p
, K
i
et K
d
dans le but dobtenir une
rponse adquate du procd et de la rgulation. Lobjectif est dtre robuste, rapide et prcis tout en limitant
les dpassements.
Mthode de Ziegler-Nichols
La mthode empirique de Ziegler-Nichols est trs rpandue dans lindustrie ou chez les automaticiens pour
rgler les correcteurs de ce type de chane. Elle a lavantage de ne pas ncessiter de modlisation prcise du
systme asservi, mais se contente dessais exprimentaux, ce qui rend cette mthode trs simple.
On xe K
i
et K
d
0 et on augmente le gain du correcteur proportionnel pur K
p
jusqu obtenir des
oscillations persistantes (pour des moteurs, il sagira plutt dune vibration autour de la position demande).
On mesure alors (K
p
)
lim
, le gain du correcteur proportionnel la juste oscillation, et T
osc
, la priode des
oscillations.
Fig. 1.9
-200
0
200
400
600
800
1000
0 0.02 0.04 0.06 0.08 0.1 0.12
P
o
s
i
t
i
o
n

a
n
g
u
l
a
i
r
e

(
r
a
d
)
Temps (sec)
Consigne
Kp = 250
Kp = 180
Kp = 50
(a) Modlisation sous Maple montrant lapparition doscillations dans un as-
servissement en position de type P
La mthode de Ziegler-Nichols indique alors des valeurs des coecients permettant dobtenir un bon com-
promis entre prcision, rapidit et stabilit.
_
_
_
K
p
= 0.6 (K
p
)
lim
K
i
=
1
0.5T
osc
K
d
= 0.125 T
osc
Ensuite, on peut lgrement faire varier ces valeurs moyennes selon le compromis prcision/rapidit/stabilit
recherch. Dans le cas dun asservissement en position, on aura tendance monter un peu plus le gain intgral
pour avoir une erreur statique faible, quitte accoster plus lentement la valeur demande.
Remarque Il ne sagit ici que de la seconde mthode de Ziegler-Nichols, utilisant des mesures exprimentales
en boucle ferme et une conception continue du temps (corrections en temps rel). Il existe aussi dautres
mthodes de Ziegler-Nichols : lune est aussi base sur des mesures en boucle ferme, mais dans une conception
discrte du temps (N corrections par seconde, il faut alors prendre en compte le retard de correction), lautre
est base sur des mesures exprimentales en boucle ouverte.
Il se peut aussi que le systme soit dsesprment stable. La mthode de Ziegler-Nichols nest alors pas
ncessaire : puisque lon peut se permettre daugmenter K
p
volont, on choisit une valeur relativement grande
de K
p
, puis on ajuste K
i
et K
d
pour liminer lerreur statique, limiter le dpassement et atteindre la consigne
le plus vite possible.
8
Nanmoins, il faut aussi tenir compte du fait quun moteur naccepte pas de trop fortes tensions : en pratique
on ne peut augmenter les coecients volont sans arriver ce seuil de commande : le signal corrig pourra
ventuellement se retrouver tronqu, et le modle considr jusquici ne sera alors plus valable.
Mthode avance
Une mthode plus avance consiste modliser parfaitement le systme asservi, mais ncessite une connais-
sance parfaite de lensemble des paramtres permettant dobtenir une modlisation prcise. On sapplique alors
chercher optimiser le temps de rponse et la stabilit par une tude mathmatique.
Lavantage est que cette mthode permet en thorie dobtenir les rglages les plus n possible. Mais lin-
convnient est quil est parfois dicile de modliser parfaitement un systme lorsque de nombreux phnomnes
parasites (jeu mcanique dans les rducteurs, frottements et pertes omniprsents, usure, ...) ne sont pas ngli-
geables. La prcision des paramtres dtermins est alors limage de celle de la modlisation.
Remarque On peut aussi tester directement la rponse du systme des signaux particuliers et en dduire
une forme approche de la fonction de transfert, puis se baser sur ce modle approch pour mener bien les
calculs mathmatiques.
1.6 Limitations et approximations
Limitation de la tension de commande
Lors du rglage des coecients du PID, il est primordial de se rappeler quun moteur nest utilisable que
dans une certaine plage de tensions (32V dans notre cas). Hors de cette zone, non seulement le comportement
du moteur ne suivra plus obligatoirement le modle tabli, mais le moteur pourra ventuellement se dtriorer
irrmdiablement.
Nous ne sommes donc pas totalement libres de choisir les coecients K
p
, K
i
et K
d
. Voici des modlisations
sous Maple illustrant ce problme sur un asservissement en position de type P :
0
100
200
300
400
500
0 0.2 0.4 0.6 0.8 1
P
o
s
it
io
n

a
n
g
u
la
ir
e

(
r
a
d
)
Temps (sec)
Consigne
Kp = 0.1
Kp = 0.2
Kp = 0.5
Kp = 1
Kp = 2
Kp = 5
-1000
-500
0
500
1000
1500
0 0.2 0.4 0.6 0.8 1
T
e
n
s
io
n

d
e

c
o
m
m
a
n
d
e

(
V
)
Temps (sec)
Kp = 0.1
Kp = 0.2
Kp = 0.5
Kp = 1
Kp = 2
Kp = 5
Il est donc probable que le rglage optimal thorique ne puisse tre atteint, ce qui fut notre cas :
0
50
100
150
200
250
300
350
400
450
0 0.1 0.2 0.3 0.4 0.5 0.6
P
o
s
it
io
n

a
n
g
u
la
ir
e

(
r
a
d
)
Temps (sec)
Consigne
Kp = 9.1, Ki = 7.6, Kd = 0.13
-500
0
500
1000
0 0.1 0.2 0.3 0.4 0.5 0.6
T
e
n
s
io
n

d
e

c
o
m
m
a
n
d
e

(
V
)
Temps (sec)
Kp = 9.1, Ki = 7.6, Kd = 0.13
Dautre part, les frottements secs nont pas pu tre pris en compte lors de cette modlisation tant donn
quils ntaient pas transposables dans le domaine de Laplace. Il est probable que leur modlisation aurait
entran deux principales consquences qui nont pas pu tre dceles lors de cette modlisation sous Maple :
Un moteur nest pas sens dmarrer pour des tensions trop faibles en raison de ce frottement sec.
Lerreur statique aurait probablement t plus grande.
9
Approximations
Le choix du modle de moteur peut induire certaines approximations :
Le jeu mcanique des pices (notamment des rducteurs sil y en a) nest pas pris en compte.
Lusure des pices nest pas prise en compte.
Le modle nest valable que pour une plage de tension et de courant au-del de laquelle le comportement
et la dure de vie du moteur sont incertains.
Le choix de la mthode dimplantation du PID peut elle aussi induire certaines approximations :
Approximation des calculs du nombre driv et de lintgrale (calculs approchs dans une implantation
logicielle, non-linarit dans une implantation par AOP, ...).
Approximation en considrant le temps comme discret et non continu (frquence de recalcul de la correction
dans une implantation logicielle).
Approximation au niveau des capteurs (nombre de pas des encodeurs, mauvais comptage de pas, conversion
analogique-numrique des tachognratrices, ...).
Finalement, lerreur est faible, mais il est ncessaire den tenir compte. Pour minimiser son eet, diverses
solutions sont envisageables :
Utiliser un systme hardware de drivation et dintgration (lequel reste soumis aux approximations des
CAN).
Diminuer t pour se rapprocher dun modle (idal) o le temps est continu.
Amliorer la prcision des capteurs.
Recaler rgulirement le systme (signal dindex sur les encodeurs, raectation des coordonnes en un
point de coordonnes connues).
10
Chapitre 2
Application : Double asservissement
dun moteur
2.1 Objectif de lasservissement
Lobjectif dun double asservissement, la fois en position et en vitesse, est de matriser la vitesse de
dplacement dans un asservissement de position. Cela est notamment mis en oeuvre dans les bras robotiques
(Kuka, Strabli, ABB, ...) et dans de nombreuses machines commande numrique.
Lavantage est que la matrise de la vitesse de dplacement permet de dnir une courbe de vitesse au cours
dun dplacement indpendemment de la distance parcourir. En eet, un simple asservissement PID de position
modie la tension appliquer selon la distance du dplacement. Or il est souvent prfrable de se dplacer
une vitesse globalement constante quelle que soit la distance parcourir, en acclrant progressivement jusqu
un palier, puis en dclrant juste avant datteindre la position nale an dviter de la dpasser (ce que fait
naturellement un conducteur de vhicule). Typiquement, on implmente une commande trapzodale, cest--
dire que lon applique un seuil la fois sur la vitesse et lacclration :
Fig. 2.1
(a) Prol de vitesse trapzodal mis en place par un LM629 (composant lectronique spcia-
lis)
Un autre intrt est que le contrle de lacclration vite les mouvements trop brusques, notamment lors de
la manipulation dobjets dlicats. Le contrle de la vitesse uniformise tous les dplacements et vite datteindre
des vitesses trop leves (le moteur est alors contrl dans sa plage de tensions nominale).
2.2 Modlisation du double asservissement
(b) Schma-bloc de la double implmentation de PID tenant compte des crtages
On peut donc dcomposer ce double asservissement en deux fonctions de rgulation, une premire rgulant
la position et une seconde rgulant la vitesse sur les ordres de la premire :
11
La premire est un asservissement de position de type PID. Sa particularit est dtre sujet posteriori
deux contraintes (malheureusement non transposables dans le domaine de Laplace), lune concernant
lacclration maximale et lautre concernant la vitesse maximale.
La seconde est un asservissement de vitesse de type PID comme tudi au chapitre prcdent.
Nanmoins le choix des coecients du PID de position nest pas totalement libre : tant soumis au seuillage de
lacclration, si le PID est rgl pour monter trs vite en vitesse et dclrer tard avant daccoster la position
nale il subira laction du seuillage dacclration. Le moteur ne ralentira pas assez vite et dpassera sa position
nale, engendrant petit petit des oscillations divergentes. Il faut donc choisir les coecients susamment
faibles pour ralentir assez tt, ce qui est dautant plus contraignant que lacclration maximale choisie est
faible.
2.3 Mise en oeuvre
2.3.1 Partie mcanique
Un encodeur optique incrmental quadrature de phase est reli au rotor du moteur, ce qui nous permet
de rcuprer une information sur lincrmentation angulaire du rotor, partir de laquelle on peut calculer la
vitesse de rotation du rotor et sa position angulaire par rapport sa position initiale. Il sagit dun disque en
rotation dot de deux ranges de fentes dcales. Un systme optique dtecte ces fentes et met 512 impulsions
par tour de rotor, sur deux signaux en quadrature de phase (la quadrature servant ici dterminer le sens de
rotation du rotor).
Fig. 2.2
(a) Utilisation dun encodeur optique
sur laxe du moteur
2.3.2 Partie lectronique
Deux cartes lectroniques sont utilises pour ce double asservissement :
Une premire carte soccupe de lacquisition et du traitement des signaux. Elle sarticule autour dun
micro-contrleur
1
(AtMega16 16MHz) qui permet une grande souplesse dans la programmation en C de
lasservissement. Ce micro-contrleur acquiert les signaux venant de lencodeur optique par lintermdiaire
dune bascule D et dun diviseur de frquence (des circuits intgrs qui se chargent dun prtraitement des
signaux en quadrature), et calcule les corrections appliquer en fonction de la commande initiale. Une
liaison srie permet de tester diverses valeurs pour les coecients du PID et den rcuprer les courbes de
rponse (vitesse et/ou position) sur un ordinateur.
Une carte puissance, base sur un double pont en H
2
, permet de contrler la tension fournir aux moteurs
(par une modulation PWM) ainsi que le sens de dplacement selon les ordres de la carte principale. Une
modulation PWM (Pulse-Width Modulation, ou Modulation de Largeur dImpulsion) permet dobtenir
un contrle proportionnel sur un moteur sans avoir varier la tension de commande, selon le principe du
hacheur lectrique :
_
V = V
max
pour 0 < t < T
V = 0 pour T < t < T
avec 0 < < 1 V
moy
= .V
max
1
Composant lectronique numrique intgrant entre autres un processeur, une mmoire programme, une mmoire RAM et des
ports dentre/sortie, pouvant tre programm an dobtenir un comportement personnalis.
2
Architecture permettant de contrler un moteur dans ses deux sens de fonctionnement tout en permettant une commutation
rapide.
12
Fig. 2.3
2.3.3 Partie informatique embarque
Acquisition des donnes
A intervalle de temps rgulier (toutes les 50ms), le micro-contrleur lit la position angulaire donne par le
capteur et met jour ses variables internes de position et de vitesse. La mesure des erreurs (erreur de position
et erreur de vitesse) se fait par une simple dirence entre la valeur demande et la valeur mesure. Cest la
frquence de rafrachissement des erreurs et de recalcul de la correction qui joue un rle signicatif dans la
prcision de lasservissement :
Si la frquence de rafrachissement est trop faible, le trop grand cart entre deux recalculs de correction
opre une discrtisation du temps trop grossire, ce qui amoindrira la prcision de lasservissement.
Si la frquence de rafrachissement est trop leve, bien que lon se rapproche du modle de temps continu
la prcision de lasservissement samoindrira puisque le nombre de pas compts par le capteur entre deux
recalculs de correction sera plus faible, donc moins prcis.
Une frquence de 20Hz a t juge empiriquement comme un assez bon compromis entre priode dchan-
tillonnage et prcision de chaque recalcul lors des expriences.
Asservissement de vitesse
Lessentiel de limplantation du PID est ralis informatiquement, par programmation en C du micro-
contrleur intgr la carte principale. Il sagit de traduire par un algorithme le calcul en continu de la tension
envoyer au moteur selon lerreur mesure partir de lencodeur optique.
Calcul approxim de la drive On estime le nombre driv en tenant compte des deux dernires mesures
par une approximation au premier ordre de la fonction erreur linstant considr. tant donn que t (temps
entre deux mesures, t = 50ms 20Hz) est assez petit par rapport la vitesse de variation du systme, on
considre quil sagit l dune approximation convenable.
d
dt
(t) = lim
t0
(t) (t t)
t

(t) (t t)
t
Remarque Pour viter de surcharger le micro-contrleur avec une division en virgule ottante 20Hz, on
inclue le terme
1
t
directement dans le terme K
d
paramtr.
Calcul approxim de lintgrale On utilise la formule de Riemann pour obtenir une approximation de
lintgration de lerreur par la somme discrte des erreurs mesures :
b
_
a
f(t) dt = lim
n
b a
n
n

k=0
f(a + k.
b a
n
)
t
_
0
() d = lim
t0
t
t/t

k=0
(k.t) t
t/t

k=0
(k.t)
Remarque a = 0, b = t, n =
t
t
On se contente donc de sommer lensemble des erreurs mesures, ce qui donne le terme
t/t

k=0
(k.t). Le terme
t sera dj inclus logiciellement dans le paramtre K
i
pour viter de surcharger le micro-contrleur avec une
multiplication en virgule ottante supplmentaire 20Hz.
13
Calcul du PID A chaque nouvelle mesure de lerreur, on recalcule la consigne corrige envoyer aux moteurs
aprs avoir eectu les calculs prliminaires de drivation et dintgration :
Consigne(t) = K
p
.(t) + K
i
.
t
_
0
() d + K
d
.
d
dt
(t)
Consigne(p) = K
p
.(p) + K
i
.
(p)
p
+ K
d
.p.(p) = (p).
_
K
p
+ K
i
.
1
p
+ K
d
.p
_
Code nal simpli Il ne sagit ici que des grandes lignes (simplies), montrant le principe de base sans
pour autant sure mettre en oeuvre le PID.
// VKp, VKi et VKd sont dfinis statiquement par des #define
// PID et Encodeur sont des structures globales
void PID_Recalc(void) {
// Acquisition des donnes et mesure de lerreur
PID.vitesse = Encodeur.position - PID.position_old ; // Exprim en pas par DeltaT
PID.position_old = Encodeur.position ;
// Mesure de lerreur
PID.erreur_old = PID.erreur ;
PID.erreur = PID.consigne_vitesse - PID.vitesse ;
// Calcul du nombre driv (sauf le terme 1/DeltaT intgr dans VKd)
PID.derive = PID.erreur - PID.erreur_old ;
// Calcul du terme intgral (sauf le terme DeltaT intgr dans VKi)
PID.integral += PID.erreur ;
// Calcul de la nouvelle commande
PID.pid = VKp*PID.erreur + VKi*PID.integral + VKd*PID.derivee ;
// Actualisation de la PWM envoye au moteur
Moteur_PWM(PID.pid) ;
}
Remarques Cette mthode dimplantation du PID implique dapproximer sciemment les calculs de drive
et dintgrale, ainsi que les rsultats globaux (la sortie de commande du moteur nest chelonne que sur 10
bits). Nanmoins, les rsultats montrent que ces approximations nont pas trop dgrad la prcision du systme.
Asservissement de position et seuillage de lacclration et de la vitesse
Lasservissement de position est gr dune manire tout fait similaire lasservissement de vitesse. La
principale dirence est que sa variable de sortie sert de consigne lasservissement de vitesse aprs avoir t
traite algorithmiquement pour prendre en compte la vitesse maximale et de lacclration maximale.
// Appel par interruption
3
tous les DeltaT
// PID et Encodeur sont des structures globales, PKp, PKi, PKd, Amax et Vmax sont dfinis statiquement par des #define
// T est une variable temporelle
void ProfilVitesse() {
PID.consigne_vitesse_old = PID.consigne_vitesse ; // Sauvegarde de lancienne consigne
PID.erreur_position_old = PID.erreur_position ; // Sauvegarde de lancienne erreur
PID.erreur_position = PID.consigne_position - Encodeur.position ; // Calcul de la nouvelle erreur de position
PID.integral_position += PID.erreur_position ; // Recalcul de lintgrale
PID.consigne_vitesse = PKp*PID.erreur_position + PKi*PID.integral_position + PKd*(PID.erreur_position - PID.erreur_position_old) ;
// crtage de la vitesse
if (PID.consigne_vitesse > Vmax) {
PID.consigne_vitesse = Vmax ;
} else if (PID.consigne_vitesse < -Vmax) {
PID.consigne_vitesse = -Vmax ;
}
// crtage de lacclration
if ((PID.consigne_vitesse - PID.consigne_vitesse_old) > Amax) {
PID.consigne_vitesse = PID.consigne_vitesse_old + Amax ;
} else if ((PID.consigne_vitesse - PID.consigne_vitesse_old) < -Amax) {
PID.consigne_vitesse = PID.consigne_vitesse_old - Amax ;
3
Ici, une interruption est un vnement logiciel survenant intervalle de temps xe, qui interrompt le cours normal dun
programme, excute une courte tche prioritaire, puis reprends le cours du programme principal.
14
}
PID_Recalc() ;
}
2.3.4 Partie informatique distante
Pour pouvoir rgler lasservissement, il a t ncessaire de rcuprer lhistorique dvolution de diverses
variables et den tracer la reprsentation graphique aprs adaptation des donnes brutes en un format plus
exploitable.
1. Au dbut de chaque session de mesures, le micro-contrleur a demand lordinateur distant (via une
connexion srie) les paramtres utiliser : coecients du/des PID, consigne atteindre, vitesse maximale,
acclration maximale et dure de session. Une fois ces paramtres renseigns, la session de mesures pouvait
commencer.
2. Ds lors, en plus de grer le double asservissement du moteur, le micro-contrleur a envoy lordinateur
(via la mme connexion srie) les variables intressantes, et ce chaque boucle de correction : position,
vitesse, erreur, correction demande et dpassement de tension (lorsque la tension exige par le PID
dpassait la tension admissible par le moteur).
3. Une fois ces donnes enregistres, elles ont t cones un logiciel spcialis dans lexploitation de
donnes et le trac de courbes (Gnuplot) an den tracer la reprsentation graphique de manire facilite
(par une ligne de commande sous Linux) aprs avoir trait les donnes brutes pour les convertir en units
intressantes (les donnes reues taient exprimes en pas ou en pas par DeltaT ).
4. Une fois la session termine, les variables internes (tat de lintgrale, position angulaire, ...) ont t
rinitialises avant de redemander les paramtres utiliser pour une nouvelle session.
Lorsquil a t ncessaire doprer une batterie complte de mesures, un script a t utilis du ct de
lordinateur an de renseigner automatiquement les paramtres de session la carte principale et dexploiter
les donnes reues de manire autonome.
2.4 Mise au point de lasservissement - Rsultats
Asservissement de vitesse
tant donn que les moteurs ma disposition taient dune qualit bien moindre que celle des moteurs
hauts de gamme (Escap, Maxon, ...) gnralement utiliss pour les asservissements ncessitant de la prcision,
la plupart des paramtres (inductance, constante de couple, ...) sont inconnus et dicilement dterminables.
Plutt que dessayer de les dterminer via des expriences complexes, la mthode de Ziegler-Nichols a t juge
plus adapte la mise au point de lasservissement.
Cette mthode a donc ncessit daugmenter le gain proportionnel K
p
du PID (avec K
i
et K
d
xs 0)
jusqu obtenir une oscillation sur la vitesse. Malheureusement, tant donn que la priode des oscillations a
t faible devant la priode dchantillonage, il a t dicile dobserver de franches oscillations sinusodales,
mais plutt des vibrations rgulires autour du point dquilibre. Voici la courbe de rponse mesure par le
micro-contrleur pour la valeur de K
p
provocant des oscillations maintenues :
0
1000
2000
3000
4000
5000
0 0.5 1 1.5 2 2.5 3 3.5 4
V
i
t
e
s
s
e

d
e

r
o
t
a
t
i
o
n

d
u

r
o
t
o
r

(
t
r
/
m
i
n
)
Temps (sec)
Asservissement de vitesse : Kp = 17, Ki = 0, Kd = 0
Vitesse mesuree
Consigne
Depassement de tension maximale
Daprs la mthode de Ziegler-Nichols, on en dduit donc :
15
_
(K
p
)
lim
= 17
T
osc
= 0.15s

_
_
_
K
p
= 10.2
K
i
= 13.3
K
d
= 18.7 10
3
Nanmoins, comme on pouvait sy attendre la valeur de K
p
provoquant les oscillations maintenues est trop
grande, ce qui ncessiterait donc de suralimenter le moteur au-del de sa plage de tension nominale. La tension
prvue par le PID est donc tronque la valeur maximale accepte par le moteur (ce qui est signal sur le
graphique par les marqueurs bleus), le modle thorique nest plus suivi parfaitement : il y a une marge derreur
dans la dtermination de (K
p
)
lim
et de T
osc
, et il va donc falloir modier les valeurs optimales thoriques pour
aner le rglage. Voici la courbe de rponse mesure pour le rglage propos par la mthode de Ziegler-Nichols :
0
1000
2000
3000
4000
5000
0 0.5 1 1.5 2 2.5 3 3.5 4
V
i
t
e
s
s
e

d
e

r
o
t
a
t
i
o
n

d
u

r
o
t
o
r

(
t
r
/
m
i
n
)
Temps (sec)
Asservissement de vitesse : Kp = 10, Ki = 12, Kd = 0.02
Vitesse mesuree
Consigne
Depassement de tension maximale
Une batterie de mesures automatises a donc permis dobtenir un rglage plus optimal :
0
1000
2000
3000
4000
5000
0 0.5 1 1.5 2 2.5 3 3.5 4
V
i
t
e
s
s
e

d
e

r
o
t
a
t
i
o
n

d
u

r
o
t
o
r

(
t
r
/
m
i
n
)
Temps (sec)
Asservissement de vitesse : Kp = 8, Ki = 8, Kd = 1
Vitesse mesuree
Consigne
Depassement de tension maximale
Asservissement de position
Pour les tests, le moteur a t coupl sur une roue de 6cm de diamtre. Le rglage de lasservissement de
position consiste alors rechercher le coecient K
p
du terme proportionnel qui engendrera la plus petite erreur
statique possible sans pour autant tre gn par la limitation de lacclration maximale lors des phases de
dclration. Pour les tests, les valeurs suivantes ont t choisies
4
:
_
A
max
= 23.5 cm.s
2
Acclration maximale
V
max
= 29.5 cm.s
1
Vitesse maximale
On obtient alors le rsultat voulu pour K
p
= 0.08. Lerreur statique reste heureusement trs satisfaisante :
infrieure 1mm quelle que soit la consigne (par exemple 0.3mm pour une consigne de 1m, soit 0.03% dcart
relatif). Voici la courbe de rponse mesure pour une consigne denviron 1m :
4
Si ces valeurs semblent tonnantes, il sagissait en ralit de valeurs brutes rondes faciles utiliser pour le micro-contrleur.
16
0
200
400
600
800
1000
1200
0 1 2 3 4 5 6
Temps (sec)
Vmax (mm/s)
Consigne (mm)
Vitesse demandee (mm/s)
Vitesse mesuree (mm/s)
Position mesuree (mm)
Remarque On saperoit ici encore que les frottements secs gnent la poursuite de la consigne de vitesse au
dmarrage, lorsque le couple moteur c
m
est encore infrieur au couple darrachement C
arr
.
17
Chapitre 3
Application : Asservissement en
position et en vitesse dun robot
3.1 Objectif de lasservissement
Lexprimentation consiste rguler en vitesse et en position deux moteurs lectriques courant continu,
placs en conguration type char sur un robot (un moteur par roue, une roue de chaque ct), lui permettant
davancer et de tourner sur lui-mme. Cette conguration est notamment utilise dans les convoyeurs automatiss
( fenwicks autonomes).
Fig. 3.1
(a) Les convoyeurs automatiss AGV utilisent une conguration "type
char" des roues pour une bonne mobilit
Le besoin dasservissement est double : dune part, on souhaite pouvoir asservir la position du robot en
absolu, cest--dire savoir tout instant o se situe le robot et pouvoir se dplacer vers des coordonnes prcises.
Dautre part, de nombreux lments (lgres dirences de moteurs, dcharge de la batterie, parasites, mauvais
quilibrage du robot, ...) font que deux moteurs supposs identiques aliments de la mme manire ne ragiront
pas strictement de la mme manire sans asservissement, ce qui aura pour eet de faire dvier le robot au lieu
davancer droit. Un asservissement est donc ncessaire.
3.2 Modlisation dun robot deux moteurs
Pour pouvoir modliser lasservissement dun tel robot en position, il ne sut pas seulement de modliser
le comportement des moteurs, mais il faut aussi pouvoir connatre la position et la vitesse du robot (selon une
composante de translation et une composante de rotation) en fonction de lhistorique dvolution des vitesses
respectives de ses moteurs. Pour cela, on met en place un rfrentiel mobile polaire au centre du robot.
18
Fig. 3.2
v(t)
5 4 3 2 1 0
y(t)
4
x(t)
2
0
theta(t)
w(t)
(a) Modlisation dun robot en conguration "type
char"
On peut alors dnir les composantes instantanes de vitesse de translation v et de rotation en fonction
des vitesses davance respectives V
droite
et V
gauche
des roues droite et gauche (on suppose lenvironnement plat),
ainsi que R la distance entre une roue et le centre du robot. On a alors :
_
v =
V
droite
+V
gauche
2
=
V
droite
V
gauche
2 R
On en dduit alors les coordonnes du robot dans le rfrentiel xe, en supposant que le robot soit lorigine
du repre linstant initial :
_

_
x(t) =
t
_
0
v(). cos(()) d =
t
_
0
v(). cos(

_
0
() d) d
y(t) =
t
_
0
v(). sin(()) d =
t
_
0
v(). sin(

_
0
() d) d
(t) =
t
_
0
() d
Remarques Cette modlisation suppose une symtrie parfaite des roues et un contact ponctuel et parfait
entre les roues et le sol (pas de glissement, roue susamment ne pour connatre avec exactitude la position du
centre de rotation, ...).
Fig. 3.3
(b) Schma-bloc global de lasservissement bimoteurs
3.3 Mise en oeuvre
3.3.1 Partie mcanique
Le robot fabriqu pour loccasion est m par deux moteurs lectriques courant continu (identiques celui
tudi au chapitre prcdent) dots de rducteurs de rapport de rduction r =
1
30
. Pour coller avec le modle
19
gomtrique du robot, les roues doivent tre nes et despacement connu, ce qui permet davoir un contact
quasi-ponctuel avec le sol et de bien connatre le centre instantan de rotation (ce qui est plus alatoire avec de
larges roues).
Fig. 3.4
(a) Vue globale de la base roulante
Pour simplier la modlisation, on considre que le comportement global du robot dpend uniquement du
comportement des moteurs, en ngligeant le frottement et le jeu des rducteurs, le glissement des roues, en
supposant parfaits lalignement et la gomtrie des roues, ...
Un encodeur optique incrmental quadrature de phase identique celui utilis dans la prcdente appli-
cation est reli au rotor de chacun des deux moteurs, ce qui nous permet de rcuprer une information sur
lincrmentation angulaire des moteurs, partir de laquelle on peut calculer la vitesse du robot et sa position
daprs les formules nonces prcdemment.
3.3.2 Partie lectronique
Deux cartes lectroniques assurent le bon fonctionnement du robot :
La carte principale soccupant de lacquisition et du traitement des signaux est identique celle utilise
au chapitre prcdent :
Fig. 3.5
(a) Carte principale
Une carte puissance, identique celle utilise au chapitre prcdent, permet de contrler la tension
fournir aux moteurs (par une modulation PWM) ainsi que le sens de dplacement selon les ordres de la
carte principale.
20
Fig. 3.6
(a) Schma de fonctionnement gnral du robot
3.3.3 Partie informatique embarque
La partie informatique est similaire celle utilise dans lexemple dapplication prcdent. Le code a sim-
plement t doubl de manire calculer deux corrections simultanment. La seule particularit par rapport
la premire application est que lerreur se calcule diremment puisque lon nasservit pas les mmes variables.
Remarques Cette implantation suppose une symtrie parfaite du robot (paralllisme des roues, ...), un contact
parfait et ponctuel entre chaque roue et le sol, des roues inniment nes, un sol parfaitement plat, ce qui bien
sr nest quune approximation de la ralit. Il en rsulte alors une dviation progressive du robot par rapport
la position quil pense tenir. Une solution serait dutiliser dautres capteurs en complment qui permettraient
de recaler rgulirement la position du robot par rapport un point de position connue.
3.3.4 Partie informatique distante
Pour la rcupration des mesures et le trac des courbes, la mme mthode quau chapitre prcdent a t
utilise.
3.4 Mise au point de lasservissement - Rsultats
La liaison srie disponible sur la carte principale permet de rcuprer les courbes dvolution de la vitesse,
nous permettant ainsi dapprcier visuellement les eets des coecients. Le rglage trouv au chapitre prcdent
pour les mmes moteurs a donn de bons rsultats et a t utilis aussi bien pour lasservissement davance que
lasservissement de rotation.
Une fois lasservissement au point, il est possible de demander lexecution de trajectoires complexes en
approximant chaque petit dplacement par une portion de cercle dont il reste dterminer le rayon de courbure
et la vitesse. Lors des tests, le robot a trs bien coll sa trajectoire sans en dvier de plus de quelques
millimtres.
Pour un positionnement absolu irrprochable, il serait alors envisageable dutiliser en complment dautres
capteurs (analysant la position par rapport une balise par exemple) ou de se recaler de temps autres en un
point de position connue an de limiter au maximum la drive qui sans cela ne pourra aller quen augmentant.
21
Chapitre 4
Conclusion
4.1 Synthse
Nous avons vu que le PID appliqu aux moteurs lectriques courant continu tait un rgulateur qui pouvait
orir de bonnes performances, que ce soit au niveau de la prcision, du temps de raction, du dpassement,
ou de la stabilit. Diverses mthodes permettent doptimiser les coecients du PID. Mais le rgulateur idal
nexiste pas : chaque optimisation dun paramtre (prcision, ...) se fait aux dpends dun autre. Il convient
alors de trouver le meilleur compromis en fonction des exigences initiales du cahier des charges.
Divers lments, tels que le choix de la mthode dimplantation du PID, peuvent aussi avoir des consquences
sur les performances. Lessentiel est alors de sloigner le moins possible du modle thorique pour quil reste
valable.
Lorsque des processus industriels mettent en oeuvre un ou plusieurs moteurs, il peut tre avantageux de
mettre en place plusieurs rgulations combines plutt quune seule, pour mettre en place un asservissement
prol de vitesse ou un asservissement multi-eecteurs.
4.2 Alternatives lasservissement PID
Il arrive dans certaines situations que le PID ne donne pas de bons rsultats. Plusieurs autres actuateurs et
systmes de rgulations existent pouvant donner des rsultats dirents, parmi lesquels :
Correcteur RST
Le correcteur RST est une fonction classique qui est gnralement mise en place lorsquun PID ne donne
pas satisfaction (car plus complexe et plus lourde mettre en oeuvre). L o le PID est avant tout destin
un traitement analogique, le correcteur RST est une correction essentiellement numrique qui laisse le choix
de la fonction de correction sous la forme dun quotient polynomial, ce qui permet dimposer certains ples
mais aussi certains zros en boucle ferme. Il autorise alors la poursuite sans cart permanent de consignes
quasi-quelconques.
Rseaux Neuronaux Articiels
L o lalgorithmique traditionnelle trouve ses limites (reconnaissance de formes, asservissement de systmes
complexes, ...), les rseaux neuronaux articiels orent une alternative de plus en plus apprcie : si un systme
biologique arrive excuter une certaine tche, alors on tente dmuler les rseaux neuronaux naturels pour
sapproprier leurs incroyables proprits : excution de tches trs complexes, auto-correction des erreurs, facult
dauto-apprentissage, bonne improvisation face linconnu, incroyable rsistance aux perturbations et aux casses
matrielles.
Certains des rcents robots humanodes nippons sen servent par exemple pour maintenir leur quilibre
dynamiquement et pour reconnatre des visages. Le maintien de lquilibre dynamique dun humanode
est pourtant une tche trs complexe et agissant sur de nombreux eecteurs (hanches, genoux, ...) quil
est trs dicile de raliser par une approche algorithmique classique.
Mark Tilden (personne trs reconnue en robotique) a cr des robots dune intelligence comparable aux
insectes, capables dimproviser leur survie malgr une patte casse, ce qui montre bien leur robustesse.
Autres types de moteurs
Les moteurs pas pas (qui quipent de nombreuses machines outils commande numrique, tlescopes robo-
tiss, tables traantes, imprimantes matricielles, ...) et les moteurs pizolectriques (micro-robotique, autofocus
dappareils photo, ...) ont la particularit de ne tourner que par pas rguliers (par exemple 200 pas = 1 tour).
22
Ainsi il est possible (lorsque le couple oppos reste susamment faible pour que le moteur tourne) d esprer
la position angulaire du moteur en fonction du nombre de pas demands (mais il ne sagit alors pas rellement
dun asservissement, mais juste dune supposition de la position).
23

Das könnte Ihnen auch gefallen