Design Idea
Microcontroller protects dc motor
Edited by Brad Thompson
Abel Raynus, Armatron International Inc, Malden, MA -- EDN, 2/17/2005
Although any overloaded dc motor can draw excessive current and sustain damage, a cooling fan's motor is particularly vulnerable due to fouling by dust, insects, or misplaced objects. A few fans include built-in overload protection, and others can use an external warning device, such as Microchip's TC670 fan-failure detector.
In many products, it's essential not only to detect an overloaded motor, but also to switch off the motor to prevent failure. Although you can design a protection system around the TC670, a low-end microcontroller can offer a less expensive, more flexible, and easier to implement alternative. If a product includes a microcontroller, only two spare pins are necessary for motor protection.
Figure 1 shows a dedicated protection circuit based on a small microcontroller and a power FET. This project uses an eight-pin flash-memory MC68HC908QT2 from Freescale and an IRF520A FET from Fairchild to control a dc brushless-fan motor rated for 0.72A at 12V dc. A high or low output voltage on output PA5 of IC1 controls Q1, an N-channel FET that in turn controls the motor. Current through the motor develops a voltage, V, that's proportional to the motor current across sense resistor R1. A lowpass filter comprising R2 and C1 reduces noise on the sense voltage you apply to input PA4 and IC1's built-in A/D converter. Voltage regulator IC2 provides stable 5V power for IC1.
Under normal operation, the voltage across R1 measures approximately 0.52V. When the motor undergoes an overload, voltage increases until it reaches a preset upper limit of 0.85V. The output on PA5 then drops to a low level, switching off transistor Q1 to stop the motor, and lighting D1 to indicate the overload. When the motor stops, it draws no current, and the sense voltage falls below the minimum threshold value of 0.3V. The microcontroller's output on PA5 remains low and holds off Q1, a state that it maintains indefinitely until you cycle the circuit's power off and then on.
The control program, in assembly language for the MC68HC908, features a straightforward algorithm adaptable to other microcontrollers that include an A/D converter. A 2.5-sec delay routine prevents the motor from starting until the system's power-supply voltage stabilizes. Click here for Listing 1.

















