Op amp buffer output voltage offset

I am building a system which will measure and record the voltage of batteries. There are 8 channels in the system with each channel being capable of measuring 0-35 V. The accuracy we have decided upon is +/- 0.02 V. The LMV324 op amp was chosen as it has an input offset voltage of max 6 mV specified (see datasheet). A 12 bit ADC is being used with a 1.8 V reference voltage.

I have built the circuit, and found that even with no input voltage applied, the output of the op amp is 0.04 V. I have two of these op amps on the same PCB, and all output voltages between 0.038 V and 0.04 V with no input. At first I thought that noise/ripple from my DC-DC converter, which powers the op amps may have been the problem. But then I switched over to a linear regulator and the exact same thing happens.

Why is this happening?

• The problem is "Low level output voltage" V_ol , the lowest output voltage on op-amp output when VDD=0V
– M KS
Dec 4, 2018 at 8:49
• Why would you specifically choose an op-amp with such poor input offset voltage? Dec 4, 2018 at 9:23
• Sorry, I don't have much experience with Opamps. I didn't know that this was poor. What type of input offset voltage would be classified as 'good'? Specifically I have just calculated I need the Opamp output to be within 1mV of the input Dec 4, 2018 at 9:25
• Why are you using an op amp, at all? Is there some reason why you don't direct connect?
– john
Jul 16, 2021 at 14:07
• Note that this doesn't interfere at all with the task of monitoring batteries Nov 22, 2021 at 23:35

Input offset means the op amp can see a difference of >6mV between it's inputs. The output can still be over 6mV. You need a rail to rail opamp which goes down to zero volts at its output. I don't know if there's anything cheap which can do that.

Here's a tutorial on input offset voltage https://www.analog.com/media/en/training-seminars/tutorials/MT-037.pdf

The usual way to get a zero output is to use a balanced dual supply. And, then some kind of protection circuit to make sure output is within uC input limits. This makes every single op amp ever made go down to zero volts.

Or, one can add the input with a bias voltage (65mV in this case) and then feed it to the op amp. But, this will likely introduce even more error.

If you can find an opamp that does have 0 V output, but has a high input offset, you can still use the LMV324. Set a gain on the LMV324 and feed it into the other opamp.

[The OP07 is not a rail to rail opamp. From the datasheet, with ±15V supply, output swing is ±12.5V max. That means, if power supply is single rail 5V, output will vary from +1.5V to +3.5V max, instead of 65mV to 4.99V for the LMV324 (typical), or even 5mV to 3.5V for the LM358 (typical)]

added At 3.3V single rail supply for the opamp, for measuring battery voltage, the LM358 is fine. I would try to increase the supply voltage a bit if possible to account for inter chip variations, as 3.3V leaves exactly 3.3-1.8=1.5V headroom (which is the limit for this opamp).

As Doodle and others say below, in reality a battery will never drop to zero volts, so rail to rail opamp is not really required.

Input null would be great for accuracy. However, if the OP is using a uC, the calibration can possibly also be done in software, if the input offset for the particular chip is stable (this is an assumption).

• OP hasn't made it clear the supply constraints for the Op Amp. You're operating under the Op Amp using a single supply where as I am suggesting based on a dual supply. Dec 5, 2018 at 9:35
• @Doodle Well... you are not entirely right. (With dual supply) Low input offset will only ensure output is zero, when input is also zero. That is an ideal op amp, and the OP07 comes close to it. However, on a dual supply, ANY opamp will reach zero volts, even if the input is not exactly zero. Unless one is building a multimeter, the OP07 is overkill. For the OP, 6mV input offset appears to be fine. Therefore the ordinary LM358 with 7mV input offset, and 5mV output with single rail, should also be perfectly fine. Dec 5, 2018 at 9:44
• @Doodle one can also operate the LM358 with dual supply to get exactly 0 V output (but off course that would be kind of stupid). For a thermocouple or multimeter, I would definitely use a OP07 or better with dual supply. But for measuring a battery ...? Dec 5, 2018 at 9:48
• The point of suggesting the OP07 was the null pins that allow for you to make the output zero when the input is zero pretty easily. I'm just working off the OP's stated requirements rather than the application. Dec 5, 2018 at 9:52
• @Doodle OP has now stated the opamp supply to be 3.3V single rail. You are not wrong, just a bit off the mark. I don't hold a grudge. Yes, you are right about the irrelevant part too. We are just banging our heads here. Dec 5, 2018 at 9:54

The accuracy is determined by the linearity and drift errors of the resistive divider, op-amp and the ADC. Such circuits are typically calibrated using an external voltage source on the production line or during test/commissioning, and you don’t need to use precision resistor networks nor low-offset op-amps.

If you can, it’s always an option to use some electronic switches on each input to allow for self-calibration on power-up and periodically thereafter if you want to completely cancel out thermal drift.

Don’t forget the EMI filtering on the input, as well as ESD protection!