Permanent Magnet Synchronous Motors (PMSM) Strategies, analysis and comparison of classical and predictive strategies for Permanent Magnet AC Motors (PMAC)-link
Similar to Permanent Magnet Synchronous Motors (PMSM) Strategies, analysis and comparison of classical and predictive strategies for Permanent Magnet AC Motors (PMAC)-link
Similar to Permanent Magnet Synchronous Motors (PMSM) Strategies, analysis and comparison of classical and predictive strategies for Permanent Magnet AC Motors (PMAC)-link (20)
Permanent Magnet Synchronous Motors (PMSM) Strategies, analysis and comparison of classical and predictive strategies for Permanent Magnet AC Motors (PMAC)-link
1. 1/27
Obiettivi
• Analisi degli algoritmi di alimentazione.Analisi degli algoritmi di alimentazione.
• Caratterizzazione delle prestazioni inCaratterizzazione delle prestazioni in
condizioni transitorie e di regime.condizioni transitorie e di regime.
• Analisi della complessitàAnalisi della complessità
computazionale.computazionale.
• Identificazione delle linee guida per unaIdentificazione delle linee guida per una
corretta scelta dell’algoritmo.corretta scelta dell’algoritmo.
2. 2/27
Introduzione
I brushless hanno uno statore polifase
simmetrico trifase come gli asincroni, e in
base alla distribuzione di campo al traferro si
dividono in :
2π5π/34π/3ππ/30 2π/3
BR(β)
β
β
BR(β)
0 2π
ξsNs
Re
Im
β
dc brushless ac brushless
3. 3/27
Tecnica di Controllo
La tecnica di controllo che si utilizza per determinare ilLa tecnica di controllo che si utilizza per determinare il
riferimento di corrente da dare in pasto all’algoritmo diriferimento di corrente da dare in pasto all’algoritmo di
alimentazione è il field oriented.alimentazione è il field oriented.
PθR
d
iS
q
id
iq
BR
BS
La coppia sviluppata è costante nel tempo se:La coppia sviluppata è costante nel tempo se:
• I campi sono equipolari
• I campi sono sincroni iS è sincrono a BR
Il rapporto [Nm/A] è massimo inIl rapporto [Nm/A] è massimo in
una isotropa se:una isotropa se:
• I campi sono in quadratura
iq≠0
id=0
Come per la macchina asincrona:Come per la macchina asincrona:
• iq
Modula coppia
Deflussa o flussa la macchina• id
iq(t)PΦ
2
3
M(t) max=
5. 5/27
Tecniche di alimentazione classiche
Sample and Hold
Iq*
Iq
Id
Rotore/statore
S1
S2
S3
A
B
C
VSI
is1
is2
is3
teta
iq
id
Statore/rotore
Saturation
Vsx*
Vsy *
alf a1
alf a2
alf a3
SVM
vd*
vq*
p*teta
Vsx*
Vsy*
dalf a1
dalf a2
dalf a3
Modulatore SVM
0
Id*
PI
PI
PI
Demux
ω*
θR
DSP
dθ/dt
ω
Mod.
Vettoriale S
N
A
B C
SA A
SB B
Sc C
VSI
Algoritmo di alimentazione con regolatori di tensione:
Il principio di base è suggerito dal
modello matematico nel riferimento di
rotore: rerdqqSq
rqddSd
ωKPωLii
dt
d
LiRv
PωLii
dt
d
LiRv
+++=
−+=
Field orientedField oriented
6. 6/27
Tecniche di alimentazione classiche
vq
Rs L)(tiq
Rde ω)PLi(K ⋅+ vd
Rs L)(tid
Rq ωPLi ⋅
Osservando i circuiti equivalenti all’equazione di asse
diretto e di quadratura, si nota che la dinamica delle
correnti non è indipendente. Gli assi risultano mutuamente
accoppiati.
In letteratura il disaccoppiamento degli assi è ottiene sommando
al forzamento la f.e.m. responsabile dell’accoppiamento.
Vd
**
PI
Vd
*
(Ke+LidP)ωr
-LiqPωr
Vq
*
Vq
**
PI
iq
iq
*
id
iq
*
ωr
7. 7/27
Tecniche di alimentazione predittive
Lo scopo delle tecniche predittive è quello di calcolare il
valore di tensione necessario a realizzare la corrente di
riferimento imposta dall’algoritmo controllo.
È necessario integrare passo per passo l’equazione di
bilancio elettrico ai valori istantanei:
]eJPωiRv[
L
1
i
dt
d (t)JPθ
maxSSS
R
⋅Φ−−⋅=
Metodo di EuleroMetodo di Eulero
))t(y,t(f)t(y =
•
y(t*))f(t*,Δty(t*)Δt)*y(t ⋅+=+
t
y(t)
t*
y(t)
t*+∆t
y(t*)
8. 8/27
Tecniche di alimentazione predittive
]eJPωPiRv[
L
1
i
dt
d (t)JPθ
MAXSSS
R
⋅−−⋅=
Predittivo alle differenze nelPredittivo alle differenze nel
riferimento di statoreriferimento di statore
]eΦJPωiRv[
L
T
ii nJPθ
MAXnnn
C
n1n ⋅−−⋅+=+
nJPθ
MAXnnn
*
S
C
n eΦJPωiR)ii(
T
L
v ⋅+⋅+−⋅=
*
S1n ii =+
Predittivo alle differenze nelPredittivo alle differenze nel
riferimento di rotore:riferimento di rotore:
]JPi)JLPR(v[
L
1
i
dt
d
MAX
R
SS
R
S
R
S Φω−⋅ω+−⋅= MAXn
R
nn
R
n
*R
S
C
R
n JPi)LJPR(]i)i[(
T
L
v Φω+⋅ω++−⋅=
Utilizzando Eulero integriamo il modello matematico nel
riferimento di statore:
Integriamo il modello matematico nel riferimento di rotore:
9. 9/27
Tecniche di alimentazione predittive
ω*
θR
DSP
Sample and Hold
rotore/statore
Predittivo
S1
S2
S3
A
B
C
VSI
is1
is2
is3
Isx
Isy
Saturation Vsx*
Vsy *
alf a1
alf a2
alf a3
SVM
id*
iq*
teta
Isx*
Isy*
Isx*
Isy*
w
Isy
Isx
Vsx*
Vsy*
dalf a1
dalf a2
dalf a3
Modulatore SVM
0
Id*
PI
Demux
dθ/dt
ω
Mod.
Vettoriale S
N
A
B C
SA A
SB B
Sc C
VSI
Predittivo alle differenze nel
riferimento di statore
Field orientedField oriented
nJPθ
MAXnnn
*
S
C
n eΦJPωiR)ii(
T
L
v ⋅+⋅+−⋅=
10. 10/27
Tecniche di alimentazione predittive
Predittivo alle differenze nel riferimento di rotore
ω*
θR
DSP
Sample and Hold
Predittivo
Vd
Vq
Vsx
Vsy
rotore/statore
S1
S2
S3
A
B
C
VSI
is1
is2
is3
teta
iq
id
Statore/rotore
Saturation Vsx
Vsy
alf a1
alf a2
alf a3
SVM
Id*
Iq*
w
Id
Iq
Vd
Vq
dalf a1
dalf a2
dalf a3
Modulatore SVM
0
Id*
PI
Demux
Mod.
Vettoriale
S
N
A
B C
SA A
SB B
Sc C
VSI
dθ/dt
ω
Field orientedField oriented
MAXn
R
nn
R
n
*R
S
C
R
n JPi)LJPR(]i)i[(
T
L
v Φω+⋅ω++−⋅=
11. 11/27
Tecniche di alimentazione predittive
Predittivo teta costantePredittivo teta costante
n
C
C
JPθ
MAXn
T
L
R
n
*
S
T
L
R
S
n eΦJPω]eii[
)e(1
R
v +⋅−⋅
−
=
−
−
*
S1n ii =+
Invertendo la soluzione si ottiene il forzamento da imporre
all’istante di campionamento n-esimo:
Si particolarizza la soluzione alla fine del passo di campionamento
e si impone la condizione:
[ ] [ ]C
t
L
R
S
JPθ
MAXnS
t
L
R
nS T0,t)e(1
R
eΦJPωv
ei(t)i
n
∈−⋅
−
+⋅=
−−
[ ]CCn T1)(nTntθθ(t) ⋅+⋅∈=
La soluzione è più accurata se si determina l’integrale
generale dell’equazione differenziale.
12. 12/27
Tecniche di alimentazione predittive
Predittivo teta variabilePredittivo teta variabile
⋅−⋅
+
+−⋅+⋅=
−+−− t
L
R
)
2
π
-γ-J(Pθ)
2
π
-γ-tPωJ(Pθ
2
n
2
maxn
t
L
R
S
S
t
L
R
nS eee
L)(PωR
ΦPω
)e(1
R
v
ei(t)i
nnnnn
[ ]CT0,t ∈
[ ]CCCnn T)1n(Tnt)nTt()t( ⋅+⋅∈−ω+θ=θ
⋅−⋅
+
−⋅−
−
=
−+−
−
CnnnCnnC
C
T
L
R
)
2
π
-γ-J(Pθ)
2
π
-γ-TPωJ(Pθ
2
n
2
maxn
T
L
R
n
*
S
T
L
R
S
n eee
L)(PωR
ΦPω
eii
)e(1
R
v
*
S1n ii =+
Si inverte la soluzione:
13. 13/27
Tecniche di alimentazione predittive
ω*
θR
DSP
Sample and Hold
rotore/statore
Predittivo
S1
S2
S3
A
B
C
VSI
is1
is2
is3
Isx
Isy
Saturation Vsx*
Vsy *
alf a1
alf a2
alf a3
SVM
id*
iq*
teta
Isx*
Isy*
Isx*
Isy*
w
Isy
Isx
Vsx*
Vsy*
dalf a1
dalf a2
dalf a3
Modulatore SVM
0
Id*
PI
Demux
Mod.
Vettoriale
S
N
A
B C
SA A
SB B
Sc C
VSI
dθ/dt
ω
Field orientedField oriented
⋅−⋅
+
−⋅−
−
=
−+−
−
CnnnCnnC
C
T
L
R
)
2
π
-γ-J(Pθ)
2
π
-γ-TPωJ(Pθ
2
n
2
maxn
T
L
R
n
*
S
T
L
R
S
n eee
L)(PωR
ΦPω
eii
)e(1
R
v
n
C
C
JPθ
MAXn
T
L
R
n
*
S
T
L
R
S
n eΦJPω]eii[
)e(1
R
v +⋅−⋅
−
=
−
−
Teta costante Teta variabile
15. 15/27
Simulazioni
Algoritmo di alimentazione con regolatori di tensioneAlgoritmo di alimentazione con regolatori di tensione
Decoupling Non compensato
0 0.05 0.1 0.15 0.2
0
1000
2000
3000
4000
time [s]
0 0.05 0.1 0.15 0.2
0
1000
2000
3000
4000
Riferimento
time [s]
Velocità[rpm]
Velocità[rpm]
Riferimento
0 0.05 0.1 0.15 0.2
0
1
2
3
4
time [s]
iq(t)[A]
0 0.05 0.1 0.15 0.2
0
1
2
3
4
Riferimento
Riferimento
iq(t)[A]
time [s]
0 0.05 0.1 0.15 0.2
-0.5
0
0.5
time [s]
0 0.05 0.1 0.15 0.2
-0.5
0
0.5
time [s]
id(t)[A]
Riferimento Riferimento
id(t)[A]
16. 16/27
Simulazioni
Transitorio della corrente di quadratura a rotore bloccato
0 1 2 3 4
x 10
-4
0
1
2
3
4
time [s]
iq[A]
Tc=100e-6
iq(t=Tc)
iq(t=2Tc)
Riferimento=Imax
Predittivo teta variabile
Predittivo teta costante
0 1 2 3 4
x 10
-4
0
1
2
3
4
time [s]iq[A]
Predittivo alle differenze di statore
Predittivo alle differenze di rotore
Tc=100e-6
iq(t=Tc)
iq(t=2Tc)
Riferimento=Imax
0 1 2 3 4
x 10
-4
0
1
2
3
4
time [s]
iq[A]
Riferimento=Imax
iq(t=2Tc)
iq(t=Tc)
Tc=100e-6
Decoupling
Rotore bloccato
Riferimento:( Iq=Imax, Id =0)
Tc=100 µS
Modulazione ideale
Parametri simulazione:Parametri simulazione:
17. 17/27
Simulazioni
UNIMOTOR 95UMB300CACAA
Kt
Kgm2
Inerzia 2,5*10-4
Ke
P
Mn
R 3.755
0.012L
3
98
1,6
3,9
H
Ω
Coppie polari
Vrms/Krpm
Nm/Arms
Nm
ωn=3506 rpm
ωmax=3709 rpm
Mr=0 Nm
Algoritmo: Teta variabile
Periodo di campionamento: Tc=110 µS
Riferimento: (Iq=Imax Id =0)
Modulazione ideale
Parametri simulazione:Parametri simulazione:
Voltage transient limit circle (Eulero)
Voltage transient limit circle (teta variabile)
Current circle axiqid Im22
≤+
18. 18/27
Simulazioni
valori
relativi %
Teta
variabile
3,5927e-4 Riferimento
Teta
costante
0,0022 612%
Differenze
statore
0,0024 668%
Differenze
rotore
0,0037 1030%
Decoupling 0,0427 11885%
Prontezza dinamica ad una variazione a gradino
della velocità
Tutti gli algoritmi vengono
simulati a parità di
condizioni:
Mr=50% Mn
Periodo di campionamento: Tc=100 µS
Regolatore di coppia: Kp=0.5 Ki=16
Modulazione ideale
0 0.1 0.2 0.3 0.4 0.5 0.6
0
1000
2000
3000
time [s]
velocità[rpm]
0 0.1 0.2 0.3 0.4 0.5 0.6
-4
-2
0
2
4
iq[A]
time [s]
Riferimento
Velocità effettiva
Valore effettivo
Riferimento
∫ −
2
1
t
t
q
*
q dt)i(i
19. 19/27
Errore di predizione
L’errore di predizione alla fine del generico passo di campionamento
dipende sia dalle approssimazioni dovute al metodo d’integrazione
sia dalla conoscenza approssimata della posizione rotorica.
Ho errore di predizione con tutti gli
algoritmi di alimentazione
Nei transitori elettromeccanici:
iq
A velocità costante:
tωθθ(t) nn ⋅+=
1. L’ errore di predizione è nullo
con il teta variabile
2. L’ errore di predizione è non nullo
per i predittivi alle differenze e per
il teta costante a causa
dell’approssimazione sul teta:
CTωΔθ ⋅=
0iΔ 1n =+
),,,,,,(iΔ 1n neC iPLRKTf ω=+
id
1n
*
1n iiiΔ ++ −=
1ni +
*
i
1niΔ +
20. 20/27
Errore di predizione
⋅−⋅
+
+−⋅
⋅
+⋅⋅=
−++−+−−
+−
−
−
t
L
R
)
2
π
γtJ(Pω)
2
π
J(γ
2
n
2
maxn
t
L
R
S
t)ω(
S
t
L
R
tJPωR
n
R
S eee
L)(PωR
ΦPω
)e(1
R
ev
eei(t)i
nnn
n
n
nJP θ
L’errore di predizione a velocità costante si calcola imponendo il
forzamento predetto dall’algoritmo d’alimentazione nell’espressione che
descrive la dinamica del componente simmetrico di corrente a velocità
costante.
Predittivo teta costantePredittivo teta costante
Non dipende dalla condizione iniziale
Non dipende dal riferimento
),,,,,(i
;eee
L)(PωR
ωK
)e(1
R
e
i
1
T
L
R
)
2
π
γTJ(Pω)
2
π
J(γ
2
n
2
ne
T
L
R
S
TJPω
1
CnCnnC
Cn
PLRKTf
JK
eCn
ne
n
ω
ω
=∆
⋅−⋅
+
+−⋅−=∆
+
−++−+−−
−
+
n
C
C
JPθ
MAXn
T
L
R
n
*
S
T
L
R
S
S eΦJPω]eii[
)e(1
R
v +⋅−⋅
−
=
−
−
21. 21/27
Errore di predizione
Andamento dell’errore di predizione al variare della velocità e del passo
di campionamento.
0 500 1000 1500 2000 2500 3000 3500
-16
-14
-12
-10
-8
-6
-4
-2
0
2
4
Velocità meccanica [rpm]
ErroripercentualirelativirispettoaImax[%]
Tc=80μs
Tc=100μs
Tc=200μs
Δid [%]
Δiq [%]
qd1n ΔiJΔiiΔ ⋅+=+
22. 22/27
Errore di predizione
Confronto delle prestazioni a regime di tutti gli
algoritmi di predizione, a parità di condizioni:
0 500 1000 1500 2000 2500 3000 3500
-16
-14
-12
-10
-8
-6
-4
-2
0
2
4
velocità [rpm]
errorerelativopercentuale[%]
Tc=200μs
Δid (differenze statore)
Δid (differenze rotore)
Δid (teta costante)
Δiq (differenze rotore)
Δiq (teta costante)
Δiq (differenze statore)
23. 23/27
Confronto del tempo di esecuzione del codice
Tempo di
elaborazione
relativo %
Teta variabile Riferimento
Teta costante 69.42%
Differenze statore 61.62%
Differenze rotore 87.41%
Decoupling 87.91%
Si considera come riferimento il teta variabile, e
si esprime il tempo di elaborazione in valori
relativi percentuali.
24. 24/27
Confronto del tempo di esecuzione del codice
Il predittivo alle differenze nel
riferimento di rotore presenta due
cambi di riferimento
ω*
θR
DSP
Sample and Hold
Predittivo
Vd
Vq
Vsx
Vsy
rotore/statore
S1
S2
S3
A
B
C
VSI
is1
is2
is3
teta
iq
id
Statore/rotore
Saturation Vsx
Vsy
alf a1
alf a2
alf a3
SVM
Id*
Iq*
w
Id
Iq
Vd
Vq
dalf a1
dalf a2
dalf a3
Modulatore SVM
0
Id*
PI
Demux
Mod.Vet.
S
N
A
B C
SA A
SB B
Sc C
VSI
dθ/dt
ω
Field orientedField oriented
MAXn
R
nn
R
n
*R
S
C
R
n JPi)LJPR(]i)i[(
T
L
v Φω+⋅ω++−⋅=
25. 25/27
Confronto del tempo di esecuzione del codice
Sample and Hold
Iq*
Iq
Id
Rotore/statore
S1
S2
S3
A
B
C
VSI
is1
is2
is3
teta
iq
id
Statore/rotore
Saturation
Vsx*
Vsy *
alf a1
alf a2
alf a3
SVM
vd*
vq*
p*teta
Vsx*
Vsy*
dalf a1
dalf a2
dalf a3
Modulatore SVM
0
Id*
PI
PI
PI
Demux
ω*
θR
DSP
dθ/dt
ω
Mod.Vet.
S
N
A
B C
SA A
SB B
Sc C
VSI
L’algoritmo di alimentazione con regolatori di
tensione presenta due cambi di riferimento:
Field orientedField oriented