3-Phase BLDC Motor Control

Freescale Semiconductor
Application Note
3-Phase BLDC Motor
Control with Hall Sensors
Using 56800/E Digital Signal
Controllers
Leonard N. Elevich
1.
Application Benefits
This document describes the design of a 3-phase BLDC
(Brushless DC) motor drive based on Freescale’s 56800/E
dedicated motor control devices.
BLDC motors are very popular in a wide variety of applications.
Compared with a DC motor, the BLDC motor uses an electric
commutator rather than a mechanical commutator, so it is more
reliable than the DC motor. In a BLDC motor, rotor magnets
generate the rotor’s magnetic flux, so BLDC motors achieve
higher efficiency. Therefore, BLDC motors may be used in
high-end white goods (refrigerators, washing machines,
dishwashers, etc.), high-end pumps, fans and in other appliances
which require high reliability and efficiency.
2.
Target Motor Theory
A brushless DC (BLDC) motor is a rotating electric machine,
where the stator is a classic 3-phase stator like that of an
induction motor, and the rotor has surface-mounted permanent
magnets; see Figure 2-1.
© Freescale Semiconductor, Inc., 2002 2005. All rights reserved.
AN1916
Rev. 2.0, 11/2005
Contents
1. Application Benefits ...............................1
2. Target Motor Theory ..............................1
2.1 Digital Control of a BLDC Motor ....... 2
3. Targeting 56800/E Digital Signal
Controllers .........................................9
Target Motor Theory
Stator
Stator winding
(in slots)
Shaft
Rotor
Air gap
Permanent magnets
Figure 2-1. BLDC Motor - Cross Section
In this respect, the BLDC motor is equivalent to a reversed DC commutator motor, in which the magnet rotates
while the conductors remain stationary. In the DC commutator motor, the current polarity is altered by the
commutator and brushes. However, in the brushless DC motor, polarity reversal is performed by power
transistors switching in synchronization with the rotor position. Therefore, BLDC motors often incorporate
either internal or external position sensors to sense the actual rotor position, or the position can be detected
without sensors.
2.1 Digital Control of a BLDC Motor
The BLDC motor is driven by rectangular voltage strokes coupled with the given rotor position; see
Figure 2-2. The generated stator flux interacts with the rotor flux, which is generated by a rotor magnet,
defines the torque and thus the speed of the motor. The voltage strokes must be properly applied to the two
phases of the 3-phase winding system so that the angle between the stator flux and the rotor flux is kept close to
90° for the maximum generated torque. This means the motor requires electronic control for proper operation.
Voltage
+UDCB
Phase A
-UDCB
+UDCB
Phase B
-UDCB
+UDCB
Phase C
-UDCB
30º
60º
90º
120º
150º
180º
210º
240º
270º
300º
330º Electrical
angle
Figure 2-2. Voltage Strokes Applied To the 3-ph BLDC Motor
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
2
Freescale Semiconductor Preliminary
Digital Control of a BLDC Motor
A standard 3-phase power stage is used for the common 3-phase BLDC motor, as illustrated in Figure 2-3. The
power stage utilizes six power transistors with switching in either the independent mode or complementary
mode.
U DCB
Q1
Q3
PWM_Q1
Q5
PWM_Q3
PWM_Q5
C1
Q2
Q4
PWM_Q2
Q6
PWM_Q4
PWM_Q6
GND
Phase_A
Phase_B
Phase_C
Figure 2-3. 3-Phase BLDC Power Stage
In both mode, the 3-phase power stage energizes two motor phases concurrently. The third phase is
unpowered; see Figure 2-2. Thus, six possible voltage vectors are applied to the BLDC motor using a PWM
technique; see Figure 2-4 and Figure 2-5. There are two basic types of power transistor switching,
independent switching and complementary switching, which are discussed in the following sections.
2.1.1 Independent Switching of Power Transistors
During independent switching, only two transistors are switched on when current is conducted from the power
supply to the phase of the BLDC motor. In one phase, the top transistor is switched on; in the second phase, the
bottom transistor is switched on and the third phase is not powered. During freewheeling, all transistors are
switched off ; see Figure 2-4.
PWM
switching
ON
PWM Q1
OFF
ON
PWM Q2
OFF
ON
PWM Q3
OFF
ON
PWM Q4
OFF
ON
PWM Q5
OFF
ON
PWM Q6
OFF
10º
20º
30º
40º
50º
60º
70º
80º
90º
Electrical
angle
Figure 2-4. Independent Switching of Power Transistors
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
Freescale Semiconductor
Preliminary
3
Target Motor Theory
2.1.2 Complementary Switching of Power Transistors
During complementary switching, two transistors are switched on when the phase of the BLDC motor is
connected to the power supply. One primary difference occurs during freewheeling. During independent
switching, all transistors are switched off. The current continues to flow in the same direction through
freewheeling diodes until it falls to zero. In complementary switching, the complementary transistors are
switched on during freewheeling, so the current may be able to flow in the opposite direction. Figure 2-5
depicts complementary switching.
Notes:
Both the independent and complementary switching modes can work in bipolar or unipolar mode.
Figure 2-4 and Figure 2-5 illustrate the bipolar switching mode. This application utilizes the
complementary unipolar PWM mode.
PWM
switching
ON
PWM Q1
OFF
ON
PWM Q2
OFF
ON
PWM Q3
OFF
ON
PWM Q4
OFF
ON
PWM Q5
OFF
ON
PWM Q6
OFF
10º
20º
30º
40º
50º
60º
70º
80º
90º
Electrical
angle
Figure 2-5. Complementary Switching of Power Transistors
2.1.3 Commutation
Commutation provides the creation of a rotation field. As previously explained, it is necessary to keep the
angle between stator and rotor flux close to 90° for a BLDC motor to operate properly. Six-step control creates
a total of six possible stator flux vectors. The stator flux vector must be changed at a certain rotor position. The
rotor position is usually sensed by Hall sensors. The Hall sensors generate three signals that also comprise six
states. Each of Hall sensors’ states corresponds to a certain stator flux vector. All Hall sensor states with
corresponding stator flux vectors are illustrated in Figure 2-6. The same information is detailed in Table 2-1
and Table 2-2.
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
4
Freescale Semiconductor Preliminary
Digital Control of a BLDC Motor
Figure 2-6. Stator Flux Vectors at Six-Step Control
The following two figures depict the commutation process. The actual rotor position in Figure 2-7 corresponds
to the Hall sensors’ state ABC[110]; see Figure 2-6. The actual voltage pattern can be derived from Table 2-1.
Phase A is connected to the positive DCBus voltage by the transistor Q1; Phase C is connected to the ground
by transistor Q6; Phase B is unpowered.
As soon as the rotor reaches a certain position (see Figure 2-7), the Hall sensors’ state changes its value from
ABC[110] to ABC[100]. A new voltage pattern is selected from Table 2-1 and applied to the BLDC motor.
As shown, when using a six-step control technique, it’s impossible to keep the angle between the rotor flux and
the stator flux precisely at 90°. The actual angle varies from 60° to 120°.
Commutation is repeated every 60° electrical. The commutation event is critical for its angular (time)
accuracy. Any deviation causes torque ripples, leading to a variation in speed.
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
Freescale Semiconductor
Preliminary
5
Target Motor Theory
Figure 2-7. Situation Right Before Commutation
Figure 2-8. Situation Right After Commutation
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
6
Freescale Semiconductor Preliminary
Digital Control of a BLDC Motor
Table 2-1. Commutation Sequence for Clockwise Rotation
Hall Sensor A
Hall Sensor B
Hall Sensor C
Phase A
Phase B
Phase C
1
0
0
-VDCB
+VDCB
NC
1
0
1
NC
+VDCB
-VDCB
0
0
1
+VDCB
NC
-VDCB
0
1
1
+VDCB
-VDCB
NC
0
1
0
NC
-VDCB
+VDCB
1
1
0
-VDCB
NC
+VDCB
Table 2-2. Commutation Sequence for Counterclockwise Rotation
Hall Sensor A
Hall Sensor B
Hall Sensor C
Phase A
Phase B
Phase C
1
0
0
+VDCB
-VDCB
NC
1
1
0
+VDCB
NC
-VDCB
0
1
0
NC
+VDCB
-VDCB
0
1
1
-VDCB
+VDCB
NC
0
0
1
-VDCB
NC
+VDCB
1
0
1
NC
-VDCB
+VDCB
2.1.4 Speed Control
Commutation ensures proper rotor rotation of the BLDC motor, while the motor speed depends only on the
amplitude of the applied voltage. The amplitude of the applied voltage is adjusted by using the PWM
technique. The required speed is controlled by a speed controller. The speed controller is implemented as a
conventional PI controller. The difference between the actual and required speed is input to the PI controller
and, based on this difference, the PI controller controls the duty cycle of PWM pulses, which corresponds to
the voltage amplitude required to keep the required speed.
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
Freescale Semiconductor
Preliminary
7
Target Motor Theory
Power Stage
Zdesired
6
-
Zerror
Speed
Controller
PWM Output
Duty Cycle
Zactual
PWM
Generator
Commutation
Hall Sensors
Figure 2-9. Speed Controller
The speed controller calculates a Proportional-Integral (PI) algorithm according to the following equations:
1 t
u t = K c e t + ----- ³ e W dW
TI 0
(EQ 2-1.)
Transformation to a discrete time domain using an integral approximation by a Backward Euler method yields
the following equations for the numerical PI controller calculation:
u k = uP k + uI k (EQ 2-2.)
uP k = Kc ˜ e k (EQ 2-3.)
T
u I k = u I k – 1 + K c ----- ˜ e k TI
(EQ 2-4.)
where:
e(k)
=
Input error in step k
w(k)
=
Desired value in step k
m(k)
=
Measured value in step k
u(k)
=
Controller output in step k
up(k)
=
Proportional output portion in step k
uI(k)
=
Integral output portion in step k
uI(k-1)
=
Integral output portion in step k-1
TI
=
Integral time constant
T
=
Sampling time
Kc
=
Controller gain
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
8
Freescale Semiconductor Preliminary
Digital Control of a BLDC Motor
2.1.5 Torque Control
For applications requiring the motor to operate with a specified torque regardless of speed (e.g., in-line
tensioning), a current controller can be used, since torque is directly proportional to current. In this mode, the
speed will be held at the value set by the speed reference signal for all loads up to the point where the full
armature current is needed. If the load torque increases further, the speed will drop because the current-loop
will not allow more armature current to flow. Conversely, if the load attempted to force the speed above the set
value, the motor current will be reversed automaticaly, so that the motor acts as a brake and regenerates power
to the mains. The current controller is implemented as a conventional Proportional-Integral (PI) controller. The
output from the speed controller will be input into the current controller, along with measured DCBus current.
The output of the current controller will control the duty cycle of the PWM pulses. The combination of both
speed and torue controllers is shown in Figure 2-10.
Power Stage
Zdesired
6
-
Zerror
Zactual
Speed
Controller
6
Ierror
PWM Output
Duty Cycle
Torque
Controller
Iactual
PWM
Generator
Commutation
Hall Sensors
Figure 2-10. Combination of Speed and Torque Controllers
3.
Targeting 56800/E Digital Signal Controllers
Freescale’s 56800/E Controllers are well suited for BLDC motor control applications. They combine on a
single chip the DSP’s calculation capability with the MCU’s controller features. These devices offer many
peripherals dedicated to motor control, such as Pulse Width Modulation (PWM) modules, Analog-to-Digital
Converter (ADC), Timers, communication peripherals (SCI, SPI, etc.), on-board Flash and RAM.
Implementation of the BLDC application with Hall Sensors will vary sligtly from one 56800/E device to
another, and it will also depend on type of motor hardware used. See application-specific targeting manuals for
more information.
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
Freescale Semiconductor
Preliminary
9
Targeting 56800/E Digital Signal Controllers
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
10
Freescale Semiconductor Preliminary
Digital Control of a BLDC Motor
3-Phase BLDC Motor Control with Hall Sensors, Rev. 2.0
Freescale Semiconductor
Preliminary
11
How to Reach Us:
Home Page:
www.freescale.com
E-mail:
support@freescale.com
USA/Europe or Locations Not Listed:
Freescale Semiconductor
Technical Information Center, CH370
1300 N. Alma School Road
Chandler, Arizona 85224
+1-800-521-6274 or +1-480-768-2130
support@freescale.com
Europe, Middle East, and Africa:
Freescale Halbleiter Deutschland GmbH
Technical Information Center
Schatzbogen 7
81829 Muenchen, Germany
+44 1296 380 456 (English)
+46 8 52200080 (English)
+49 89 92103 559 (German)
+33 1 69 35 48 48 (French)
support@freescale.com
Japan:
Freescale Semiconductor Japan Ltd.
Headquarters
ARCO Tower 15F
1-8-1, Shimo-Meguro, Meguro-ku,
Tokyo 153-0064, Japan
0120 191014 or +81 3 5437 9125
support.japan@freescale.com
Asia/Pacific:
Freescale Semiconductor Hong Kong Ltd.
Technical Information Center
2 Dai King Street
Tai Po Industrial Estate
Tai Po, N.T., Hong Kong
+800 2666 8080
support.asia@freescale.com
For Literature Requests Only:
Freescale Semiconductor Literature Distribution Center
P.O. Box 5405
Denver, Colorado 80217
1-800-441-2447 or 303-675-2140
Fax: 303-675-2150
LDCForFreescaleSemiconductor@hibbertgroup.com
Information in this document is provided solely to enable system and
software implementers to use Freescale Semiconductor products. There are
no express or implied copyright licenses granted hereunder to design or
fabricate any integrated circuits or integrated circuits based on the
information in this document.
Freescale Semiconductor reserves the right to make changes without further
notice to any products herein. Freescale Semiconductor makes no warranty,
representation or guarantee regarding the suitability of its products for any
particular purpose, nor does Freescale Semiconductor assume any liability
arising out of the application or use of any product or circuit, and specifically
disclaims any and all liability, including without limitation consequential or
incidental damages. “Typical” parameters that may be provided in Freescale
Semiconductor data sheets and/or specifications can and do vary in different
applications and actual performance may vary over time. All operating
parameters, including “Typicals”, must be validated for each customer
application by customer’s technical experts. Freescale Semiconductor does
not convey any license under its patent rights nor the rights of others.
Freescale Semiconductor products are not designed, intended, or authorized
for use as components in systems intended for surgical implant into the body,
or other applications intended to support or sustain life, or for any other
application in which the failure of the Freescale Semiconductor product could
create a situation where personal injury or death may occur. Should Buyer
purchase or use Freescale Semiconductor products for any such unintended
or unauthorized application, Buyer shall indemnify and hold Freescale
Semiconductor and its officers, employees, subsidiaries, affiliates, and
distributors harmless against all claims, costs, damages, and expenses, and
reasonable attorney fees arising out of, directly or indirectly, any claim of
personal injury or death associated with such unintended or unauthorized
use, even if such claim alleges that Freescale Semiconductor was negligent
regarding the design or manufacture of the part.
Freescale™ and the Freescale logo are trademarks of Freescale Semiconductor,
Inc. All other product or service names are the property of their respective owners.
This product incorporates SuperFlash® technology licensed from SST.
© Freescale Semiconductor, Inc. 2005. All rights reserved.
AN1916
Rev. 2.0
11/2005