Commande dactionneurs à laide dun microprocesseur 7 Réglage Christian Koechli.
-
Upload
andromaque-moi -
Category
Documents
-
view
111 -
download
7
Transcript of Commande dactionneurs à laide dun microprocesseur 7 Réglage Christian Koechli.
Commande d’actionneurs à l’aide d’un microprocesseur
7 Réglage
Christian Koechli
Objectifs du cours
• Méthodologie de conception
• Equations d’état
• Fonction de transfert
• Identification
• Dimensionnement
• Implémentation du régulateur
Méthodologie
1. Identification du système:- décomposition en sous-systèmes;- détermination des constantes de temps.
2. Choix du système de réglage:- réglage direct ou en cascade;- dimensionnement analogique ou digital.
3. Implémentation du régulateur sur le contrôleur.
Modèle du système: moteur CC
2Système mécanique: ee m m e
dJ r J rM M
dt
Equations d’état de l’entraînement
Equation de tension: i
diu Ri L u
dt
Equation de liaison: m iM K i
2Système mécanique: ee m i e
dJ r J rK i M
dt
Système à régler (Moteur CC)
Fonction de transfert: régulateur de vitesse
2 ee m i e
dJ r J rK i M
dt
Grandeur de commande
Grandeur à régler
Grandeur de perturbation
Transformation de Laplace
2
2
2
( ) ( ) ( )
( ) ( )( )
( )
e m e i e
i ee
e m
i
e m
J r J s s rK i s M s
rK i s M ss
s J r J
rKG s
s J r J
e i
e
i
M
rK
2
i
e m
rK
s J r J
Réponse indicielle
y = 6426.7x - 102.65
-500
0
500
1000
1500
2000
2500
3000
3500
4000
4500
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8
t [s]
vmes
[rp
m]
Attention seule la partie linéaire est intéressante !
Système à régler (Moteur CC)
Fonction de transfert: régulateur de courant
i
diu Ri L u
dt Grandeur de
commande
Grandeur à régler
Grandeur de perturbation
Transformation de Laplace
1
1
( ) ( ) ( ) ( )
( ) ( )( )
1 1( )
11
avec:
1;
i
i
s
s
u s R Ls i s u s
u s u si s
R LsK
G sLR Ls T s
R sR
LK T
R R
11sK
T s
uiu i
Réponse indicielle
0
500
1000
1500
2000
2500
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
temps[ms]
i [m
A]
Variante: réglage en tension
• On néglige l’effet de l’inductance sur le courant
• On néglige les frottements visqueux
Fonction de transfert: régulateur de vitesse
2 ee m i e
dJ r J rK i M
dt
Transformation de Laplace
2
2
2 2
2 2
( ) ( ) ( )
( ) ( ) ( )
( ) ( )( )
( ) ( )( ) ( )
( ) ( )( )
( )
e m e i e
i e
i e
i ee m e i e
i ee
e m i
i
e m i
J r J s s rK i s M s
u s Ri s K s
u s K si s
Ru s K s
J r J s s rK M sR
rK u s RM ss
R J r J s rK
rKG s
R J r J s rK
u
e
i
MRrK
2 2
i
e m i
rK
R J r J s rK
i e
diu Ri L K
dt
e
Grandeur à régler
Grandeur de perturbation
Grandeur de commande
Buts du réglage
•Suivi de consigne: asservissement
•Rejet de perturbation: régulation
Le réglage doit être le plus rapide possible sans présenter de statisme.
Choix du type de régulateur
• Classique (PI, PID)
• Réglage d’état
• RST
• Mode de glissement
• Logique floue
• …
Dimensionnement du régulateur
Méthodes:
- Tournevis
- Ziegler Nichols (Prof. Longchamp)
- Design dans le domaine continu puis discrétisation (Prof. Bühler)
- Design dans le domaine discret (Prof. Longchamp)
Méthode tournevis
• Commencer par augmenter le terme P -> instabilité
• Réduire d’au moins 1/3
• Augmenter le terme I jusqu’à ce que le statisme et le dépassement soit tolérables
• Pas très scientifique !
Dimensionnement dans le domaine continu puis discrétisation
• Identification du système à régler (réponse indicielle)=> constantes de temps
• Synthèse du régulateur dans le domaine continu (en s) – Critère sur la réponse harmonique méplate– Critère symétrique
• Discrétisation du régulateur
Structure
Réglage pseudo-continu: Simplification
Identification du système
• Comportement intégraly
t
1( )
I
G ssT
Régulateur PI
Identification du système
• 1 constante de temps dominantey
t
1
( )1
sKG ssT
Régulateur PI
T1
Identification du système
• 2 constantes de temps dominantesy
t
1 2
( )1 1
sKG ssT sT
Régulateur PID
Petite constante de temps équivalente1
( ) Retard dû au traitement1
1( ) Elément de maintient DA (CMPR shadowed)
1 / 2
( ) Etablissement du signal de commande (drivers,..)1
1( )
1
rr
meE
cmcm
cm
MesMes
G ssT
G ssT
KG s
sT
G ssT
Mesure, éventuellement filtrage
( ) avec 1
cmpE pE E cm r Mes
pE
KG s T T T T T
sT
Le produit de ces fonctions de transferts et de celle liée à la discrétisation du régulateur peut être approché par:
Avec 0 pur un régulateur I, 0.5 pour un PI, 1 pour un PID
Dimensionnement: critère méplat
Critère symétrique
Pour un système à comportement intégral
2
4
8
1( )
1
4
n pE
pEi cm
I
cwcw
cw n pE
T T
TT K
T
G ssT
T T T
Réponse indicielle
Quel critère ?
• Méplat: bon comportement en asservissement (dépassement très limité). OK en régulateur (grandeur de perturbation) si T1 et T2 pas trop élevées par rapport à TpE
• Symétrique: comportement intégral du système ou régulateur avec bonnes performances dynamiques
Discrétisation du régulateur
Calcul des coefficients du régulateur
ImplémentationDoCapture(); //lit le périph de mesure du temps entre 2 impulsions du capteur incrémentalif (i==100) { //période d'échantillonnage
i=0;vcons=AdcResult.ADCRESULT0;vmes = CalcSpeed(); //en tours par minute//régulateur de vitesseSpeedError = vcons- vmes;if(SpeedError>2000)SpeedError=2000; // limitation to avoid overflowif(SpeedError<-2000)SpeedError=-2000; // limitation to avoid overflow//intégrateurSpeedIntegr += SpeedError;if (SpeedIntegr > MaxSpeedIntegr) SpeedIntegr = MaxSpeedIntegr;if (SpeedIntegr < -MaxSpeedIntegr) SpeedIntegr = -MaxSpeedIntegr;taux = (((int32)Speed_KP * SpeedError) >> Speed_KP_div) + ( (SpeedIntegr*Speed_KI)>>Speed_KI_div);//comme on fait du pwm double croisé, un taux de 50% correspond à une tension moyenne nulletaulim = taux + (PERIPWM>>1);//il faut aussi limiter le tauxif (taulim > PERIPWM) taulim = PERIPWM;if (taulim < 0) taulim = 0;EPwm1Regs.CMPA.half.CMPA=taulim;EPwm2Regs.CMPA.half.CMPA=taulim;
}
Code de mesure du saut indiciel//à déclarerint16 dump[1400];int16 im=-1;
// A utiliser pour déterminer le régulateur de vitessetaux =0;if ((im>=0)&&(im<1400)){
taux=PERIPWM>>2; dump[im]=vmes;//vmes_moyen; im++;
} if (im==-1){ im=0; taux=PERIPWM>>2; }