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.

PGA309: PGA309 T0...Tn Index What is the correct sequence ?

Part Number: PGA309

I have tested with a PGA309 with a real sensor in the oven. For the temperature measurement the internal one was configured.
I assume that this is also a diode where the forward voltage changes with the temperature change.
The measurement was successful ! The correct coefficients were set. Everything works perfectly. The temperature step was set from -40...-20...0...25...50...90...120.
In the EEPROM T0=-40 ...to T6=120 was programmed ascending.

The second test series was now carried out with an external temperature measurement.
The configuration of the temperature measurement was changed to external and the corresponding calibration values of the external diode were programmed into the EEPROM in the same sequence. Now the temperature compensation did not work anymore !
The forward voltage of a diode decreases with increasing temperature, therefore the Temp.ADC counts become smaller and smaller with increasing temperature.

So that the compensation with measurement of the temperature by an external diode functioned correctly the order of the temperature indexes had to be inverted.
In the EEPROM T0=120 ... to T6=-40 were programmed in descending order.

Does the PGA309 have a problem with the temperature measurement in the constellation if the Temp.ADC counts is descending ?

What is the correct sequence of the temperature index ?

Unfortunately, the application with an external diode for temperature measurement is not described and I have not found an example. This has cost me a lot of time.

  • Roger,

    Sorry for the difficulty you are having.  The PGA309 does not require that the temperature ADC codes are ascending.  Below is a step-by-step example for a calibration with the PGA309EVM using the built in sensor emulator.  The sensor emulator generates an emulated bridge sensor output and and emulated temperature signal using a DAC and amplifiers.  The emulator can be adjusted to emulate different real world conditions.  In this example, a diode type temperature signal is emulated.  On slide 9, you can see that the TEMP ADC is descending.  In the next few slides you can see that the calibration was tested using the sensor emulator and the error at the specific points measured is very low.  If you have the evaluation module (PGA309EVM), I suggest that you try running the calibration with the sensor emulator exactly as shown in the document.  This procedure shouldn't take too long.  Once you get a successful emulated calibration, change the jumpers as shown on page 12 and connect your external sensor and diode.  I think that your calibration should work after taking these steps.  If not, please capture the calibration results as shown in slide 9 for trouble shooting purposes.

    pga309EVM software step-by-step example 10-18-2023.pdf

    Best regards,

    Art

  • Thank you for the quick reply.
    I have the EVM-board but I use it only to program the EEPROM and to control it with the register (block diagram).
    Our piezoresistive capsules are already measured over the temperature and we have all the data from the sensor behavior so already.
    We want to use this data to do without a calibration in the oven since this was just already made (only the capsule).
    I calculate now in an excel sheet with the help of the raw data of the sensor the coefficients and all the other data for programming the EEPROM. After that we make a verification.
    This works great ! The compensation works perfectly over the whole temperature range. I'm just wondering why I have to change the order of the data when I measure the temperature with an external diode connected. The compensation works perfectly under the condition that the data (Temp.ADC Counts) in the EEPROM for the temperature are ascending.
    I followed the example (3.2 EEPROM Content and Temperature Lookup Table Calculation) on page 62 document SBOU024B. And the TempADC counts (Table 3-3) are inverse as soon as I use an external diode.

    I found this out but is this really correct or am I making another mistake ?

    Thanks for a quick reply
    Roger

  • Roger,

    1. What is the result of your calibration.  Is it complete non-functionality or just large errors?
    2. One possible concern for your method:  The PGA309 is designed to be calibrated in the oven as a complete module with the sensor.  The reason that this is the recommended approach is that the errors of the PGA309 itself and the drift of these errors is calibrated along with the sensor.  Doing the full calibration assuming accurate gain and offset of the different blocks in the PGA309 will lead to errors.  Also, doing an over temperature calibration based on room temperature data and projections of the temperature sensor data will lead to drift errors.  It is possible that these errors will be acceptable to your requirements, but I want to mention this as a concern.
    3. If you send me your spreadsheet, I can check the math.  The PGA does not require either ascending or descending data.
    4. Note: I recently updated the document SBOU023 to revision C. The changes related to the section with table 3-3.  The issue with the old version is that some of the gain / offset DAC steps in the example exceeded the maximum allowable signed 2's compliment 16 bit integer.  The new document uses values that are in range, and also provides the comment "The allowed range for ZM is: -32768 ≤ ZM ≤ +32767 (16 bit signed integer)".  Beyond this I added section 5-4 providing the math behind the calibration procedure.  I do not think the changes are the source of your problem as the equations for Table 3-3 are correct.
    5. One possibility to do a calibration without your spreadsheet would be to use SENSOREMULATOREVM.  This is the older manual version of the built in sensor emulator included in the PGA309EVM.  You could program the temperature sensor and bridge sensor outputs to match your sensor then disconnect the emulator and attach your real world sensors.  Alternatively, you could use two PGA309EVM and wire the built in sensor emulator from one PGA309EVM into the input of your PGA309 hardware.  The reason I suggest this is the most likely issue with your setup is that you are making some kind of math error in your spreadsheet.  The PGA309EVM software calibration page does all the math needed so that we can confirm your spreadsheet is correct.

    I hope we can resolve your system issue soon.  Best regards, Art

  • Ok I will try to explain it again. Apparently I have expressed myself too imprecisely :)
    To question 1
    Do I program the data in the EEProm with internal temperature measurement active the T0 ... T6 values ascending then we measure a deviation over the whole temperature range from -40deg to +120deg a FSO deviation of <0.5% and offset <0.1 This is perfect and more than enough accurate.
    If I program the data in the EEProm with external temperature measurement actively the T0 ... T6 values ascending then the compensation does not work at all ! The PGA always fetches the values from the temperature range T0=-40deg. So we had the suspicion that the PGA needs mandatory ascending TempADC values. Which is also the case with the internal temperature measurement. As already said with the external temperature measurement, however, the measurement results are inverse.

    Solution: I have changed the pure sequence of the data so that the TempADC values are also ascending T0=120degrees .... T6=-40deg.
    And now the system works perfectly !
    Deviation over the whole temperature range from -40deg to +120deg a FSO deviation of <0.5% and offset <0.1 This is perfect and more than accurate.

    I have no accuracy problem because the PGA reads the correct coefficients in the lookup table. I think it's not the calculation otherwise we would have accuracy problems.

    It is more because of the fact that depending on the setting of the temperature measurement the data in the EEPROM is read in a different order.

  • Roger,

    I think you solved your own issue.  Sorry I didn't help get you to a solution sooner. Let me know if you have other questions.

    Best regards,

    Art  

  • Hi Art
    You wrote:
    "Neither ascending nor descending data is required for the PGA."
    But this refutes itself. It does play a role.
    Do you agree with this. That was my real question

    Kind regards
    Roger

  • Roger,

    Yes.  My initial comment was incorrect.  The PGA309 software handles this sequencing automatically and generally I do not build the table manually, so that I why I thought it didn't matter.  Next time I revise the users guide, I will add some detail on this.

    Best regards, Art

  • Thank's a lot for the great and fast support !
    Kind regards, Roger