Anda di halaman 1dari 26

AN955

VF Control of 3-Phase Induction Motor


Using Space Vector Modulation

Author: Rakesh Parekh SPACE VECTOR MODULATION (SVM)


Microchip Technology Inc. The SVM is a sophisticated, averaging algorithm which
gives 15% more voltage output compared to the Sine
INTRODUCTION PWM algorithm, thereby increasing the VDC utilization.
It also minimizes the THD as well as switching loss.
VF control using the Sine PWM algorithm is a popular Like Sine PWM, the SVM is also a scalar control. The
algorithm for AC induction motor control; however, this direct controlled variables are the motor voltage and
algorithm has certain drawbacks which affect the the motor frequency.
overall system efficiency. A more advanced switching The 3-phase line-to-neutral sine waves required for
algorithm, like Space Vector Modulation (SVM), over- driving the 3-phase AC induction motor can be
comes the drawbacks of the Sine PWM algorithm and represented as 120 phase-shifted vectors (VRN, VYN,
increases the overall system efficiency. and VBN) in space, as shown in Figure 1.
This application note includes the description of the
SVM theory and its advantages over the Sine PWM. It FIGURE 1: 3-PHASE VOLTAGE
also discusses the SVM digital implementation for VF VECTORS AND THE
control using Microchips PIC18FXX31 8-bit micro- RESULTANT SPACE
controllers. See the References section for more
REFERENCE VECTOR
information on AC induction motors and their control.
VYN
SINE PWM
Traditionally, VF control using the Sine PWM algorithm
is implemented using a Voltage Source Inverter (VSI)
controlled by a programmable device (microcontroller
or DSP). Its popularity is mainly due to its easy 120
implementation and minimum online computational
VS
requirement. However, this algorithm has the following
drawbacks: 120
VRN
The Sine PWM algorithm is unable to fully utilize
120
the available DC bus supply voltage (VDC) to the
VSI. The generated line-to-line voltage is less
than 90% of VDC in the linear operating region.
See Appendix B: Sine PWM for more
information.
This algorithm gives more Total Harmonic VBN
Distortion (THD).
Often, to reduce run-time processing load for slow
For a balanced 3-phase system, these vectors sum to
controllers, three 120 phase-shifted sine tables
zero. Therefore, they can be expressed as a single
are created in the controller memory. This is an
space reference vector (VS). By controlling the
inefficient usage of the controller memory.
amplitude and the frequency of VS, the motor voltage
There is no degree of freedom in implementation. and the motor frequency can be controlled. Hence, this
This algorithm does not facilitate more advanced algorithm is known as the SVM.
vector control implementation.

2005 Microchip Technology Inc. DS00955A-page 1


AN955
A typical block diagram of a VSI controlled by the States 1 through 6 are called the active states, as the
PIC18FXX31, which implements SVM, is shown in energy is supplied from the supply to the motor during
Figure 2. Point 0 is the midpoint of VDC (sometimes these states. States 0 and 7 are called the inactive
called the Virtual Neutral Point). For safe operation of states, as no energy is supplied from the supply to the
the VSI, whenever one switch of a half bridge (Q1) is motor during these states. Each state can be
on, the other switch of the same half bridge (Q0) should represented as a voltage vector in space. Figure 3
be off and vice versa. This gives rise to eight distinct shows the space vector representation of all the
switching states of the VSI. Table 1 lists all the possible possible switching states.
VSI switching states and respective line-to-neutral
voltages.

FIGURE 2: BLOCK DIAGRAM OF PICmicro MCU-CONTROLLED VSI

Q1 Q3 Q5
PIC18FXX31 3-Phase ACIM
VDC/2 PWM0 (Q0)
PWM1 (Q1) B
Y
PWM2 (Q2) R N
O PWM3 (Q3)
VDC
PWM4 (Q4)
Rectifier
115/230 VAC PWM5 (Q5)
VDC/2
50/60 Hz Q0 Q2 Q4

TABLE 1: VSI SWITCHING STATES AND RESPECTIVE LINE TO NEUTRAL VOLTAGES


Switching State On Switches VRN VYN VBN Space Voltage Vector

0 Q0, Q2, Q4 0 0 0 V0
1 Q1, Q2, Q4 2/3 VDC -1/3 VDC -1/3 VDC V1

2 Q1, Q3, Q4 1/3 VDC 1/3 VDC -2/3 VDC V2

3 Q0, Q3, Q4 -1/3 VDC 2/3 VDC -1/3 VDC V3

4 Q0, Q3, Q5 -2/3 VDC 1/3 VDC 1/3 VDC V4

5 Q0, Q2, Q5 -1/3 VDC -1/3 VDC 2/3 VDC V5

6 Q1, Q2, Q5 1/3 VDC -2/3 VDC 1/3 VDC V6

7 Q1, Q3, Q5 0 0 0 V7

DS00955A-page 2 2005 Microchip Technology Inc.


AN955
As seen in Figure 3, the entire space is distinctively this algorithm generates maximum THD. Also, the line-
divided into six equal sized sectors of 60. Each sector to-line and the line-to-neutral waveforms are not sine
is bounded by two active vectors. V0 and V7 are the waves.
voltage vectors with zero amplitude and are located at
the hexagon origin. SVM Switching Rules
VS is the resultant output due to the switching states of
To implement the SVM algorithm, the following switching
the VSI. For digital implementation of SVM, the VSI is
rules are implemented:
switched at a very high frequency (FPWM). This fre-
quency is high enough (>20 kHz) so as not to generate The trajectory of VS should be a circle.
audible noise due to switching. FPWM decides the Only one switching per state transition.
sample time TS for VS, where TS = 1/FPWM. There are Not more than three switchings in one TS.
various switching ways to generate VS from V0, V1...V7. The final state of one sample must be the initial
Mathematically, it can be represented as shown in state of the next sample.
Equation 1. Variables T0, T1T7 in Equation 1 are on
time for the corresponding VSI states and TS is the These rules help in limiting the number of switching
sample time. actions and hence, there is a reduction in the switching
losses. Also, they maintain symmetry in switching
When the VSI follows the switching state pattern, waveforms at the VSI output to achieve the lower THD.
1-2-3-4-5-6-1-2..., it is called the Six-Step PWM algo- The SVM algorithm implementation, using these
rithm. This algorithm is easier to implement compared switching rules, is called Conventional SVM.
to all the other control algorithms. It can generate the
line-to-line fundamental voltage more than the VDC. But

FIGURE 3: SPACE VECTOR HEXAGON

(Q0, Q3, Q4) V3 Sector 2


V2 (Q1, Q3, Q4)

VS Sector 1
Sector 3

TB
V7 0
(Q0, Q3, Q5) V4 V1 (Q1, Q2, Q4)
TA

V0

Sector 6
Sector 4

(Q0, Q2, Q5) V5 Sector 5 V6 (Q1, Q2, Q5)

EQUATION 1:

T0 T1 T2 T3 T4 T5 T6 T7
VS = V0 + V1 + V2 + V3 + V4 + V5 + V6 + V7
TS TS TS TS TS TS TS TS

TS = T0 + T1 + T2 + T3 + T4 + T5 + T6 + T7

2005 Microchip Technology Inc. DS00955A-page 3


AN955
Different SVM Algorithms Equation 2 means that the VSI is in active state 1 for TA
time and it is in active state 2 for TB time. For the
There are various ways to implement the SVM, such as: remaining time of TS, no voltage is applied. This can be
Conventional SVM achieved by applying inactive state 0 (or 7) for the
Basic Bus Clamping SVM remaining time T0 (or T7).
Boundary Sampling SVM
EQUATION 3:
Asymmetric Zero-Changing SVM, etc.
All SVM algorithms have the same on time for active as TS = TA + TB + T0/7
well as inactive vectors. They differ mainly in the imple-
mentation of the inactive vectors, such as T0 and/or T7
distribution within TS. Discussion of the various other The time intervals, TA, TB and T0/7, have to be calcu-
SVM algorithms is beyond the scope of this application lated such that the average volt seconds produced by
note. the vectors, V1, V2 and V0/7 along the X and Y axes, are
the same as those produced by the desired reference
space vector VS.
Time Calculation to Generate VS
The modulation index or amplitude ratio is defined as:
Let us take an example where VS is in Sector 1 at a
vector angle (), as shown in Figure 4. VS
m=
VDC
FIGURE 4: VECTOR VS IN SECTOR 1
where |VS| is the amplitude or the length of VS.
Y Axis Resolving VS along the X and Y axes, we get:

V2 EQUATION 4:

(VDC TA) + (VDC cos/3 TB) = VS cos TS


and
VS
VDC sin/3 TB = VS sin TS

Solving for TA and TB, we get:


TB
/3
X Axis
V0/7 V1 EQUATION 5:
TA TA 2 m sin
VDC = 3
TS 3
TB 2 m sin
=
It is assumed that during time TS, VS remains steady. TS 3
For implementing the conventional SVM using SVM
switching rules, VS is split as shown in Equation 2. T0/7 can be found from Equation 3. For better THD, T0
(or T7) is split into two and then applied at the beginning
EQUATION 2: and at the end of the TS. The typical VSI switching
waveforms in Sector 1, as defined by Equation 2,
TA TB T0/7 Equation 3 and the switching rules for the conventional
VS = V1 + V2 + V0/7 SVM using center aligned PWM, are as given in
TS TS TS
Figure 5.

DS00955A-page 4 2005 Microchip Technology Inc.


AN955
FIGURE 5: TYPICAL VSI SWITCHING WAVEFORMS IN SECTOR 1
TS TS TS TS

T0/2 TA TB T7/2 T7/2 TB TA T0/2 T0/2 TA TB T7/2 T7/2 TB TA T0/2

Q1

Q0

Q3

Q2

Q5

Q4

Axes of Symmetry

We can observe the different axes of symmetry in all By solving Equation 2, Equation 5 and Equation 7, we
the waveforms as shown in Figure 5. These symme- get:
tries are mainly responsible for having lower THD in
SVM compared to Sine PWM in the linear operating EQUATION 8:
region.
Maximum Line-to-Line Voltage
From Figure 3, it is clear that in the linear operating
2
region, the maximum line-to-line voltage amplitude can = mmax VDC
be achieved when VS is rotated along the largest 3
inscribed circle in the space vector hexagon. In 2 3
= VDC = VDC
mathematical terms, this is equivalent to: 3 2

EQUATION 6: Equation 8 shows that it is possible to get line-to-line


voltage amplitude as high as VDC using the SVM algo-
Radius of Largest Inscribed Circle rithm in the linear operating range. This is the main
mmax =
VDC advantage of the SVM algorithm when compared to the
Sine PWM algorithm. Due to higher line-to-line voltage
amplitude, the torque generated by the motor is higher.
From Figure 4 and Equation 6, it is also clear that:
This results in better dynamic response of the motor.
EQUATION 7:

VDC cos/6 3
mmax = = cos/6 =
VDC 2

2005 Microchip Technology Inc. DS00955A-page 5


AN955
The reason for the higher line-to-line voltage in SVM harmonic component superimposed on the funda-
can be explained with the help of Figure 6. It shows the mental component. The addition of this harmonic
phase voltage (line-to-virtual neutral point) generated component is due to the effective usage of inactive
by Sine PWM and SVM. For clarity, only two phase states which is not possible in the Sine PWM. With
voltages (RO and YO) and their resultant line-to-line 120 phase shift between them, the third harmonic
voltage (RY) are shown in each figure. component is cancelled out in the resultant line-to-line
The Sine PWM generated phase voltages are sine voltage in such a way that the resultant line-to-line
waves. With 120 phase shift between them, the result- voltage is boosted to VDC (100%). Thus, SVM
ant line-to-line voltage is approximately 86.6% of VDC. generates line-to-line voltage with higher amplitude
But, the SVM generated phase voltages have a third (about 15% more) compared to Sine PWM.

FIGURE 6: GENERATED PHASE VOLTAGES AND CORRESPONDING LINE-TO-LINE


VOLTAGE IN (A) SINE PWM AND (B) SVM

A) Sine PWM Generated Waveforms

B) SVM Generated Waveforms

DS00955A-page 6 2005 Microchip Technology Inc.


AN955
Advantages of SVM HARDWARE USED FOR SVM
The advantages of SVM vis-a-vis Sine PWM are as IMPLEMENTATION
follows: A PICDEM MC Development Board is used to
Line-to-line voltage amplitude can be as high as develop and test the SVM control firmware. The
VDC. Thus, 100% VDC utilization is possible in the PICDEM MC has a single-phase diode bridge rectifier,
linear operating region. converting AC input to DC and a power capacitor bank
In the linear operating range, modulation index that keeps the DC bus stable. A 3-phase IGBT-based
range is 0.0 to 1.0 in the Sine PWM; whereas in inverter bridge is used to control the output voltage
the SVM, it is 0 to 0.866. Line-to-line voltage from the DC bus. See Appendix A: PICDEM MC
amplitude is 15% more in the SVM with the Board Technical Information for schematics of the
modulation index = 0.866, compared to the Sine PICDEM MC Development Board.
PWM with the modulation index = 1. Hence, it has The control circuit and power circuits are optically
the better usage of the modulation index depth. isolated with respect to each other. An on-board flyback
With the increased output voltage, the user can power supply generates +5 VD, with respect to the dig-
design the motor control system with reduced ital ground used for powering up the control circuit,
current rating, keeping the horsepower rating the including the PICmicro device. The +5 VA and +15 VA
same. The reduced current helps to reduce are generated with respect to the power ground
inherent conduction loss of the VSI. (negative of DC bus). The feedback interface circuit is
Only one reference space vector is controlled to powered by the +5 VA, while the +15 VA supplies
generate 3-phase sine waves. power to the IGBT drivers located inside the Integrated
Implementation of the switching rules gives less Power Module (IPM).
THD and less switching loss. With optical isolation between the power and the control
Flexibility to select inactive states and their circuits, the programming and debugging tools can be
distribution in switching time periods gives two plugged into the development board when main power
degrees of freedom. is connected to the board. The board communicates
As the reference space vector is a with a host PC over a serial port configured with an on-
two-dimensional quantity, it is feasible to chip Enhanced USART (EUSART). The on-board user
implement more advanced vector control using interface has two toggle switches, a potentiometer and
SVM. four LEDs for indication.
In this application note, switch SW1 is used to toggle
between the motor Run and Stop and SW2 is used to
toggle the motor rotation direction. A potentiometer is
used to set the speed reference as well as the modula-
tion index. The LEDs are used for indication of different
states of control.

2005 Microchip Technology Inc. DS00955A-page 7


AN955
DIGITAL IMPLEMENTATION Looking at the definition of DEGREE_CONSTANT, one will
notice that its value, without any multiplication factor, will
To implement the SVM in the digital domain, the power result in a fractional number less than unity for
control PWM module of the PIC18FXX31 is utilized. FPWM > 1.536 kHz. Almost all motor control applications
The module provides up to 8 PWM output channels have FPWM much higher than 1.536 kHz. Handling a
with the dedicated PWM timer as its time base. The fractional number with any 8-bit microcontroller will
module has the capability to generate center aligned require more CPU processing time. This requirement is
PWM with 14-bit resolution. This is the most important difficult to meet in the SVM implementation, where VS is
feature required for the SVM implementation. updated at every TPWM (= 1/FPWM) time interval. At the
VS needs to be created and rotated in space for SVM same time, the multiplication factor value needs to be
implementation. To approximate the position of VS, such that its post-calculation adjustment requires the
Equation 3, Equation 5 and the previously mentioned least possible microcontroller processing time.
switching rules are utilized. Looking at Equation 5, one It is proposed that the multiplication factor be 256. This
will notice that in the same sector, TA and TB are will result in a 16-bit value for the vector update step
inverted with respect to each other. Hence, only one size and hence, 16-bit vector angle pointer
look-up table with time entries is needed. A look-up (VECTOR_ANGLE<MSB:LSB>). As an adjustment for
table with TB entries (TABLE_TB_COUNT<MSB:LSB>) the multiplication factor, VECTOR_ANGLE_LSB is
is created. The size of the look-up table is decided by discarded. VECTOR_ANGLE_MSB is used as the table
the angle resolution used. The total sector angle is 60 pointer for reading the value of TA and TB from the look-
(/3 radians). To get a good resolution with an 8-bit up table. Whenever a carry is generated due to the
microcontroller like the PIC18FXX31, the entire sector Equation 9 addition, it physically means that the VS has
is divided into 256 points, giving an angle resolution of advanced to the next sector and hence, the sector
0.234. The center aligned PWM is used for better THD count (SECTOR_NO) is incremented by one. The motor
(FPWM = 1/2 * TS). voltage is decided by the amplitude of VS (modulation
The required motor speed in Hz is decided by the rate index m). To implement the same digitally, values of TA
at which the VS is rotated. For this purpose, it is and TB are multiplied by m. Based on TS, TA and TB, the
necessary to find both the vector angle and the vector duty cycle values for all 3 phases (R, Y and B) are
update step size. To speed up the online calculations, calculated as shown in Table 2.
the constant, DEGREE_CONSTANT, is defined; this is Equations shown in Table 2 for Sector 1 are evident in
then used to calculate the vector update step size and Figure 5. Similarly, equations for other sectors are
the vector angle as shown in Equation 9. derived with the switching rule constraints.

EQUATION 9:

360 256 Multiplication Factor


DEGREE_CONSTANT =
60 FPWM

Vector Update Step Size = DEGREE_CONSTANT Required Motor Speed (Hz)

Vector Angle = Vector Angle + Vector Update Step Size

TABLE 2: DUTY CYCLE VALUES FOR THE THREE MOTOR PHASES BASED ON VS LOCATION
Sector No. Phase R Duty Cycle Phase Y Duty Cycle Phase B Duty Cycle
1 T0/2 T0/2 + TA TS T0/2
2 T0/2 + TB T0/2 TS T0/2
3 TS T0/2 T0/2 T0/2 + TA
4 TS T0/2 T0/2 + TB T0/2
5 T0/2 + TA TS T0/2 T0/2
6 T0/2 TS T0/2 T0/2 + TB

DS00955A-page 8 2005 Microchip Technology Inc.


AN955
SVM CONTROL FIRMWARE a preprogrammed count (MAX_TEMP_FILT_COUNT),
then the motor is stopped and the overtemperature
The firmware is developed using PIC18F4431 and it Fault is indicated by the blinking LED3.
implements the VF control using the SVM algorithm.
Whenever the motor is stopped due to any of the above
Apart from the basic SVM control, the firmware incor-
mentioned Faults, it can be restarted by removing the
porates various control and protection routines, such
Fault condition and then by pressing either SW1 or
as overcurrent protection, overvoltage protection, over-
SW2.
temperature protection, acceleration and deceleration
routine and rotation direction reversal.
Acceleration and Deceleration
To implement the VF control, an analog potentiometer
(R44) connected to RA1/AN1 is read. Using the The RAMP_SPEED routine is called every 1 second to
CONVERT_MANUAL_COUNT_TO_HZ routine, the potenti- implement the acceleration and deceleration feature.
ometer setting is converted to the required motor speed Both the acceleration and deceleration rates are user-
in Hz. The potentiometer setting is also interpreted as selectable and are given in the form of Hz/s.The
the modulation index, m. To get the required motor acceleration and deceleration features are active only
speed, the vector update step size is calculated by when the motor is in run condition.
calling the CALCULATE_UPDATE_STEP_SIZE routine.
As described in the previous section, TA and TB values
SOURCE CODE FILES
are scaled with m.
All protection routines (overcurrent, overvoltage and The entire source code can be downloaded from
overtemperature) are checked at a fixed time interval Microchips web site, www.microchip.com. It includes
(presently, 5 ms set by overflow rate of the Timer1). the following files:
The acceleration and deceleration routine is called at ...\SVM\ACSVM_OL.asm
one-second intervals.
This file is located in the source code folder (Main
Routine section).
Overcurrent Protection
...\SVM\ACSVM_OL_routines.asm
A shunt resistor (R110) in the negative DC bus gives a This file is located in the source code folder (Control
voltage corresponding to the current flowing into the Routine section).
motor winding. This voltage is amplified and compared
with a reference. The current comparison setting allows ...\SVM\TIME_TABLE.asm
a current up to 6.3A. If the current exceeds 6.3A, the This file is located in the source code folder (Look-up
FAULTA pin goes low, indicating the overcurrent Fault. Table for TB).
The firmware is configured in the Cycle-by-Cycle Fault
...\SVM\InterfaceACSVMConstant.inc
mode. When the Fault persists for more than a pre-
programmed count (MAX_FLTA_COUNT) in the fixed This file is located in the source code folder (System
time interval, then the motor is stopped and the Fault is Parameters and User-Defined Constants section).
indicated by the blinking LED1. ...\SVM\InterfaceACSVMVar.inc
This file is located in the source code folder
Overvoltage Protection (User-Defined Variable section).
The DC bus voltage is attenuated using potential divid- An Excel file (PARAMETERS.xls) is included in the
ers and compared with a fixed reference. If the jumper source code folder which has two worksheets. The
JP5 is open, the reference is set for 200V on the DC TB_TABLE worksheet calculates TB entries based on
bus. If jumper JP5 is shorted, the reference is set for the main oscillator frequency (FOSC), FPWM, the
400V. The FAULTB pin is used to monitor the over- required dead time, etc. The LIST worksheet creates a
voltage Fault. If the overvoltage Fault persists for more table to be stored in the data EEPROM of the
than a preprogrammed count (MAX_FLTB_COUNT) in PIC18FXX31 device. This table contains all user-
the fixed time interval, then the motor is stopped and selectable compile-time parameters, such as the motor
the Fault is indicated by the blinking LED2. rated speed in Hz, FPWM in kHz, the required dead time
in s, etc. The user should make sure that the table is
Overtemperature Protection entered in the ACSVM_OL.asm file as shown in the
worksheet.
The power module has an NTC thermal sensor, output-
ting 3.3V at 110C on the junction of IGBTs. The NTC An overview of the firmwares logic flow is provided in
output is connected to AN8 through an optocoupler. Figure 7 and Figure 8. A complete list of system
The temperature is continuously measured and if it parameters and user-defined functions is provided in
exceeds 110C (MAX_JUNCTION_TEMP) for more than Table 3 through Table 5.

2005 Microchip Technology Inc. DS00955A-page 9


AN955
FIGURE 7: SVM IMPLEMENTATION FLOWCHART (MAIN ROUTINE)

Main Routine

START

Motor Parameters and On-Chip


Peripherals Initialization

Blink all LEDs at a Rate Set by


the Potentiometer

No Is SW1/SW2
pressed?

Yes
Configure PCPWM Module and
Set Default Rotation Direction

Call KEY_CHECK to
Determine Pressed Key

Call PROCESS_KEY_PRESSED
to Act on the Pressed Key

Has TMR1 No
overflowed?

Yes
Call FAULT_CHECK to Check for
Fault and Display the same, if any

Call CONVERT_MANUAL_COUNT_TO_HZ to Convert the Potentiometer


Setting to the Required Motor Speed in Hz and to Set the Modulation Index

No Is 1 sec time
interval over?

Yes
Call RAMP_SPEED to Accelerate/
Decelerate the Motor

Call CALCULATE_UPDATE_STEP_SIZE to Find


Vector Update Step Size based on the Motor Speed

DS00955A-page 10 2005 Microchip Technology Inc.


AN955
FIGURE 8: SVM IMPLEMENTATION FLOWCHART (INTERRUPT SERVICE ROUTINES)
High Priority Interrupt Service Routine

ISR_HIGH

No
Is PTIF = 1?

Yes
Vector Angle = Vector Angle + Vector Update Step Size

No Is carry
generated?

Yes
Increment Sector Number by 1

Is Sector No
Number > 5?

Yes
Reset Sector Number to 0

Calculate TA, TB, T0/2 and


(TS T0/2) using the Vector Angle

Load PWM Duty Cycle


Registers as per Table 2

RETFIE

Low Priority Interrupt Service Routine

ISR_LOW

No Is ADIF = 1?

Yes
Read Phase Currents, IGBT Junction Temperature
and the Potentiometer Setting for the Motor Speed

Is TMR1IF = 1? No

Yes
Reload TMR1 for 5 msec Overflow Rate

Increment RAMP_COUNT by 1 (used for giving 1 sec time


interval for acceleration/deceleration feature)

Yes Is
SW1/SW2 pressed
any time?
No
Toggle LEDs

RETFIE

2005 Microchip Technology Inc. DS00955A-page 11


AN955
TABLE 3: USER-DEFINED PARAMETERS IN SVM FIRMWARE
Name Description
CHANGE_OVER_DELAY Defines rotation direction changeover for the motor. Its value equals the
required changeover time in ms per 39 ms.
DIRECTION_AT_POR Defines default rotation direction at start (1 = Forward, 0 = Reverse).
CYCLE_COUNT_MAX Defines blinking rate for Fault indication. Its value equals the required blink
time interval in ms per 5 ms.
MAX_FAULT_CHECK_COUNT Defines time window for Fault recognition. If any Fault occurs for more than
predefined count in this time window, then the Fault is recognized and
appropriate action is taken.
MAX_FLTA_COUNT Defines count for overcurrent Fault recognition.
MAX_FLTB_COUNT Defines count for overvoltage Fault recognition.
MAX_JUNCTION_TEMP Defines limit for overtemperature Fault.
MAX_TEMP_FILT_COUNT Defines count for overtemperature Fault recognition.
TMR1L_COUNT and TMR1H_COUNT Defines overflow rate for Timer1. In the present application, it is set for 5 ms.
PARAMETER_BUFFER_SIZE Defines array size for storing various compile-time parameters as well as
run-time parameters. It is set at 0x35 (do not change this value).

TABLE 4: VARIABLES IN SVM FIRMWARE


Name Description
REQD_SPEED_REF Stores required motor speed set by the potentiometer.
SET_SPEED_HZ Stores actual motor speed (Hz).
RAMP_COUNT Stores count for Timer1 overflow. It is used for generating 1s time interval as
required for acceleration/deceleration feature.
CURRENT_R Stores either total DC bus current (when used with DC shunt current
measurement) or R phase current (when used with phase current sensor).
CURRENT_Y Stores Y phase current (when used with phase current sensor).
CURRENT_B Stores B phase current (when used with phase current sensor).
JUNCTION_TEMPH Stores junction temperature of the VSI switch.
SECTOR_NO Stores present sector location of VS.
MODULATION_INDEX Stores required amplitude of VS.
VECTOR_ANGLE<MSB:LSB> Stores present vector angle of VS in a sector.
TB_COUNT<MSB:LSB> Stores TB count as pointed by the vector angle.
TA_COUNT<MSB:LSB> Stores TA count as pointed by the vector angle.
HALF_T0_COUNT<MSB:LSB> Stores T0/2 count.
TS_MINUS_HALF_T0<MSB:LSB> Stores TS T0/2 count.
TABLE_TB_COUNT<MSB:LSB> Stores array base address for TB count.
PARAMETER_BUFFER Stores array base address for compile-time and run-time parameters.

DS00955A-page 12 2005 Microchip Technology Inc.


AN955
TABLE 5: FUNCTIONS IN SVM FIRMWARE
Name Description
KEY_CHECK Checks the status of Run/Stop (SW1) and Fwd/Rev (SW2) keys.
PROCESS_KEY_PRESSED Acts on command issued by the last pressed key.
FAULT_CHECK Checks for various Faults (overcurrent, overvoltage, overtemperature) and
acts if any Fault is recognized.
CONVERT_MANUAL_COUNT_TO_HZ Converts the potentiometer setting into the required motor speed (Hz) and
sets the modulation index (m).
RAMP_SPEED Implements the acceleration/deceleration feature.
CALCULATE_UPDATE_STEP_SIZE Calculates new vector update step size depending on the motor speed.
ISR_PWM Responds to setting of PTIF. This routine rotates by vector angle update step
size and calculates new duty cycle values for all phases (R, Y and B).
ISR_ADC Responds to setting of ADIF. This routine reads the potentiometer setting,
phase currents and junction temperature of the VSI switch and stores them
at appropriate locations.
ISR_TMR1 Responds to setting of TMR1IF. This routine reloads Timer1 for 5 ms
overflow rate and increments RAMP_COUNT by 1 for generating a
one-second interval (required for the acceleration/deceleration feature). This
routine also blinks all LEDs at start when no key is pressed.

2005 Microchip Technology Inc. DS00955A-page 13


AN955
RESOURCE USAGE CONCLUSION
The SVM control application consumes CPU VF control using the SVM in the open loop is more
resources, as shown in Table 6. Substantial CPU energy efficient compared to the Sine PWM. With an
resources, especially memory and processing time, on-chip dedicated motor control peripheral like the
are still available to users for the development of their power control PWM module and the rich instruction set,
own applications. the PIC18FXX31 is well suited to give a low-cost
solution, implementing the VF control using the SVM
TABLE 6: RESOURCES USED IN THE algorithm for the 3-phase AC induction motor control. In
MOTOR CONTROL DEMO addition, the on-chip resources, such as the ADC and
BOARD (USING PIC18F4431) the multiple timers, allow users to implement other con-
trol (acceleration and deceleration) and protection
Available to User (overcurrent, overvoltage, overtemperature) features.
Resource Type Used when PIC18F4431
is Used
REFERENCES
Program Memory 1942 bytes 14442 bytes
R. Parekh, AN887, AC Induction Motor Fundamentals
Data Memory 93 bytes 675 bytes
(DS00887). Microchip Technology Inc., 2003.
EEPROM 44 bytes 212 bytes
P. Yedamale, AN843, Speed Control of 3-Phase
PWM Channels 6 2 Induction Motor Using PIC18 Microcontrollers
CCP/Fault Input 2 0 (DS00843). Microchip Technology Inc., 2002.
Channels R. Parekh, AN889, VF Control of 3-Phase Induction
ADC Channels 5 4 Motors Using PIC16F7X7 Microcontrollers
EUSART 0 1 (DS00889). Microchip Technology Inc., 2004.
QEI Module 0 1 PICDEM MC Development Board for PIC18FXX31
Timers 1 3 Users Guide (DS51453). Microchip Technology Inc.,
2004.
External Interrupts 0 3
I/O Lines 20 16
CPU Processing ~27% ~63%
Time
(FPWM = 20 kHz,
FOSC = 40 MHz)
Resource utilization, as mentioned in Table 6, is for a
general purpose, relocatable code implementing the
VF control using the SVM algorithm on PIC18F4431
with 14-bit PWM resolution. A customized solution with
only 8-bit PWM resolution can conceivably result in an
additional 10% savings in CPU processing time.

DS00955A-page 14 2005 Microchip Technology Inc.


AN955
APPENDIX A: PICDEM MC BOARD TECHNICAL INFORMATION

FIGURE A-1: PICDEM MC DEVELOPMENT BOARD FUNCTIONAL BLOCK DIAGRAM

ICD
Connector
Potentiometer
RS-232 RS-232
User Interface Connector
Push Buttons Hall Sensor
PIC18FXX31 Isolated
Connector Control
LEDs Section
Quad Encoder
Connector

Comparator

PCPWM

Voltage
Monitor
Current Phase Current
Monitor Monitors
Optoisolators
Temperature
Monitor
Back EMF
Conditioner
PCPWM
Motor
Terminal Block

IRAMS10UP60A

Gate Driver and


3-Phase Inverter

Power Terminal Block VBUS +5 VDC


DC Power +5 VAC
Switcher +15 VAC
D GND
A GND

AC Bridge
Rectifier

2005 Microchip Technology Inc. DS00955A-page 15


+5 VD MCLR +5 VD

R40 470
RESET R41 C25 C26 +5 VA
S2 10K R30
0.1 F 0.1 F
FIGURE A-2:

4 1 PWM4 PWM5
R42 300
AN955

3 2 U3 JP3

DS00955A-page 16
1 C22
2K 1 40 U5 R28 0.1 F
C27 MCLR/VPP RB7/PGD RB7 2
2 39 1 AN1 8 1K R29
CF1 RA0/AN0 RB6/PGC RB6 3 VCC 1K
3 38 2 CA1 7
0.1 F VREF RA1/AN1 RB5/PWM4 V01 HIN3
4 37 3 CA2 6
INDX RA2/AN2/VREF- RB4/PWM5 PWM5 V02 LIN3
5 36 4 AN2 5
QEA RA3/AN3/VREF+ RB3/PWM3 PWM3 R34 GND
+5 VD 6 35
QEB RA4/CAP3 RB2/PWM2 PWM2 300
7 34 TLP2630/
RA5 RA5/AN5/LVDIN RB1/PWM1 PWM1 SFH6326
R44 8 33
+5 VD CF2 RE0/AN6 RB0/PWM0 PWM0
2K 9 32
CF3 RE1/AN7 VDD
SW2 (FWD/REV) 10 31
RE2 RE2/AN8 VSS PWM2 +5 VA
11 30 SW2 R33 300
R98 VDD RD7/PWM7
R43 12 29
4.7K VSS RD6/PWM6 SW1 PWM3
S4 100
13 28 R35 300
R97 OSC1 OSC1/CLKI/RA7 RD5
4 1 C23
SW2 14 27 R31
OSC2 OSC2/CLKO/RA6 RD4/FLTA RD4 U7 0.1 F
3 2 4.7K 15 26 1K

RD5
RC0 RC0/T1OSO/T1CKI RC7/RX/DT RX 1 AN1 8
R32
16 25 VCC 1K
RC1 RC1/T1OSI/CCP2 RC6/TX/CK/SS TX 2 CA1 7
17 24 V01 HIN2
FAULTB RC2/CCP1 RC5/INT2 INT2 3 CA2 6
18 23 V02 LIN2
INT0 RC3/INT0 RC4/INT1 INT1 4 AN2 5
19 22 GND
RD0 RD0/T0CKI/GPCKI RD3/SCK/SCL RD3
20 21 TLP2630/
RD1 RD1/SDO RD2/SDI/SDA RD2
+5 VD SFH6326
PIC18F4431 PWM0 +5 VA
SW1 (ON/OFF) R38 300
R95
PWM1
4.7K R39 300 R36
S3 C24
U8 1K
4 1 R96 0.1 F
SW1 1 AN1 8 R37
3 2 4.7K VCC 1K
2 CA1 7
V01 HIN1
3 CA2 6
V02 LIN1
4 AN2 5
GND

TLP2630/
SFH6326

+5 VD
+5 VD C17
+5 VD
R24 RC1
0.1 F
1M JP1
R25 2 1
8 U4:A C21 C18
R27 2.8K
1 2
ISOLATORS, CURRENT COMPARATOR AND ASSOCIATED PARTS)

FAULTC 220 F 25V 0.1 F


4.7K 3 MCP6002 8-DIP 3
4 C53
C19 C52
C54 33 pF RD4
0.1 F 33 pF R26 33 pF
BOARD SCHEMATIC, PART 1 (PIC18F4X31 MICROCONTROLLER, PCPWM

4.7K

2005 Microchip Technology Inc.


+5 VD +5 VD

C45
C44 U18 1 F
+5 VD 1 F
FIGURE A-3:

2 VCC 16
V+

PIN1
U19 1 PIN6
11 14 6
TX T1IN PIN2
PIC18F2431 2 PIN7
10 7 7
T2IN PIN3
1 28 3 PIN8
INDX MCLR MCLR/RE3 RB7 RB7 8
PIN4
2 27 4 PIN9
CF1 RA0/AN0 RB6 RB6 12 13 9
JP9 RX A1OUT A1IN PIN5

2005 Microchip Technology Inc.


1 3 26 5
VREF RA1/AN1 PWM4 PWM4 9 8
A1OUT A2IN J14
2 4 25
RA2/VREF- PWM5 PWM5
3 5 24
QEA RA3/VREF+ PWM3 PWM3 1 4
C1+ C2+
6 23 C46 C43
QEB RA4/AN4 PWM2 PWM2
CF3 1 F 1 F
7 22 R107
VDD PWM1 PWM1 3 5
C1- C2- 10 ohm
8 21
VSS PWM0 PWM0
9 20
OSC1 OSC1/RA7 VDD 6 15
JP5 V- GND
OSC2 10 19 SW2 C47
OSC2/RA6 VSS
1 F
11 18
RC0 RC0 RC7 RX
12 17 MAX232 16-DIP
RC1 RC1/CCP2 RC6 TX
FAULTB 13 16
RC2/CCP1 RC5/INT2 SW1
14 15 JP6
INT0 RC3 RC4/INT1 INT2
INT1

OPTIONAL +5 VD +5 VD
R106

+5 VD 50

R100 D22
D21 1N4007
100K 1N4007

R99
100K
RD0
OSC2
R101
U17 D24 C42 1K
Y1 39V 0.1 F
OSC1 1 RXD FAULT/SLPS 8
+5 VD RX J13
2 CS/WAKE VBAT 7 1
HC 49US RD1
C48 C49 3 VDD 2
LIN 6
33 pF 33 pF
4 TXD VSS 5 3
TX
D23
C41 27V
0.1 F MCP201
BOARD SCHEMATIC, PART 2 (PIC18F2X31 MICROCONTROLLER SOCKET,
USART, CLOCK OSCILLATOR NETWORK AND OPTIONAL LIN INTERFACE)

DS00955A-page 17
AN955
FIGURE A-4:
AN955

DS00955A-page 18
+5 VD
J8 J7 J9 J10 J11 J12
1 1 1 1 1
CF1 ICD 1 PWM0 RC0 RD2 CF2
2 MCLR 2 2 2 2
VREF 2 PWM1 RC1 RD3 CF3
3 3 3 3 3
INDX 3 PWM2 FAULTB INT1 RE2
4 4 4 4
QEA 4 PWM3 INT0 INT2
5 RB7 5 5 5
QEB 5 PWM5 RD0 TX
6 RB6 6 6 6
RA5 6 PWM4 RD1 RX
7 7
RB6 RD4
8 8
RB7 RD5
9
SW1
10
SW2
CONNECTORS, MONITOR LEDS)

+5 VD +5 VD
+5 VD +5 VD
D17
J2 J3 R102
1 R15 1 R21 R18 1K RD0
10K 10K INDX 470
2 2
3 3 R19 1K D18
INT0 QEA R103
4 4 RD1
INT1
5 5 R20 1K 470 JP4
INT2 QEB
R17 D19

10K
R104

R23
R16 10K R22 RD2
10K 10K 470
+5 VD +5 VD D20
+5 VD +5 VD R105
RC0
470
BOARD SCHEMATIC, PART 3 (SENSOR AND MICROCONTROLLER HEADER

2005 Microchip Technology Inc.


R56
FIGURE A-5:

100K
+5 VA +5 VA
C36

0.1 F R59
C31 4 4.7K +5 VD
2
-INA
0.1 F R54 1
100K R69 C29
3 U12:A R46
+INA U13

2005 Microchip Technology Inc.


0.1 F INT0
10K MCP6544 R48 1K R47
11 1 AN1 1
VCC 8 1K
OPERATION)

300 2 CA1 V01 7 2 JP11


R73 R75 R76 R77 R74 3 CA2 V02 6 3
LEG1 R63 4 AN2
560K 560K 560K 22K 22K GND 5 INDX
1M
R60 TLP2630/ INT1
C32 +5 VA 1
4.7K SFH6326
R55 0.1 F 2
100K 6
-INB
JP10
R49 3
7
R70 5 300 QEA
+INB U12:B
10K MCP6544
R78 R80 R81 R82 R79
LEG2 R64 +5 VD
560K 560K 560K 22K 22K
1M
C33
R61 C30
0.1 F +5 VA R51
R109 U14 0.1 F INT2
4.7K R52 1K R53
100K 9 1 AN1 VCC 8 1
-INC 1K
8 300 2 CA1 2
V01 7 JP8
R71 10 3 CA2 3
+INC U12:C V02 6
10K MCP6544 4 AN2 GND 5
R83 R85 R86 R87 R84 QEB
LEG3 R65 TLP2630/
560K 560K 560K 22K 22K
1M SFH6326 R113
C34 R62 1K
0.1 F +5 VA
4.7K
R72 13 FAULTB
+5 VA -IND
10K 14
R50
12 U12:D 300
+IND
R88 R90 R91 R92 R89
VBUS + MCP6544
560K 560K 560K 27K 30K
R67 R66
JP2 27K
C35 1M
R68
0.1 F
30K
BOARD SCHEMATIC, PART 4 (SIGNAL CONDITIONER FOR SENSORLESS BLDC

DS00955A-page 19
AN955
FIGURE A-6:
AN955

DS00955A-page 20
U15
IRAMS10UP60A C37 10 F 16V +5 VA
VB3 1
VS3 W
2 C55
NC
3 C38 10 F 16V 0.1 F
VB2
4 U11:A +5 VA
VS2 V
5 MCP6002 8-DIP U11:B
NC 2 8 MCP6002 8-DIP
6 C39 10 F 16V
VB1 1 R117 6 R118 U20
7
VS1 R111 360 R119
8 U 3 51K 1% 7 1
-LED 8
ISM N/C
NC 1K 4 5 7 51K 1%
9 F2
2 +LED N/C
CURRENT MEASUREMENT)

V+ VBUS+ 6 6
10 R116 C58 3 VCCT VCC2
NC FUSE 6.3X32 C56 C57 100 pF 5 7
11 4 I1 I2
DC- 33 pF 4.7 nF R112 91K
12 5
R110 10K
DC- LOC111 8-DIP
13
DC- 0.05R/3W U4:B R120
14
H1 HIN1 DC-
MCP6002 8-DIP 470
15
H2 HIN2
16
H3 HIN3
17 +5 VD
L1 LIN1
18 JP7
L2 LIN2
19
L3 LIN3
20 R93 CF1
ITRIP
21 R94
VCC 300
22 +15 VA 1K
VSS
U16
23 R108 R115
1 +LED
4.3K COL 4 RE2
2 -LED EMT 3 1K

SFH618
BOARD SCHEMATIC, PART 5 (3-PHASE INVERTER POWER MODULE AND SHUNT

2005 Microchip Technology Inc.


FIGURE A-7:

J6

2005 Microchip Technology Inc.


1
R
2
Y
3
B
4
G
EARTH

LEG1
LEG2
LEG3

OPTIONAL OPTIONAL OPTIONAL


R45
FAULTC
2.6K
C28 D12 D13 D14
33 pF 1N4448 1N4448 1N4448
CURRENT TRANSDUCER CIRCUITRY)

U9 U10
U6
R122 R123
IN6 6
IN5 5
IN4 4

IN6 6
IN5 5
IN4 4
R121 CF2 7 OUT
CF3
7 OUT

IN6 6
IN5 5
IN4 4
7 OUT
CF1 1K 8 0V LTS15-NP Load R125 1K 8 0V LTS15-NP Load R126
1K 8 0V LTS15-NP Load R124 0.01R, 1/2W 0.01R, 1/2W
0.01R, 1/2W C50 9 +5V instead of U9 9 +5V
instead of U10
9 +5V
instead of U6
IN3
IN2

33 F 35V

IN3
IN2
3 IN3
2 IN2
1 IN1

3
2
1 IN1

3
2
1 IN1
+5 VD C51 +5 VD

0.1 F

+5 VD
U
V
W
BOARD SCHEMATIC, PART 6 (MOTOR TERMINAL BLOCK AND OPTIONAL

DS00955A-page 21
AN955
J1 VBUS+
T1
FIGURE A-8:

DC- DC+ G N L L1 E3 +5 VA
TRANSFORMER TSD-877 D3
AN955

R2

DS00955A-page 22
AC INPUT
1 ohm 3W 10 H
11DQ10

6
5
4
3
2
1
C15
C2 R3
2.2 nF C3
4.7 F 400V 47K C4
400V 1 8 100 F 25V
47 F 16V
EARTH 3 7
DC- C1
DC- 2
470 F 250V 6
D1 4 10
1
R1 GBPC2506C 5 9
D11
E4
NTC L2
SHORTING LINK 1N4937 D5
4 AC2 2 2 1
AC1 +15 VA
J17 10 H
11DQ10
F1
216010 C5 C8 C9
47 F 25V E5
3 100 F 25V
470 F 250V E6
RV1 D6 L3
+5 VD
D8 10 H
R5 11DQ10
DC- C11 C10
27 ohm R9 R8
C6 1N4148 100 F 25V 47 F 25V R6
1K 4.7K
C16 33 F 25V 470 ohm

0.01 F 270 VAC


U2
R4 6 NC
150K A 1 R7
D9 C14 4.7K
R10 1N4148 5 E
CA 2 D10
4.7K 0.1 F
DC- 4 1 3
C
R13 MOC8101
OCP/FB 2.4K
C7 5 D2
BOARD SCHEMATIC, PART 7 (POWER SUPPLY)

VCC
56 pF 4 D4 TL431
U1 D
3
GND 1N4148 R14
2 E7

IRIS4009-HORZ
S C13 10 ohm
DC- 1 C12
47 pF
220 pF
DC-
D7

1N5818 R11
750 ohm
DC-
R12
1.3 ohm

DC- DC-

2005 Microchip Technology Inc.


AN955
TABLE A-1: SIGNALS USED IN THE PICDEM MC SCHEMATIC
Signal Name Function
+15 VA Non-isolated DC supply voltage for power components.
+5 VD Isolated supply voltage for digital components.
CF1, CF2 or CF3 Current feedback signal from designated motor phase winding. CF can also
represent total motor current when current transducer measurement is used.
DC- DC bus return path.
FAULTB PCPWM Fault signal input (overvoltage).
FAULTC Fault signal input from comparator (overcurrent).
HIN1, HIN2 or HIN3 Upper leg input for designated phase to 3-phase inverter (isolated signal).
INDX Index position signal to QEI inputs on microcontroller.
INT0, INT1 or INT2 Hall effect sensor signal to interrupt-on-change inputs on microcontroller.
LEG1, LEG2 or LEG3 Current transducer signal for designated motor winding phase.
LIN1, LIN2 or LIN3 Lower leg input for designated phase to 3-phase inverter (isolated signal).
MCLR Microcontroller hardware Reset.
PWM0 through PWM5 PCPWM waveform outputs from microcontroller.
QEA, QEB Quadrature encoder sensor signals to QEI inputs on microcontroller.
RAn, RBn, RCn, RDn or REn Bit n of the designated port of the microcontroller.
RX and TX RS-232 serial receive and transmit.
SW1, SW2 Push button input from designated switch to microcontroller.
U, V, W Drive level output from inverter power module to motor.
VBUS+ DC high voltage to inverter power module.
VREF External reference voltage for overcurrent detect.

2005 Microchip Technology Inc. DS00955A-page 23


AN955
APPENDIX B: SINE PWM APPENDIX C: MOTOR CONTROL
The Sine PWM is implemented using a VSI as shown MADE EASY
in Figure 2. To assist motor control developers, Microchip has
At any instant, either the top or the bottom switch of a developed the PICDEM MC Development Board
half bridge is on. Hence, the resultant phase-to-virtual based on the PIC18FXX31. This demo board has all
neutral point O (VRO, VYO and VBO) can be the necessary hardware for a range of motor control,
represented as: for example, AC Induction motor, BLDC motor and
Stepper motor. Various control algorithms have been
EQUATION B-1: developed using the demo board to assist users in
developing motor control application. Also, a PC-based
VDC V (where = R, Y, B)
Vio = if i GUI has been developed for helping users in con-
2
figuring different motor control parameters and giving
real-time capability to monitor the motor speed, the
Vif represents the 3-phase waveforms in space with 120
3-phase currents and temperature.
(2/3) phase shift between them. Each phase waveform
can be represented as shown in Equation B-2: All source code and the motor control GUI are free to
use and can be downloaded from the Microchip web
EQUATION B-2: site at:

VRf = m sin www.microchip.com.


VYf = m sin( + 2/3)
VBf = m sin( + 4/3)

Substituting Equation B-2 into Equation B-1, we get:

EQUATION B-3:
VDC (m sin)
VRO =
2
VDC (m sin( + 2/3))
VYO =
2
VDC (m sin( + 4/3))
VBO =
2

The resultant line-to-line output voltage is given as:

EQUATION B-4:
3 VDC m sin( + /6)
VRY = VRO VYO =
2
3 VDC m sin( + (5)/6)
VYB =
2
3 VDC m sin( + 3/2)
VRB =
2

From Equation B-4, it is clear that the maximum line-to-


line voltage in the linear operating range is achieved
when m = 1.

EQUATION B-5:
3 VDC
Maximum line-to-line voltage =
2

This clearly shows that in Sine PWM, the VDC


utilization is less than 90% (~86.6%) in the linear
operating range.

DS00955A-page 24 2005 Microchip Technology Inc.


Note the following details of the code protection feature on Microchip devices:
Microchip products meet the specification contained in their particular Microchip Data Sheet.

Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.

There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchips Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.

Microchip is willing to work with the customer who is concerned about the integrity of their code.

Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as unbreakable.

Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchips code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.

Information contained in this publication regarding device Trademarks


applications and the like is provided only for your convenience
The Microchip name and logo, the Microchip logo, Accuron,
and may be superseded by updates. It is your responsibility to
dsPIC, KEELOQ, microID, MPLAB, PIC, PICmicro, PICSTART,
ensure that your application meets with your specifications.
PRO MATE, PowerSmart, rfPIC, and SmartShunt are
MICROCHIP MAKES NO REPRESENTATIONS OR WAR-
registered trademarks of Microchip Technology Incorporated
RANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED,
in the U.S.A. and other countries.
WRITTEN OR ORAL, STATUTORY OR OTHERWISE,
RELATED TO THE INFORMATION, INCLUDING BUT NOT AmpLab, FilterLab, Migratable Memory, MXDEV, MXLAB,
LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, PICMASTER, SEEVAL, SmartSensor and The Embedded
MERCHANTABILITY OR FITNESS FOR PURPOSE. Control Solutions Company are registered trademarks of
Microchip disclaims all liability arising from this information and Microchip Technology Incorporated in the U.S.A.
its use. Use of Microchips products as critical components in Analog-for-the-Digital Age, Application Maestro, dsPICDEM,
life support systems is not authorized except with express dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR,
written approval by Microchip. No licenses are conveyed, FanSense, FlexROM, fuzzyLAB, In-Circuit Serial
implicitly or otherwise, under any Microchip intellectual property Programming, ICSP, ICEPIC, MPASM, MPLIB, MPLINK,
rights. MPSIM, PICkit, PICDEM, PICDEM.net, PICLAB, PICtail,
PowerCal, PowerInfo, PowerMate, PowerTool, rfLAB,
rfPICDEM, Select Mode, Smart Serial, SmartTel, Total
Endurance and WiperLock are trademarks of Microchip
Technology Incorporated in the U.S.A. and other countries.
SQTP is a service mark of Microchip Technology Incorporated
in the U.S.A.
All other trademarks mentioned herein are property of their
respective companies.
2005, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
Printed on recycled paper.

Microchip received ISO/TS-16949:2002 quality system certification for


its worldwide headquarters, design and wafer fabrication facilities in
Chandler and Tempe, Arizona and Mountain View, California in
October 2003. The Companys quality system processes and
procedures are for its PICmicro 8-bit MCUs, KEELOQ code hopping
devices, Serial EEPROMs, microperipherals, nonvolatile memory and
analog products. In addition, Microchips quality system for the design
and manufacture of development systems is ISO 9001:2000 certified.

2005 Microchip Technology Inc. DS00955A-page 25


WORLDWIDE SALES AND SERVICE
AMERICAS ASIA/PACIFIC ASIA/PACIFIC EUROPE
Corporate Office Australia - Sydney India - Bangalore Austria - Weis
2355 West Chandler Blvd. Tel: 61-2-9868-6733 Tel: 91-80-2229-0061 Tel: 43-7242-2244-399
Chandler, AZ 85224-6199 Fax: 61-2-9868-6755 Fax: 91-80-2229-0062 Fax: 43-7242-2244-393
Tel: 480-792-7200 China - Beijing Denmark - Ballerup
India - New Delhi
Fax: 480-792-7277 Tel: 86-10-8528-2100 Tel: 45-4450-2828
Tel: 91-11-5160-8631
Technical Support: Fax: 86-10-8528-2104 Fax: 45-4485-2829
Fax: 91-11-5160-8632
http://support.microchip.com
China - Chengdu Japan - Kanagawa France - Massy
Web Address:
Tel: 86-28-8676-6200 Tel: 81-45-471- 6166 Tel: 33-1-69-53-63-20
www.microchip.com
Fax: 86-28-8676-6599 Fax: 81-45-471-6122 Fax: 33-1-69-30-90-79
Atlanta
Alpharetta, GA China - Fuzhou Korea - Seoul Germany - Ismaning
Tel: 86-591-8750-3506 Tel: 82-2-554-7200 Tel: 49-89-627-144-0
Tel: 770-640-0034
Fax: 86-591-8750-3521 Fax: 82-2-558-5932 or Fax: 49-89-627-144-44
Fax: 770-640-0307
China - Hong Kong SAR 82-2-558-5934 Italy - Milan
Boston
Tel: 852-2401-1200 Tel: 39-0331-742611
Westborough, MA Singapore
Fax: 852-2401-3431 Tel: 65-6334-8870 Fax: 39-0331-466781
Tel: 774-760-0087
Fax: 774-760-0088 China - Shanghai Fax: 65-6334-8850 Netherlands - Drunen
Tel: 86-21-5407-5533 Taiwan - Kaohsiung Tel: 31-416-690399
Chicago
Fax: 86-21-5407-5066 Tel: 886-7-536-4818 Fax: 31-416-690340
Itasca, IL
Tel: 630-285-0071 China - Shenyang Fax: 886-7-536-4803 England - Berkshire
Fax: 630-285-0075 Tel: 86-24-2334-2829 Tel: 44-118-921-5869
Taiwan - Taipei
Fax: 86-24-2334-2393 Tel: 886-2-2500-6610 Fax: 44-118-921-5820
Dallas
Addison, TX China - Shenzhen Fax: 886-2-2508-0102
Tel: 972-818-7423 Tel: 86-755-8203-2660 Taiwan - Hsinchu
Fax: 972-818-2924 Fax: 86-755-8203-1760 Tel: 886-3-572-9526
Detroit China - Shunde Fax: 886-3-572-6459
Farmington Hills, MI Tel: 86-757-2839-5507
Tel: 248-538-2250 Fax: 86-757-2839-5571
Fax: 248-538-2260 China - Qingdao
Kokomo Tel: 86-532-502-7355
Kokomo, IN Fax: 86-532-502-7205
Tel: 765-864-8360
Fax: 765-864-8387
Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
San Jose
Mountain View, CA
Tel: 650-215-1444
Fax: 650-961-0286
Toronto
Mississauga, Ontario,
Canada
Tel: 905-673-0699
Fax: 905-673-6509

03/01/05

DS00955A-page 26 2005 Microchip Technology Inc.

Anda mungkin juga menyukai