This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1231: 1mV/V, 300gram load cell

Part Number: ADS1231
Other Parts Discussed in Thread: ADS1232, ADS1262, ADS1232REF, , INA163

I'm working on a project similar to a weigh scale.  The sensor is a 300 gram load cell with 1mv/v sensitivity.  My plan is to use ADS1231 and take advantage of 24-bit measurement with internal gain = 128.  AVDD, Vref, and bridge supply will all be from same voltage = 5V.

The most difficult part is that i require very fine resolution, 5mg.  Of course this should all be achieved at the lowest cost.  

Before each use, the product will be calibrated at 3 points, zero, ref mass 1, ref mass 2.

My original plan is to connect the bridge output directly to the ADS1231 and use the internal 128v/v gain.  My calculation shows i get 5mV output per 300 grams (16.67uV per gram before internal gain).  At 5mg, load cell output is 83nV!  This is very small and i think may not be possible.

Is sensing directly by ADS1231 in a single stage the best option? 

As i mentioned, the unit will be frequently calibrated.  Is there an advantage to using different voltages for VREFN and VREFP, for example VREFN = 1.5V and VREFP = 3.5V?  It seems this would give 24bits over 2V instead of 5V.

Should I add an Inamp with gain and use a different ADC with less internal gain to improve upon the resolution?

I searched through a few app notes.  TIDLBU0A seems similar, but my resolution requirements are more difficult.  Any advice is appreciated.

  • Hi Jeff,

    The noise using the ADS1231 is too high to get the resolution you require using the internal gain.  You could try using an external instrumentation amplifier, but the measurement will no longer be ratiometric (noise relative to the reference and excitation are common and will cancel) and you also have to add in any noise from the amplification stage (both of the amplifier and any external noise gained by the amplifier).  There are also advantages on using the internal PGA over external in that even though the number of bits of resolution diminishes with gain, the noise also lowers.  An external amplifier will increase the noise overall due to gain.  You might be able to use the ADS1232 with just the internal PGA and some averaging.  Your biggest problem is noise relative to the maximum output of the load cell.  Your repeatability (or best case weight resolution) for the ADS1231 will be:

    Full-scale load cell output (grams) / full-scale output (volts) * p2p noise (volts) = 300 g / 5 mV * 231.9 nV = 13.9 mg

    This is about 3 times worse than what you need.  Using the same calculation for the ADS1232 you can achieve 6.6 mg without any averaging.  Averaging should get you down to 5 mg.  This is with assumption that external noise has been eliminated or at least minimized to achieve 5 mg.  Power line-cycle noise and EMI/RFI (cell phones is a big offender) can easily cause problems achieving the theoretical.

    Another option to overcome the noise is to increase the excitation voltage, however this will also disturb the ratiometric measurement.  You could use bipolar supplies of +10V and -5V which would allow the excitation to be 15 V and the full-scale output to be 15 mV.  Resolution for the ADS1231 now improves to 4.6 mg resolution in theory.  However the noise of the reference and the excitation source will now play a factor in the true measured result.

    Best regards,

    Bob B 

  • Bob, Thanks for the feedback.  I read many of your other posts and was hoping you would get to mine.

    It sound like the ADS1231 is not suitable by itself.  The ADS1232 may work but will at best be pushed to the limit.  Is there a more suitable part or more advanced solution if I move out of the lower cost chips?

  • Hi Jeff,

    I apologize that something went wrong when I tried to post yesterday and it didn't actually go through and had to repost again today.

    As to using higher end devices, we do have devices with lower noise.  One example is the ADS1262, but this device has limited gain (maximum of 32).  Another issue is the ADS1262 has a full-scale range of 2* VREF (+/- VREF) whereas the ADS1232 is VREF (+/- 0.5VREF).  The combination of the increase in full-scale range and the limited gain make both devices about equal in the end with the ADS1232 being 1/2 of the cost.

    Just to show improvement using averaging I ran a simple test using the ADS1232REF.  The first shot is just raw results using a shorted input test:

    The second shot shows how averaging can help reduce the noise using a moving average of 4 results:

    These results do not guarantee a system performance, but it does show that the ADS1232 is capable of achieving the results you desire.  Your biggest obstacle will be keeping external noise out of the measurement.

    Best regards,

    Bob B

  • I actually have the ADS1231REF. I never noticed the ADS1232REF.

    Averaging will be acceptable, so maybe i can extend to 10 or more samples at 10SPS. Precision would be the goal here as I can sacrifice some speed.

    As an improvement I was considering using zero drift opamps or an inamp with small gain as a stage before the ADS. I don't really have a reference for how much extra noise i may be adding. Do you have any thoughts on this approach?

    Also, would an AC excitation be beneficial here to lower noise? Or is AC excitation mostly for drift? I think drift will not be critical in this application.

    Thanks again.
  • Hi Jeff,

    One advantage of using the ADS1232 is you can compare the results of using the ADS1232 all by itself at a gain of 128, or by adding an INA in front of the ADS1232 and using a gain of 1.  The upside of the INA is increasing the level of the load cell output.  The downside is the measurement is not ratiometric and can be affected by reference noise and drift.

    Regarding the ADS1262, you may find this TI Design information interesting written by one of my colleagues:

    http://www.ti.com/lit/ug/tiduac1/tiduac1.pdf

    The above discusses AC excitation.  You will gain some benefit outside of removing offset by the averaging with AC excitation.

    Best regards,

    Bob B

  • Well after testing with the ADS1231 I can confirm that it's close, but not good enough. The signal varies too much with the same static load.

    Moving on to an INA solution. I saw the INA163 recommended as a low noise inamp. Would you recommend something else? I hope to dial up the gain as much as possible. Then i'll follow it with a low noise ADC, like the ADS1232.
  • Hi Jeff,

    I think the INA163 would be ok, but it uses bipolar supplies.  You might ask the question on the amplifier forum for a single supply recommendation, as the INAs are not parts I usually use.

    If you have bipolar supplies I would go back to my earlier post and the recommendation regarding increasing the excitation supply.  If you increase the excitation, then you will also increase the measurable resolution.  Also, you remove the offset, gain and drift error of the INA.

    Best regards,

    Bob B

  • Related to the INA163, I overlooked that detail...  Too much focus on needing more gain.  I wasn't planning on using bipolar supplies.

    The unit will be calibrated often, before each use actually.  I think gain error and offset should get calibrated out.  I just haven't found a way to read the extremely small signals.

    With your experience in these applications, what would be your recommendation?

    I can add a negative reference if you think it would solve my resolution problem.

  • Hi Jeff,

    Personally, I would try to get it to work with some averaging on the ADS1232 first using 5V excitation and reference.  If that didn't work well enough, then I would attempt increasing the excitation supply voltage.  Thirdly, trying the external INA as the last resort.

    Best regards,

    Bob B

  • Bob,

    Thanks for your input. I have the ADS1232REF on order.
  • Bob, I'm back...

    I have the ADS1232REF.  The results don't look very promising.  I see 145nV p-p over 1000 sample window with a 64 AVG window.  This is with the 300g load cell connected with no load.  The cable is about 6 inches long and shielded.  It's a ratiometric measurement.

    There seems to be a very low frequency signal causing variations.  This is the main contributor to the p-p noise.  This is similar to what i see with the ADS1231REF and with my custom board as well.

    I'll try to attach the data log files.  Maybe you will recognize something.

  • This is with a 16 sample average.

    ADS1232_Avg16.txt
    Collected from ADS1232REF
    8/24/2017 8:12 AM
    Speed=Slow Gain=128 Channel =1
    
    -207342
    -207335
    -207331
    -207330
    -207325
    -207324
    -207326
    -207326
    -207328
    -207331
    -207333
    -207334
    -207336
    -207338
    -207340
    -207339
    -207339
    -207338
    -207336
    -207339
    -207340
    -207342
    -207343
    -207346
    -207346
    -207346
    -207348
    -207349
    -207348
    -207347
    -207352
    -207353
    -207355
    -207357
    -207359
    -207358
    -207358
    -207359
    -207359
    -207357
    -207358
    -207360
    -207359
    -207359
    -207360
    -207361
    -207359
    -207359
    -207357
    -207358
    -207358
    -207359
    -207359
    -207360
    -207360
    -207362
    -207363
    -207362
    -207364
    -207365
    -207365
    -207364
    -207367
    -207368
    -207369
    -207369
    -207369
    -207368
    -207367
    -207368
    -207368
    -207365
    -207364
    -207366
    -207364
    -207361
    -207361
    -207362
    -207358
    -207356
    -207358
    -207358
    -207355
    -207357
    -207359
    -207359
    -207359
    -207362
    -207361
    -207359
    -207360
    -207361
    -207360
    -207359
    -207362
    -207362
    -207360
    -207360
    -207364
    -207362
    -207362
    -207362
    -207363
    -207362
    -207364
    -207367
    -207368
    -207368
    -207370
    -207374
    -207372
    -207373
    -207374
    -207374
    -207372
    -207374
    -207376
    -207377
    -207379
    -207381
    -207380
    -207378
    -207377
    -207378
    -207376
    -207373
    -207376
    -207377
    -207378
    -207380
    -207381
    -207379
    -207376
    -207375
    -207372
    -207368
    -207367
    -207369
    -207370
    -207370
    -207369
    -207371
    -207369
    -207368
    -207367
    -207364
    -207362
    -207364
    -207366
    -207369
    -207371
    -207374
    -207376
    -207375
    -207375
    -207376
    -207376
    -207374
    -207377
    -207378
    -207378
    -207380
    -207383
    -207382
    -207381
    -207380
    -207379
    -207377
    -207375
    -207378
    -207378
    -207378
    -207379
    -207382
    -207379
    -207379
    -207379
    -207379
    -207376
    -207377
    -207378
    -207378
    -207379
    -207380
    -207380
    -207377
    -207376
    -207376
    -207375
    -207372
    -207374
    -207374
    -207373
    -207372
    -207376
    -207376
    -207374
    -207374
    -207373
    -207372
    -207371
    -207373
    -207374
    -207375
    -207375
    -207378
    -207375
    -207374
    -207376
    -207377
    -207372
    -207372
    -207374
    -207374
    -207375
    -207377
    -207378
    -207375
    -207374
    -207372
    -207370
    -207367
    -207368
    -207370
    -207369
    -207369
    -207371
    -207369
    -207367
    -207367
    -207366
    -207364
    -207361
    -207363
    -207363
    -207362
    -207363
    -207366
    -207365
    -207363
    -207363
    -207364
    -207361
    -207362
    -207366
    -207366
    -207366
    -207368
    -207371
    -207369
    -207367
    -207371
    -207371
    -207368
    -207369
    -207369
    -207369
    -207370
    -207374
    -207375
    -207373
    -207371
    -207371
    -207370
    -207368
    -207370
    -207372
    -207368
    -207367
    -207371
    -207370
    -207369
    -207369
    -207368
    -207366
    -207364
    -207365
    -207361
    -207361
    -207365
    -207368
    -207367
    -207368
    -207370
    -207370
    -207367
    -207369
    -207370
    -207370
    -207369
    -207372
    -207373
    -207371
    -207374
    -207374
    -207371
    -207368
    -207369
    -207368
    -207369
    -207370
    -207374
    -207372
    -207372
    -207373
    -207373
    -207370
    -207369
    -207372
    -207374
    -207375
    -207375
    -207377
    -207375
    -207374
    -207374
    -207374
    -207370
    -207370
    -207370
    -207370
    -207369
    -207371
    -207372
    -207370
    -207369
    -207369
    -207368
    -207365
    -207367
    -207368
    -207368
    -207368
    -207371
    -207371
    -207370
    -207370
    -207370
    -207368
    -207366
    -207367
    -207366
    -207366
    -207367
    -207369
    -207367
    -207367
    -207365
    -207364
    -207361
    -207362
    -207363
    -207360
    -207361
    -207368
    -207370
    -207371
    -207372
    -207373
    -207374
    -207373
    -207377
    -207379
    -207380
    -207383
    -207387
    -207387
    -207387
    -207392
    -207392
    -207388
    -207388
    -207390
    -207391
    -207392
    -207393
    -207395
    -207392
    -207391
    -207392
    -207392
    -207389
    -207390
    -207392
    -207393
    -207392
    -207394
    -207394
    -207392
    -207393
    -207393
    -207391
    -207389
    -207393
    -207394
    -207394
    -207394
    -207396
    -207396
    -207395
    -207394
    -207394
    -207392
    -207391
    -207393
    -207393
    -207391
    -207392
    -207395
    -207392
    -207390
    -207389
    -207390
    -207388
    -207389
    -207390
    -207390
    -207390
    -207391
    -207392
    -207388
    -207386
    -207386
    -207384
    -207380
    -207381
    -207382
    -207381
    -207381
    -207383
    -207382
    -207380
    -207379
    -207378
    -207378
    -207376
    -207379
    -207381
    -207382
    -207384
    -207387
    -207385
    -207384
    -207386
    -207387
    -207385
    -207385
    -207387
    -207388
    -207388
    -207388
    -207391
    -207389
    -207388
    -207388
    -207387
    -207385
    -207387
    -207388
    -207388
    -207388
    -207391
    -207391
    -207390
    -207390
    -207389
    -207389
    -207387
    -207389
    -207388
    -207389
    -207388
    -207391
    -207389
    -207389
    -207389
    -207389
    -207386
    -207385
    -207386
    -207386
    -207385
    -207387
    -207387
    -207385
    -207384
    -207382
    -207383
    -207380
    -207380
    -207380
    -207378
    -207378
    -207380
    -207380
    -207377
    -207378
    -207378
    -207377
    -207375
    -207379
    -207380
    -207382
    -207382
    -207385
    -207385
    -207385
    -207386
    -207386
    -207384
    -207383
    -207385
    -207385
    -207384
    -207384
    -207384
    -207381
    -207381
    -207379
    -207378
    -207374
    -207374
    -207373
    -207371
    -207371
    -207372
    -207371
    -207367
    -207366
    -207366
    -207364
    -207361
    -207363
    -207362
    -207362
    -207361
    -207364
    -207361
    -207359
    -207357
    -207355
    -207352
    -207352
    -207354
    -207354
    -207354
    -207356
    -207357
    -207355
    -207354
    -207352
    -207352
    -207349
    -207349
    -207352
    -207353
    -207354
    -207356
    -207357
    -207355
    -207355
    -207354
    -207353
    -207350
    -207350
    -207350
    -207350
    -207349
    -207350
    -207349
    -207347
    -207346
    -207345
    -207344
    -207342
    -207344
    -207344
    -207344
    -207344
    -207346
    -207341
    -207339
    -207342
    -207345
    -207342
    -207339
    -207338
    -207338
    -207340
    -207344
    -207345
    -207342
    -207342
    -207342
    -207342
    -207343
    -207346
    -207347
    -207340
    -207338
    -207343
    -207346
    -207346
    -207346
    -207344
    -207341
    -207340
    -207340
    -207339
    -207336
    -207336
    -207335
    -207334
    -207333
    -207336
    -207336
    -207334
    -207333
    -207332
    -207329
    -207327
    -207329
    -207329
    -207329
    -207329
    -207332
    -207332
    -207333
    -207336
    -207338
    -207338
    -207339
    -207343
    -207346
    -207349
    -207354
    -207358
    -207358
    -207360
    -207362
    -207365
    -207365
    -207368
    -207370
    -207370
    -207371
    -207375
    -207376
    -207374
    -207373
    -207372
    -207371
    -207369
    -207374
    -207374
    -207374
    -207374
    -207376
    -207373
    -207371
    -207372
    -207373
    -207371
    -207370
    -207372
    -207374
    -207374
    -207376
    -207379
    -207375
    -207375
    -207375
    -207376
    -207374
    -207377
    -207378
    -207378
    -207379
    -207383
    -207383
    -207382
    -207382
    -207382
    -207382
    -207379
    -207382
    -207383
    -207384
    -207385
    -207388
    -207388
    -207388
    -207390
    -207390
    -207388
    -207390
    -207393
    -207394
    -207395
    -207396
    -207397
    -207394
    -207393
    -207392
    -207390
    -207387
    -207388
    -207389
    -207389
    -207388
    -207390
    -207390
    -207388
    -207388
    -207389
    -207388
    -207387
    -207390
    -207392
    -207393
    -207394
    -207397
    -207396
    -207396
    -207396
    -207396
    -207396
    -207394
    -207396
    -207396
    -207397
    -207400
    -207403
    -207401
    -207401
    -207402
    -207403
    -207402
    -207403
    -207404
    -207404
    -207404
    -207404
    -207406
    -207402
    -207399
    -207397
    -207395
    -207390
    -207391
    -207390
    -207388
    -207387
    -207386
    -207384
    -207382
    -207380
    -207379
    -207377
    -207375
    -207379
    -207379
    -207380
    -207380
    -207382
    -207380
    -207379
    -207378
    -207378
    -207375
    -207376
    -207378
    -207378
    -207378
    -207379
    -207380
    -207376
    -207375
    -207374
    -207372
    -207370
    -207371
    -207371
    -207370
    -207370
    -207371
    -207370
    -207367
    -207366
    -207365
    -207363
    -207360
    -207362
    -207363
    -207362
    -207363
    -207364
    -207361
    -207359
    -207359
    -207358
    -207356
    -207357
    -207358
    -207359
    -207358
    -207360
    -207362
    -207360
    -207358
    -207359
    -207359
    -207358
    -207361
    -207364
    -207365
    -207365
    -207368
    -207368
    -207368
    -207367
    -207369
    -207369
    -207369
    -207373
    -207375
    -207376
    -207377
    -207379
    -207376
    -207377
    -207380
    -207382
    -207382
    -207383
    -207386
    -207388
    -207389
    -207391
    -207394
    -207392
    -207393
    -207393
    -207392
    -207391
    -207395
    -207397
    -207396
    -207397
    -207400
    -207399
    -207397
    -207397
    -207397
    -207397
    -207396
    -207398
    -207398
    -207398
    -207400
    -207403
    -207402
    -207401
    -207401
    -207401
    -207399
    -207400
    -207403
    -207404
    -207405
    -207406
    -207408
    -207405
    -207406
    -207406
    -207406
    -207404
    -207406
    -207408
    -207408
    -207408
    -207410
    -207409
    -207405
    -207402
    -207403
    -207406
    -207404
    -207407
    -207408
    -207408
    -207409
    -207411
    -207409
    -207408
    -207409
    -207408
    -207406
    -207407
    -207410
    -207412
    -207410
    -207407
    -207409
    -207406
    -207405
    -207405
    -207404
    -207401
    -207403
    -207404
    -207404
    -207404
    -207403
    -207404
    -207405
    -207405
    -207406
    -207404
    -207402
    -207404
    -207404
    -207403
    -207403
    -207405
    -207402
    -207401
    -207403
    -207403
    -207404
    -207403
    -207402
    -207403
    -207403
    -207404
    -207408
    -207406
    -207406
    -207407
    -207408
    -207406
    -207409
    -207409
    -207406
    -207406
    -207408
    -207409
    -207407
    -207407
    -207407
    -207406
    -207403
    -207405
    -207406
    -207405
    -207404
    -207404
    -207407
    -207407
    -207408
    -207408
    -207406
    -207405
    -207406
    -207406
    -207405
    -207405
    -207408
    -207406
    -207404
    -207404
    -207405
    -207405
    -207402
    -207403
    -207403
    -207404
    -207405
    -207407
    -207406
    -207407
    -207407
    -207407
    -207406
    -207408
    -207410
    -207411
    -207411
    -207414
    -207413
    -207411
    -207410
    -207410
    -207409
    -207409
    -207411
    -207411
    -207410
    -207410
    -207412
    -207408
    -207406
    -207405
    -207405
    -207402
    -207401
    -207402
    -207402
    -207401
    -207401
    -207397
    -207392
    -207390
    -207392
    -207393
    -207389
    -207391
    -207392
    -207393
    -207393
    -207395
    -207396
    -207395
    -207395
    -207394
    -207393
    -207394
    -207398
    -207399
    -207396
    -207394
    -207397
    -207394
    -207392
    -207393
    -207393
    -207392
    -207390
    -207391
    -207395
    -207396
    -207400
    -207403
    -207400
    -207401
    -207402
    -207404
    -207402
    -207404
    -207407
    -207408
    -207408
    -207410
    -207411
    -207409
    -207407
    -207406
    -207403
    -207400
    -207400
    -207398
    -207398
    -207397
    -207399
    -207399
    -207397
    -207396
    -207396
    -207396
    -207396
    -207398
    -207397
    -207396
    -207397
    -207400
    -207400
    -207402
    -207403
    -207403
    -207402
    -207402
    -207401
    -207400
    -207402
    -207406
    -207405
    -207403
    -207403
    -207403
    -207402
    -207400
    -207403
    -207402
    -207400
    -207401
    -207402
    -207402
    -207403
    -207403
    -207399
    -207394
    -207395
    -207398
    -207397
    -207396
    -207396
    -207398
    -207396
    -207396
    -207395
    -207394
    -207391
    -207392
    -207391
    -207392
    -207393
    

  • Hi Jeff,

    The ADS1232REF has only 0 ohm resistance for R23 and R24 that is part of the antialiasing filter.  The particular frequency or frequencies may be more visible without the averaging.  Along with the noise, there appears to also be some drift component as well. 

    The results shown for NFB is more like what I would expect with no averaging and shorted input.  I would set the input to the shorted case at mid-AVDD supply and see what the result is for that case first, then try some averaging.  This will be your best case scenario.  From that point I would connect the true input and try to determine the source or sources of noise.  You may find that small vibrations or fans blowing nearby from lab supplies or HVAC systems can be a big source of noise and drift.  A 90 code excursion at 5V reference is 210nV.  Just tapping the bench or air currents moving around the inputs can cause this excursion.  Any further higher frequency noise sources from EMI/RFI have the potential of aliasing back into the result.

    I would suggest replacing the two input filter resistors with a minimum of 1k ohm to see if you can get some improvement by improving the antialiasing cutoff frequency.  You could go higher with resistance, but higher resistance can add noise as well.

    Best regards,

    Bob B

  • I'll change the resistors and see what happens. Previously i tested with shorted inputs at 1/2vref. The noise was withing the spec of the part.

    I think the low frequency drifting is my problem. Is this typical for load cells? Are there programming techniques to minimize this?

    The time constant for LPF would have to be extremely so I'm not sure if a standard FIR or IIR will work. I could run an IIR with very low cutoff and reset the output on load changes and let the filter run normally while stable.

    At such a low frequency throwing out outliers won't really work.
  • Hi Jeff,

    There so many possibilities for noise and drift, you pretty much have to try and isolate each issue one at a time to discover what approaches are needed to solve the problem.  Drift can come from a lot of sources, with self-heating being one of them.  I have attempted to isolate thermal activity by placing the load cell and ADC in a box.  Circulating air currents can be a big problem with drift.

    For the noise, it really helps to discover the source.  If it is vibration, then perhaps placing the load cell and ADC on rubber feet or mat may help.

    Best regards,

    Bob B

  • I'm still running tests to locate the source of my drift.  The application may allow for some level of autozero control to manage some drift.

    Back to resolution, have you ever tried a resistor divider network to scale Vref+?  I was considering this to lower Vref+ and use more of the range of the ADC.  This should still keep my measurement ratiometric.

  • Hi Jeff,

    You could give it a try, but I doubt it is worth the effort.  I have not tried that approach for a couple of reasons.  One is based on the noise of conversion (quantization).  From my rough calculation at 5V and then dividing it in half for 2.5V reference input, you would lose an additional 2 bits of resolution due to noise.  So you would have to figure out if the increase in dynamic range is worth the attempt.  Second issue is although the measurement would remain ratiometric, you will add resistor noise.

    Best regards,

    Bob B