High or low side current sensing

Feb 08, 2010 18 Replies

I'm reviewing an existing charger design which I'm expanding to 10 outputs.



At the moment I use high side current sensing with an opamp and fet level shifting the signal so that it is ground referred.



The disadvantage is that this circuit can not measure the current during a short and relies on the swticher's own current limit for protection.



I've used a current mirror circuit before to get around this but it's too many parts.



If I low side sense then this problem disappears. But then I loose the simplicity of a common ground.



I can't make my mind up. Time for a whisky.


You could consider current monitor chips that have a helper voltage and where common mode includes ground. But it's not as cheap. If each charge channel has its own switcher, can't you sense current there?

Regards, Joerg http://www.analogconsultants.com/ "gmail" domain blocked because of excessive spam. Use another domain or send PM.

If the battery terminals short out you do get a total loss of voltage. But it's no big deal if there's a helper voltage that, for example, provides a negative supply if the opamp CM range doesn't include VSS.

Regards, Joerg http://www.analogconsultants.com/ "gmail" domain blocked because of excessive spam. Use another domain or send PM.

Operate the sensing circuit from a separate supply that does not get effected from the main supply drop.

In your circuit, I assume you're using the +/- inputs of the opamp to form a dif shift via a shunt R ? The op-amp and Fet you're using can be operating from a secondary supply that can also share the same common.

of course, if you throttle back the drive using the current sense, you wouldn't get a total loss of voltage!.

How about:

--------------------------------------------------------- ! ! ! ---------/\/\--- ! ! ! ! ! +-----------------/\/\---------+--!+\ ! s ! ! ! >--+--/\/\--+--!! ! ! ------/\/----------+--!-/ ! !!---- ! ! ! ! --!! P- MOSFET -------+---/\/\---+----Battery(+) --/\/\-- !d --------

+--/\/\--GND ! V =3D K*I

It is the normal op-amp based constant current source but the op-amp doesn't have to take the large common mode and you don't need the 0.1% resistors.

The down side is you needenough voltage for the op-amp.

Protect power on with 'battery good' detect first ?

What are your desired current, voltage and measurement accuracy ?

Thanks.

That looks good and appears to get around the short circuit problem.

It adds 3 resistors to my component count. Under half a cent extra component cost plus placement time.

I'm happy with 3% accuracy on current. Who cares if a battery charges at 970mA rather than 1A.

I'm charging lithium ion so voltage is more important. On a 4 cell pack I expect to be between 16.70V and 16.75V so that's +/- 0.15% after adjustment.

In this application I am using National simple switchers so they don't help with the current measurement. They do provide an internal current limit which does provide short circuit protection.

I don't like the short circuit current being higher than the charging current. In the other job I've got to tidy up for production I'm using a sepic which does need a proper current limit.

I like to use common building blocks and MooseFET's circuit looks good at the moment.

I have battery good detection in the micro. The charger has to be safe even if the micro dies.

The customer checks short circuit by putting a switch across the output and a then a fuse in line to the battery. They then start charging and throw the switch.

Similarly for reverse battery protection they fit a reversing switch into the wiring. Again they start charging and throw the switch.

On a SEPIC that's easy. You can sense the current at the base of the second coil and run that into an inverting opamp.

So you owe him a beer then :-)

Regards, Joerg http://www.analogconsultants.com/ "gmail" domain blocked because of excessive spam. Use another domain or send PM.

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 !

-/\/\--- =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 ! =A0 =A0 =A0 =A0!

=A0 =A0 =A0!

=A0>--+--/\/\--+--!! =A0 =A0!

=A0 =A0 !!----

=A0! =A0 =A0 =A0 =A0 --!! P-MOSFET

=A0 =A0 =A0 =A0 =A0 =A0 =A0 --------+--/\/\--GND

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0V =3D K*I

Or, if the op amp's inputs can go slightly below the rail:

R1 |\ .-------/\/\-----+---|-\ LM324 | | | >--. | .-------|---|+/ | | | | |/ | | Rs | | | >--+--/\/\--+-------|---------|---> to Battery (+) i --> | | '--|| | ||->---' .--|| Q1 | Rs * R2 +----> V(i) =3D i * ------- | R1 \ / R2 \ | =3D=3D=3D

Two precision resistors instead of six.

(I used an LM324 for John. He loves them.)

-- Cheers, James Arthur

e

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 !

---/\/\--- =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 ! =A0 =A0 =A0 =A0!

=A0 =A0 =A0!

=A0>--+--/\/\--+--!! =A0 =A0!

=A0 =A0 =A0 !!----

=A0 =A0! =A0 =A0 =A0 =A0 --!! P-MOSFET

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 --------+--/\/\--GND

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0V =3D K*I

=A0 =A0 Rs * R2

-

=A0 =A0 =A0 =A0R1

If the load is shorted, the circuit doesn't work. This was the problem that my circuit was aimed at solving.

's

the

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 !

-----/\/\--- =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 ! =A0 =A0 =A0 =A0!

s =A0 =A0 =A0!

! =A0>--+--/\/\--+--!! =A0 =A0!

=A0 =A0 =A0 !!----

=A0 =A0 =A0! =A0 =A0 =A0 =A0 --!! P-MOSFET

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 --------+--/\/\--GND

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0V =3D K*I

=A0 =A0 =A0 Rs * R2

> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 =A0 =A0R1 > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0\ > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0/ R2 > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0\ > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| > > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =3D=3D=3D > > > Two precision resistors instead of six. > > > (I used an LM324 for John. =A0He loves them.) > > If the load is shorted, the circuit doesn't work. > This was the problem that my circuit was aimed at solving. I guess I'm not visualizing Ravenhorde's setup. I'm assuming Vcc to the op amp higher than the raw battery charging voltage, just as you did... Ah, I see. So use mine ahead of the regulator, if that's feasible. If not, yours wins. Nice work. -- Cheers, James Arthur

Your circuit is the same as what I use at the moment except + and - inputs of the op amp are swapped.

The op amp does come from a higher supply, but as you relaized that doesn't help.

I'm using a switching regulator so measuring in front doesn't work.

10

fet

t
r

it's

se the

-

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 !

--------/\/\--- =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 ! =A0 =A0 =A0 =A0!

=A0! s =A0 =A0 =A0!

=A0 ! =A0>--+--/\/\--+--!! =A0 =A0!

=A0 =A0 =A0 =A0 !!----

=A0 =A0 =A0 =A0! =A0 =A0 =A0 =A0 --!! P-MOSFET

=A0=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 --------+--/\/\--GND

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0!

=A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0V =3D K*I

Since op-amps come as duals perhaps:

------------------------------/\/\----------+----/\/\---- ! ! ! +-----------------------!+\ ---!-\ ! ! ! >---- ! >-----

+---- ! --!-/ ! ---!+/ ! ! ! ! ! --/\/\---+---/\/\---+---/\/------+-----/\/\---GND ! ! ------+---/\/\---+---

It trades an op-amp for the transistor. By making the first stage increase the voltage on the sense resistor to a higher value and then using the simple diff stage, we can get a ground referenced current sense.

You could also make the measurement at the catch diode of the bucker if you don't need it to be accurate.

[...]

What kind? Any chance to add a C and an L and make it a SEPIC? Then current sense would become easy.

Regards, Joerg http://www.analogconsultants.com/ "gmail" domain blocked because of excessive spam. Use another domain or send PM.

I'm using an LM2675 simple switcher in a buck configuration. Changing it to a sepic doesn't make sense as the extra cost would outweigh the cost of high side current sensing.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required