My background:

I have some experience with digital circuits and microcontroller programming but no prior experience with or knowledge of industrial equipment like motors/pumps. All in all, a newbie.

My requirements:

To continuously monitor the current drawn by a water pump connected to a 3-phase AC induction motor and if the current drops below a certain threshold, trip the motor. Need to figure out a simple, elegant and cost-effective way to accomplish this task.

My research results:

I found two ways to implement AC current sensing:

1) Current transformer
2) Hall-effect sensors

Both provide DC voltage proportional to the sensed AC current which can be measured in a digital circuit. I have decided to go with hall sensors for reasons of size and accuracy.

Decided approach:

To connect the three phase wires to hall sensors. The sensors will produce voltages proportional to the sensed currents. These voltages will be fed to a microcontroller via ADC and the controller will operate relays based on the voltage reading i.e. it will trip the motor if sensed current is below a pre-defined value for the motor.
I understand that I could do away with the controller and get my work done with comparators that drive those relays, but I want to keep the "threshold" configurable, so going with a controller instead. And also there is the scalability factor.

My questions:

  • Is the choice of hall sensors over current transformers justified, given my requirements?
  • Does the decided approach pack promise?
  • Is there a better, more generally accepted way of doing this that i am oblivious to?
  • Can the duo of input hall sensors and line tripping relays be replaced with a single such device which can not only measure the current but also break the circuit?
  • \$\begingroup\$ How big is the motor? What's the dynamic range you need to sense? Do you have to accurately measure the starting current, or just running/overload current? \$\endgroup\$
    – akohlsmith
    Mar 30, 2012 at 19:31
  • \$\begingroup\$ I have a 7.5 HP motor and I have to sense its running current. \$\endgroup\$
    – puffadder
    Mar 31, 2012 at 4:51
  • \$\begingroup\$ It's worth noting that most hall-effect current sensors are pretty high-bandwidth. As such, if you have one measuring current on an AC line, you will get an AC current-reading as the output. Dies the current-sensor you are looking at have internal rectification and smoothing? If not, you will have to do it yourself. \$\endgroup\$ May 18, 2012 at 6:35

2 Answers 2


Your approach sounds fine. Did you really mean to say it should trip off below a current threshold? Normally the point is to trip off if the motor gets stuck due to burnt out bearing or excessive load or whatever. This is to protect the motor from burning up.

Are you trying to protect the system when there is no water to pump, or at least just save power when that happens? Even if that's your goal, you should protect against overcurrent too.

A microcontroller is a simple way to do this. It can easily check each signal fast enough to catch the peaks, and checking against both high and low limits is easy. That also allows you to apply a little wait time before tripping, which can be different for the high and low threshold. For the high threshold, you have to let it draw extra current for a second or two at startup because that's normal for a motor. The low current (no water) is not a immediate failure situation, so you can wait a few seconds to make sure you really have low current continuously.

  • \$\begingroup\$ You guessed right. My goal is to prevent the motor from running when the pump has no water to "pump". I hadn't considered the wait time but it sounds reasonable. Thanks for the suggestion. \$\endgroup\$
    – puffadder
    Mar 31, 2012 at 4:57

If you used comparators, then you could still make the threshold configurable using a potentiometer.

However, I think that your approach is perfectly reasonable. Plus it would let you deal with any odd cases that would start to make the comparator solution more complex (E.G. as the inductor current ramps up just after switch on, a comparator might decide to trip out immediately).

I don't know what your application is, but if this is a safety critical system, then you are writing safety critical software. It is considerably harder to prove the correctness of software than of a simple comparator circuit.

  • \$\begingroup\$ I had considered using the pot but it would be difficult for a layman to make accurate adjustment with it. Besides, I am more of a software guy with an EE degree, so I am more comfortable with software. \$\endgroup\$
    – puffadder
    Mar 31, 2012 at 4:56
  • \$\begingroup\$ BTW, I recommend using a PSoC3 from Cypress. It contains ADCs, DACs and comparators. So you could make a version with comparators and a software configurable trip threshold. Or you could re-configure it to be fully software controlled, without having to do any re-wiring. \$\endgroup\$ Mar 31, 2012 at 13:42
  • \$\begingroup\$ I've built these exact kinds of circuits for industrial motor control. I built both analog (comparators and integrators) and MCU based solutions. Either way works fine, it all comes down to bells and whistles and design time. :-) \$\endgroup\$
    – akohlsmith
    Apr 1, 2012 at 14:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.