i'm trying to make a current sensor based on an op-amp differential amplifier with a unity gain (all resistors are equal so to have the best CMRR.)

The output of the op-amp differential amplifier will be linked to an ADC so that I can capture the voltage drop across a shunt resistor and make some processing .

the design i'm planning to implement is this one as published on EETIMES:

differential op amp design

My questions are :

1)-Are there any practical consideration that I might be missing for this this circuit to work well .(i see in a lot of practical designs (for other circuits) some additional capacitors that are linked to terminals , diodes ... )

2)-I now know that this design has a draw back which is low input impedance ,can any one explain to me the impact of that on the design .

3)- for solving this problem of input impedance , can we consider increasing the values of the resistors R1,R2,R3,R4 .


  • \$\begingroup\$ There are dedicated ICs implementing difference amplifiers (which is probably what the "difference amplifier" box in the diagram is trying to convey). The IC has internal resistors implementing the different amplifier. This would be better than using discrete resistors, although of course you wouldn't be able to change them. \$\endgroup\$
    – Null
    Jul 23, 2015 at 15:50
  • \$\begingroup\$ Is the project cost sensitive? If not then I'd just use an instrumentation amplifier (like the INA122). It deals with all the issues you have noted for you. Otherwise we'd need to know more about the current you want to measure and Rshunt to give you specific advice. \$\endgroup\$
    – Jon
    Jul 23, 2015 at 16:53
  • \$\begingroup\$ CMRR is not optimized by using equal-value (in the sense of "all 10k" resistors. It is determined by how well the resistors are matched. The precision of the resistors is what counts, assuming the nominal ratios R1/R2 and R3/R4 are the same. \$\endgroup\$ Jul 23, 2015 at 18:03
  • \$\begingroup\$ @WhatRoughBeast Absolutely correct, if I remember right (and I'm not going to go back and do the calculation now) I THINK 1% resistors get you about 40dB CMRR, and 0.1% will get you 66dB worst case, all else being ideal. \$\endgroup\$
    – John D
    Jul 23, 2015 at 21:00

1 Answer 1


1) Layout is critical, decoupling caps are required, watch the common mode input range on the amplifier, though if you are using +/- supplies you will likely be OK.

2) Since you are measuring across a low impedance shunt (presumably) the input impedance of the amplifier will be much larger than the shunt impedance so it should have little effect.

3) As long as the input resistors are >> than the shunt impedance you don't have an issue.

As Null mentioned there are dedicated current shunt amplifier that perform this function.

  • \$\begingroup\$ i'a planning to use LM741 opamp , it has differential supply voltage , i'am going use it to measure a current in the range of 50mA-1A , the out put is going to be directly linked to the ADC of a microcontroller . do i need to use a buffer op map for this connection between differential opamp and ADC ?? According to what you said , decoupling caps are necessary (is it for avoiding noize on supply input ??) \$\endgroup\$ Jul 24, 2015 at 15:05
  • \$\begingroup\$ There are multiple reasons for using decoupling caps, but the main idea is to reduce the high frequency impedance of the supply rails. If you don't put good e.g. ceramic caps right at the supply pins of the op-amp with a good connection to ground you are likely to have trouble. Why did you pick the LM741? It's a very old part and newer parts will have much lower offset voltage and better input/output range. I would think if you're reading a shunt you would want something with very low offset. (Though you could trim the 741.) \$\endgroup\$
    – John D
    Jul 24, 2015 at 15:10

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.