Small DC Motor Control

Thread Starter


Joined Aug 19, 2007
I need to build a simple, cheap control circuit for a 12v DC motor operating from a 12v DC power source, and I have most of it designed, but I have run into a problem.......

I need a way to sense that the motor has stalled so I can cut off power to it.

I have no idea how to do this, or where to look for help, or even what such a circuit is commonly called.

There is no practical way to add a seperate tachometer or position switches.

In case you are interested in more details and why I need this.......

I am building a mechanical device for use in a show car. The device extends and retracts body panels to change from a maximum ground effect setting to a setting for "real roads" where the ground effects are retracted. There are only two desired states which I refer to as "extended" and "retracted". I have no interest in being able to stop the system part-way between states, or vary the speed of the system.

I have the mechanical parts of the system working and am using a spare power window motor to drive it. The motor I am using has two wires and rotates forward when power is applied in one polarity and reverse in the other polarity.

The current draw of the motor is high at startup (20a) and during the first half second or so of operation, but drops (6a) and does not vary significantly during the 4 seconds it takes the system to operate until it goes up again (35A) almost instantly when the mechanism hits the stop or jams.

The motor can withstand a stalled condition for several seconds without overheating just as it would do if you held a power window button in the Up position when the window was closed. In the normal use a 30A delayed acting, self-resetting, circuit breaker opens if you do this. I was hoping for something more elegant and less hard on the motor since this condition will occur everytime the system is switched from one position to the other, as opposed to the window application where this is considered a once-in-while failure condition.

My design for the system followed the usual way power windows work--- the mechanical system has stops built-in at both ends of the travel, but I did not build a switch into the system to sense when the panels were fully retracted or fully extended. I assumed I could easily find a circuit to detect end-of-travel by motor stall and I also wanted the system to stop if it jammed or hit an object laying under the vehicle also causing a stall. It does not need to automatically reverse when it hits a jam- just stop.

I don't really need to be able to differentiate between the motor startup current and the stall current, as I can easily ignore the stall indication signal during the first 1/2 second or so of operation.

Any designs, suggestions, or even keywords to search for will be greatly appreciated.

Thanks In Advance, Ben


Joined Jan 28, 2005
One solution that comes to mind quickly would involve using a self-resetting fuse (Tradename polyswitch) made by Bourns or Raychem. This polyswitch would be placed in series with the positive 12V line being fed to the motor. You can buy them in the range that would work for your application. Probably a 30A trip current and 15A hold current would be a first cut estimate.

You could then get a p-channel mosfet that would be used to monitor the voltage across the polyswitch so that when the polyswitch went open it would turn on the mosfet and send a stall signal to whatever input you had for monitoring the condition.

Link to example device



Joined Apr 6, 2009
You might want to try a power window type arrangement. When you press the drivers power window button the window opens or closes then cuts off. There is a tach sensor on the power motor shaft integrated onto the power motor (on my Honda Prelude it is anyway) and does not seem to be too complicated. The switch is expensive (about $70) but you seem to be investing somewhat and junkyards have them.


Joined Feb 19, 2009
Although the motor will endure a stalled state, I wouldn't suggest using it as a limit detection. Is it possible to add switches as limits for up/down? They wouldn't control the motor directly, but signal the motor controller to stop turning, this means very small switches and wiring could be used.

If limit switches are unavailable, I'd agree with what was posted above, use a shaft encoder, either hall effect with magnet(s) on shaft, or an optical disc with a slot interrupter around it. The optical method may not be reliable if the motor is exposed to weather/dirt/etc.


Joined Aug 7, 2008
Use a current sense resistor, .01Ω, or motor wire, comparator, timedelay,.5s. If fault lasts longer than delay, then resets latching motor relay.


Joined Feb 19, 2009
There is no practical way to add a seperate tachometer or position switches.

I got lost in the rest of the post and missed this line early on.

Bernard is on the right track. A limit that is fast enough to avoid undue harm to the motor, yet discriminate from startup. A comparator that flips once 27A is hit would fit the bill.

Apologies for going sidetrack on you.