AN905 Brushed DC Motor Fundamentals Author: Reston Condit Microchip Technology Inc. INTRODUCTION Brushed DC motors are widely used in applications ranging from toys to push-button adjustable car seats. Brushed DC (BDC) motors are inexpensive, easy to drive, and are readily available in all sizes and shapes. This application note will discuss how a BDC motor works, how to drive a BDC motor, and how a drive circuit can be interfaced to a PIC® microcontroller. PRINCIPLES OF OPERATION The construction of a simple BDC motor is shown in Figure 1. All BDC motors are made of the same basic components: a stator, rotor, brushes and a commutator. The following paragraphs will explain each component in greater detail. FIGURE 1: Stator The stator generates a stationary magnetic field that surrounds the rotor. This field is generated by either permanent magnets or electromagnetic windings. The different types of BDC motors are distinguished by the construction of the stator or the way the electromagnetic windings are connected to the power source. (See Types of Stepping Motors for the different BDC motor types). Rotor The rotor, also called the armature, is made up of one or more windings. When these windings are energized they produce a magnetic field. The magnetic poles of this rotor field will be attracted to the opposite poles generated by the stator, causing the rotor to turn. As the motor turns, the windings are constantly being energized in a different sequence so that the magnetic poles generated by the rotor do not overrun the poles generated in the stator. This switching of the field in the rotor windings is called commutation. SIMPLE TWO-POLE BRUSHED DC MOTOR N SOUTH NORTH Brushes Commutator Field Axle 2010 Microchip Technology Inc. Armature Magnet or Coil DS00905B-page 1 AN905 Brushes and Commutator Shunt-Wound Unlike other electric motor types (i.e., brushless DC, AC induction), BDC motors do not require a controller to switch current in the motor windings. Instead, the commutation of the windings of a BDC motor is done mechanically. A segmented copper sleeve, called a commutator, resides on the axle of a BDC motor. As the motor turns, carbon brushes slide over the commutator, coming in contact with different segments of the commutator. The segments are attached to different rotor windings, therefore, a dynamic magnetic field is generated inside the motor when a voltage is applied across the brushes of the motor. It is important to note that the brushes and commutator are the parts of a BDC motor that are most prone to wear because they are sliding past each other. Shunt-wound Brushed DC (SHWDC) motors have the field coil in parallel (shunt) with the armature. The current in the field coil and the armature are independent of one another. As a result, these motors have excellent speed control. SHWDC motors are typically used in applications that require five or more horsepower. Loss of magnetism is not an issue in SHWDC motors so they are generally more robust than PMDC motors. TYPES OF STEPPING MOTORS As mentioned earlier, the way the stationary magnetic field is produced in the stator differentiates the various types of BDC motors. This section will discuss the different types of BDC motors and the advantages/ disadvantages of each. Permanent Magnet Permanent Magnet Brushed DC (PMDC) motors are the most common BDC motors found in the world. These motors use permanent magnets to produce the stator field. PMDC motors are generally used in applications involving fractional horsepower because it is more cost effective to use permanent magnets than wound stators. The drawback of PMDC motors is that the magnets lose their magnetic properties over time. Some PMDC motors have windings built into them to prevent this from happening. The performance curve (voltage vs. speed), is very linear for PMDC motors. Current draw also varies linearly with torque. These motors respond to changes in voltage very quickly because the stator field is always constant. FIGURE 3: SHUNT-WOUND DC MOTORS Brush DC Voltage Supply Shunt Field Armature Series-Wound Series-wound Brushed DC (SWDC) motors have the field coil in series with the armature. These motors are ideally suited for high-torque applications because the current in both the stator and armature increases under load. A drawback to SWDC motors is that they do not have precise speed control like PMDC and SHWDC motors have. FIGURE 4: DC Voltage Supply SERIES-WOUND DC MOTORS Series Field Armature Brush FIGURE 2: PERMANENT MAGNET DC MOTORS Armature DC Voltage Supply DS00905B-page 2 Brush Permanent Magnet Poles 2010 Microchip Technology Inc. AN905 Compound-Wound Compound Wound (CWDC) motors are a combination of shunt-wound and series-wound motors. As shown in Figure 5, CWDC motors employ both a series and a shunt field. The performance of a CWDC motor is a combination of SWDC and SHWDC motors. CWDC motors have higher torque than a SHWDC motor while offering better speed control than a SWDC motor. Drive circuits are used in applications where a controller of some kind is being used and speed control is required. The purpose of a drive circuit is to give the controller a way to vary the current in the windings of the BDC motor. The drive circuits discussed in this section allow the controller to pulse-width modulate the voltage supplied to a BDC motor. In terms of power consumption, this method of speed control is a far more efficient way to vary the speed of a BDC motor compared to traditional analog control methods. Traditional analog control required the addition of an inefficient variable resistance in series with the motor. BDC motors are driven in a variety of ways. In some cases the motor only needs to spin in one direction. Figure 6 and Figure 7 show circuits for driving a BDC motor in one direction. The first is a low-side drive and the second is a high-side drive. The advantage to using the low-side drive is that a FET driver is not typically needed. A FET driver is used to: 2. 3. bring the TTL signal driving a MOSFET to the potential level of the supply voltage, provide enough current to drive the MOSFET(1), and provide level shifting in half-bridge applications. Note: The second point typically does not apply to most PIC® microcontroller applications because PIC MCU I/O pins can source 20 mA. 2010 Microchip Technology Inc. Motor R1 FIGURE 7: HIGH-SIDE BDC MOTOR DRIVE CIRCUIT VCC VCC R1 BDC D1 Armature BDC D1 Brush BASIC DRIVE CIRCUITS 1. VCC R2 Shunt Field LOW-SIDE BDC MOTOR DRIVE CIRCUIT R2 Series Field FIGURE 6: To Controller DC Voltage Supply COMPOUND-WOUND DC MOTORS To Controller FIGURE 5: Note that in each circuit there is a diode across the motor. This diode is there to prevent Back Electromagnetic Flux (BEMF) voltage from harming the MOSFET. BEMF is generated when the motor is spinning. When the MOSFET is turned off, the winding in the motor is still charged at this point and will produce reverse current flow. D1 must be rated appropriately so that it will dissipate this current. Motor Resistors R1 and R2 in Figure 6 and Figure 7 are important to the operation of each circuit. R1 protects the microcontroller from current spikes while R2 ensures that Q1 is turned off when the input pin is tri-stated. DS00905B-page 3 AN905 Note the diodes across each of the MOSFETs (D1-D4). These diodes protect the MOSFETs from current spikes generated by BEMF when the MOSFETs are switched off. These diodes are only needed if the internal MOSFET diodes are not sufficient for dissipating the BEMF current. Bidirectional control of a BDC motor requires a circuit called an H-bridge. The H-bridge, named for its schematic appearance, is able to move current in either direction through the motor winding. To understand this, the H-bridge must be broken into its two sides, or half-bridges. Referring to Figure 8, Q1 and Q2 make up one half-bridge while Q3 and Q4 make up the other half-bridge. Each of these half-bridges is able to switch one side of the BDC motor to the potential of the supply voltage or ground. When Q1 is turned on and Q2 is off, for instance, the left side of the motor will be at the potential of the supply voltage. Turning on Q4 and leaving Q3 off will ground the opposite side of the motor. The arrow labeled IFWD shows the resulting current flow for this configuration. FIGURE 8: The capacitors (C1-C4) are optional. The value of these capacitors is generally in the 10 pF range. The purpose of these capacitors is to reduce the RF radiation that is produced by the arching of the commutators. BIDIRECTION BDC MOTOR DRIVE (H-BRIDGE) CIRCUIT VSUPPLY R1 Q1 D1 C1 C3 D3 Q3 D4 Q4 Motor IFWD BDC CTRL3 R3 CTRL1 IRVS IBRK CTRL2 D2 C2 R2 The different drive modes for and H-bridge circuit are shown in Table 1. In Forward mode and Reverse mode one side of the bridge is held at ground potential and the other side at VSUPPLY. In Figure 8 the IFWD and IRVS arrows illustrate the current paths during the Forward and Reverse modes of operation. In Coast mode, the ends of the motor winding are left floating and the motor coasts to a stop. Brake mode is used to rapidly stop the BDC motor. In Brake mode, the ends of the motor are grounded. The motor behaves as a generator when it is rotating. Shorting the leads of the motor acts as a load of infinite magnitude bringing the motor to a rapid halt. The IBRK arrow illustrates this. TABLE 1: C4 CTRL4 R4 Q2 There is one very important consideration that must be taken into account when designing an H-bridge circuit. All MOSFETs must be biased to off when the inputs to the circuit are unpredictable (like when the microcontroller is starting up). This will ensure that the MOSFETs on each half-bridge of the H-bridge will never be turned on at the same time. Turning MOSFETs on that are located on the same half-bridge will cause a short across the power supply, ultimately damaging the MOSFETs and rendering the circuit inoperable. Pull-down resistors at each of the MOSFET driver inputs will accomplish this functionality (for the configuration shown in Figure 8). H-BRIDGE MODES OF OPERATION Q1 Q2 Q3 Q4 (CTRL1) (CTRL2) (CTRL3) (CTRL4) Forward on off off on Reverse off on on off Coast off off off off Brake off on off on DS00905B-page 4 2010 Microchip Technology Inc. AN905 SPEED CONTROL The speed of a BDC motor is proportional to the voltage applied to the motor. When using digital control, a pulse-width modulated (PWM) signal is used to generate an average voltage. The motor winding acts as a low pass filter so a PWM waveform of sufficient frequency will generate a stable current in the motor winding. The relation between average voltage, the supply voltage, and duty cycle is given by: EQUATION 1: VAVERAGE = D VSUPPLY Speed and duty cycle are proportional to one another. For example, if a BDC motor is rated to turn at 15000 RPM at 12V, the motor will (ideally) turn at 7500 RPM when a 50% duty cycle waveform is applied across the motor. The frequency of the PWM waveform is an important consideration. Too low a frequency will result in a noisy motor at low speeds and sluggish response to changes in duty cycle. Too high a frequency lessens the efficiency of the system due to switching losses in the switching devices. A good rule of thumb is to modulate the input waveform at a frequency in the range of 4 kHz to 20 kHz. This range is high enough that audible motor noise is attenuated and the switching losses present in the MOSFETs (or BJTs) are negligible. Generally, it is a good idea to experiment with the PWM frequency for a given motor to find a satisfactory frequency. So how can a PIC microcontroller be used to generate the PWM waveform required to control the speed of a BDC motor? One way would be to toggle an output pin by writing assembly or C code dedicated to driving that pin(1). Another way is to select a PIC microcontroller with a hardware PWM module. The modules available from Microchip for this purpose are the CCP an ECCP modules. Many of the PIC microcontrollers have CCP and ECCP modules. Refer to the product selector guide to find the devices having these features. Note: Microchip Application Note AN847 provides an assembly code routine for pulse-width modulating an I/O pin in firmware. The CCP module (short for Capture Compare and PWM) is capable of outputting a 10-bit resolution PWM waveform on a single I/O pin. 10-bit resolution means that 210, or 1024, possible duty cycle values ranging from 0% to 100% are achievable by the module. The advantage to using this module is that it automatically generates a PWM signal on an I/O pin which frees up processor time for doing other things. The CCP module only requires that the developer configure the parameters of the module. Configuring the module includes setting the frequency and duty cycle registers. 2010 Microchip Technology Inc. The ECCP module (short for Enhanced Capture Compare and PWM) provides the same functionality as the CCP module with the added capability of driving a full or half-bridge circuit. The ECCP module also has auto-shutdown capability and programmable dead band delay. Note: Microchip Application Note AN893 gives a detailed explanation of configuring the ECCP module for driving a BDC motor. The application note also includes firmware and drive circuit examples. FEEDBACK MECHANISMS Though the speed of a BDC motor is generally proportional to duty cycle, no motor is ideal. Heat, commutator wear and load all affect the speed of a motor. In systems where precise speed control is required, it is a good idea to include some sort of feedback mechanism in the system. Speed feedback is implemented in one of two ways. The first involves the use of a speed sensor of some kind. The second uses the BEMF voltage generated by the motor. Sensored Feedback There are a variety of sensors used for speed feedback. The most common are optical encoders and hall effect sensors. Optical encoders are made up of several components. A slotted wheel is mounted to the shaft at the non-driving end of the motor. An infrared LED provides a light source on one side of the wheel and a photo transistor detects light on the other side of the wheel (see Figure 9). Light passing through the slots in the wheel will turn the photo transistor on. As the shaft turns, the photo transistor turns on and off with the passing of the slots in the wheel. The frequency at which the transistor toggles is an indication of motor speed. In the case of positioning applications, an optical encoder will also provide feedback as to the position of the motor. FIGURE 9: OPTICAL ENCODER Slotted Wheel IR LED Front View Photo Transistor Side View DS00905B-page 5 AN905 Back Electro Magnetic Flux (BEMF) Hall effect sensors are also used to provide speed feedback. Like optical encoders, Hall effect sensors require a rotary element attached to the motor and a stationary component. The rotary element is a wheel with one or more magnets positioned on its outer rim. A stationary sensor detects the magnet when in passes and generates a TTL pulse. Figure 10 shows the basic components of a Hall effect sensor. FIGURE 10: Another form of velocity feedback for a BDC motor is BEMF voltage measurement. BEMF voltage and speed are proportional to one another. Figure 11 shows the locations where BEMF voltage is measured on a bidirectional drive circuit. A voltage divider is used to drop the BEMF voltage into the 0-5V range so that it can be read by an analog-to-digital converter. The BEMF voltage is measured between PWM pulses when one side of the motor is floating and the other is grounded. At this instance in time the motor is acting like a generator and produces a BEMF voltage proportional to speed. HALL EFFECT SENSOR Wheel Magnet Magnet Hall Effect Sensor Front View FIGURE 11: Side View BACK EMF VOLTAGE MEASUREMENT VSUPPLY C1 R1 Q1 Q3 CTRL3 R3 Motor BEMF CTRL2 C3 BDC R2 Q2 C2 BEMF C4 Q4 CTRL4 R4 CTRL1 All BDC motors behave slightly differently because of differences in efficiency and materials. Experimentation is the best way to determine the BEMF voltage for a given motor speed. A piece of reflect tape on the shaft of the motor will allow a digital tachometer to measure the RPM of the motor. Measuring the BEMF voltage while reading the digital tachometer will give a correlation between motor speed and BEMF voltage. Note: Microchip Application Note AN893 provides firmware and circuit examples for reading the BEMF voltage using a PIC16F684. DS00905B-page 6 2010 Microchip Technology Inc. AN905 CONCLUSION Brushed DC motors are very simple to use and control, which makes them a short design-in item. PIC microcontrollers, especially those with CCP or ECCP modules, are ideally suited for driving BDC motors. REFERENCES AN893, “Low-Cost Bidirectional Brushed DC Motor Control Using the PIC16F684“. AN847, “RC Model Aircraft Motor Control”. www.howstuffworks.com www.engin.umich.edu/labs/csdl/me350/motors/dc/ index.html 2010 Microchip Technology Inc. DS00905B-page 7 AN905 NOTES: DS00905B-page 8 2010 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 devices in life support and/or safety applications is entirely at the buyer’s risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights. Trademarks The Microchip name and logo, the Microchip logo, dsPIC, KEELOQ, KEELOQ logo, MPLAB, PIC, PICmicro, PICSTART, PIC32 logo, rfPIC and UNI/O are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries. FilterLab, Hampshire, HI-TECH C, Linear Active Thermistor, MXDEV, MXLAB, SEEVAL 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, CodeGuard, dsPICDEM, dsPICDEM.net, dsPICworks, dsSPEAK, ECAN, ECONOMONITOR, FanSense, HI-TIDE, In-Circuit Serial Programming, ICSP, Mindi, MiWi, MPASM, MPLAB Certified logo, MPLIB, MPLINK, mTouch, Omniscient Code Generation, PICC, PICC-18, PICDEM, PICDEM.net, PICkit, PICtail, REAL ICE, rfLAB, Select Mode, Total Endurance, TSHARC, UniWinDriver, WiperLock and ZENA 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. © 2010, Microchip Technology Incorporated, Printed in the U.S.A., All Rights Reserved. Printed on recycled paper. ISBN: 978-1-60932-665-4 Microchip received ISO/TS-16949:2002 certification for its worldwide headquarters, design and wafer fabrication facilities in Chandler and Tempe, Arizona; Gresham, Oregon and design centers in California and India. The Company’s quality system processes and procedures are for its PIC® MCUs and dsPIC® DSCs, 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. 2010 Microchip Technology Inc. DS00905B-page 9 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 Asia Pacific Office Suites 3707-14, 37th Floor Tower 6, The Gateway Harbour City, Kowloon Hong Kong Tel: 852-2401-1200 Fax: 852-2401-3431 India - Bangalore Tel: 91-80-3090-4444 Fax: 91-80-3090-4123 India - New Delhi Tel: 91-11-4160-8631 Fax: 91-11-4160-8632 Austria - Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 Denmark - Copenhagen Tel: 45-4450-2828 Fax: 45-4485-2829 India - Pune Tel: 91-20-2566-1512 Fax: 91-20-2566-1513 France - Paris Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 Japan - Yokohama Tel: 81-45-471- 6166 Fax: 81-45-471-6122 Germany - Munich Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 Atlanta Duluth, GA Tel: 678-957-9614 Fax: 678-957-1455 Boston Westborough, MA Tel: 774-760-0087 Fax: 774-760-0088 Chicago Itasca, IL Tel: 630-285-0071 Fax: 630-285-0075 Cleveland Independence, OH Tel: 216-447-0464 Fax: 216-447-0643 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 Los Angeles Mission Viejo, CA Tel: 949-462-9523 Fax: 949-462-9608 Santa Clara Santa Clara, CA Tel: 408-961-6444 Fax: 408-961-6445 Toronto Mississauga, Ontario, Canada Tel: 905-673-0699 Fax: 905-673-6509 Australia - Sydney Tel: 61-2-9868-6733 Fax: 61-2-9868-6755 China - Beijing Tel: 86-10-8528-2100 Fax: 86-10-8528-2104 China - Chengdu Tel: 86-28-8665-5511 Fax: 86-28-8665-7889 Korea - Daegu Tel: 82-53-744-4301 Fax: 82-53-744-4302 China - Chongqing Tel: 86-23-8980-9588 Fax: 86-23-8980-9500 Korea - Seoul Tel: 82-2-554-7200 Fax: 82-2-558-5932 or 82-2-558-5934 China - Hong Kong SAR Tel: 852-2401-1200 Fax: 852-2401-3431 Malaysia - Kuala Lumpur Tel: 60-3-6201-9857 Fax: 60-3-6201-9859 China - Nanjing Tel: 86-25-8473-2460 Fax: 86-25-8473-2470 Malaysia - Penang Tel: 60-4-227-8870 Fax: 60-4-227-4068 China - Qingdao Tel: 86-532-8502-7355 Fax: 86-532-8502-7205 Philippines - Manila Tel: 63-2-634-9065 Fax: 63-2-634-9069 China - Shanghai Tel: 86-21-5407-5533 Fax: 86-21-5407-5066 Singapore Tel: 65-6334-8870 Fax: 65-6334-8850 China - Shenyang Tel: 86-24-2334-2829 Fax: 86-24-2334-2393 Taiwan - Hsin Chu Tel: 886-3-6578-300 Fax: 886-3-6578-370 China - Shenzhen Tel: 86-755-8203-2660 Fax: 86-755-8203-1760 Taiwan - Kaohsiung Tel: 886-7-213-7830 Fax: 886-7-330-9305 China - Wuhan Tel: 86-27-5980-5300 Fax: 86-27-5980-5118 Taiwan - Taipei Tel: 886-2-2500-6610 Fax: 886-2-2508-0102 China - Xian Tel: 86-29-8833-7252 Fax: 86-29-8833-7256 Thailand - Bangkok Tel: 66-2-694-1351 Fax: 66-2-694-1350 Italy - Milan Tel: 39-0331-742611 Fax: 39-0331-466781 Netherlands - Drunen Tel: 31-416-690399 Fax: 31-416-690340 Spain - Madrid Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 UK - Wokingham Tel: 44-118-921-5869 Fax: 44-118-921-5820 China - Xiamen Tel: 86-592-2388138 Fax: 86-592-2388130 China - Zhuhai Tel: 86-756-3210040 Fax: 86-756-3210049 08/04/10 DS00905B-page 10 2010 Microchip Technology Inc.