Вы находитесь на странице: 1из 27

Application Note

MultiMotor
Series

Space Vector Modulation of a 3Phase BLDC Motor with the


Z16FMC MCU
AN035404-1015

Abstract
Space vector modulation techniques can be applied for AC induction motors, permanent
magnet synchronous motors, and BLDC motor types. PMSM motors can be more efficient
at smaller motor frame sizes compared with an ACIM machine of the same size.
A 3-phase BLDC motor can be controlled by creating a rotating voltage reference vector
within a hexagon; the speed of rotation of this voltage reference vector determines the frequency of motor rotation. The space vector modulation application discussed in this application note uses a BLDC type motor with three Hall sensors for angular position feedback.
Constant cost pressure and increased consumer expectations have driven design engineers
to seek minimal hardware solutions that extract maximum performance from motors used
in consumer goods. This application note demonstrates how Zilogs Z16FMC MCU can
implement efficient, cost-conscious vector modulation of a BLDC motor.
Note: The source code file associated with this application note, AN0354-SC01, is available free
for download from the Zilog website. This source code has been tested with ZDS II
ZNEO version 5.0.1. Subsequent releases of ZDS II may require you to modify the code
supplied with this application note.

Z16FMC Series Flash Microcontrollers


The Z16FMC Series of Flash MCUs is based on Zilogs advanced 16-bit ZNEO CPU
core. The MCUs in this series are optimized for motor control applications and support
control of single- and multiphase variable-speed motors. Target applications are consumer
appliances, HVAC, factory automation, refrigeration, and automotive applications, among
others.
To rotate a 3-phase motor, three AC voltage signals must be supplied and phase-shifted
120 degrees from each other and the MCU must provide six Pulse Width Modulation
(PWM) outputs. To control a 3-phase motor, the MCU must provide six Pulse Width
Modulation (PWM) outputs. The Z16FMC Series Flash MCU features a flexible PWM
module with three complementary pairs or six independent PWM outputs supporting
deadband operation and fault protection trip input. These features provide multiphase control capability for various motor types, and ensure safe operation of the motor by providing immediate shutdown of the PWM pins during a fault condition.

AN035404-1015

Page 1 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Discussion
An electric motor consists of a stator and a stationary frame in which a rotating component, or rotor, is mounted on a shaft and bearings. In a 3-phase BLDC motor, the stator is
laced with three sets of inductor windings energized by three AC voltage inputs that are
phase-offset 120 degrees from each other to produce a rotating field of magnetic flux. This
stator flux field exerts a magnetic force on a rotors permanent magnet flux field, resulting
in torque on the output shaft.
In a 3-phase motor control application, the input to the motor is produced by a 3-phase
inverter bridge. A bridge contains three complementary source/drain transistor pairs
which connect either ground or high-voltage DC to each of its three outputs in response to
digital control signals from the microcontroller. The microcontroller uses PWM on the
bridge control signals to generate three approximately-sinusoidal AC waveforms on the
bridge outputs, with the required 120-degree phase offset.
The duty cycle of each microcontroller PWM output is varied to control the period and
amplitude of the generated AC signal which, in turn, determines the speed and torque of
the motor.

Theory of Operation
Similarly to third harmonic-injected sinusoidal PWM, the Space Vector Modulation
method utilizes about fifteen percent more of the available bus voltage, therefore increasing the efficiency of motor operation.
Unlike a non-third harmonic-injected sinusoidal PWM, the neutral point of the phase voltages is constrained to one-half of the bus voltage, as illustrated in Figure 1.
Vbus
Vbus/2
-Vbus

Figure 1. The Rotating Vectors are Constrained by VBUS and the Center of the VBUS Voltage

Space vector modulation is not confined to the limits of the VBUS and the center voltages,
and can float in space as illustrated in Figure 2.

AN035404-1015

Page 2 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

W
Vbus
Vbus/2
-Vbus

T1

T2

Time 1

T3

Time 2

Time 3

Figure 2. Center Voltage of the Space Vector Floats in Space

Unlike sinusoidal PWM which generates sinusoidal currents separately in each push/pull
stage of the inverter, space vector modulation operates the entire inverter as a single unit
to produce the sinusoidal currents. In doing so, the inverter is operated in eight different
states within the hexagon, two of which are referred to as zero vectors because they produce no voltages, and six states which produce non-zero voltages.
The rotating reference voltage Vs within this hexagon, seen in Figure 3, is represented by a
space vector using the following equation:
Vs = Vs e

V3(010)

V2(110)

V4(011)

Vs

V1(100)

V0(000)
V7(111)

V5(001)

V6(101)

Figure 3. The Rotating Reference Vector VREF within the Hexagon

With vector addition, the resulting reference space vector is:


Vs = r1

AN035404-1015

V1 + r2 V2

Page 3 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

To produce this rotating vector, the angular position within any two base vectors must be
known, as shown in Figure 4.

Figure 4. The Location of the Reference Vector in between any of Two Base Vectors

Knowing the angle of rotation and the adjacent base vectors within the hexagon, the scalar
coefficients for the adjacent base vector r1 and r2 must be calculated to time-modulate the
base vectors V1 and V2 toward generating the resulting voltage reference vector, VS.
After the angular information is obtained, the scalar quantities r1 and r2 can be calculated
using the following equations:
r1 = m

3 sin 60

r2 = m

3 sin

In the above equations, m is the magnitude of the rotating space vector, VS.
The time periods for which the adjacent base vectors are modulated to obtain the reference
vector can be calculated using equations 1, 2, and 3:
Equation 1
t0 = 1 t1 t2

Equation 2
t1 = r1 T
Equation 3
t2 = r2 T

In these three equations, T is the sum of t0, t1, and t2, and cannot be greater than the time
period of the PWM. Next, t0 becomes the time period for which either or both zero vectors
are applied in combination with t1 and t2, as illustrated in Figure 5.

AN035404-1015

Page 4 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 5. The Switching Times for Base Vectors V1, V2, and Zero Vectors

To find the time periods t0, t1, and t2, the angles are determined by using V1 as the reference axis in a counterclockwise direction to determine the base vector angle to be subtracted from the angle of the reference vector.
Example 1

Using equations 1, 2, and 3 above, if the bus voltage is 24 V and the desired reference vector magnitude is 12 V, then the following equation can be calculated:
j 190
Mag
V s = ------------ e
V bus

In the above equation, the angle is 190 degrees and the adjacent base vector is V4, which is
180 degrees. Therefore, r1 and r2 can be calculated using the following equations:
r1 =

12V
3 ----------- sin 60 190 180 = 0.663
24V

r2 =

12V
3 ----------- sin 190 180 = 0.15
24V

If the PWM period is T = 50 s, then the time duration for either zero vector V0, V7 is:
t0 = 1 r1 r2

T = 9.3s

The time duration for t1 is:


t 1 = r 1 T = 33.2s

And the time duration for t2 is:


t2 = r 2

T = 7.5s

Space vector control allows for different switching combinations using t1 and t2 based on
the choice of the null vectors which are applied for duration of time t0. Applying the zero
vectors V0, V7, or both V0 and V7 results in different switching patterns to generate either
less total harmonic distortion or to reduce linear switching power losses in the switching
devices. Using these V0, V7 zero vectors can serve to obtain a regenerative braking effect,
especially when using ACIM.

AN035404-1015

Page 5 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Example 2

To reduce linear switching losses with either V0 or V7, zero vectors can be applied in
sequence; i.e, using V0 as the zero vector in the sequence t1 t2 t0 or using the V7
zero vector in the same sequence. In both cases, each of the three phases in the inverter
does not switch for one-third of the time in a cycle.
However, different combinations of switching sequences have different effects on the
inverter circuit, depending on the size of the bootstrap capacitors used for the high- and
low-side drivers. If the V0 zero vector is used, the bootstrap will still work because the
capacitors can discharge; however, such may not be the case when using the V7 vector as
a zero vector.
The resulting phase waveforms are shown in Figures 6 through 10.

Figure 6. Using V7 as the Null Vectors in Sector 1, 3, 5 and V0 in Sector 2, 4, 6

Figure 7. Using V0 as the Null Vectors in Sectors 1, 3, and 5 and V7 in Sectors 2, 4, and 6

AN035404-1015

Page 6 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 8. Always Using V0 as Zero Vector

Figure 9. Always Using V7 as a Zero Vector

Figure 10. Using Alternate Reverse Switching Modes by Alternating Zeroes for Each Sequence and
Reverse Sequence After Each Zero Vector

Examples for PWM timings using null vectors V0, V7 across the six hexagon sectors are
listed in Table 1.

AN035404-1015

Page 7 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Table 1. PWM Timings for Each of Six Sectors


Sector 1

Sector 2

Sector 3

Sector 4

Sector 5

Sector 6

PhsA = t1 + t2

PhsA = t0 + t1

PhsA = 0

PhsA = t0

PhsA = t2

PhsA = 100%

PhsB = t2

PhsB = 100%

PhsB = t1 + t2

PhsB = t0 + t1

PhsB = 0

PhsB = t0

PhsC = 0

PhsC = t0

PhsC = t2

PhsC = 100%

PhsC = t1 + t2

PhsC = t0 + t1

Application
To apply space vector theory, the Z16FMC microcontrollers PWM module is configured
as three complementary output pairs. Each output pair controls one complementary
source/drain transistor pair in the inverter bridge. The PWM module is configured to insert
a deadband between ON states to prevent leakage that might occur if one transistor in a
pair turns on before the other is fully off.
Each PWM output pair produces a stream of complementary on/off pulses to activate the
corresponding source or drain transistor in the inverter bridge. The voltage of each bridge
output varies with the source/drain pulse duty cycle.
The period of each PWM cycle is configured to be 50 s; the PWM module generates an
interrupt request at the end of each cycle to calculate the PWM timings for of the space
vector modulation signals. These signals are loaded into the three PWM registers for
Phase A, Phase B, and Phase C. Therefore, the primary goal of the ISR is to update the
duty cycle value for each PWM channel, as required, to produce the appropriate AC waveforms at the inverter bridge outputs.
The frequency of the rotating vector is calculated as:
Freq

LUToffset
PWMperiod x LUTsize

In the above equation, the LUToffset value is a 16-bit integer index, of which only the
upper byte is used to select the Look-Up Table (LUT) entries.
The synchronous speed of the rotor can then be calculated as:
Speed = 120 x

Freq
Poles

Utilizing Timer 0, the time period of the rotor is measured in terms of timer ticks. This
information is then used in the PI speed control loop.
MCUclockFreq
TimerTicks =

TimerPrescaler
LUToffset
PWMperiod x LUTsize

AN035404-1015

Page 8 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Equipment Used
The following equipment is used for the setup to demonstrate the space vector modulation
technique. The first four items are included in the MultiMotor Development Kit
(ZMULTIMC100ZCOG).

MultiMotor Development Board (99C1358-0001G)

24V AC/DC power supply

LINIX 3-phase 24VDC, 30W, 3200RPM BLDC motor (45ZWN24-30)

Opto-Isolated UART-to-USB adapter (99C1359-001G

Z16FMC MultiMotor MCU Module (99C1357-001G) Order separately

Opto-Isolated USB SmartCable (99C0968) Order separately

Digital oscilloscope

PC with Internet access and at least two open USB ports

Hardware Setup
Figure 11 illustrates the application hardware connections required to operate the motor
with space vector modulation.

Figure 11. The MultiMotor Development Kit with Z16FMC MCU Module and SmartCable

AN035404-1015

Page 9 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Testing Procedure
Observe the following procedure to test space vector modulation on the Z16FMC MCU
Module.
1. Download and install ZDS II ZNEO 5.0.1 (or newer) on your PC from the Zilog
Store.
2. Download the AN0354-SC01.zip source code file from the Zilog website and unzip it
to an appropriate location on your PC.
3. Connect the hardware as shown in Figure 11.
a. The cables from the Opto-Isolated USB SmartCable and the UART-to-USB
adapter must be connected to two of the PCs USB ports.
b. Download and install the drivers for the SmartCable and the UART-to-USB
adapter, if required.
c. For additional assistance, refer to the MultiMotor Series Development Kit Quick
Start Guide (QS0091).
4. Power up the MultiMotor Series Development Board using the 24 V DC adapter that is
included in the Kit.
5. Using a serial terminal emulation program such as HyperTerminal, TeraTerm, or RealTerm, configure the serial port to 57600-8-N-1-N. A console screen should appear on the
PC which will show the status of the motor and allow changes to the motors operation.
6. Launch ZDS II ZNEO, select Open Project from the File menu, browse to the directory on your PC in which the AN0354-SC01 source code was downloaded to, locate the
AN0354_SC01.zdsproj file, highlight it, and select Open.
7. Ensure that the RUN/STOP switch on the Z16FMC MCU Module is in the STOP
position.
8. In ZDS II, compile and flash the firmware to the Z16FMC MCU Module by selecting
Rebuild All from the Build menu. Next, select Debug Download code, followed
by Debug Go.
9. Set the RUN/STOP switch on the Z16FMC MCU Module to RUN. The motor should
begin turning.
10. In the GUI terminal console, enter the letter U to switch to UART control; a menu similar to the example shown in Figure 12 should appear. As a result, commands can now
be entered using the console to change the motors operation.

AN035404-1015

Page 10 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 12. GUI Terminal Showing the Alternate-Reverse Switching Pattern

11. At the Input Command: prompt, enter the letter A to indicate an alternate-reverse
switching pattern. There will be no apparent change in the motors operation; however, the signals going to the motor will change and can be displayed as shown in Figures 15 through 20, beginning on page 14.
12. While the motor is running, enter the B character at the HyperTerminal prompt to indicate the V0 Zero Only Vector switching pattern, as shown in Figure 13.

AN035404-1015

Page 11 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 13. GUI Terminal Showing the V0 Zero Vector Only Switching Pattern

13. While the motor is running, enter the C character at the HyperTerminal prompt to indicate the V0, V7 Zero Vector switching pattern, as shown in Figure 14.

AN035404-1015

Page 12 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 14. GUI Terminal Showing the "V0, V7 Zero Vector" Switching Pattern

14. You can now add your own application software to the main program to experiment
with additional functions.

Results
In this application, three oscilloscope probes are connected to the Phase A, Phase B, and
Phase C offsets of the MultiMotor Series Development Board to show three different
switching patterns. These scope probes were also connected to BEMF voltage dividers to
monitor the generated BEMF voltages and, ultimately, to view the associated switching
pattern waveforms.
Figure 15 illustrates the alternate-reverse space vector modulation pattern on Phase A,
Phase B, and Phase C.

AN035404-1015

Page 13 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 15. Alternate-reverse Space Vector Modulation Pattern

AN035404-1015

Page 14 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 16 illustrates the V0, V7 switching pattern on Phase A, Phase B, and Phase C.

Figure 16. V0, V7 Space Vector Modulation Pattern

AN035404-1015

Page 15 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 17 illustrates the V7 Zero Vector Only switching pattern on Phase A, Phase B, and
Phase C.

Figure 17. V7 Zero Vector Only Switching Pattern

AN035404-1015

Page 16 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 18 illustrates the alternate-reverse waveform on Phase A, Phase B, and Phase C.

Figure 18. Alternate-Reverse Waveforms

AN035404-1015

Page 17 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 19 illustrates the V0, V7 Zero Vector Only Waveform on Phase A, Phase B, and
Phase C.

Figure 19. V0, V7 Zero Vector Only Waveforms

AN035404-1015

Page 18 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figure 20 illustrates the V7 Zero Vector Only Waveform on Phase A, Phase B, and Phase
C.

Figure 20. V7 Zero Vector Only Waveforms

Closed-Loop Control Performance


To monitor closed-loop speed control performance, the motor speed was set to 2000 RPM
at a nominal operating voltage of 24 V. As this operating voltage was increased and
decreased by 4 V, motor speed was observed to remain constant. To test the PI loop
under load, the motor load was increased, which caused the PI loop to quickly ramp up the
current to maintain the set speed. The PI loop stability was verified by observing the voltage sine wave while loading the running motor, a condition for which the sine wave period
time must be maintained constant in both amplitude and frequency with no jitter. The
closed-loop speed control essentially provides power operation of the motor which
remains constant.

AN035404-1015

Page 19 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Open-Loop Control Performance


To monitor the performance of the speed control function while operating in an open loop,
the motor speed was set to 2000 RPM at a nominal operating voltage of 24 V. As this operating voltage was increased or decreased by 4 V, motor speed was observed to vary
accordingly. The motor load was then increased, which caused the motor current to be
increased while its speed dropped.

Summary
The purpose of this application is to demonstrate the operation of a BLDC- or PMSM-type
machine using the Space Vector Modulation technique. To generate sinusoidal voltages
and currents, a voltage reference vector is rotated 360 degrees within a hexagon. Each of
the six sectors within this hexagon creates unique switching patterns for the space vector
modulation.
Space vector modulation has the advantage of utilizing about fifteen percent more of the
available bus voltage. Formulas discussed in this document have been shown to calculate
the space vector modulation timings and resulting motor frequency. Because the frequency calculations include the PWM period, all space vector sinusoidal wave constructions are executed in the PWM interrupt service routine. The execution time for the sine
wave reconstruction in the PWM service interrupt routine is approximately 6 s. The execution time of the Hall interrupt service routine is approximately 8 s. Both execution
times are based on a 20 MHz external clock.
To maintain synchronization and commutation angle between the reference vector frequency and rotor frequency, the Hall interrupt service routine captures the binary Hall
state upon each interrupt and fetches the corresponding reference angle from a Look-Up
Table (LUT). The High byte of the PWM sine Look-Up Table index is then used to fetch
the next value from the Sine Look-Up Table (in which the LUT index is interpolating).
Any positive or negative offset value to this high byte of the PWM sine look-up table will
accordingly increment or decrement the frequency of rotation of the reference vector.
Space vector modulation has the advantage of commutating a BLDC or PMSM motor
with less acoustical and electrical noise, because the sine current through the windings has
no steep current transitions. The effects of total harmonic distortions and linear switching
power losses can be further manipulated by applying different space vector modulation
switching schemes. Such manipulations allow for higher life expectancy of ripple current
capacitors and ball bearings because the sinusoidal commutation approach causes virtually
no torque or current ripple in a PMSM or BLDC motor. In addition to electrical and acoustical noise reduction, the PWM sine approach also increases the efficiency of a BLDC-/
PMSM-type motor due to its fifteen percent higher bus voltage utilization. The program
uses unsigned integer-type variables only, to avoid additional execution times.
The example application and techniques described in this document should prove helpful
for anyone who intends to develop motor control applications based on the Z16FMC
Series family of microcontrollers.

AN035404-1015

Page 20 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Appendix D. References
Documents associated with the Z16FMC Series of products are listed below. Each of these
documents can be obtained from the Zilog website by clicking the link associated with its
document number where indicated.

ZNEO CPU User Manual (UM0188)

Z16FMC Series Motor Control Product Specification (PS0287)

MultiMotor Series Development Kit Quick Start Guide (QS0091)

MultiMotor Series Development Kit User Manual (UM0262)

MultiMotor Control with Parameter Monitoring Using the Z16FMC MCU Application
Note (AN0343)

3-Phase Sensorless Brushless DC Motor Control Application Note (AN0353)

Hall Sensor Sinusoidal PWM Modulation Brushless DC Motor Control Application


Note (AN0355)

3-Phase Hall-Sensor Brushless DC Motor Control Application Note (AN0356)

Implementing a Data Logger with Spansion SPI Flash Application Note (AN0360)

The following external documents offer sound fundamentals for understanding motor control concepts.

Motor Control Electronics Handbook, Richard Valentine; McGraw Hill.

Short Course on Electric Drives: Understanding Basics to Advanced Control & Encoder-Less Operation, Ned Mohan, University of Minnesota, 2005: a recording of the Internet-based short course presented on May 12, 2005 by Professor Mohan and edited
to fit on a DVD.

Lehrstuhl fuer Electrische Antriebssysteme und Leistungselektronik, Prof. Dr. Ing.


Ralph Kennel, Technische Universitaet Muenchen.

Electric Machinery, Peter F. Ryff.

AN035404-1015

Page 21 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Appendix E. Schematic Diagrams


Figures 21 and 22 present the schematic diagrams for the Z16FMC MCU Module.

MISO
PD3
PD4
PD5
MOSI

PA1
J1

VCC_3v3

FAULTY

R2

PA4_RXD0
PA4_RXD0
PA5_TXD0

PA1

FAULT0

10K

PA5_TXD0
J21
J2

R1

VCC_5VM
10K

PA0
PD2_PWMH2
SS-RESET

GND
PE2
PE1
PE0

PE2
PE1
PE0

PD1_PWML1
PD0_PWMH1
XOUT
XIN

49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64

PA0/T0IN/T0OUT
PD2/PWM2H
PC2/SS
RESET
VDD1
PE4
PE3
VSS3
PE2
PE1
PE0
VSS1
PD1/PWM1L
PD0/PWM1H
XOUT
XIN

Y1

C24
680pF

ANA4
Vbus_M
ENABLE
HSA
HSB
HSC

1
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17

PD3
PD4
PD5

PD6
SCK
PD7_PWML2
GND

A_L
A_H
BEMF_A
B_H
B_L
BEMF_B
C_H
C_L
BEMF_C

2
4
6
8
10
12
14
16
18
20
22
24
26
28
30

PC7_PWML0
PC6_PWMH0
ANA0
PD0_PWMH1
PD1_PWML1
ANA1
PD2_PWMH2
PD7_PWML2
ANA2
CS1+
CS1CS2+
CS2TEMP

R3

SSPC7_PWML0
PC6_PWMH0
DBG
PC1_TOUT_COMPOUT
PC0_T1IN_CINN

MISO

VCC_3v3

3
4

R4

0 ohm

CSZ+

U2

CS2+

VCC_3v3

CS

VCC

SO

HOLD

WP

SCK

GND

SI

0 ohm
R6

CSZ-

SCK

MOSI

R5

CS2-

0 ohm
0 ohm

J3
S25FL032P

ANA6

CS1+

ANA7

CS1CS2+

CSZ+
CSZANA0
ANA1
ANA4

XIN
20MHZ
C28

C27
22pF

22pF

VCC_3v3

Do Not Install.

C4

0.01uF

VREF

J20

R10

R26

10K
VCC_3v3
ENABLE
PE7

1
2
3

PC1_TOUT_COMPOUT
PC0_T1IN_CINN

0.01uF

PLACE J3 - J12 WHERE THE ROUTING ALLOWS.


PB3_ANA3_OPOUT

1
C3

R7

PB6_ANA6_OPINP

10uF

VREF
100PF

R9 12.4K
PH3_ANA11_CPINP
VBUS_M
0.1uF

VCC_3v3
R16

10K

R17

10K

R12
R14

49.9K

C8

12pF

PD7_PWML2
ANA2
HSA
HSB
HSC
PD6

7.87K
R15

10K

PB3_ANA3_OPOUT

C7

PC7_PWML0
PC6_PWMH0
ANA0
BEMF A
PD0_PWMH1
PD1_PWML1
ANA1
BEMF B
ANA4
PD2_PWMH2

ENABLE
R11
5K

PB7_ANA7_OPINN

1000pF/1nF

1
1
1
1

CS1J5
CS2+
J6
CS2J8
PH2
J9
PC1
J10
PC0
J11
PH3
J12
PB3
J13

C5

3.3K

1K

J4

10K

CS1+

C6

R13

TEMP

PH3_ANA11_CPINP
C2

R8
0 ohm

IF VCC_3v3 is used
remove R8 and
install R10 = 3.3K

PH2_ANA10

1
1

J7

ON
VBUS CTRL
MCU

PB5_ANA5
ANA5
PB6_ANA6_OPINP
ANA6
PB7_ANA7_OPINN
ANA7
PB3_ANA3_OPOUT
ANA2
PH2_ANA10
TEMP
PH3_ANA11_CPINP
VREF
AGND

Y2

VREF

CS1+

1
1

CS2-

XOUT

VCC_3v3

HDR/PIN 2x15
VCC_3v3

PE7

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

20MHZ

C25
680pF

J22

PA7/SDA
PD6/CTS1
PC3/SCK
PD7/PWM2L
VSS4
PE5
PE6
PE7
VDD3
PG3
VDD2
PC7/T2OUT/PWM0L
PC6/T2IN/T2OUT/PWM0H
DBG
PC1/T1OUT/COMPOUT
PC0/T1IN/T1OUT/CINN

LQFP

C26
680pF

Z16F2810

PA1/T0OUT
PA2/DE0/FAULTY
PA3/CTS0/FAULT0
VSS6
VDD5
PF7
PC5/MISO
PD3/DE1
PD4/RXD1
PD5/TXD1
PC4/MOSI
VDD4
VSS5
PA4/RXD0
PA5/TXD0
PA6/SCL

PA0

U1

48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33

SW1
B3U-1000P

VSS2
AVDD
PH0/ANA8
PH1/ANA9
PB0/ANA0/T0IN0
PB1/ANA1/T0IN1
PB4/ANA4
PB5/ANA5
PB6/ANA6/OPINP/CINN
PB7/ANA7/OPINN
PB3/ANA3/OPOUT
PB2/ANA2/T0IN2
PH2/ANA10
PH3/ANA11/CPINP
VREF
AVSS

1
3
5
7
9
11
13
15
17
19
21
23
25
27
29

CS1-

BEMF C
PD3
PD4
PD5

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
HDR/PIN 1x16

-RESET
VCC_3v3
J14

1
3
5

DBG
INTERFACE
2
4
6

6-CKT R/A HOUSING

C9

C10

C11

C12

C13

C14

C15

0.01uF

0.01uF

0.01uF

0.01uF

0.01uF

0.01uF

0.01uF 0.01uF
GND

C16

C17

C18

C19

0.01uF

0.01uF

0.01uF

DBG
SW2
B3U-1000P

-RESET

Figure 21. Space Vector Modulation Schematics, #1 of 4


AN035404-1015

Page 22 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

1
2
3

J15

VCC_5V
J16

VCC_5V
C21

VCC_5VM

1
2
3

C20
4.7uF
0.1uF

VCC_3v3
VCC_3v3

D1

J17
PE0

U3

1
3

2
2
PMEG3020

Vin

Vout

GND

C22

Enable

R19
330

NC

C23

NCP551SN33T1G

1
2
3

VCC_3v3

HDR/PIN 1x3

330
R20

D3
PE1

4.7uF

0.1uF, 50V

2
RED

2
YELL

VCC_5VL

R18

D2

D4
GREEN

PE2

R21

2
GREEN

330

D5

3.3 OK

330
R22
100K
R24

DIRECTION

PA0

1
2
3

3
100 ohm

HDR/PIN 1x3
J18

R23
100K

SW3

EG1218
SW4

VCC_5V

R25
J19

PA4_RXD0
PA5_TXD0

1
2
3
4
5
6

1
2

PA1

3
100 ohm

EG1218

STOP/RUN

1x6 RT-ANGL

Figure 22. Space Vector Modulation Schematics, #2 of 4

AN035404-1015

Page 23 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Figures 23 and 24 present the schematic diagrams for the MultiMotor Main Board.

VCC_12V

VBUS_B

D1

C1

GND

HS
LO

Q1

GA_H

C2

Q2

GB_H

GC_H

Q3

GA_H
0.1uF

Phase_A

IXTY64N055T

R4
150K

GA_L

R6
150K

IXTY64N055T

R5
150K

IXTY64N055T

R3

MIC4101YM

22.1 ohm

HO
LI

R2

HB

2
4

2
4

HI

A_L

2.2 ohm

R1

A_H

VCC

U1

2
4

BAV19WS
0.1uF

22.1 ohm
Phase_C
+ C3
220uF, 50V
Phase_B
D2

BAV19WS
C5

HS

GND

LI

LO

C6

C7

C8

0.1uF, 50V

0.1uF, 50V

0.1uF, 50V

R8
150K

GB_H
0.1uF

Phase_B

GB_L
R10

MIC4101YM

22.1 ohm

Q4

2
4

R9

Q5

Q6

22.1 ohm
GA_L

1
R11
150K

GB_L

GC_L

R12
150K

IXTY64N055T

1
R13
150K

IXTY64N055T

HO
B_L

2
4

HI

HB

2
4

B_H

VCC

0.1uF

Phase_A

U2

C4

2.2 ohm

R7

IXTY64N055T

D3

2
U3

HI

HB
HO

LI

GND

C_L

Vbus_M
2.2 ohm

R14

R15

10K
CS1+

VCC

0.1uF
C_H

BAV19WS

C9

HS
LO

2
3
4

R17
10K

0.1uF

1
2
3

Phase_A
Phase_B
Phase_C

R18
0.100 ohm, 2W

Phase_C

MIC4101YM

J1

C10
R16 22.1 ohm
GC_H

GC_L

3-POS

CS1VCC_3v3

R19
22.1 ohm

R20

10K

J3

SH1

ENABLE

Vbus_M
ENABLE

ANA4
PE7

HSA

PD3
PD4
PD5

HSC

2
4
6
8
10
12
14
16
18
20
22
24
26
28
30

PC7_PWML0
PC6_PWMH0
PD0_PWMH1
PD1_PWML1
PD2_PWMH2
PD7_PWML2

A_L
A_H
BEMF_A
B_H
B_L
BEMF_B
C_H
C_L
BEMF_C
CS1+
CS1CS2+
CS2TEMP

J16 SETTINGS:
1-2 AC MOTOR
2-3 BLDC MOTOR

HSA
HSB
HSC

shunt

1
2
3
4
5

HSB

5-POS

PD4

R21
10K

1
2

BAS16V

R22
10K

J6
Phase_A
Phase_B
Phase_C

VCC_3v3

BEMF_B

R29
10K

R27
10K

R26
150K

BEMF_C

R30
10K

J5

1
2

D4

Q7
MMBT3904

2 POS

3
10K

R28
100 ohm
R31
10K

TEMP
BEMF_A

C11
0.1uf

R23

FOR USE
WITH AC MOTOR

R25
150K

VCC_3v3

HDR/PIN 2x15
R24
150K

VCC_5VM

1
3
5
7
9
11
13
15
17
19
21
23
25
27
29

1
2
3

J4

J2

R32
10K

C12
0.1uf

Figure 23. Space Vector Modulation Schematics, #3 of 4

AN035404-1015

Page 24 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

J7
F1

1
2

EXTERNAL VBUS
UP TO 48VDC

FUSE/250V/2A

2 POS

VBUS

FH1
J9

SH2

SHUNT POSITION
1-2 EXTERNAL VBUS
2-3 INTERNAL VBUS

1
1
2
3

shunt

J8

1
2
3

250V/5x20

holder

HDR/PIN 1x3
HS2
HS1
J10

3
3

TO-220

IN

+ C13
10uF

OUT

MIC29150-5

+ C15
10uF

2
2
J13

1
2
3

+ C14
10uF
50V

C16

USE HEATSINK

PJ-003A

5V

OUT

MIC29150-12

3
2

IN

D5
1N4007-T

1
2
3

U5

GND

P1

J12

VCC_5VM

U4

GND

12V

VCC_12V

VCC_24V

1
2
3

24VDC

1
2
3

TO-220

J11

C17
0.1uF

0.1uF

NEED to change C25 to 50V Tantalum

GND
VCC_12V
VBUS
RL1

D6
BAS16

GND

1
5
2

VBUS_B

JS1A-12V

1
2
3

J14

R33

1
2K

Q8
MMBT3904

ENABLE

Figure 24. Space Vector Modulation Schematics, #4 of 4

AN035404-1015

Page 25 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Appendix F. Flow Charts


Figure 25 presents the typical flow of the space vector control routine.

Figure 25. Space Vector Modulation Flow

AN035404-1015

Page 26 of 27

Space Vector Modulation of a 3-Phase BLDC Motor with the Z16FMC MCU
MultiMotor Series Application Note

Customer Support
To share comments, get your technical questions answered, or report issues you may be
experiencing with our products, please visit Zilogs Technical Support page at
http://support.zilog.com.
To learn more about this product, find additional documentation, or to discover other facets about Zilog product offerings, please visit the Zilog Knowledge Base at http://
zilog.com/kb or consider participating in the Zilog Forum at http://zilog.com/forum.
This publication is subject to replacement by a later edition. To determine whether a later
edition exists, please visit the Zilog website at http://www.zilog.com.

Warning: DO NOT USE THIS PRODUCT IN LIFE SUPPORT SYSTEMS.

LIFE SUPPORT POLICY


ZILOGS PRODUCTS ARE NOT AUTHORIZED FOR USE AS CRITICAL COMPONENTS IN LIFE
SUPPORT DEVICES OR SYSTEMS WITHOUT THE EXPRESS PRIOR WRITTEN APPROVAL OF
THE PRESIDENT AND GENERAL COUNSEL OF ZILOG CORPORATION.
As used herein
Life support devices or systems are devices which (a) are intended for surgical implant into the body, or (b)
support or sustain life and whose failure to perform when properly used in accordance with instructions for
use provided in the labeling can be reasonably expected to result in a significant injury to the user. A
critical component is any component in a life support device or system whose failure to perform can be
reasonably expected to cause the failure of the life support device or system or to affect its safety or
effectiveness.
Document Disclaimer
2015 Zilog, Inc. All rights reserved. Information in this publication concerning the devices, applications,
or technology described is intended to suggest possible uses and may be superseded. ZILOG, INC. DOES
NOT ASSUME LIABILITY FOR OR PROVIDE A REPRESENTATION OF ACCURACY OF THE
INFORMATION, DEVICES, OR TECHNOLOGY DESCRIBED IN THIS DOCUMENT. ZILOG ALSO
DOES NOT ASSUME LIABILITY FOR INTELLECTUAL PROPERTY INFRINGEMENT RELATED
IN ANY MANNER TO USE OF INFORMATION, DEVICES, OR TECHNOLOGY DESCRIBED
HEREIN OR OTHERWISE. The information contained within this document has been verified according
to the general principles of electrical and mechanical engineering.
ZNEO and Z16FMC are trademarks or registered trademarks of Zilog, Inc. All other product or service
names are the property of their respective owners.

AN035404-1015

Page 27 of 27

Вам также может понравиться