AN970 Using the PIC18F2431 for Sensorless BLDC Motor Control Author:
Padmaraja Yedamale Microchip Technology Inc.
INTRODUCTION Brushless Direct Current (BLDC) motors have many advantages over other types of motors available in the industry. Previously, we have discussed the working principles of BLDC motors and the basics of their control in Microchip application note AN885, Brushless DC (BLDC) Motor Fundamentals. We have also discussed the use of PIC18FXX31 devices to control a BLDC motor in both open loop and in closed loop using Hall effect sensors and quadrature encoders (Microchip application note AN899, Brushless DC Motor Control Using PIC18FXX31 Microcontrollers). This application note describes BLDC motor speed control without the use of sensors. Those readers interested in additional applications may refer to Microchip application notes AN857, Brushless DC Motor Control Made Easy and AN901, Using the dsPIC30F for Sensorless BLDC Control, to learn how other PICmicro® microcontrollers and dsPIC® digital signal controllers can be used for BLDC motor control.
ADVANTAGES AND DISADVANTAGES OF SENSORLESS CONTROL Sensorless control of a BLDC motor calls for commutation based on the Back Electromotive Force (BEMF) produced in the stator windings. Sensorless control has two distinct advantages: lower system cost and increased reliability. Hall effect sensors are not required for sensorless control. Some motors may have the Hall sensor magnets mounted on the rotor, in addition to the main rotor magnets. These are used to simplify the process of mounting the Hall sensors onto the stator. The sensor magnets are a scaled-down replica of the rotor; whenever the rotor rotates, they produce the same effect as the main magnets. The Hall sensors are normally mounted on a PC board and are fixed to the enclosure cap on the non-driving end of the motor.
© 2005 Microchip Technology Inc.
With a sensorless method of commutation, the Hall sensors, the sensor magnets, the sensor wires and the PC board can be eliminated. This simplifies the motor construction and reduces cost. Inherently, systems with fewer components are more reliable. Applications like the compressor control in a refrigerator or in HVAC systems, which generates heat and an elevated temperature, may accelerate Hall sensor failures. Using sensorless control improves the reliability of total system. There are two disadvantages to sensorless control: • The motor must be moving at a minimum rate to generate sufficient BEMF to be sensed. • Abrupt changes to the motor load can cause the BEMF drive loop to go out of lock. As the BEMF signal is proportional to the speed of rotation at standstill and at low speeds, the amplitude of the BEMF poses a challenge to determine the zero crossover point. In order to overcome this problem, the motor is normally run in open loop during starting and is accelerated to a speed where the BEMF has sufficient amplitude to detect and then synchronize with the zero crossing point. Running the motor in open loop makes it difficult to know the rotor position, when starting from standstill. So, the rotor can rotate in either direction when energized. Applications which require very low motor speed may be forced to use sensors for control. There are many applications in appliances, automotive, and industrial applications where very low speed is not an issue, and the motor needs variable speeds of about 25% of the rated speed. Sensorless control is ideal for such applications. Another requirement is that the sensorless control needs extra resources on the control circuit side. Depending upon the method used, it may require a fast A/D converter on the microcontroller, or comparator and filter circuits.
DS00970A-page 1
AN970 THEORY OF OPERATION
HALL SENSOR SIGNALS VS. BEMF
When a BLDC motor rotates, each winding generates BEMF which opposes the main voltage supplied to the windings according to Lenz’s Law. The polarity of this BEMF is in the opposite direction of the energizing voltage. BEMF can be calculated as shown in Equation 1, and depends mainly on three factors:
Figure 1 shows the relationship between the Hall sensor signals and the BEMF signals. Hall sensor signals are out of phase by 120 degrees to each other. At every 60 degrees, one of the Hall sensors makes a transition.
• Angular velocity of the rotor • Magnetic field generated by rotor magnets • The number of turns in the stator windings
EQUATION 1: Back EMF = NlrBω where N = number of winding turns per phase l = the length of the rotor r = the internal radius of the rotor B = the rotor magnetic field density ω
= the motor angular velocity
Once the motor is designed, the rotor’s magnetic field and the number of turns in the stator windings remain constant. The only factor that governs back EMF is the angular velocity or speed of the rotor; as the speed increases, back EMF also increases. The motor technical specification gives a parameter called the back EMF constant, which can be used to estimate BEMF for a given speed.
DS00970A-page 2
The BEMF generated in the windings are also at 120 degrees out of phase to each other, but they are asynchronous with the Hall sensor signals. In every energizing sequence, two phases are connected across the power supply and the third winding is left open. The BEMF voltage is monitored on the winding that is left open. With this, the BEMF voltage in windings increases when it is connected to power supply and reduces when it is connected to the return path. The transition takes place when the winding is left open in the sequence. The combination of all 3 zero cross over points are used to generate energizing sequence. The phase difference between the hall sensor and the BEMF signal is 30 degrees. This is in the firmware. Another aspect to be considered is very low-speed operation. Because BEMF is proportional to the rotation speed, it would be at a very low amplitude at very low speeds, making it difficult to detect the zero crossover. In addition, since the commutation itself is derived based on BEMF zero crossovers, it is impossible to start the motor from standstill. To overcome this difficulty, the motor has to be started from standstill in open loop. When sufficient BEMF is built to detect the zero crossover point, control is shifted to the BEMF sensing. The minimum speed at which the BEMF can be sensed is calculated from the BEMF constant of the motor.
© 2005 Microchip Technology Inc.
AN970 FIGURE 1:
WAVEFORM OF HALL SENSOR VERSUS BEMF VOLTAGES 60°
Hall A
Hall B
Hall C
Phase A Zero cross
Phase A Current
Phase A
Phase A Voltage Phase B Zero cross
Phase B Current Phase B
Phase B Voltage Phase C Zero cross
Phase C Current
Phase C Phase C Voltage
BEMF ZERO CROSSOVER SENSING METHODS
FIGURE 2:
BEMF voltage zero crossing can be detected by different methods. This section gives three different methods of detecting BEMF zero cross point. The first method is comparing the back EMF voltage to half of the DC bus voltage by using comparators. Figure 2 shows this method. Phase A is connected to the positive side of the power supply (DC+), Phase C is connected to the negative side (or return path DC) of the power supply and Phase B is open. When BEMF is observed on Phase B, it increases and decreases as the power supply (DC+ and DC-) are connected and disconnected to the winding terminals in the energizing sequence. By comparing the BEMF voltage to half of the DC bus, it gives a voltage at the central point of phase A and phase C.
BEMF VOLTAGE COMPARED TO HALF OF DC BUS DC+ A Back EMF
DC- C
B
+
To IC2
_ DC/2
Each phase requires a circuit like that shown in Figure 2 for Phase B. Combinations of these three signals are used to derive the commutation sequence. This scheme is easy to implement with three op amp comparators.
© 2005 Microchip Technology Inc.
DS00970A-page 3
AN970 There are a few drawbacks to this circuit. First, if all three windings do not have identical characteristics, the BEMF measured will have either positive or negative phase shift. This will result in energizing windings at different instances than they should be. This may result in the motor winding drawing excessive current. Another drawback is that if the motor rated voltage is much less than the DC bus voltage, there could be a large difference between the BEMF zero crossover point and half of the DC bus voltage. This could also result in having a phase shift result in either direction. The circuit can be improved upon by generating a virtual neutral point, as shown in Figure 3. The neutral point is generated using a resistor network. Three networks are connected in parallel with the motor windings and connected together to generate a virtual neutral point. This resistive network is assembled on the control board between the 3-phase inverter bridge and the motor terminals. The resistor values should be chosen such that they will have insignificant effect on the motor current. (Refer to Appendix A: “Motor Control Circuit Schematics” for the circuit schematic used in this application note.) In this case, the BEMF signal is compared with this virtual neutral point. When the BEMF developed in the winding crosses the zero point towards positive side, the comparator output makes a transition from low-to-high. When the BEMF developed in the winding crosses the zero point towards negative side, the comparator output makes a transition from high-to-low. By having three such comparator circuits, one on each of the phases gives three digital signals corresponding to the BEMF signal in the windings. The combination of these three signals is used to derive the commutation sequence.
FIGURE 3:
BEMF VOLTAGE COMPARED TO A VIRTUAL NEUTRAL POINT
A third method of detecting the BEMF zero crossover is using the A/D converter channels, as shown in Figure 4. The PIC18FXX31 microcontrollers have a high-speed A/D converter that can be used for this purpose. Using a potential divider, the BEMF signal is brought down to a level that the microcontroller can measure. This signal is sampled by the A/D, and is continuously compared with a digital value corresponding to the zero point. When the two values match, the commutation sequence is updated. The advantage with this method is that it is more flexible in terms of measurement. When the speed varies, the winding characteristics may fluctuate, resulting in variation of BEMF. In such situations, the microcontroller has complete control over the determination of the zero crossover point. Also, digital filters can be implemented to filter out the high-frequency switching noise components from the BEMF signal.
FIGURE 4:
BEMF VOLTAGE MEASURED USING ANALOG-TO-DIGITAL CONVERTERS A
C
B
Signal conditioning AN0
A
AN1 AN2
Back EMF
Back EMF
C DC-
B
+ _
Virtual Neutral
DS00970A-page 4
To IC2
© 2005 Microchip Technology Inc.
AN970 HARDWARE
Note:
Figure 5 shows the block diagram for the sensorless BLDC control system discussed here; a complete schematic of the prototype board is provided in Appendix A: “Motor Control Circuit Schematics”. The board is capable of using either the PIC18F2331/2431 Microcontroller or a dsPIC30F2010 digital signal controller (only the PIC18F2431 is discussed here). Toggle switch S2 is used for changing the rotational direction and switch S1 is used for changing the state between run and stop. A potentiometer (R14) is used to set the speed reference; it is connected to A/D converter channel AN1.
BEMF Sensing Circuit In this application note, we are following the second method of determining the BEMF zero cross detection shown in Figure 3. As shown in the schematics in the Appendix, low-pass filter circuits and potential divider circuits are implemented on all three motor terminals. The low-pass filter is necessary to filter out the high frequency noise that is generated by the high frequency PWM switching. The potential divider reduces the voltage from high motor voltage to the level MCU can measure. After this, the BEMF signals are connected together using R27, R30 and R40 to form a virtual neutral point. The BEMF signal from each phase is compared with this neutral point using the op amp comparators. In order to use this configuration, jumpers J7, J11 and J13 should be bridged across pins 1 and 2, and jumpers J8, J12 and J14 should be bridged. By doing this, the comparator outputs are connected to the input capture pins IC1, IC2 and IC3 on the PIC18FXX31.
Shunt resistor R26 is connected in the return path of the DC bus. The voltage drop across this resistor varies linearly with respect to motor current. This voltage is amplified by a 1:10 ratio using op amp circuit U10A. This amplified voltage (motor current) is measured using A/D channel AN0. The motor current is compared with a current limit set by another potentiometer (R60). If the motor current exceeds the limit set, the output of U7D will toggle, indicating an overcurrent fault. This Fault is connected to Fault A input pin on PIC18F2431, which is an active-low pin.
The board also provides the option for connecting the BEMF signals to the A/D channels. The BEMF signal is filtered using the low-pass filters comprised of R34/C17, R41/C19 and R49/C19 on motor terminals M3, M2 and M1, respectively. The potential divider circuits comprised of R34/R36, R41/R44 and R49/R52 on motor terminals M3, M2 and M1 reduce the BEMF voltage to TTL level. To route the BEMF signals to the A/D channels, J7, J11 and J13 should be bridged between pins 2 and 3.
A switched-mode block power supply is used to generate 24V (shown in bold lines in Figure 5) from an AC input. Using linear voltage regulators VR1 and VR2, +5V and +15V are generated, respectively. The former powers the microcontroller, all op amps and related logic circuits, while the latter is used to power the MOSFET drivers (U6, U8 and U9).
FIGURE 5:
MOTOR CONTROL HARDWARE BLOCK DIAGRAM +15V Regulator
+5V Regulator Motor Speed
+5V
IC1 IC2 IC3
RA2 RA3 RA4
S2 S3
RC5
24V Power Supply
+24V
PWM5
PWM5
PWM4
PWM4
PWM3
PWM3
PWM2 PWM1 RC4 PIC18F2431
PWM2 IGBT Driver
PWM1 PWM0
PWM0
3-phase Inverter Bridge
BLDC Motor
AN0 RS232
AC input
+15V
AN1
ICD2
For a complete list of motor control application notes refer to www.microchip.com/motor.
Back EMF Signals
FLTA Amplifier
Comparator Imotor
Current Shunt
Signal Conditioning
IC1 IC2 IC3
Overcurrent Limit
© 2005 Microchip Technology Inc.
DS00970A-page 5
AN970 Motor Specifications A Hurst NT dynamo Brushless DC motor is used for the experiments. Its specifications are: • • • •
Rated voltage: 24 VDC Rated current: 1.00 A Rated speed: 2500 RPM Rotor poles: 10 (5 pole pairs)
Software Routines As discussed in earlier sections, the motor has to be run in open loop during start-up. When the speed reaches a level where the BEMF voltage has sufficient amplitude to measure the zero crossover point, the control is switched to closed loop. The difficult portion is synchronizing the rotor from open loop to closed loop with BEMF zero cross signals.
at one fixed speed. The Timer1 reload value, as shown in Equation 2, depends upon the motor rated speed, number of rotor poles, and the Timer1 prescaler value.
EQUATION 2: Timer1 Time =
60 RPM x Pole pairs x 6
According to Equation 2, in order to run the motor at 400 RPM, Timer1 should expire every 5 ms, or 2.2 ms for 900 RPM. The Timer1 overflow value can be calculated based on the main oscillator frequency and Timer1 prescaler, as shown in Equation 3.
EQUATION 3: Fosc Timer1 Reload Value = FFFFh – ⎛ Timer1 time x -----------⎞ ⎝ 4 ⎠
Motor Start-up From experimentation, it has been determined that the motor develops sufficient BEMF voltage amplitude at about 900 RPM. At this speed, the BEMF signals are compared with the virtual neutral point; this signal is read using the Input Capture module. This is done in two steps: when the motor is run at approximately 400 RPM, and then accelerated to 900 RPM. Timer1 is used to time the energizing sequence. The Timer1 reload value is calculated and the new energizing sequence is output on the PWM pins when the reload value expires. This ensures that the motor runs
FIGURE 6:
DS00970A-page 6
Upon a Timer1 overflow in the ISR, a new energizing sequence is loaded into the PWM override registers and Timer1 registers are reloaded with the value calculated using Equation 3. The PWM duty cycle corresponding to the speed is calculated and loaded on to the PDC registers. When the motor starts running at 900 RPM, the BEMF zero crossover point signals from the comparators are observed for 16 cycles to synchronize with the energizing sequence.
OSCILLOSCOPE WAVEFORM OF BEMF AND HALL SENSOR SIGNALS
© 2005 Microchip Technology Inc.
AN970 FIGURE 7:
BEMF VERSUS ZERO CROSSING
a) Back EMF signal vs. zero crossover point (without filter)
b) Back EMF signal vs. zero crossover point (with filter)
© 2005 Microchip Technology Inc.
DS00970A-page 7
AN970 SYNCHRONIZING ZERO CROSSOVER SIGNALS WITH THE ENERGIZING SEQUENCE When the motor is running at 900 RPM, the BEMF zero crossover (BEMC-ZC) signals, with respect to Hall sensor output, looks like those shown in Figure 6. The phase difference between the actual BEMF-ZC and the Hall sensors is 30 degrees. From the experiments, its found that the delay between the Hall signals to BEMF-ZC signals connected to input capture pins is 60 degrees throughout the speed range. Keeping this delay in mind, the energizing sequence has to be synchronized with the BEMF-ZC signal. Timer1 is used
FIGURE 8:
to count a 60-degree electrical delay from every BEMF-ZC signal. After the timer expires, the energizing sequence is loaded to the OVDCOND register. In this version of firmware, IC1 input is used for synchronizing the BEMF-ZC signals twice in an electric cycle. All three input capture inputs are used for determining the energizing sequence for every rotor state. The Motion Feedback Module (MFM) on the PIC18F2431 has programmable digital filters. These act like low-pass filters with a selectable prescaler. Based on the speed, three levels of filtering is provided in this firmware. A more detailed overview of the firmware is provided in the flowcharts in Figure 8 through Figure 10.
MAIN MOTOR CONTROL SOFTWARE LOOP
START
No S2 or S3 pressed? Yes Initialize PWM in Independent mode
Initialize ADC
No
Is Sensorless on? Yes
Update PWM Duty Cycle Routine
DS00970A-page 8
PWM Duty Cycle Calculation
Add Offset to the Speed Reference
Limit Speed Ref Value to FDh
PWM Duty cycle = [(MotorVoltage/ DCBusVoltage) X (4 X PWMPeriod)] X [SpeedRef/255]
Check S2/S3 Activity Routine
Load PWM Duty Cycle to all PDC Registers
Check Overcurrent Routine
RETURN
© 2005 Microchip Technology Inc.
AN970 FIGURE 9:
ISR FLOWCHART (MAIN ROUTINE AND IC1 SERVICE) Main ISR Service Routine (ISR_HIGH)
IC1 ISR?
Yes
A
No
Timer1 ISR?
Yes
B
No
Read Motor Current from AD0
ADC ISR? Yes No
Read Speed Ref from AD1
IC1 Service Routine PWM ISR? Yes
C A
No RETFIE No
Is openloop speed > Min_speed? Yes
Observe BEMF-ZC for 16 Cycles
No
Is Sensorless on?
Yes
No
Is BEMF > 16 counts?
Set DFLTCON Clock Divide Value Based on Speed
Yes Load 60 Degree Time to Timer Set Digital Filter to Low Clock Divide Ratio Enable Timer1 Interrupt
RETFIE
© 2005 Microchip Technology Inc.
DS00970A-page 9
AN970 FIGURE 10:
ISR ROUTINE (TIMER1 AND PWM SERVICE)
Timer1 Service Routine B
Is Sensorless on?
No
Is the speed in open loop step1?
No
Update the Switching Sequence Based on the IC1/IC2/IC3 State
Load 60 Degree Time to Timer1
No
Yes
Yes
Yes
Is the speed in open loop step2?
Reload TMR1 = HIGH_OL_SPEED
Reload TMR1 = LOW_OL_SPEED
Set the Energizing Sequence with Count 1 to 6
RETFIE
PWM Service Routine C
Is the rotor locked up?
Yes
All PWMs to Inactive State
No
Is there a overcurrent (OC) fault? No
Yes
Is OC > MAX FAULTA_COUNT in 256 PWM cycles?
Yes
Configure FAULTA to Catastrophic mode
No Blink LED1 Indicating OC
RETFIE
DS00970A-page 10
© 2005 Microchip Technology Inc.
AN970 RESOURCE USAGE The BLDC application consumes CPU resources as shown in Table 1.
TABLE 1:
RESOURCES USED IN THE BLDC (USING PIC18F2431)
Resource Type
Used
ROM
800 bytes
RAM
65 bytes
MIPS
4.5 MIPS
CONCLUSION Sensorless control of BLDC motors has several advantages, such as reduction of total system cost and increased reliability. However, it requires extra resources on the control circuit side. The specialized peripherals on PIC18FXX31 microcontrollers (PCPWM, Motion Feedback Module and the High-Speed A/D converter) can simplify the sensorless control up to a great extent. This application note demonstrates the implementation of sensorless control of a BLDC motor using the 28-pin version of the PIC18FXX31 microcontroller family, the PIC18F2431.
© 2005 Microchip Technology Inc.
DS00970A-page 11
AN970 NOTES:
DS00970A-page 12
© 2005 Microchip Technology Inc.
© 2005 Microchip Technology Inc.
3
4
3
4
S3
S2
100
2
1
2
1
C5
2
1
R19
4K7
R17
+5V
R18
4K7
R16
+5V
33 pF
C9
3
VREF
POT
0.1 uF
S1
+5V
R15
R14 2K
3
4
1
C10
4K7
4K7
RC0
RC5
33 pF
5 MHz
J15
2
VBUS
2K
OSC2
OSC1
HALLC
HALLB
HALLA
IMOTOR
MCLR R12
+5V
MCLR
VDD
RA3 RA4
PIC18F2431
RC7
8 AVSS 19 VSS
RC5
RC4
RC3
RC6
OSC1
RC2
RC1
RC0
RB7
RB6
RB5
RB4
RB3
RB2
RB1
RB0
21
28
27
26
25
24
23
22
18
17
16
15
14
13
12
11
0.1 uF
OSC2
10
9
7 AVDD
6
5
2 RA0 3 RA1 4 RA2
1
20
U1
RX
TX
RC5
RC4
RC3
RC2
FAULTA
RC0
RB7
RB6
PWM4
PWM5
PWM3
1 uF
C6
RX
TX
6
RB5
T2IN
T1IN
C1+
V-
C2-
C2+
R2IN
GND 15
R2OUT
R1IN
5
4
8
13
T1OUT 14 7 T2OUT
VCC
16
MAX232
U2
+5V C1
2
J16
1 uF
C7
1
J17
1
R66
10
R13
5
2
J1
8 9
7
6
RB6
FAULTA
R65
PIN1 PIN6 PIN2 PIN7 PIN3 3 PIN8 PIN4 4 PIN9 PIN5
1
2
+5V
PWM5
PWM4
PWM3
PWM2
PWM1
PWM0
+5V
1 uF
RD0 15
VDD 20 VSS 19 18 RF2 17 RF3 RE8 16
AVDD 28 27 AVSS 26 RE0 25 RE1 24 RE2 23 RE3 22 RE4 RE5 21
dsPIC30F2010
R1OUT
1 uF
C8
RB2
8 AVSS 9 OSC1 10 OSC2 11 RC13 12 RC14 13 VDD 14 RD1
3 C1-
1
9
12
10
11
RB0
5 RB3 6 RB4 7
4
U3 MCLR
3 RB1
2
1
1 uF 2 V+
C4
+5V
+5V RB7
RC5
RC0
OSC2
OSC1
PWM1 PWM2
HALLB HALLC
PWM0
HALLA
POT
IMOTOR
VBUS
MCLR
2K
2K
RX TX
FIGURE A-1:
0.1 uF
C3
+5V
APPENDIX A:
10K
R11
+5V
C2
470
R10
AN970
MOTOR CONTROL CIRCUIT SCHEMATICS
PART 1 (PIC18F MICROCONTROLLER, dsPIC30 DSP, USART AND ASSOCIATED PARTS)
DS00970A-page 13
DS00970A-page 14
11
10
9
8
7
6
5
4
3
2
1
2
1
1
0.1R
605HR100 R26
2
J10
J9_11
J9_10
J9_9
+5V
M1
M2
M3
DC+
V_IN
R36
47 nF
1K
R61
1K
R59
47 nF
2
47 nF
C23
+
–
10K
R56
MCP6002 3
2K2
300 R52
27K C21
R50
R49
2K2
300
27K C19 47 nF R44
2K2
R42
DC-
C22
C17 47 nF
300
R35
R41
27K
R34
4
8
+5V
1
+5V
C25
R74
0.1 uF
J13
J11
J7
U10:A
3
2
1
3
2
1
3
2
1
33 pF
C14
1K
R58
R31
10K
R51
10K
R43
10K
33 pF
C24
300 IMOTOR
100K
R40
100K
R30
100K
R27
100K
R28
2K4
+5V R55
9
13
R60 5K
12
MCP6544
1M
R53
10
MCP6544
R46
6 5
MCP6544
R37
3
MCP6544
2
+
–
+
–
1M
+
–
1M
+
–
C15
1M U7:D 14
8
U7:C
7
U7:B
U7:A 1
0.1 uF
R57
11
4
+5V
R73
300
R48
300
R39
300
R32
2
2
2
300 FAULTA
HALLC
1
J14
HALLB
1
J12
HALLA
1
J8
5
6
+
7
U10:B MCP6002
–
FIGURE A-2:
ED2324
J9
J3
AN970 BOARD SCHEMATIC, PART 2 (BACK EMF SIGNAL CONDITIONING AND CURRENT FAULT DETECTION)
© 2005 Microchip Technology Inc.
© 2005 Microchip Technology Inc.
6 7 8
J4
2
3
5
4
1 2
V_IN
300
R72
J5
300
R71
+15V
300
R70
1
PWM4
PWM5
PWM2
300
R69
+15V
300
R68
1
U9
2
+15V
+
C20 3.3 uF
+15V
+
C18 3.3 uF
+15V
+
C16 3.3 uF
MC7815CD2T/R4 3 VOUT VIN + GND C13 2 47 uF
VR2
1
J18
8 7 6 1 5 4
8 7 6 1 5 4
8 7 6 1 5 4
VB HO VS VCC LO COM IR2101S
2 HIN 3 LIN
US1K
D6
VB HO VS VCC LO COM IR2101S
2 HIN 3 LIN
U8
US1K
D5
VB HO VS VCC LO COM IR2101S
2 HIN 3 LIN
U6
US1K
D4
33R
R54
33R
R47
33R
R45
33R
R38
33R
R33
33R
R29
3
C28 0.1 uF
3
M3
3
C11 47 uF
+15V
Q6 IRFR2407
3
Q5 IRFR2407
DC-
2
2
M2 Q4 IRFR2407
DCDC+
2
3
Q3 IRFR2407
DC+ 2
M1 Q2 IRFR2407
DC-
2
Q1 IRFR2407 3
+15V
1
1
1
1
1
1
2
DC+
+
R20 10K
1
2
1
J9_11
J9_10
J9_9
J19
1
2
VR1
+5V
PWM1
1K
R2 1K
R3
10K R24
1K
R4
R25
R22
R21
10K R23
1K
R5 1K
R6
PWM5
C27 0.1 uF
+5V
1K
1K
1K
1K
R62
HALLC
HALLB
HALLA
PWM5
PWM4
PWM4
PWM3
PWM3
PWM2
PWM2
PWM1
MC7805CD2T/R4 3 VOUT VIN + GND C26 C12 2 47 uF 0.1 uF
J2
PWM0
1K
R1
PWM0
D1
1K
R7
RC4
D7
D2
1K
R8
D3
1K
R9
DC+
2K4
R64
12K
R63
RB6
RB7
6
5
4
3
2
ICD 1
+5V
RC3
MCLR
RC2
0.1 uF
C29
VBUS
J6
FIGURE A-3:
PWM3
PWM0
PWM1
300
R67
+15V
AN970
BOARD SCHEMATIC, PART 3 (MOTOR DRIVER BRIDGE, POWER SUPPLY AND REGULATORS, LEDS AND OTHER CONNECTORS)
DS00970A-page 15
AN970 NOTES:
DS00970A-page 16
© 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 Microchip’s 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 Microchip’s 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 applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip’s products as critical components in life support systems is not authorized except with express written approval by Microchip. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.
Trademarks The Microchip name and logo, the Microchip logo, Accuron, dsPIC, KEELOQ, microID, MPLAB, PIC, PICmicro, PICSTART, PRO MATE, PowerSmart, rfPIC, and SmartShunt are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries. AmpLab, FilterLab, Migratable Memory, MXDEV, MXLAB, PICMASTER, SEEVAL, SmartSensor and The Embedded Control Solutions Company are registered trademarks of Microchip Technology Incorporated in the U.S.A. Analog-for-the-Digital Age, Application Maestro, dsPICDEM, dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR, FanSense, FlexROM, fuzzyLAB, In-Circuit Serial Programming, ICSP, ICEPIC, MPASM, MPLIB, MPLINK, MPSIM, PICkit, PICDEM, PICDEM.net, PICLAB, PICtail, PowerCal, PowerInfo, PowerMate, PowerTool, rfLAB, rfPICDEM, Select Mode, Smart Serial, SmartTel and Total Endurance 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 Company’s 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, Microchip’s quality system for the design and manufacture of development systems is ISO 9001:2000 certified.
© 2005 Microchip Technology Inc.
DS00970A-page 17
WORLDWIDE SALES AND SERVICE AMERICAS
ASIA/PACIFIC
ASIA/PACIFIC
EUROPE
Corporate Office 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 Technical Support: http://support.microchip.com Web Address: www.microchip.com
Australia - Sydney Tel: 61-2-9868-6733 Fax: 61-2-9868-6755
India - Bangalore Tel: 91-80-2229-0061 Fax: 91-80-2229-0062
China - Beijing Tel: 86-10-8528-2100 Fax: 86-10-8528-2104
India - New Delhi Tel: 91-11-5160-8631 Fax: 91-11-5160-8632
Austria - Weis Tel: 43-7242-2244-399 Fax: 43-7242-2244-393 Denmark - Ballerup Tel: 45-4450-2828 Fax: 45-4485-2829
China - Chengdu Tel: 86-28-8676-6200 Fax: 86-28-8676-6599
Japan - Kanagawa Tel: 81-45-471- 6166 Fax: 81-45-471-6122
France - Massy Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79
China - Fuzhou Tel: 86-591-8750-3506 Fax: 86-591-8750-3521
Korea - Seoul Tel: 82-2-554-7200 Fax: 82-2-558-5932 or 82-2-558-5934
Germany - Ismaning Tel: 49-89-627-144-0 Fax: 49-89-627-144-44
Atlanta Alpharetta, GA Tel: 770-640-0034 Fax: 770-640-0307 Boston Westford, MA Tel: 978-692-3848 Fax: 978-692-3821 Chicago Itasca, IL Tel: 630-285-0071 Fax: 630-285-0075 Dallas Addison, TX Tel: 972-818-7423 Fax: 972-818-2924 Detroit Farmington Hills, MI Tel: 248-538-2250 Fax: 248-538-2260 Kokomo Kokomo, IN Tel: 765-864-8360 Fax: 765-864-8387
China - Hong Kong SAR Tel: 852-2401-1200 Fax: 852-2401-3431 China - Shanghai Tel: 86-21-5407-5533 Fax: 86-21-5407-5066 China - Shenyang Tel: 86-24-2334-2829 Fax: 86-24-2334-2393 China - Shenzhen Tel: 86-755-8203-2660 Fax: 86-755-8203-1760 China - Shunde Tel: 86-757-2839-5507 Fax: 86-757-2839-5571
Singapore Tel: 65-6334-8870 Fax: 65-6334-8850 Taiwan - Kaohsiung Tel: 886-7-536-4818 Fax: 886-7-536-4803 Taiwan - Taipei Tel: 886-2-2500-6610 Fax: 886-2-2508-0102
Italy - Milan Tel: 39-0331-742611 Fax: 39-0331-466781 Netherlands - Drunen Tel: 31-416-690399 Fax: 31-416-690340 England - Berkshire Tel: 44-118-921-5869 Fax: 44-118-921-5820
Taiwan - Hsinchu Tel: 886-3-572-9526 Fax: 886-3-572-6459
China - Qingdao Tel: 86-532-502-7355 Fax: 86-532-502-7205
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
10/20/04
DS00970A-page 18
© 2005 Microchip Technology Inc.