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.
Hello. I am designing a load cell with ADS1235 as the ADC with a pre-amplification system using AD8557 as OPAMPS, and STM32F405RGT6 as uC for this system.
I can successfully measure and change gain settings using firmware libraries provided by TI for the ADS1235.
For my application, I need to calculate angle by measuring forces in 2 separate channels (X and Y), and the taring process is very critical to guarantee that the zeros are correctly found and I don't have any pre-charges on any of the channels before the calibration to successfully find the load coefficients.
I designed a taring function that looks like this:
Hi Joao Almeida,
Can you confirm that the VDD voltage is 5V? Is this the IO voltage on your MCU, or do you have a level translator between the ADC and MCU?
What is the gain value of the preamp? And why not just feed the signal directly into the PGA of the ADC? The noise density of the ADC PGA is far less than the noise density of the amplifier you have chosen. You could also consider using the ADS1260 if you want an ADC that has all binary gains from 1 to 128 (unlike the ADS1235, which does not includes gains of 2, 4, 8, 16, and 32).
Is this an appropriate method to tare your sensor? It is my understanding that taring is an artificial zero point that accounts for some applied load on a sensor. For example, you might put a tray on a weigh scale in order to measure a liquid. Since you only want to measure the weight of the liquid, not the tray+liquid, you tare the scale with just the weight of the tray. This measurement is nonzero (you seem to be expecting a zero output from the ADC), even though it sets the "zero" point of the scale at the weight of the tray so when you add the liquid, the scale output only shows the weight of the liquid. In your case, taring would imply there is some necessary, nonzero angle between the two load cells that you are trying to remove from the final measurement. What you are describing sounds more like calibration, though not exactly, so I am a bit confused about what you are trying to accomplish. I would also expect taring to use an average of multiple samples, not the median.
You can check out our basic guide to bridge measurements to learn more about measuring load cells / resistive bridges using ADCs. Section 5.5 talks about calibration: https://www.ti.com/lit/sbaa532
One other minor thing: in the code below, you are selecting REFx0 (X-channel) to use as the reference for analog inputs AIN4 and AIN5 (Y channel). Both the ratiometric reference inputs on the X and Y channels appear to be the same, so this probably does not matter. I just wanted to point it out though since it doesn't really align with the way you have architected your schematic.
-Bryan