A_Triki - Manifestations Univ Ouargla

publicité
Identification et Commande Numérique d’un Moteur à Courant
Continu entrainant une Table Tournante
A . Triki* et M. Diaf**
*Dpartement d’Automatique, Université Mouloud Mammeri, Tizi-Ouzou, Email:[email protected]
** Dpartement d’Automatique, Université Mouloud Mammeri, Tizi-Ouzou, Email:[email protected]
Résumé— Cet article traite l’identification et la
commande numérique d’un moteur à courant continu
assurant le mouvement de rotation d’une table
tournante. En premier lieu sont présentées les étapes qui
ont permis l’identification du modèle du moteur à
courant continu. En second lieu, une commande
numérique, permettant d’atteindre un fonctionnement
performant de ce moteur, est calculée puis vérifiée par
simulation. En dernier lieu, l’implémentation de cette
commande numérique dans un calculateur numérique
est abordée.
Mots clés- identification, modélisation, moteur à
courant continu, commande numérique, table
tournante.
Ainsi, dans ce papier, il s’agit d’une étude d’une
réalisation d’une boucle de commande numérique
d’un moteur à courant continu à aimant permanent
entrainant une charge fixe de type table tournante à
travers un mécanisme de réduction de vitesse réalisé à
base de roues dentées (fig.1).
En première partie, l’identification de la fonction de
transfert du moteur à commander est réalisée. Ensuite,
nous procédons au calcul et à la simulation d’une loi
de commande numérique permettant de rendre la
vitesse du moteur indépendante du couple résistant
appliqué ainsi que des variations de vitesse les plus
rapides et les plus précises possibles. L’algorithme du
programme réalisant la commande numérique est
donné dernière partie.
Abstract—This paper deals with an identification
of a DC motor used for a digital control of a
turntable. First, we describe the steps required for
obtaining the analog model of the DC motor.
Second, the digital model is calculated and a digital
control allowing an efficient functioning of the
system is realized. Thus, after simulation step, the
digital control has been implemented on a
microcomputer for driving the system. The tests
have shown the good performances of the adopted
procedure.
Key-word - identification; modeling, DC motor
Digital control, turntable.
Disque
Réducteur de vitesse
Moteur à courant continu
Équipé d’un capteur de vitesse
Fig.1 Schéma de l’ensemble moteur à courant
continu, réducteur de vitesse et table tournante.
II.
IDENTIFICATION DE LA FONCTION DE
TRANSFERT
I.
INTRODUCTION
Malgré les progrès scientifiques et technologiques
qu’ont connus les machines asynchrones, la machine à
courant continu reste encore la machine par
excellence pour les applications demandant un
contrôle de vitesse [1].
Du fait du développement et de la disponibilité de
plus en plus des circuits numériques performants, le
contrôle de vitesse ou de position d’une machine à
courant continue est souvent réalisé en utilisant une
commande numérique. Pour ce faire, le calcul d’une
commande d’un procédé nécessite souvent la
détermination de son modèle sous forme de fonction
de transfert ou d’équations d’état.
L’objectif de cette partie est de déterminer une
relation mathématique, sous forme de fonction de
transfert, liant la tension d’alimentation du moteur um
à la vitesse de la table tournante Ω. Pour ce faire, la
structure de la fonction de transfert est déterminée à
partir des équations physiques régissant le
fonctionnement du moteur. Les paramètres de cette
fonction de transfert sont ensuite identifiés.
A. Structure de la fonction de transfert
Les équations régissant le fonctionnement du
moteur à courant continu sont les suivantes [2]:
𝑑𝑖(𝑡)
𝑢𝑚 (𝑡) = é + 𝑅 𝑖(𝑡) + 𝐿
𝑑𝑡
é(𝑡) = 𝑘 𝛺𝑚 (𝑡)
𝑑𝛺𝑚 (𝑡)
𝐽
= 𝐶𝑚 (𝑡) − 𝐶𝑟 (𝑡)
𝑑𝑡
𝐶𝑚 (𝑡) = 𝑘 𝑖(𝑡)
𝛺(𝑡) = 𝐾𝑅 𝛺𝑚 (𝑡)
𝑢 𝑇 (𝑡) = 𝐾𝑇 𝛺𝑚 (𝑡)
où é est la FEM du moteur, R, la résistance de
l’induit du moteur, L, l’inductance de l’induit du
moteur, k, la constante du moteur, i, le courant
traversant l’induit du moteur, Ω, la vitesse du moteur,
Cm , le couple électromagnétique du moteur, J, le
moment d’inertie de l’ensemble des pièces tournantes
ramenées à l’arbre du moteur, Cr, le couple résistant
dû à toutes les charges tournantes et appliqué au
moteur par l’intermédiaire du réducteur, kR, le rapport
de réduction du réducteur de vitesse, kT, le gain du
capteur de vitesse et uT, la tension en sortie du capteur
de vitesse.
Le couple résistant est composé d’un couple
dépendant de la charge 𝐶𝑐 et d’un couple
proportionnel à la vitesse due essentiellement aux
frottements dans le réducteur de vitesse. Ainsi on a :
𝐶𝑟 = 𝐶𝑐 + 𝜆 𝜔
𝑜ù 𝜆 est le coefficient des frottements.
Du faite de l’importance du rapport de réduction
(1/70) du réducteur de vitesse, la charge influe peu sur
l’arbre du moteur et le couple de frottement est assez
important. Ainsi le couple de la charge est négligeable
devant le couple de frottement. Par conséquent on a :
𝐶𝑟 = 𝜆 𝜔
et
J
d
 Cm  
dt
L’application de la transformé de Laplace aux
équations précédentes nous a permet d’exprimer la
fonction de transfert recherchée sous forme d’un
second ordre tel que :
Ω(𝑃)
𝐺
𝐺(𝑝) =
=
2 ℎ
1
𝑈(𝑃)
1+
𝑝 + 2 𝑝2
𝑤𝑛
𝑤𝑛
où:
𝑘𝐾
2 ℎ
𝑅𝐽+𝐿𝜆
1
𝐿𝐽
𝐺= 2 𝑅 ,
= 2
et
2 = 2
𝑘 +𝑅𝜆
𝑤𝑛
𝑘 +𝑅𝜆
𝑤𝑛
𝑘 +𝑅𝜆
Ainsi pour connaitre le modèle du moteur, il est
nécessaire d’identifier les valeurs des paramètres G, h
et 𝑤𝑛 .
B. Identification des paramètres G, h et wn
Afin d’identifier les paramètres G, h et wn, nous avons
réalisé le montage de la figure (2) nous permettant
d’effectuer un essai indiciel et relever l’allure de sa
réponse. L’alimentation stabilisée est réglée pour
générer une tension continue de 6V. La tension uT en
sortie du capteur de vitesse est mesurée à l’aide d’un
oscilloscope numérique puis enregistrée sur le PC en
2050 échantillons
(kT, Ωmes (kT)) où 𝑘T
représente les instants de mesures séparés par une
période T = 0.1 ms et 𝛺𝑚𝑒𝑠 (𝑘𝑇) représente la
vitesse mesurée a l’instant 𝑘𝑇 .
Pc
Oscilloscope
numérique
Moteur CC équipé
d’un capteur de vitesse
Alimentation
stabilisée
Fig.2 Montage de l’essai indiciel
La réponse indicielle ainsi que la tension
d’alimentation du moteur, obtenues après réalisation
de l’essai indiciel, sont représentées en figure (3).
16
14
12
vitesse mesurée (tours/minute)
Tension d'alimentation (Volts)
10
8
6
4
2
0
-2
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
Fig.3 Tension d’alimentation et réponse indicielle du
moteur.
A partir de l’allure de la cette courbe, on conclut que
l’expression de la réponse indicielle en vitesse est
celle correspondant à un régime apériodique. Ainsi,
l’expression de la réponse indicielle est [3]:
𝑡
𝑡
𝜏1
𝜏2
−
−
Ω(𝑡) = Ω∞ ( 1 +
𝑒 𝜏1 +
𝑒 𝜏2 )
𝜏2 − 𝜏1
𝜏1 − 𝜏2
où Ω∞ = 𝐺 𝑢0 et
1
𝜏1 =
(ℎ + √ℎ2 − 1 ) , 𝜏2 =
𝑤𝑛
1
𝑤𝑛
(ℎ − √ℎ2 − 1 )
Pour estimer les valeurs des paramètres G, h et wn
nous avons utilisé le principe des moindres carrés
pour minimiser le critère quadratique suivant :
𝑁
𝐽 = ∑ [Ω(𝑘𝑇) − Ωmes (𝑘𝑇)]2
𝑘=0
où Ωmes (𝑘𝑇) est la mesure de la réponse indicielle
prise à l’instant kT et Ω (𝑘𝑇), la valeur de la réponse
indicielle estimée à l’instant kT définie par
l’expression ci-dessus.
De la minimisation de ce critère, résulte les valeurs
suivantes : G = 6, h = 1.12 et wn = 37.26
Ceci donne :
6
𝐺(𝑃) =
1 + 0.06 𝑝 + 0.0007𝑝2
La figure (4) représente la réponse indicielle mesurée
et la réponse indicielle obtenue après identification
mesurées en tr/mn.
de même valeur, uF(k), exploitable par le calculateur
numérique.
Le schéma fonctionnel dans le domaine fréquentiel
correspondant au schéma bloc précédent est donné par
la figure 6 suivante :
16
14
12
10
8
6
4
2
0
-2
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
Fig.4 Réponse indicielle mesurée et réponse indicielle
estimée.
III.
COMMANDE NUMERIQUE DU MOTEUR A
COURANT CONTINU
Pour contrôler la vitesse d’un moteur à courant
continu à aiment permanant on peut agir soit sur la
tension aux bornes de l’induit, soit sur le courant dans
cet induit.
Dans notre cas, nous avons choisis d’agir sur la
tension de l’induit à travers un circuit actif en
commutation (circuit de puissance) commandé par la
technique de modulation de largeur d’impulsion
(MLI) dont le rapport cyclique est à calculer par un
régulateur numérique [4]. Pour ce faire nous avons
réalisé la boucle de commande numérique représentée
en figure (5).
Ωc(k)
e(k Calcul de la u(k) B
um(t) Moteur et Ω(k)
circuit de
O Module
) tension de
MLI
puissance
Z
commande
Ω(k)
Calcul de la UT(k C UT(t
vitesse de la
)
A )
table
N
mesurée
Calculateur
numérique
Fig.5 Schéma-bloc de la commande numérique de
la vitesse du moteur à courant continu
Dans ce schéma le rôle de chaque partie est décrit ciaprès. Le régulateur numérique permet de générer une
tension de commande u(k) à chaque instant
d’échantillonnage kT. Le bloqueur d’ordre zéro
(BOZ) permet de maintenir la tension de commande u
constante entre les instants kT et (k+1)T. Le bloc de
calcul de la vitesse du moteur détermine la vitesse de
la table Ω(k) à partir de la tension générée par le
tachymètre uT(k) :
𝐾
Ω = 𝑅 𝑢𝐹 , ce qui donne : Ω = 0.0897 𝑢𝐹
𝐾𝑇
Le module MLI utilise la technique modulation de
largeur d’impulsion (MLI) pour générer un signal
(tension continue umli) carré de fréquence fmli= 1KHZ,
d’amplitude de 5V et d’un rapport cyclique α = u(k)/5
Le moteur à courant continu et circuit de puissance
représente le processus à commander comprenant le
moteur modélisé précédemment par G(p) et un circuit
de puissance équivalent à un gain Kp= 5/6. Le
convertisseur analogique numérique CAN permet de
convertir la tension continue analogique délivrée par
le capteur de vitesse, uT(t,) en une tension numérique
Ωc(z)
+-
E(z)
C(z)
U(z)
G(z)
Ω(z)
Fig. 6 Le schéma fonctionnel dans le domaine
fréquentiel.
Ici, Ωc(z), E(z), U(z) et Ω(z) sont les transformées
en z des signaux Ωc(k), e(k), u(k) et Ω(k)
respectivement. Quant à C(z), elle est la fonction de
transfert du correcteur numérique et G(z), la
fonction de transfert de l’ensemble bloqueur d’ordre
zéro, moteur et circuit de puissance.
A. Calcul de la loi de commande u(k)
Sachant que la loi de commande numérique u(k) doit
permettre de rendre la vitesse du moteur indépendante
du couple résistant appliqué ainsi que des variations
de vitesse rapides et précises, nous avons calculé la loi
de commande u(k) permettant d’obtenir pour la
boucle de commande numérique un modèle du second
ordre caractérisé par un temps de réponse tr = 0.07s,
un dépassement maximal D% = 5% et une erreur
statique nulle. Le calcul de cette loi de commande est
effectué en les six étapes suivantes :
a. Calcul de la fonction de transfert analogique
désirée en boucle fermée H(p) :
Des abaques caractéristiques du système du seconde
ordre, nous avons remarqué que [5]:
 pour obtenir un dépassement (D%) de 5% il
faut avoir h=0.7.
 pour le cas où h=0.7 on a ωn t r = 3 , d’où
𝑟𝑎𝑑
pour tr=0.07s ωn = 42.857 .
𝑠
Pour avoir l’erreur statique nulle il suffit
d’avoir 𝐻(0) = 1 .
Par conséquent, la fonction de transfert analogique
désirée du système en boucle fermée est :
1
𝐻(𝑝) =
2 ℎ
1
1+
𝑝 + 2 𝑝2
𝑤𝑛
𝑤𝑛
3
avec :
ℎ = 0.7, ωn =
= 42.857 𝑟𝑎𝑑/𝑠
0.07
1
𝐻(𝑝) =
1 + 0.0327𝑝 + 0.0005 𝑝2
De la figure (7) représentant la réponse indicielle de
𝐻(𝑝), nous avons mesuré un temps de réponse de
0.07s, un dépassement maximal de 5% et une erreur
statique de 0. De ce fait les H(p) satisfait bien les
exigences ci-dessus
Step Response
𝐻(𝑧) =
Amplitude
1.5
Ceci donne :
1
𝐻(𝑧)
𝐺(𝑧)[1 − 𝐻(𝑧)]
Après application numérique nous avons aboutis à:
𝐶(𝑧) =
0.5
0
0
0.05
0.1
0.15
0.2
0.25
Time (sec)
Fig. 7
Réponse indicielle de H(p)
c. Calcul de la fonction de transfert échantillonnée
G(z) du moteur muni du BOZ
La fonction de transfert échantillonnée G(z) est
définie par la relation suivante [6] :
G(p)
G(z) = (1 − z −1 ) TZ [
]
P
G(z)
] est
P
02304 − 0.1178𝑧 −1 − 0.1528 𝑧 −2 + 0.07998z −3
1 −0.736𝑧 −1 − 0.6305 z −2 + 0.3665z −3
𝐶(𝑧) =
b. Choix de la période d’échantillonnage 
La condition que doit satisfaire le pas
d’échantillonnage  pour un système du second
ordre étant 0.25 <  ωn < 1.25 [6], ce qui se
traduit dans notre application par 0.006 <  <
0.029, nous avons fixé  = 0.01s.
TZ [
𝐶(𝑧)𝐺(𝑧)
1 + 𝐶(𝑧) 𝐺(𝑧)
la transformé en Z du terme
G(p)
P
Perturbation P(t)
Après tout calcul, nous obtenons :
𝐺(𝑧) =
0.3248 z + 0.2441
2
𝑧 − 1.33 z + 0.4244
d. Calcul de la fonction de transfert échantillonnée
désirée en boucle fermée
La fonction de transfert échantillonnée désirée en
boucle fermée est définit par la relation suivante [7] :
𝐻(𝑧) =
𝑏1 (𝑧 − 𝑧0 )
(𝑧 − 𝑧1 )(𝑧 − 𝑧2 )
avec :
𝑤𝑛
sin(𝑤𝑝 ∆) − cos(𝑤𝑝 ∆)],
𝑤𝑝
𝑤𝑛
[ℎ
sin(𝑤𝑝 ∆) − cos(𝑤𝑝 ∆)]
𝑤𝑝
𝑏1 = 𝑎0 + √𝑎0 [ℎ
𝑏0 = 𝑎0 + √𝑎0
2
𝑤 𝑝 = 𝑤𝑛 √2 − ℎ
𝑧1 = 𝑧2∗ = 𝑒 (−ℎ𝑤𝑛 ∆±𝑗𝑤𝑝 ∆) , 𝑧0 = −
𝑏0
𝑏1
Ainsi:
𝐻(𝑧) =
f. Calcul de la loi de commande
A partir du l’expression de C(z), nous pouvons écrire :
U(z)[1 −0.736z −1 − 0.6305 z −2 + 0.3665z −3 ]
= E(z)[ 0.2304 − 0.1178z −1
− 0.1528 z −2 + 0.07998z −3 ]
Le passage dans le domaine temporel [8] donne la loi
de commande sous forme de l’équation de récurrence
suivante :
u(k) = 0.2304 e(k) − 0.1178 e(k − 1)
− 0.1528 e(k − 2)
+ 0.07998 e(k − 3)
+ 0.736 u(k − 1)
+ 0.6305 u(k − 2)
− 0.3665 u(k − 3)
B. Simulation de la loi de commande calculée
Afin de valider la loi de commande calculée, u(k), le
schéma fonctionnel de la figure 8 a été réalisé en
Matlab Simulink.
0.0748z + 0.0612
2
𝑧 − 1.413 z + 0.5488
Consigne
Ωc(z)
E(z)
+
-
U(z)
C(z)
Fig.8 Schéma de simulation de la commande u(k).
Quatre cas ont été considérés :
 La consigne est un échelon d’amplitude 10
tours/minute et la perturbation nulle
 La perturbation est nulle et la consigne vaut
19 tours/minute
 La perturbation est un échelon d’amplitude 5
et la consigne est de 10 tours/minute
 la consigne est un échelon d’amplitude 15
tours/minute et la perturbation est un échelon
d’amplitude 4.
Les résultats de simulation des quatre cas précédents
sont représentés par la figure 9.
20
15
consigne
consigne
15
10
sortie
e. Calcul de du correcteur numérique
A partir du schéma fonctionnel de la figure 6 on
déduit que la fonction de transfert en boucle fermée
s’exprime comme suit :
Sortie
Ω(z)
+-
G(z)
5
0
commande
0.2
0.4
0.6
commande
5
perturbation
0
0
sortie
10
0.8
0
0.2
perturbation
0.4
0.6
0.8
15
15
consigne
10
perturbation
5
sortie
commande
5
0
V.
consigne
10
perturbation
0
0.2
0.4
0.6
0
0.8
-5
sortie
0
0.2
commande
0.4
0.6
0.8
Fig.9 Résultats de simulation.
A partir des résultats obtenus, nous constatons que :
- dans les quatre cas le temps de réponse est de
0.07s, le dépassement est inférieur à 5% et l’erreur
statique est nulle.
- en l’absence de perturbation, la limite de
saturation de commande (5V) est atteinte pour une
consigne de 19 tours/minute.
- en présence de perturbation de type échelon
d’amplitude 4, la limite de saturation de consigne
est atteinte pour une valeur de consigne de 10
tours/minute.
IV.
IMPLEMENTATION DE LA COMMANDE
NUMERIQUE
L’algorithme du programme permettant à un
calculateur numérique de générer la tension u(t) à
partir de la valeur de la vitesse consigne ΩC et de la
mesure de la tension uT(t) est donné à la figure (8).
1. initialiser à zéro de toutes les variables
utilisées ;
u(k-5)= u(k-4)= u(k-3)= u(k-2)= u(k-1)= 0
Ω(k-5) = Ω(k-4) = Ω(k-3) = Ω(k-2) = Ω(k-1) = 0
2. Lire de la valeur de la vitesse consigne ΩC(k)
3. Acquérir et convertir en numérique la tension
analogique uF(k)
4. Calculer de la vitesse de la table mesurée
Ωm(k) à partir de la valeur de tension uF(k) :
Ωm(k) = uF(k)/KT.
5. Calculer de e(k) l’écart entre la vitesse
consigne et la vitesse de la table :
e(k)= ΩC(k)-Ωm(k)
6. Calculer de la commande u(k)
7. Calculer du rapport cyclique du module MLI,
α:
α = u(k)/5
8. Générer la tension MLI um(k) de rapport
cyclique α et de période Tmli=1ms
9. Décaler les valeurs u(k-5) = u(k-4), u(k-4) =
u(k-3), u(k-3) = u(k-2), u(k-2) = u(k-1), u(k-1) =
u(k),
10.Attendre une période d’échantillonnage
11.Revenir à l’étape 2
Fig.8 Algorithme de la programmation de
u(k)
CONCLUSION
Après avoir obtenu le modèle du moteur à courant
continu à aimant permanant assurant le mouvement de
rotation d’une table tournante, nous avons exprimé
cela comme une fonction de transfert du second ordre.
Puis, nous avons utilisé le principe des moindres carré
pour identifier les paramètres de la dite fonction de
transfert. En seconde partie, nous avons réalisé le
calculé la commande numérique permettant de rendre
la vitesse du moteur indépendante du couple résistant
appliqué au moteur d’une part, et des variations de
vitesse les plus rapides et les plus précises possibles
d’autre part. En dernière partie, nous avons présenté
un algorithme d’un programme permettant à un
calculateur numérique de réaliser la commande
numérique calculée. Sur le plan pratique, il sera
intéressant d’implémenter la commande numérique du
régulateur à l’aide d’un microcontrôleur de type
PIC16F877 par exemple.
VI.
REFERENCES
[1] D. Jacob. REGULATION, Régulation PID en génie électrique.
Etude de cas. Edition ellipses, 2000.
[2] G.Lacroux. Les actionneurs électriques pour la robotique et les
asservissements. Edition LAVOISIER, 1994.
[3] E.Boukas. Systèmes Asservis. Edition de l’école polytechnique
de Monréal, 2001.
[4] P.Mayé. Moteurs électriques pour la robotique. Edition
DUNOD, 2000.
[5] M. Rivoire et J.L. Ferrier. Cours d’Automatique, Tome 2,
Commande analogique. Edition EYROLLES, 1996.
[6] M. Rivoire et J.L. Ferrier. Cours d’Automatique, Tome 3,
Commande
par
Calculateur
Identification.
Edition
EYROLLES, 1997.
[7] P. Siarry, AUTOMATIQUE DE BASE. Edition Ellipses, 1997
[8] A.TRIKI, Contribution à l’étude et réalisation d’un
asservissement comprenant une table tournante, un robot et
un système de vision artificielle, Mémoire de magister en
Automatique, Université Mouloud Mammeri de Tizi-Ouzou,
Algérie, 2010.
Téléchargement