P
Peter
Guest
I am building a board with an ADC on it which is to measure these two
sensor types.
The tricky bit is the linearisation.
All the equations I can find come in multiple parts.
For example the CallendarVan Dusen equation has a different set of
coefficients below 0C and above 0C. But you don't know the temperature
until you have evaluated the equation! So you could end up in a
situation where the algorithm oscillates between the two equations.
Same with thermocouples, e.g. here
http://www.ti.com/lit/ug/tidua11a/tidua11a.pdf
although to make life even harder that one gives you the voltage in
terms of temperature. I can see one could solve it iteratively. The
ARM CPU I have has hardware floats and runs at 150MHz.
I have found some thermocouple equations which cover the whole range
with one polynomial e.g. the NIST Polynomial Coefficients for
Temperature-to-Voltage Conversion. However I have found these for only
some of the eight thermocouple types. I am trying to support B E J K N
R S T types.
How do instrument manufacturers deal with this? Do they store a lookup
table and interpolate it?
I can see that with some effort one could write software (running on a
PC) which takes in these equations and generates lookup tables for the
whole lot.
Is there some easier way?
Maths is not my strong point although I can write C code to evaluate a
polynomial.
Very many thanks for any tips.
sensor types.
The tricky bit is the linearisation.
All the equations I can find come in multiple parts.
For example the CallendarVan Dusen equation has a different set of
coefficients below 0C and above 0C. But you don't know the temperature
until you have evaluated the equation! So you could end up in a
situation where the algorithm oscillates between the two equations.
Same with thermocouples, e.g. here
http://www.ti.com/lit/ug/tidua11a/tidua11a.pdf
although to make life even harder that one gives you the voltage in
terms of temperature. I can see one could solve it iteratively. The
ARM CPU I have has hardware floats and runs at 150MHz.
I have found some thermocouple equations which cover the whole range
with one polynomial e.g. the NIST Polynomial Coefficients for
Temperature-to-Voltage Conversion. However I have found these for only
some of the eight thermocouple types. I am trying to support B E J K N
R S T types.
How do instrument manufacturers deal with this? Do they store a lookup
table and interpolate it?
I can see that with some effort one could write software (running on a
PC) which takes in these equations and generates lookup tables for the
whole lot.
Is there some easier way?
Maths is not my strong point although I can write C code to evaluate a
polynomial.
Very many thanks for any tips.