Removing DC offset from differential amplifier

Hi all,

I am running a differential amplifier (AD620 from texas instruments) to amplify signals from a load cell in some weighing scales.

I want to optimise the system by utilising all 10bits of ADC of the ardiuno capabilities.

At rest position the DC offset reads at approximately 300 (roughly 1.6V, wasted resolution)

Is it possibly to remove this offset (1.6V) from my signal without compromising in resolution?

Obviously I can divide the voltage off the signal before it hits my Arduino but then I would loose 1.6V of resolution at the top end of the ADC. (As my amplifier and Arduino is running at the same voltage)

I could run my amplifier chip at 1.6V greater than my arduino (it can take it) to give a 10bit resolution with a 0V dc rest.

I'm hoping a simple rewire to the signal wires instead.

Any guidance would be great,


Almost resolved:

The AREF was not grounded... Now the offset is ~134.

Still not ideal! But better

Did you ever google "differential amplifier offset" ?

Google: ac coupled differential amplifier


Almost resolved:

The AREF was not grounded... Now the offset is ~134.

Still not ideal! But better

The AREF must not be grounded at all. It must be decoupled to ground [usually done on the Arduino board already]

I believe the AD620 is manufactured by Analog Devices, but no matter. If you have sorted out the AREF question and still end up with a significant DC offset, just use a summing operational amplifier with a gain of 1 and a fixed input equal to (-offset) to subtract that offset from your signal. Google will provide circuit diagrams for the purpose.

This is the data sheet I have found online, goto page 15 and it says'

The reference terminal potential defines the zero output voltage
and is especially useful when the load does not share a precise
ground with the rest of the system. It provides a direct means of
injecting a precise offset to the output, with an allowable range
of 2 V within the supply voltages.

This should help you bias the output to get zero offset.
Tom... :slight_smile: