Electric and Hybrid Drive Systems homework
ECE 4/595 Electric Drive Systems Prof Ka C Cheok
AC MACHINE WITH PERMANENT MAGNET ROTOR
Brushless DC (BLDC) Motor – Max Torque Condition
Torque Generated between Stator and Rotor - Summary
Variables:
Parameters:
BLDC Motor is a special case of the AC Synchronous Machine when the lead angle between stator and rotor field orientation is always maintained (controlled) to be at 90o.
Max Torque Conditions
The 90 deg orientation yields a consistent torque constant and proportional relationship to the stator current:
,
This makes the AC (sinusoidally distributed field) motor behave like that of a DC motor… hence the name Brushless DC Motor. It’s an AC motor that is controlled to produce a torque proportional to an input current.
To turn an AC Machine (electrically excited stator + PM rotor) into a BLDC, we need to add an electronic firmware (hardware & software) that uses feedback to determine how the stator should be excited to maximize torque in the motor action. We shall see how we can do that. It’ll be in the section for “field oriented control of d-q space vector”.
“We can do that. We are the factory!” … Hanson Windows Ad.
Current Control Loop for BLDC Motors
Coordinate transformation - Rotation matrix
clear all; close all; clc;
Ialfa = 2; Ibeta = 8; theta = 30/57.3;
figure
plot([0 0; 10 0 ],[0 0; 0 10],'b'); hold on
axis([-1 11 -1 11]); axis('equal');
plot([0 Ialfa],[0 Ibeta],'b','linewidth',2);
plot([[Ialfa Ialfa]' [0 Ialfa]'],[[0 Ibeta]' [Ibeta Ibeta]'],':b')
text(Ialfa+0.1,Ibeta,num2str([Ialfa; Ibeta]),'color','b');
plot([0 10*cos(theta)],[0 10*sin(theta)],'r')
plot([0 10*cos(theta+pi/2)],[0 10*sin(theta+pi/2)],'r')
Rot = [ cos(theta) sin(theta);
-sin(theta) cos(theta)];
Idq = Rot*[Ialfa; Ibeta];
xyredX = Rot'*[Idq(1); 0];
plot(xyredX(1),xyredX(2),'*r')
plot([Ialfa xyredX(1)],[Ibeta xyredX(2)],':g')
text(xyredX(1)+0.2,xyredX(2),num2str(Idq(1)),'color','r');
xyredY = Rot'*[0;Idq(2)];
plot(xyredY(1),xyredY(2),'*r')
Measured Alpha-beta currents
The BLDC motor feedback requires measurements of stator and rotor variables. We will assume that the following variables can be measured:
· Currents IA, IB, IC are measured as IAm, IBm, ICm
·
·
The additional “m” subscript denotes “measurement”.
(Clarke Transform)
The figure below illustrates the stator field.
Stand on the Rotor platform (light blue) and call out the dimensions (E.g., 3,4)
Stand on the Stator platform (gray) and call out the dimensions (E .g., 0.5980, 4.940)
Direct-quadrature (d-q) currents & Park Transform
Control of Currents
To promote generating a maximum or minimum torque, we would like to have Stator Current lead or lag the Rotor Field by a certain angle (for example 90o). That is
Alpha-Beta Voltage Command and Inverse Park Transform
The BLDC Motor – Its Basic Hardware + Software Integration
Connect the dots
( Inverse Clarke Transform PWM+ Three P hase Inverter Circuit Y-Stator circuit Hardware - Hardware Measurements & Software Software Space Vector Current/Field )
Measurement
Current Controller
Inverse Park Transform
Park Transform
Clarke Transform
Software
Hardware
Current Control Scheme 00for FOC BLDC
Or to be at the min of the sinusoid as needed.
Torque is always controlled to be at the max of the sinusoid, as shown in this case.
Open Loop Scheme AC PMSM
Torque oscillates and settles around the zero equilibrium
or neutral position.
Uncontrolled PMSM torque is much weaker than FOC BLDC
2015 AC BLDC Motor w dq Park Clark.docx 1 1 Jun ‘15
sref
I
ˆ
s
s
mr
StatorcurrentI
Statorangle
Rotorangleor
q
0
d
i
®
q
i
qref
i
d
i
0
dref
i
=
(
)
(
)
()
0 to achieve 90lead or lag angle
is determined by desired magnitude
()
o
Cddrefd
d
dref
dq
q
qref
Cqqrefq
Gsii
v
i
v
i
Gsii
éù
-
=
éù
êú
==
êú
êú
-
ëû
ëû
v
()
Cd
Gs
ˆ
.
r
s
MaxmagdensityinrotorB
rradiusofrotor
llengthofrotor
Nnoofstatorwindings
=
=
=
()
Cq
Gs
()&()
iCq
iCd
CdpCdCqpCq
K
K
GsKGsK
ss
=+=+
d
dq
q
v
v
éù
=
êú
ëû
v
d
rmrm
q
rmrm
v
v
cs
v
v
sc
a
ab
b
éù
éù
-
éù
==
êú
êú
êú
ëû
ëû
ëû
v
min
1min
1
10
2
0.50.866
3
0.50.866
min(,,)
3
1
1
1
3
1
am
bm
cm
ambmcm
aam
bbm
ccm
v
v
v
v
v
vvvv
zv
vv
vvz
vv
a
b
éù
éù
éù
êú
êú
=-
êú
êú
êú
ëû
êú
êú
--
ëû
ëû
=
=-
éùéù
éù
êúêú
êú
=+
êúêú
êú
êúêú
êú
ëû
ëûëû
0
1
2
3
4
5
Q
Q
Q
Q
Q
Q
a
b
c
v
v
v
a
b
c
V
V
V
AAN
A
BBN
B
CCN
C
VEV
I
sLR
VEV
I
sLR
VEV
I
sLR
--
=
+
--
=
+
--
=
+
1
(
3
)
NABC
ABC
VVVV
EEE
=++
---
sin()
2
sin(120)
2
sin(240)
2
s
Arrr
o
s
Brrr
o
s
Crrr
N
EBlr
N
EBlr
N
EBlr
pqq
pqq
pqq
=
=-
=-
&
&
&
v
v
a
b
em
t
Ext
t
r
q
&
r
q
r
q
&&
s
i
I
i
a
b
éù
=
êú
ëû
ˆ
s
s
I
q
1
JsD
+
em
t
ˆ
ˆ
sin()
2
s
rsms
N
BrlI
pqq
-
1
s
22
1
ˆ
tan
s
s
II
I
I
I
ab
b
a
q
-
éù
+
êú
éù
êú
=
êú
êú
ëû
êú
ëû
d
m
rmrm
q
m
rmrm
i
i
cs
i
i
sc
a
b
éù
éù
éù
=
êú
êú
êú
-
ëû
ëû
ëû
10.50.5
00.8670.867
m
AmBmCm
m
i
III
i
a
b
éù
--
éùéùéù
=++
êú
êúêúêú
-
ëûëûëû
ëû
(
)
(
)
()
()
Cddrefd
d
q
Cqqrefq
Gsii
v
v
Gsii
éù
-
éù
êú
=
êú
êú
-
ëû
ëû
d
rmrm
q
rmrm
v
v
cs
v
v
sc
a
b
éù
éù
-
éù
=
êú
êú
êú
ëû
ëû
ëû
0
To be set
dref
qref
i
i
éù
éù
=
êú
êú
ëû
êú
ëû
, ,
AmBmCm
III
rm
q
10.50.5
00.8670.867
s
a
b
c
i
i
I
I
I
a
b
éù
=
êú
ëû
éù
--
éù
êú
=
êú
êú
-
ëû
êú
ëû
I
i
i
a
b
a
b
c
I
I
I
90
o
sr
-=-
90
o
sr
-=
em
t
90
o
sm
--
90
o
sm
-=
90180
oo
sm
--=-
90
o
sm
-=-
()
sm
-
ˆˆ
2
s
emrs
N
BrlI
tp
=
r
q
&
rm
q
&
r
q
rm
q
ab
10.50.5
00.8670.867
m
smmAmBmCm
m
i
III
i
a
ab
b
éù
--
éùéùéù
===++
êú
êúêúêú
-
ëûëûëû
ëû
Ii
3
..,,30
4
0.8660.50030.5980
0.5000.86644.9640
d
o
rm
q
m
m
i
Eg
i
i
i
a
b
q
éù
éù
==
êú
êú
ëû
ëû
éù
-
éùéùéù
==
êú
êúêúêú
ëûëûëû
êú
ëû
rm
q
sm
I
r
B
r
d
i
q
i
m
i
b
sm
q
m
i
a
ˆ
ˆ
cos(90)
2
ˆ
ˆ
sin()
2
o
s
emrsms
s
rsms
N
BrlI
N
BrlI
tpqq
pqq
=--
=-
m
d
rmrm
m
q
rmrm
m
i
i
cs
i
sc
i
a
ab
b
éù
éù
-
éù
==
êú
êú
êú
êú
ëû
ëû
ëû
i
0.5980
..,,30
4.9640
0.8660.5000.59803
0.5000.8664.96404
m
o
rm
m
d
q
i
Eg
i
i
i
a
b
q
éù
éù
==
êú
êú
ëû
êú
ëû
éù
éùéùéù
==
êú
êúêúêú
-
ëûëûëû
ëû
rm
q
m
sm
m
i
i
a
b
éù
=
êú
ëû
I
sm
I
m
d
rmrm
dqParkm
q
rmrm
m
i
i
cs
i
sc
i
a
ab
b
éù
éù
éù
===
êú
êú
êú
-
êú
ëû
ëû
ëû
iTi
&
dq
ii
m
i
a