Author Topic: analog front end for adc  (Read 9392 times)

0 Members and 1 Guest are viewing this topic.

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
analog front end for adc
« on: August 06, 2017, 05:56:09 pm »
Hello,

I'm currently working on an analog front end for an ADC. The front end is designed for use in strain gauge application. From my experience I know, that noise is crucial with this topic and I would like to get some advice from you.

The bridge is driven unipolar (DC) with 5V on V+ and GND on V- The first IC is a INA122 (U15) followed by a 3rd order acrive lowpass filter. For the active filter a LM6482 is used. The second half of the opamp is used for a lowpass filter on a 2.5V reference. The idea for this setup was to filter both the signal and the reference voltage before going to the ADCs inputs. The PCB is designed as a 4-layer PCB with the stacking Signal/GND/VCC/Signal.

I would be very happy to get some feedback on this design  :)
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #1 on: August 06, 2017, 06:08:02 pm »
Noise is not such a big deal with strain gauges; you will run out of linearity and hysteresis before noise becomes a problem.  Drift is more important than noise.

Being a micropower part, the INA122 is marginal for both drift and noise however except in low precision applications.
 

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #2 on: August 06, 2017, 06:31:13 pm »
ok, so you suggest replacing the INA122?
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #3 on: August 06, 2017, 06:41:09 pm »
ok, so you suggest replacing the INA122?

It depends on the application.  If you are making a bathroom scale, then low power is more important and the INA122 is a good choice.

Gain error drift with instrumentation amplifiers that use an external gain setting resistor can also be a problem.  With that in mind, an INA131 which has a fixed gain of 100 would be a better choice.
 

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #4 on: August 06, 2017, 06:47:35 pm »
Low power is definetly not a point, the circuit is powered from a power supply. Ok, I will try to get and use the INA131  :). Do you think the rest of the design is ok? I'm thinking of using additional guard traces etc.
« Last Edit: August 06, 2017, 06:50:12 pm by Jacky_88 »
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #5 on: August 06, 2017, 07:59:36 pm »
I did not take that close a look.

Instead of powering the strain gauge from Vcc, use 2 x Vref or use 1/2 Vcc as your reference.  By applying the same reference to the strain gauge and ADC, reference drift cancels out.  This is called ratiometric conversion.  If you do it right, reference noise cancels out as well.

In load cells we just used the output from a 7815 to power the load cell and as a reference for the ADC.  Ratiometric operation cancelled out the high drift of the 7815.

The LMC6482 has pretty horrible common mode rejection which may limit linearity.
 

Offline gamalot

  • Super Contributor
  • ***
  • Posts: 1389
  • Country: au
  • Correct my English
    • Youtube
Re: analog front end for adc
« Reply #6 on: August 06, 2017, 09:23:04 pm »
There are many ADCs designed for bridge sensors, most of them have build-in PGA in front end.
I'm a poet, I didn't even know it. |  https://youtube.com/@gamalot | https://github.com/gamalot
 

Offline danadak

  • Super Contributor
  • ***
  • Posts: 1875
  • Country: us
  • Reactor Operator SSN-583, Retired EE
Love Cypress PSOC, ATTiny, Bit Slice, OpAmps, Oscilloscopes, and Analog Gurus like Pease, Miller, Widlar, Dobkin, obsessed with being an engineer
 

Offline floobydust

  • Super Contributor
  • ***
  • Posts: 7526
  • Country: ca
Re: analog front end for adc
« Reply #8 on: August 06, 2017, 11:48:39 pm »
I would have some RF filtering on the input (ferrite beads etc.) particularly if the strain gage is far away, and a GND pin for shielded cable or chassis connection.
INA Pin 5 REF I don't think you leave floating verses to GND.

Depending on the quality of the strain gages, you might need span/offset pots or provisions for resistors.

I had bad luck with the LMC6482, I find it noisy 37nV/?Hz and offset all over the place after reflow and any PC board flex.
Not sure how many bit ADC or your budget.
 

Online splin

  • Frequent Contributor
  • **
  • Posts: 999
  • Country: gb
Re: analog front end for adc
« Reply #9 on: August 07, 2017, 01:06:48 am »
Low power is definetly not a point, the circuit is powered from a power supply. Ok, I will try to get and use the INA131  :). Do you think the rest of the design is ok? I'm thinking of using additional guard traces etc.

The INA131 is horribly expensive though at $6 to $7 in 1000 off quantities, plus another $1 for the LMC6482. For less than half the price you could get a 24bit ADC with a x128 PGA with input referred noise of 65nV rms or less - eg. AD7797. The 16-bit version, AD7796 is even cheaper.

Using a sigma delta ADC means you can dispense with an anti-alias filter, or at least get away with a simple low pass RC filter. As David Hess pointed out, by using the ADC reference to excite the bridge, most of the gain and noise errors go away. A 2-layer PCB should be perfectly OK and save a bit more money. The main error sources beyond the strain guage itself will be the gain drift with temperature and integral non-linearity of the ADC (INL), and thermal EMFs.

Only you know your requirements though - if you're trying to develop an instrument to use to replace the standard kg or need high speed measurements then a cheap sigma-delta won't cut the mustard.

If you want really cheap then look at the < 40 cents 24 bit Chinese HX711 and 80 cents Nuvoton Technology NAU7802 or the 18 bit MCP3142 (< 60 cents in small quantities from China, but 8x max PGA gain).

Alternatively, consider a microcontroller with a sigma-delta ADC and PGA which should still cost a lot less than the INA131. Eg. the $2.3 STM32F373 has a 16bit convertor with 32x PGA (but the linearity isn't good at +/-200 to +/- 400ppm depending on reference voltage and PGA gain (ie. equivalent to 11 to 12 bits). Noise performance won't match dedicated ADC chips, but as they are quite fast at 50KSPS for a single channel, you can improve that considerably by averaging. TI, Freescale (now NXP), Silicon Labs amongst others have similar devices.

The Cypress PSOC 5 microcontrollers have a 20 bit sigma delta ADC with similar noise performance to the '373 but rather better maximum linearity error of +/- 32ppm (equiv. to 15 bits, but that is without the PGA - linearity with the PGA is unspecified). They are a lot more expensive though at approx $10.

[EDIT] Corrected AD7989 to AD7797 (AD7789 doesn't have a PGA). Added ADC/PGA gain drift with temperature as one of the major error sources.

One other advantage of the dedicated ADCs, such as the AD7797 is they typically include switches to allow the internal offsets of the ADC and PGA to be calibrated out when required. Using the instrumentation amplifier you would have to provide an analog switches or relays to short the amplifier inputs to provide the same functionality.

Many low cost ADCs have input multiplexors which would also allow you to calibrate out the gain errors/drift of the ADC and PGA by switching the input to a known reference voltage using voltage divider resistors connected to the same bridge excitation voltage. The resistors would obviously have to have appropriate precision and stability specifications. Doing the same with an external amp would require additional switches (and control signals), but that would allow a cheaper amp to be used as offset and gain drift would no longer be important.
« Last Edit: August 07, 2017, 01:49:19 am by splin »
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #10 on: August 07, 2017, 03:46:07 am »
Linear Technology application note 43 has an excellent discussion of the various bridge measurement topologies:

http://www.linear.com/docs/4134

In practice, all of them can provide more accuracy than a strain gauge bridge will support.  The first one shown on page 3 is the most common but I think the last one on page 4 has the best accuracy at a given cost.

Delta-sigma converters which can directly digitize the low output signal levels from a strain gauge bridge are newer than that application note and work great.
 
The following users thanked this post: werediver

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #11 on: August 07, 2017, 06:47:37 am »
The INA131 is horribly expensive though at $6 to $7 in 1000 off quantities, plus another $1 for the LMC6482. For less than half the price you could get a 24bit ADC with a x128 PGA with input referred noise of 65nV rms or less - eg. AD7797. The 16-bit version, AD7796 is even cheaper.

Ok. I'm using the the ADS1248  :P


Using a sigma delta ADC means you can dispense with an anti-alias filter, or at least get away with a simple low pass RC filter. As David Hess pointed out, by using the ADC reference to excite the bridge, most of the gain and noise errors go away.

That is interesting. Buty why?


A 2-layer PCB should be perfectly OK and save a bit more money. The main error sources beyond the strain guage itself will be the gain drift with temperature and integral non-linearity of the ADC (INL), and thermal EMFs.

My first version of this board is a 2-layer PCB. I switched to 4 layers because I thought, that all the trace for the different supply voltages (VCC, VDD, 2.5V REF, 5V REF) lying next to the signal traces have an negative influence on accuracy. And since I'm not an electronics engineer, routing the pcb is a complicated job. Especially the earlier mentioned ADS1248 drives me crazy. I might switch to the ADS131A02 anyway - or an ADC with a similar package because the ADS131A02 lacks the PGA.


Only you know your requirements though - if you're trying to develop an instrument to use to replace the standard kg or need high speed measurements then a cheap sigma-delta won't cut the mustard.

I want to replace the standard scale with a liitle extra of resolution (eg. 10th of a g and 5kg max).

EDIT: changed milligramms to gramms.

If you want really cheap then look at the < 40 cents 24 bit Chinese HX711 and 80 cents Nuvoton Technology NAU7802 or the 18 bit MCP3142 (< 60 cents in small quantities from China, but 8x max PGA gain).


Most sellers in germany don't even have the "normal stuff"  ;)



Alternatively, consider a microcontroller with a sigma-delta ADC and PGA which should still cost a lot less than the INA131. Eg. the $2.3 STM32F373 has a 16bit convertor with 32x PGA (but the linearity isn't good at +/-200 to +/- 400ppm depending on reference voltage and PGA gain (ie. equivalent to 11 to 12 bits). Noise performance won't match dedicated ADC chips, but as they are quite fast at 50KSPS for a single channel, you can improve that considerably by averaging. TI, Freescale (now NXP), Silicon Labs amongst others have similar devices.

I tried to switch to STM's microcontrollers. Would you please give me some hints for a good IDE? That would be really nice :)

The Cypress PSOC 5 microcontrollers have a 20 bit sigma delta ADC with similar noise performance to the '373 but rather better maximum linearity error of +/- 32ppm (equiv. to 15 bits, but that is without the PGA - linearity with the PGA is unspecified). They are a lot more expensive though at approx $10.



[EDIT] Corrected AD7989 to AD7797 (AD7789 doesn't have a PGA). Added ADC/PGA gain drift with temperature as one of the major error sources.

One other advantage of the dedicated ADCs, such as the AD7797 is they typically include switches to allow the internal offsets of the ADC and PGA to be calibrated out when required. Using the instrumentation amplifier you would have to provide an analog switches or relays to short the amplifier inputs to provide the same functionality.
Many low cost ADCs have input multiplexors which would also allow you to calibrate out the gain errors/drift of the ADC and PGA by switching the input to a known reference voltage using voltage divider resistors connected to the same bridge excitation voltage. The resistors would obviously have to have appropriate precision and stability specifications. Doing the same with an external amp would require additional switches (and control signals), but that would allow a cheaper amp to be used as offset and gain drift would no longer be important.

Ok, I get the point.
That was a lot of input, but that's why I set the project for discussion  :) This is a hobby project and ordering PCBs in quantities < 5 isn't cheap anyway, it don't really care on one 1€ more or less spent on parts. My aim is to get a more or less stable bit value to convert.

The attachment shows the distrubition of bit values I read from the ADC using the front end I showed earlier. In my eyes, this measurement is unuseable.
« Last Edit: August 08, 2017, 05:41:52 am by Jacky_88 »
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 22436
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: analog front end for adc
« Reply #12 on: August 07, 2017, 06:52:48 am »
No RFI filtering or ESD protection on the input?  Gonna trust that INA122 to handle the nasty outside world by itself? :-\

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #13 on: August 07, 2017, 01:58:57 pm »
Using a sigma delta ADC means you can dispense with an anti-alias filter, or at least get away with a simple low pass RC filter. As David Hess pointed out, by using the ADC reference to excite the bridge, most of the gain and noise errors go away.

That is interesting. But why?

Delta-sigma converters sample the input at high frequency and process the bit stream to produce a result.  The high input sampling rate relaxes anti-aliasing requirements considerably.   

Quote
I want to replace the standard scale with a liitle extra of resolution (eg. 10th of mg and 5kg max)

That is about 1 or 2 orders of magnitude more accuracy that a strain gauge will produce under typical ideal conditions.  The extra resolution is still useful but do not count on improved accuracy.

Quote
The attachment shows the distrubition of bit values I read from the ADC using the front end I showed earlier. In my eyes, this measurement is unuseable.

Usually, and this applies to a delta-sigma converter as well, an integration period which is some multiple of the power line frequency is used to cancel out interference.  0.1 seconds will cancel both 50 and 60 Hz interference and if you check the datasheets for instrumentation type delta-sigma converters, their frequency response has nulls resulting from this which land on 50 and 60 Hz and their harmonics.

Digital multimeters do the same thing which is how they get such high normal mode rejection.
 

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #14 on: August 07, 2017, 04:20:41 pm »
No RFI filtering or ESD protection on the input?  Gonna trust that INA122 to handle the nasty outside world by itself? :-\

Tim

Unfortunately  yes  :-X

Might that help? (exact values will be determined)
« Last Edit: August 07, 2017, 04:22:22 pm by Jacky_88 »
 

Offline T3sl4co1l

  • Super Contributor
  • ***
  • Posts: 22436
  • Country: us
  • Expert, Analog Electronics, PCB Layout, EMC
    • Seven Transistor Labs
Re: analog front end for adc
« Reply #15 on: August 07, 2017, 04:44:08 pm »
Yes, that's good. :)  C2 isn't really needed, you get CM and diff filtering from C1 and C3 already.  Remember to use junction diodes, not schottky diodes: the leakage current would introduce error here!  BAV99 is a common choice. :-+

Tim
Seven Transistor Labs, LLC
Electronic design, from concept to prototype.
Bringing a project to life?  Send me a message!
 

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #16 on: August 07, 2017, 05:43:07 pm »

In load cells we just used the output from a 7815 to power the load cell and as a reference for the ADC.  Ratiometric operation cancelled out the high drift of the 7815.

So a dedicated voltage reference like a REFXX is not necessary. 7805 or a similiar IC connected to REFP of the ADC and the bridge will do the job?
 

Offline gamalot

  • Super Contributor
  • ***
  • Posts: 1389
  • Country: au
  • Correct my English
    • Youtube
Re: analog front end for adc
« Reply #17 on: August 07, 2017, 06:11:16 pm »

In load cells we just used the output from a 7815 to power the load cell and as a reference for the ADC.  Ratiometric operation cancelled out the high drift of the 7815.

So a dedicated voltage reference like a REFXX is not necessary. 7805 or a similiar IC connected to REFP of the ADC and the bridge will do the job?

It is not necessary to use any voltage reference, make sure the load cell's excitation voltage and ADC's reference voltage are connected together or proportional.
I'm a poet, I didn't even know it. |  https://youtube.com/@gamalot | https://github.com/gamalot
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #18 on: August 07, 2017, 06:17:26 pm »

In load cells we just used the output from a 7815 to power the load cell and as a reference for the ADC.  Ratiometric operation cancelled out the high drift of the 7815.

So a dedicated voltage reference like a REFXX is not necessary. 7805 or a similiar IC connected to REFP of the ADC and the bridge will do the job?

That is correct.  In the highest performance applications, there may be some advantage to using a low noise reference to provide *both* the excitation to the strain gauge and the reference for the ADC allowing ratiometric operation however a standard regulated supply is enough if ratiometric operation is used.  If the ADC has a built in reference, using it to supply the excitation works well.

Ratiometric operation cancels out drift and noise from the excitation source which would otherwise create gain error and lower resolution.

There are other tricks which may be used as well.  Load cells are often remotely mounted from the weighmeter and connected using a long shielded cable which contributes a gain error because of the temperature coefficient of the long excitation wires.  The load cell might be compensated to account for this, or a 6 wire cable could be used with separate force and sense wires for the excitation, or an excitation current could be used instead of an excitation voltage.  None of this is required if the load cell is embedded; the wiring is too short to matter then.
 

Offline texaspyro

  • Super Contributor
  • ***
  • Posts: 1407
Re: analog front end for adc
« Reply #19 on: August 08, 2017, 01:11:06 am »
0.1 mg resolution of a 5 kg weight...  with a strain gauge...   :-DD

Sorry to burst your bubble,  but lets do some math...
5 kg -> 5,000,000 mg.  0.1 mg is 50,000,000 parts.  That's 1 part in 50 million...  call it a 26 bit ADC.  With most strain gauges you are lucky to get 1 part per thousand in the real world.

And of course you are ignoring basic things like air buoyancy,  environmental, leveling, etc effects.

To get better than 1 part per thousand of meaningful data out of a scale requires a LOT of ultra-precision mechanical voodoo.    Check out what is involved in laboratory analytical balances.

My best balance can read 20 grams with microgram resolution... call it 24 bits.  The weigh chamber has three layers of IR blocking glass... even your body heat from across the room can cause air currents large enough to affect readings.  It has to be mounted on a concrete pillar to bedrock for optimum performance... even then keeping it level is an exercise in frustration.   It can detect the change in gravity between two floors of a building.

I did some design work on the electronics for a scale that could read 1g to nanogram resolution (30 bit mass to digital converters, anyone?).  It operated in a vacuum,  thermally controlled to < 1 millidegree,  diamond film flexures,   piezo nanostepper leveling,  laser interferometers... just begin to scratch the surface of the juju  that went into that beast.
 

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #20 on: August 08, 2017, 05:40:10 am »
0.1 mg resolution of a 5 kg weight...  with a strain gauge...   :-DD

Sorry to burst your bubble,  but lets do some math...
5 kg -> 5,000,000 mg.  0.1 mg is 50,000,000 parts.  That's 1 part in 50 million...  call it a 26 bit ADC.  With most strain gauges you are lucky to get 1 part per thousand in the real world.

Big ups. My fault. My 5€ hausehold scale has a minimum resolution of 1g within a range of 5kg. I just want to boost that to a minimum of 0.1g. So 5,000g. Not 1 part in 50M but 1 in 50,000. Your right, a resolution down to mg would be extreme.

I try to ccorrect that in my earlier post.

Ok, that was my initial request for this project. As I've seen I don't even get the basics right  :)
« Last Edit: August 08, 2017, 06:03:49 am by Jacky_88 »
 

Offline Jacky_88Topic starter

  • Contributor
  • Posts: 27
  • Country: de
Re: analog front end for adc
« Reply #21 on: August 08, 2017, 02:03:32 pm »

http://www.linear.com/docs/4134


The amp showed in figure 11 is extreme intereseting. I came across LTC1043 before and I'm familiar with this IC. Since I'm interested in weighing liveless objects, this circuit might be usefull.
 

Offline branadic

  • Super Contributor
  • ***
  • Posts: 2449
  • Country: de
  • Sounds like noise
Re: analog front end for adc
« Reply #22 on: August 08, 2017, 03:28:39 pm »
Intersting to notice, that so many people still use the classic ADC approach. Even though you can measure in ratiometric mode, your are still limited in vertical resolution of the ADC.
Have you checked the PicoStrain approach (PS081, PS09)? If not, you might want to risk to check this on http://www.acam.de/products/picostrain/ together with the additional white papers, application notes and datasheets. Once understood how to handle them they give you amazing results, resolution and accuracy.

EDIT: You can ask for evalkits and single parts at the german distributor https://www.is-line.de.

-branadic-
« Last Edit: August 08, 2017, 03:31:11 pm by branadic »
Computers exist to solve problems that we wouldn't have without them. AI exists to answer questions, we wouldn't ask without it.
 

Offline wraper

  • Supporter
  • ****
  • Posts: 17675
  • Country: lv
Re: analog front end for adc
« Reply #23 on: August 08, 2017, 03:40:32 pm »
This is what I use, the downside is fixed gain of 160. The upside, less than $1 in parts, low offset and drift, very high impedance of REF input.
« Last Edit: August 08, 2017, 03:43:48 pm by wraper »
 

Offline David Hess

  • Super Contributor
  • ***
  • Posts: 17219
  • Country: us
  • DavidH
Re: analog front end for adc
« Reply #24 on: August 08, 2017, 03:54:29 pm »

http://www.linear.com/docs/4134

The amp showed in figure 11 is extreme intereseting. I came across LTC1043 before and I'm familiar with this IC. Since I'm interested in weighing liveless objects, this circuit might be usefull.

The LTC1043 based bridge amplifier is not strictly necessary and could be replaced with one of the other high performance bridge amplifiers.  The delta-sigmal converters discussed which have differential inputs effectively implement the function of the LTC1043 and chopper stabilized LTC1150 internally.

The fast settling dual time constant output filter is interesting.  Weigh scale settling time has always been a problem for both mechanical and electronic reasons.

The scale is not going to have 1 part in 30,000 accuracy but that has nothing to do with distinguishing small changes as shown when it is being used as a ballistocardiograph.

Intersting to notice, that so many people still use the classic ADC approach. Even though you can measure in ratiometric mode, your are still limited in vertical resolution of the ADC.

This is because you run out of strain gauge accuracy before you run out of ADC accuracy and resolution.  This was the case even in the 1980s when integrated dual slope integrating converters (1) with up to 40,000 counts were used.  Better ADCs are not needed and development has instead focused on more integration for lower cost with delta-sigma converters.

Even before the 1980s, resolution and accuracy of the ADCs was not a limitation.  Assuming you avoided the problems with dielectric absorption in integrating capacitors, the big issues were offset voltage drift and resistor stability.  Precision operational amplifiers like the OP-07 and integrated chopper stabilized amplifiers really made things easier.

(1) In the 1980s, Texas Instruments and Intersil sold a lot of dual-slope integrating converters for applications like these.  In some cases these were the same parts going into handheld digital multimeters and you can still buy their descendants.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf