I know that current shunt monitor ICs and high common-mode voltage differential amplifiers like the INA117 and AD629 exist but I'd like to know if it's possible to use a regular instrumentation amplifier where its input range is bounded by its power supply (e.g. AD623, INA177) and pre-attenuate the common-mode voltage using discrete or semidiscrete components.

I thought that using a voltage divider on the input and then compensating the gain factor proportionally would work if the in-amp has a high enough CMRR for the desired input range. I vaguely suspect that it's not that simple. If so, are there other (better) options to do this? I read something about using a current mirror but I don't really understand how that applies in this case.

  • \$\begingroup\$ If you pre-attenuate the inputs, the precision of the resistors of the voltage dividers is very important. Are you aware of this ? \$\endgroup\$
    – andre314
    Commented Dec 27, 2017 at 19:56
  • 1
    \$\begingroup\$ You can buy .1% tolerance resistors cheap now days, or .025% tolerance for $20 USD to $75 USD each (going to extremes). Then use 100 ohm 25 turn trim pots to null out errors. At this point your current sense resistor becomes the biggest issue. Personally I would choose the higher quality Analog Devices parts over others. \$\endgroup\$
    – user105652
    Commented Dec 27, 2017 at 20:41

2 Answers 2


A better way is to use a rail-to-rail input precision op-amp and a transistor.


simulate this circuit – Schematic created using CircuitLab

Do an error budget calculation on your proposed homemade differential amplifier and I think you will find that 'Oh, that way madness lies'. The circuit above requires no matched parts. Voltage across R1 is 10mV/A and across R3 it is 1V/A. A MOSFET or Darlington can be used instead of Q1 for a bit better ideal accuracy. The main limits on accuracy are the tolerance of the resistors and the offset voltage of the op-amp. A 1% error in any resistor results in a 1% error in the output. A 10uV offset voltage represents a 1mA error in the output.

Suppose we divide down the 12V to 6V on each input. We still have the same sensitivity to R1, but a 1% error in one of the four resistors will cause an error of 30mV at the input to the in-amp. That's equivalent to a 60mV error at R1, which is an error of 6A!

Yes, you could trim the resistors to get rid of most of the error for a while at one temperature but they would quickly drift out of spec. Even $25 0.01% resistors would not yield as good and stable a result as the 0.1 cent 1% resistors. That.. is engineering.

  • \$\begingroup\$ I didn't mean a homemade differential amplifier, rather I just meant using the in-amps gain directly after protecting it from common-mode voltage. Maybe I didn't phrase the question correctly. \$\endgroup\$
    – Anthony
    Commented Dec 27, 2017 at 22:41
  • \$\begingroup\$ Same thing. You are dividing it down. \$\endgroup\$ Commented Dec 27, 2017 at 22:48
  • \$\begingroup\$ Okay. I'm having some trouble understanding your answer. In the first paragraph, you're suggesting that the precision op-amp and transistor is a better method than the dividng down. Then in the last two paragraphs, you're elaborating on how dividng down is nonsense. Then, I don't quite understand how your circuit works but as far as error, it only depends on the Vos of OA1 and the resisters. Is this pretty much it and I should just study the circuit now? :) \$\endgroup\$
    – Anthony
    Commented Dec 27, 2017 at 23:04
  • 1
    \$\begingroup\$ @Trevor OPA192 is a good one. 36V and 5uV Vos. \$\endgroup\$ Commented Dec 28, 2017 at 4:12
  • 1
    \$\begingroup\$ Another trick is to create a supply relative to the high voltage supply (by a regulator, Zener+resistor, DC-DC converter etc.) which alllows the use of a cheaper 5V op-amp. Only the transistor sees the high voltage. \$\endgroup\$ Commented Dec 28, 2017 at 14:58

Yes of course you can.

That is basically all those fancy chips are.... They have simply packed up the high precision resistors inside the package for you to make it a more integrated and more reliable solution.

But, you can still do it with the discrete parts provided you can chose parts that meet your accuracy requirements. The higher "high-side" is the more troublesome that becomes though.

BTW: There are various other methods to measure current. Current mirrors though are not typically a good choice since they basically double your load current and as such are better used to measure small currents.


Your Answer

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

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