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.

ADS124S08: INMUX and IDAC Switching Speed

Part Number: ADS124S08

Hi,

We are trying to switch between three RTD temperature sensor inputs attached to ADS124S08 as fast as possible. We noticed that some important delay is needed after setting the registers until we get a useful measurement. I was able to limit the problem to the IDACs which needs more than 20ms (20-25ms) to settle down to a new value. The same happens if IDAC has the same value but IDACMUX changes their output pin.

I'm measuring this delays and over/undershoots during setting changes through the voltage over our reference resistor.

I also tried to remove all our filters, partly recommended by the datasheet, the results are very similar. The removal of the reference input filter gives approsimately 1ms faster response time. The start-up time on the Datasheet says 22us, is that an error maybe?. On the other hand a single-shot measurement should be finished after 0.406ms at 4000SPS (table 13 on page 42 of the datasheet). Is there something we haven't seen? If this is expected/known what is the shortest useful time between measurements?

Our Settings:

Sensor 1, PT1000 3-Wire

ADDR

REGISTER

BITs

7

6

5

4

3

2

1

0

0x00

ID

-

-

-

-

-

-

-

-

0x01

STATUS

-

-

-

-

-

-

-

-

0x02

INPMUX

0

1

0

1

0

1

0

0

0x54

0x03

PGA

1

1

1

0

1

0

0

1

0xE9

0x04

DATARATE

0

0

0

1

1

1

1

0

0x1E

0x05

REF

0

0

0

1

0

0

1

0

0x12

0x06

IDACMAG

0

0

0

0

0

1

0

0

0x04

0x07

IDACMUX

1

1

1

1

0

1

0

1

0xF5

0x08

VBIAS

-

-

-

-

-

-

-

-

0x09

SYS

-

-

-

-

-

-

-

-

0x0A

OFCAL0

-

-

-

-

-

-

-

-

0x0B

OFCAL1

-

-

-

-

-

-

-

-

0x0C

OFCAL2

-

-

-

-

-

-

-

-

0x0D

FSCAL0

-

-

-

-

-

-

-

-

0x0E

FSCAL1

-

-

-

-

-

-

-

-

0x0F

FSCAL2

-

-

-

-

-

-

-

-

0x10

GPIODAT

-

-

-

-

-

-

-

-

0x11

GPIOCON

-

-

-

-

-

-

-

-

Sensor 2 PT100, 4-Wire

ADDR

REGISTER

BITs

7

6

5

4

3

2

1

0

0x00

ID

-

-

-

-

-

-

-

-

0x01

STATUS

-

-

-

-

-

-

-

-

0x02

INPMUX

1

0

0

0

1

0

0

1

0x89

0x03

PGA

1

1

1

0

1

0

1

1

0xEB

0x04

DATARATE

0

0

0

1

1

1

1

0

0x1E

0x05

REF

0

0

0

1

0

0

1

0

0x12

0x06

IDACMAG

0

0

0

0

0

1

0

1

0x05

0x07

IDACMUX

1

1

1

1

0

1

1

0

0xF6

0x08

VBIAS

-

-

-

-

-

-

-

-

0x09

SYS

-

-

-

-

-

-

-

-

0x0A

OFCAL0

-

-

-

-

-

-

-

-

0x0B

OFCAL1

-

-

-

-

-

-

-

-

0x0C

OFCAL2

-

-

-

-

-

-

-

-

0x0D

FSCAL0

-

-

-

-

-

-

-

-

0x0E

FSCAL1

-

-

-

-

-

-

-

-

0x0F

FSCAL2

-

-

-

-

-

-

-

-

0x10

GPIODAT

-

-

-

-

-

-

-

-

0x11

GPIOCON

-

-

-

-

-

-

-

-

Where '-' are default values.

The procedure for the measurements:

- Setting configs

- wait for 0.42ms

- read out

- reconfigure immediately

- wait 0.42ms

- read out

Thank you for your support.

 

  • Hi Jonas,

    Most likely you are seeing analog settling.  I would suggest reviewing 'A Basic Guide to RTD Measurements':

    http://www.ti.com/lit/an/sbaa275/sbaa275.pdf

    It would be very helpful to see your schematic and all resistance and capacitance of the sensor path.  There are a number of ways to configure a 3-wire RTD.  It is not clear how you are compensating the lead resistance with a single IDAC source.  If you are using a design similar to Figure 10 in the above referenced document, I would highly recommend that you do not drive current out the input pin (AIN5) for the 3-wire measurement.  You will need some form of filtering at least for anti-aliasing.

    I also see that you are changing the default setting for the start of conversion of a register write from the default of 14 tmod periods to 1 tmod.  The default setting delay will cover most input settling issues.  You can also increase as needed which will be a delay internal to the ADS124S08 and removes a micro timer requirement between measurements.

    A 20ms delay for IDAC settling is pretty long.  Every time you switch between sensors and measurements there are analog settling delays as there is always capacitance in filters, traces and cables and the resistance is not fixed.  5k of resistance and 1uF of capacitance has a time constant of 5ms.  5 time constants of 5ms is 25ms.  However, as the measurement is ratiometric (excitation is same for both the reference and sensor) even if the reference hasn't fully settled you should still see good results.  Where you will most likely see an issue is a non-linearity when switching from 500uA to 250uA as there will still be residual charge at the reference and not at the sensor.

    I don't know what inputs or combinations of inputs you are using, but there are 2 reference inputs on the ADS124S08.  It would be possible to have 2 separate paths where the RTDs could each be powered simultaneously.  I would suggest that you use 250uA for the magnitude and set IDAC1 to the 3-wire RTD and IDAC2 to the 4-wire RTD.  You would need to resize the 3-wire reference resistor to match the current, and possibly increase the gain from 8 to 16.  In this way you could have both RTDs powered at the same time which would remove the IDAC path settling delay.

    Best regards,

    Bob B

  • Thank you for your reply and explaination. I fully agree that we have an analog settling issue. That is also why I came up with the IDAC settling time. I also tried removing all filters by just adding a jumper wire from the IDAC output to our reference resistor and measured the settling time of the reference voltage.
    That way no external capacitance gets charged and the ADS124S08 can switch at full speed. Unfortunately even then the settling time was not much better. I tried with different current magnitudes and other settings, with external filters and without and the fastest I came up with was ~20ms.
    I will add the schematics and some additional plots regarding my measurements on Monday.
    For me it would be interesting if anyone knows how long the settling time effectively should be when there is only the bare minimum connected.

    Best regards

    Jonas Pfaff
  • Hi Jonas,

    Unfortunately measuring the voltage at the reference resistor does not tell you the settling time of the IDAC current but rather the settling time of the reference voltage. The reference current will settle very quickly and you would have to measure this with an inline current meter of high precision to verify. I can't give you a precise settling of the reference voltage as this will be system dependent. If I know your exact setup I can try to duplicate.

    Along with your schematic would it be possible for you to take a few pictures of your setup for duplication.

    Some other considerations is the reference resistor, the value of the resistor and the connection to ground. If the reference resistor connection to ground is high impedance (inductive for example) the spike in current when the IDAC is turned on will be loaded across the inductance. If the connection has an increased resistance to ground, then the settling time will be increased. If you replace the resistor with a small value and you see a decrease in reference voltage settling time, then this would be an indicator of capacitance causing the delay.

    Best regards,
    Bob B
  • Hi Bob,
    Thank you for your time. I found the problem by removing part after part and found a connection which I did not think of, filter to Earth with another capacitor to ground in another part of the circuit. That capacitor sinked some of the IDAC current while getting charged and caused the settling time. I am now down to 2ms and under 500us when removing all filters. That is good enough for us.

    Best regards
    Jonas