Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

DC motor over-current protection

Status
Not open for further replies.

adrianvon

Member
Hi all,

I have a motor which consumes approx. 800 milli-amp when operating. Now i need a circuit that will send 5V (logic1) to the microcontroller when the motor is consuming more than 1A. Do you have any idea of what components can i use? or do you know about a circuit that i can use for this application?

Thanks in advance
Adrian
 
You can look at it this way. You can look into the various hall effect sensors out there for current sensing or you can take for example a precision .1 or 1.0 ohm resistor and measure the voltage drop across it in series with the load. 1 amp at 1 ohm = 1 volt or 1 amp at .1 ohm = 100 mV. Let's assume 0.1 ohm and use it as a current shunt. Now I would look for a good and simple to use instrumentation amplifier like the AD524 Precision Instrumentation Amplifier. While there are lower cost IAs I happen to like that one because of ease of use. A gain of 100 would give you 0 to 100 mV = 0 to 10 volts which can be fed to a simple comparator circuit.

You have choices. Make them based on budget and the uncertainty you hope to attain. There are several solutions and ways to get done what you want to get done. I suggest merely a single solution.

Ron
 
There are various specific chips for this purpose. Alegro makes a hall effect sensor.

There are high side current sense amps. Some may be analog or I^2C and some might have a built in comparitor.

I beleive you had trouble getting exotic parts, so you might just use a resistor and a standard rail to rail OP amp in the low side followed by a comparator.

There are sometimes good reasons to place the sensing in the high side.
 
Give this a read it might be a possible choice. A Google of "Over Current IC" brings up some results also.

Ron
 
Your second choice the Allegro® ACS758 family of current sensor would be a good choice but the minimum current range well exceeds what you want. I initially gave you some ideas which you obviously saw as too complex. Your first link was basic ratio metric overview, how do you plan to do the calibration? Maybe someone else has a simple way to go about this for you. You want to trip at about an amp, you link to 50 amp sensors? I give up. I gave you a simple suggestion. Good luck with it.

Ron
 
I guess the MAX9634 can be used together with a comparator chip.

I just don't know how to interpret the data sheet correctly, mainly the gain expressed in units of 25V/V, 50V/V, 100V/V and 200V/V.

May be another member can shed some light on it.

The circuit should not contain more than a dozen parts including decoupling caps and resistors for the comparator chip (voltage divider etc.).

I just found the allegro-micro chip ACS713. It puts out 183mV/A using the 20A version. At 800mA the output voltage should be 145.6mv. Amplifying that voltage using an instrumentation amplifier such as INA111 you should get 5V at overcurrent.

Your software should be written a way to use a 10 second delay for overcurrent detection since the motor will presumely draw current of 4 times the nominal value (800mA) at start up.

Boncuk
 
Last edited:
You can do it with one transistor, provided you don't mind using the current sense resistor on the low (GND side) of the motor, and the motor PSU and micro share the same ground;
https://www.romanblack.com/current.htm
 
MAX9634x Fixed gain depending on the suffix of the part. i.e. the letter of x

Gain is unitless, but sometimes expressed in the units of Volts/Volt. e.g 5 Volts in * 2 Volts/Volt = 10 Volts out
or 5 Volts x a gain of 2 is 10 volts out.
 
Last edited:
Nice little circuit there Roman.

Ron
 
Thanks for your replies.

Sorry Ron for that but I'm new to these sensors and im having problems interpreting the datasheets ...

I just found the allegro-micro chip ACS713. It puts out 183mV/A using the 20A version. At 800mA the output voltage should be 145.6mv. Amplifying that voltage using an instrumentation amplifier such as INA111 you should get 5V at overcurrent.

I think i will use a voltage comparator instead so i can vary the Vref. Would that work?

Your software should be written a way to use a 10 second delay for overcurrent detection since the motor will presumely draw current of 4 times the nominal value (800mA) at start up.

I will use the below coding for that problem. I normally use this when a switch is pressed:

DEBOUNCE_DELAY
CLRF REG1
LINE3
DECFSZ REG1
BRA LINE3
RETURN

You can do it with one transistor, provided you don't mind using the current sense resistor on the low (GND side) of the motor, and the motor PSU and micro share the same ground;
https://www.romanblack.com/current.htm

If i connect it as the attached pic.. will it work??
Thanks again ;)
 

Attachments

  • Untitlemd.png
    Untitlemd.png
    20.3 KB · Views: 609
Last edited:
That should work fine using Roman's circuit.

Ron
 
Ok it worked. Thanks Mr RB :)

The only problem is that i cannot understand the purpose of resistor R2 in this circuit. Can someone explain to me please?
 
R2 produces a near setpoint voltage drop, thus reducing the value for the trim pot making trimming easier.

If the wiper of the trim pot is all the way up the result would be zero.

Boncuk
 
I did a quick and dirty limit control for a motor once. They were 6V motors and run my an LM317 regulator. I managed to add a sense resistor and a comparitor. A cap made a short delay. So when a preset current was exceeded for a short time, I crowbared the ADJ terminal on the regulator, forcing the output to 1.2V.

Worked, but you could not start/stop quickly which was OK.
 
Nice little circuit there Roman.
...

Thanks! :)

I like that it only needs to drop 0.05v to 0.1v on the current sense resistor to give a reliable detection.

It also works good on detecting filament fail (or wiring fail) on a remote light bulb etc.
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top