II- Pilotage de l'ensemble du systeme
C'est sans doute la partie la plus importante pour la
réalisation d'une commande vectorielle et même de toute commande
numérique. Ce rôle est donc ici, rempli par le DSP
ds1104 (coeur du système).
II.1- Programmation du DSP
Le DSP contient donc tous les programmes et sous-programmes
(fonctions) relatifs aux différents algorithmes de commande et
écrits en langage C++.
Description des diffé rents programmes
Comme dit précédemment, le DSP contient le
programme principal (fonction main) qui fait appel aux fonctions relatives aux
algorithmes d'acquisition, de transformation de Park, de contrôle
vectoriel, d'autopilotage, de régulation, de PWM, ...
Des extraits de ces fonctions sont donnés en
annexe 2.
- Programme principal (fonction main) :
indc.c
Cette fonction principale nommée
indc.c est celle qui gère la MLI, appelle les fonctions
(sous-programmes), initialise les variables et gère la
sécurité des interrupteurs de puissances et de tout le
système.
- Fonction Acquisition : ACQUI.C
Cette fonction gère l'acquisition des courants et de la
vitesse mesurés respectivement à l'entrée et à la
sortie (codeur) de la machine et calcule par ailleurs la pulsation
mécanique. Sachant que pour cette commande, il n y a besoin que de deux
courants de deux phases ; le troisième étant fabriqué
à partir de ceux-ci qui arrivent au niveau du DSP par les pins 2 et 3
configurées en entrées analogiques et la vitesse par la pin 4
configurée en entrée logique (numérique).
- Fonction Transformation : TRANS.C
Elle contient les algorithmes des transformations de Clarke
(passage système triphasé abc au système
diphasé áâ ) et de Park (passage
du repère fixe (á ,â )
à un repère tournant
(d ,q ) dit de
Park).
- Fonction Régulation : REGUL.C
Elle contient les algorithmes de calcul de l'angle des
transformations, des régulations de courant et de vitesse. Elle
intègre aussi une boucle de régulation de vitesse IP
(Intégral et Proportionnel) Anti Wind-up qui permet de réduire
à défaut d'annuler les dépassements de vitesse.
- Bibliothèque : VAR.H
Simplement, elle contient les déclarations et
définitions de toutes les constantes et variables nécessaires et
utilisées dans les fonctions.
11.2- Discretisation des correcteurs
Le DSP travaillant en (discret) numérique, il s'agit ici
de calculer l'équivalent discret des correcteurs PI continus
(utilisés pour la simulation) en vue de l'expérimentation
Pour un système continu, on a :
C( p ) = Kpc .
Tc p = K + pc
et y ( p ) = R(p ) . e
( p )
p
T p pc
1+ Tc c
Pour un système discret, on a :
k
y k K pd e k K id e i
( ) = ( ) . ( )
+ ~ ? ( ) ( 1) ( ( ) ( 1) ) ( )
y k y k
- - = pd
K e k e k
- - + id
K e z
i=0
Une transformation en z donne :
y z z y z K
( ) - - 1 ( ) = pd
|
( e(z ) - z-1 e
(z ) ) + K e (z) id
|
~ K ~
id
? y z K
( ) = ~ + 1 e z
~ ( ) (3.1)
pd -
~ 1 - z ~
|
~
En posant pTe id
z = e , on a : e
1 - z = 1 - e pTe pT . Donc ( ) =
~ + K
y p K
~ ~ e ( p )
pd
~ pTe ~
|
(3.2)
|
L'identification de (3.1) et (3.2) permet d'avoir :
K pc
K pd = K pc et e
K = T
id T
ic
- En courant : Le retard de régulation de
courant est Trég _I = TeI
200ìs . AN : K pd = K pc = 3 6,65
et K K pc T = 3 6,6 5 × 200. 1 0 -6 = 0,92
id T
ice0,008
- En vitesse : Le retard de régulation de
la vitesse est Trég _ Ù= TeV 1 ms
.
K 0,5
pc
AN : K pd = K pc = 0,5 et K =
T = × - 3 =
10 0,004
id e
T 0,1 25
iv
On a ainsi retenu :
C ( p) = 3 6,65 + 0,92 et
Vitesse :
id TeI
Axes d et q :
p
C vd
0,005
T eVp
( p) = 0,5 +
|