Load cell offset drift cancellation circuit

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
They would work, just omit the connection for the REF- terminal.

Another ADC you might look at is the LTC2440; it's a 24-bit converter, like the LTC2411, whereas the AD7684 and ADS8317 are 16-bit. And it has a differential reference input.
And it has an "880Hz Output Rate" ... a far better option than the other one... gonna study the datasheet some more... thanks for the tip!

EDIT: only downside is that the chip comes only in a 16-SSOP SMT presentation... I hate working on such closely spaced pins...
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Here's an interesting bit of info from the LTC2440 datasheet:

"Ultralow noise applications may require the use of low noise bipolar amplifi ers that are not autozeroed. Because the LTC2440 has such exceptionally low offset, offset drift and 1/f noise, the offset drift and 1/f noise in the amplifiers may need to be compensated for to retain the system performance of which the ADC is capable.
The circuit of Figure 23 uses low noise bipolar amplifiers and correlated double sampling to achieve a resolution of 14nV, or 19 effective bits over a 10mV span. Each measurement is the difference between two ADC readings taken with opposite polarity bridge excitation. This cancels 1/f noise below 3.4Hz and eliminates errors due to parasitic thermocouples. Allow 750μs settling time after switching excitation polarity."


Capture.JPG

That last statement, to allow some time after switching excitation polarity before sampling, is extremely useful.

I think I'll stick with the circuit shown in post #94, though.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Look at it this way: you get to work on your fine motor skills, and your hand/eye coordination.
yeah... and considering my tender age, those abilities can only get better!
EDIT: and my vocabulary too... after I finish cursing every single one of those darned pins!
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Ok, it's been awhile, but I'm now ready to follow up and build this circuit. After careful re-reading all the posts in this and previous threads related to this subject, I've finally decided to build the circuit shown in post #102. But I have several questions here.

  • Is the LT1677 op-amp the best choice for this application? Are there other op-amps out there more suitable for this purpose? I'd like an op-amp as vanilla-like as possible. That is, a chip that's been on the market for a while, is easy to find, and won't become obsolete in the near future.
  • I can see from the schematic that the load cell is being excited by the 5V reference. Will this configuration extract the full range that the LTC244 is capable of? Wouldn't it be better if 10V were used for excitation, assuming a standard 350 ohm cell?
  • The half bridge Si9801 shown in the schematic is obsolete. Would using discrete parts for this component work as well? Say, would it be wise to use pairs of fets consisting of ZVN2110A and a ZVP2106A. I'm assuming that I'd have to compare the fet's slew rate with the original component, but my question pertains rather changes in the fet's equivalent resistance due to temperature variations that would affect the circuit's accuracy.

I'm about to embark into a long, arduous process of learning how to use a new ADC chip, plus understanding the factors involved in obtaining maximum accuracy. So I'd like to make the best possible decisions concerning the hardware at this stage.
 

OBW0549

Joined Mar 2, 2015
3,566
If it were me, I'd bag the entire switched-drive scheme and just go with a zero-offset op amp like the MAX44246 (dual). No input offset voltage, zero offset drift and zero 1/f noise.

As for increasing the bridge excitation voltage, beware of exceeding the input common-mode voltage range of the op amps or the LTC2440.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
If it were me, I'd bag the entire switched-drive scheme and just go with a zero-offset op amp like the MAX44246 (dual). No input offset voltage, zero offset drift and zero 1/f noise.

As for increasing the bridge excitation voltage, beware of exceeding the input common-mode voltage range of the op amps or the LTC2440.
Darn!... yes, you've mentioned that chip before. And I was wondering why I was so reluctant to use it.... And now I remember. I was wary of the dual supply that it requires. I would've liked my circuit to be powered from a single supply, preferably a 12VDC wall wart that I could later filter and feed to 5Vdc regulators and voltage reference.

But I started this thread more than a year ago, and know I'm a bit more knowledgeable and experienced than I was back then, thanks to you and other members of this place that have so generously pointed me in the right direction. And or course, your level of expertise is several orders of magnitude larger than mine. So I'm going give careful consideration to what you're suggesting. The only drawback is that I'll probably have to build my own power supply, which I was trying to avoid. But what the heck, if this is the best option for what I want, then I'll definitely take it.... I'm going to start looking for compact and affordable ±24VDC supplies out there, just to consider all my options.

Btw, my goal is to build a small "module-like" circuit that I could plug to an MCU. And I'd like said MCU to read up to 8 of those suckers simultaneously. That means that whatever power supply I choose, it had better be able to deliver at least 5W continuous, more or less... so maybe the requirement of a fancy power supply is unavoidable anyways.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
It absolutely, positively DOES NOT require a dual supply.
o_O ... the datasheet shows the circuit working with a ±15V supply... but if you say it can be done with a single supply then of course I believe you.

One last question regarding the alternate switching scheme. Assuming small variations in the reference source due to temperature changes or aging of the chip itself, wouldn't the switching technique compensate for that? Would the opamp that you're proposing be better, or at least equal, at handling said scenario?
 

OBW0549

Joined Mar 2, 2015
3,566
o_O ... the datasheet shows the circuit working with a ±15V supply... but if you say it can be done with a single supply then of course I believe you.
The data sheet also shows it working with a single supply. See page 2, under Electrical Characteristics:

Untitled.png

Here's an important point: nearly ALL op amps, except for a very few oddballs, can operate with EITHER dual supplies or a single supply. What matters is that the Input Common Mode Voltage range be satisfied, for whatever supply is chosen.

One last question regarding the alternate switching scheme. Assuming small variations in the reference source due to temperature changes or aging of the chip itself, wouldn't the switching technique compensate for that?
No. Changes in the reference source will result in corresponding changes in the square wave drive amplitude.

Would the opamp that you're proposing be better, or at least equal, at handling said scenario?
I would expect it to be, yes.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Yes. Choose an appropriate modern A/D, hook the loadcell directly to it, and move on.
... terse and succinct... just like the conventional Joey-styled answer...

Please correct me if I'm wrong, but are you referring to the type of A/D that already include an internal programmable amplifier? ... if that's the case, would you mind mentioning a few examples? ... I'm not asking you to pick a chip for me, I'd just like to know what your preferences are in this regard, and compare them with what I'm considering.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Yes. Choose an appropriate modern A/D, hook the loadcell directly to it, and move on.
What do you think about this chip?

upload_2017-12-1_19-1-11.png
My primary concerns are:
  • That the conversion doesn't drift with time
  • That it's relatively stable and noise-free
  • That it's as resistant to changes in temperature as possible

I don't care much about an auto-zero feature, because that can be taken care of on startup. But I do care that the thing doesn't drift... I want to be able to connect a load cell, power the thing up, set zero (tare) and watch the zero value remain that way for at least 24 hours.

I already tried this project quite a few years ago with a previous chip (HI7190), which is expensive and almost obsolte. And that thing was a nightmare to program and properly configure and install. The HI7190 boasts an internal PGA too, but it only goes up to x64 analog, and after that it reports a "digital conversion" on gains of x128 and x256, which is nothing more than a multiplication of whatever the x64 is reading. And it tended to drift over time... that's why I feel I should use an external PGA, so that I can have complete control of whatever is happening with that part of the circuit.... but maybe I'm mistaken and that's not the best way to go around things, of course.

I know that you've had some (or maybe even plenty of) experience with load cells, that's why I'm very interested in what you have to say.
 

joeyd999

Joined Jun 6, 2011
6,279
My primary concerns are:
  • That the conversion doesn't drift with time
  • That it's relatively stable and noise-free
  • That it's as resistant to changes in temperature as possible
You used words to describe things subjectively where you should provide numbers. I don't know what your words mean.

Why do you perceive an analog amp as inherently more stable than a quality delta sigma?*

*Edit: you answered the second part.... sorry I missed it.

I've not used the 7190, but it sounds like it gave you a bad first impression.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
You used words to describe things subjectively where you should provide numbers. I don't know what your words mean.

Why do you perceive an analog amp as inherently more stable than a quality delta sigma?*

*Edit: you answered the second part.... sorry I missed it.

I've not used the 7190, but it sounds like it gave you a bad first impression.
Oh, it gave me a bad impression alright... but it was my fault, of course. Back then I was too inexperienced and new zilch about analog circuit design and PCB layout techniques... I didn't even know that digital circuitry could cause enormous noise in an ADC if it's not properly grounded and its traces drawn properly! ... I am enormously indebted to this place, people here have gone out of their way to help me, and I've learned from you guys things that I now know can take years to master on your own and that cannot be easily found books. In fact, this place helped me unlearn stuff that I thought I understood, and has never failed to set me in the right direction .

Anyway, I chose that chip at first, because I was impressed with all its features. But programming it turned out to be far more difficult than I thought due to its abundance of registers. Also, after performing many assemblies, I didn't know why my results were so uneven and why the darned thing was behaving so noisy... it turned out that I was damaging the chips when I soldered them using ordinary Sn60Pb40 solder.

But back to subject. You're right about first having to set the proper numbers in order to best know how to proceed. My goal is to obtain a fast, stable, full 24-bit reading (16,777,216 divisions) from a load cell. Of course I know I can't have it all and some compromises have to be made to obtain a configuration suitable to my needs.

The AD7780 datasheet contains the following paragraph:

PERFORMANCE IN A WEIGH SCALE SYSTEM
If the load cell has a sensitivity of 2 mV/V and a 5 V excitation voltage is used, the full-scale signal from the load cell is 10 mV. When the AD7780 operates with a 10 Hz output data rate and the gain is set to 128, the device has a p-p resolution of 18.2 bits when the reference is equal to 5 V. Postprocessing the data from the AD7780 using a microprocessor increases the p-p resolution. For example, an average by 4 in the microprocessor increases the accuracy by 2 bits. The noise-free counts is equal to the following: Noise-Free Counts = (2 Effective Bits) (FSLC/FSADC) where: Effective Bits = 18.2 bits + 2 bits (due to post-processing in the microprocessor). FSLC is the full-scale signal from the load cell (10 mV). FSADC is the full-scale input range when gain = 128 and VREF = 5 V (78 mV). The noise-free counts are equal to the following: (218.2 + 2)(10 mV/78 mV) = 154,422 This example shows that with a 5 V supply, 154,422 noise-free counts can be achieved with the AD7780.
Question: how can I make the AD7780 report a full range of 24 effective bits with a 2mV/V load cell? I'd like to use the reference source as the excitation voltage too, that way the configuration would be ratiometric and noise and drift would be minimized.
Would an external gain amplifier needed to be added? Would increasing the reference and excitation voltage to 7V (the maximum allowed by the chip) also increase resolution?

My answer would be: If the AD7780 has a full range input of 78mV when its reference is set at 5V and its PGA at 128, and I'm using a standard 2mV/V load cell excited with 5V that delivers a full-scale signal of 10mV.... then hell yes! I need to amplify the input signal by a factor of 7.8 to get what I want!... and so I need to use an external amplifier... but what good is the AD7780's internal PGA for me then? ... in that case, I'll just use an ADC that has no internal PGA and I'll add an external one that I'll have complete control over instead! ...

What's your take on my previous reasoning? ... and OBW, of course I'd like to hear your opinion too.
 

joeyd999

Joined Jun 6, 2011
6,279
Oh, it gave me a bad impression alright... but it was my fault, of course. Back then I was too inexperienced and new zilch about analog circuit design and PCB layout techniques... I didn't even know that digital circuitry could cause enormous noise in an ADC if it's not properly grounded and its traces drawn properly! ... I am enormously indebted to this place, people here have gone out of their way to help me, and I've learned from you guys things that I now know can take years to master on your own and that cannot be easily found books. In fact, this place helped me unlearn stuff that I thought I understood, and has never failed to set me in the right direction .

Anyway, I chose that chip at first, because I was impressed with all its features. But programming it turned out to be far more difficult than I thought due to its abundance of registers. Also, after performing many assemblies, I didn't know why my results were so uneven and why the darned thing was behaving so noisy... it turned out that I was damaging the chips when I soldered them using ordinary Sn60Pb40 solder.

But back to subject. You're right about first having to set the proper numbers in order to best know how to proceed. My goal is to obtain a fast, stable, full 24-bit reading (16,777,216 divisions) from a load cell. Of course I know I can't have it all and some compromises have to be made to obtain a configuration suitable to my needs.

The AD7780 datasheet contains the following paragraph:



Question: how can I make the AD7780 report a full range of 24 effective bits with a 2mV/V load cell? I'd like to use the reference source as the excitation voltage too, that way the configuration would be ratiometric and noise and drift would be minimized.
Would an external gain amplifier needed to be added? Would increasing the reference and excitation voltage to 7V (the maximum allowed by the chip) also increase resolution?

My answer would be: If the AD7780 has a full range input of 78mV when its reference is set at 5V and its PGA at 128, and I'm using a standard 2mV/V load cell excited with 5V that delivers a full-scale signal of 10mV.... then hell yes! I need to amplify the input signal by a factor of 7.8 to get what I want!... and so I need to use an external amplifier... but what good is the AD7780's internal PGA for me then? ... in that case, I'll just use an ADC that has no internal PGA and I'll add an external one that I'll have complete control over instead! ...

What's your take on my previous reasoning? ... and OBW, of course I'd like to hear your opinion too.
I'm on the road all weekend, so I can't help you much.

You can attempt to maximise the dynamic range by adding a small bit of analog gain, but most of your noise and drift will be coming from your load cell. Therefore, you will gain little improvement.

There is no such thing as 24 solid bits, unless you average -- for a very long time -- a signal that is essentially drift-free.

Determine first what your design goals are, then design for them.
 

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Determine first what your design goals are, then design for them.
A very valid proposal... my goal is to extract the maximum accuracy from a given chip at maximum possible speed... but yes, I have to admit that said goal is way too ambiguous and could apply to anything in life, ranging from buying the best car to marrying the ideal woman...

But again, back to topic... I believe you when you say "most of your noise and drift will be coming from your load cell" ... other than acquiring an expensive, over-the-top load cell, are there any techniques or add-on's out there to compensate for that?

Don't feel obligated to answer right away, btw... enjoy your weekend and have a great time... and then come back here first thing on monday with a perfect answer to my dilemma... :D
 
Last edited:

Thread Starter

cmartinez

Joined Jan 17, 2007
8,759
Ok, while I'm having this discussion with Joey - and as of yet still have to make a decision regarding which chip and circuit configuration I'll be using - let me make some preliminary numbers regarding generic load cells.

If the load cell is of the push-pull (bipolar) type, and it is excited using 5V, and is of the 2mV/V class, then its full differential range will output ±10mV.

From its datasheet, the LTC2440 inputs work as follows

... the LTC2440 converts the bipolar differential input signal, VIN = IN+ – IN–, from –FS = –0.5 • VREF to +FS = 0.5 • VREF where VREF = REF+ – REF–.
This means that if a 5V reference is used, then its differential inputs working at full scale can vary between -2.5V to +2.5V. Since the cell is being excited by connecting one lead to 5V and the opposite lead to ground, its outputs will both be at 2.5V when unloaded.

Facn_ADI02_nov2009.gif

To convert a 10mV differential signal to 2.5V one would need a gain amplifier with a factor of 250, which is something that the MAX44246 is perfectly capable of doing.

Does my reasoning make sense?
 
Top