Thermocouple and RTD linearisation question

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

If you create a thermal gradient, in the E-W direction, just affix the copper joints along
a N-S line. The thermal gradient can be steered, too, with strategic routed slots.
 
whit3rd <whit3rd@gmail.com> wrote:

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

If you create a thermal gradient, in the E-W direction, just affix the copper joints along
a N-S line. The thermal gradient can be steered, too, with strategic routed slots.

It can't be hard to measure the terminal block - in a box of
electronics with not a lot of self heating, the sensor 1cm away from
the terminal block, with a 4 layer PCB with copper inside it...
 
On 03/10/2019 01:50, John Larkin wrote:
On Wed, 2 Oct 2019 18:31:20 +0100, Martin Brown
'''newspam'''@nezumi.demon.co.uk> wrote:

On 02/10/2019 17:49, jlarkin@highlandsniptechnology.com wrote:
On Wed, 02 Oct 2019 17:04:19 +0100, Peter <nospam@nospam9876.com
wrote:


Martin Brown <'''newspam'''@nezumi.demon.co.uk> wrote:

Most likely these days just store the coefficients.

I can find the polynomial coefficients for EJKRST here

https://paginas.fe.up.pt/saic/Docencia/ci_lem/Ficheiros/an043.pdf

for both directions. I just need them for B and N.

https://www.bipm.org/utils/common/pdf/ITS-90/ITS-90-Techniques-for-Approximating.pdf

Ought to do it. But those coefficients come with a health warning.
You have to evaluate them carefully to get the right answer!

Depending on the range of temperatures your sensor is expected to
encounter then you can choose the right coefficients. How many you need
depends on how accurate you want the calibration to be.

I am trying to support the full documented temp range for each type.

However I have had no luck yet finding a *single* resistance to
temperature equation for the RTD.

If there was a way to do it that was adequate they would have done it.

It's a smooth physical process, and there's nothing fundamental about
0 degrees C. One polynomial can cover the whole range.

Only if you are prepared to sacrifice accuracy at the two extremes which
happen to be very important in cryogenic and furnace applications.

I thought it might be amusing to take a look at the official N=10
coefficients and I have to say I really don't like what I see.

It is an overfit with the terms d4 and beyond being largely determined
by rounding in the numerical algorithm used to do the fitting! This is
particularly worrying in the series for low temperatures where the
magnitudes of the individual higher terms when T=-270 are all of O(1) !

The series is not absolutely convergent and so the order in which you
sum the terms matters. If you were to add them up in the summation
notation used in the article then cancellation errors dominate.

A good sanity check on a calibration polynomial is that the higher order
corrections should tend to get smaller over the entire valid range.
IOW for d[n] evaluate individual terms d[n]*270^n get smaller with n.

They don't! This is rather disturbing.

I tried splicing the two series together in Excel and allowed its
charting to do a quick and dirty polynomial fit across the entire range.

It came up with:

y = -0.0000000004055574x3 + 0.0000192958020498x2 + 0.0385860759819436x +
0.0186901808972161

y(-270) = -8.984903778
I have no confidence that any of these numbers are good to anything
better than 4 sig fig. Note the systematic error at T=0.

If I force it through the origin then it gives:

y = -0.0000000005079249x3 + 0.0000194397323253x2 + 0.0385748719682873x

y(-270) = -8.988061459

There are a couple of problems with this wide range polynomial fit.

It is wrong by about 60mK at -270C and by 25mK at 1250C.

More importantly the gradient (and zero crossing if allowed to optimally
fit all parameters) isn't quite right at T=0 which means that a lot of
commonly measured temperatures would have a systematic error.

I have no idea what the Gaussian bump at T=126.9686 is but I suspect it
might be an ad hoc fix to hit an out of position calibration point!

I am not aware of any phase transitions around that temperature.

BTW note to the OP. Do not assume that your ADC is truly linear across
its entire range if maximum accuracy deliverable really matters to you.

--
Regards,
Martin Brown
 
On 03/10/2019 03:53, Bill Sloman wrote:
On Thursday, October 3, 2019 at 2:50:07 AM UTC+10, jla...@highlandsniptechnology.com wrote:

In real life, 3rd order mostly works.

In John Larkin's experience, this may be true. It probably doesn't generalise.

He has a point in this instance though. There is little evidence that
the N=10 solutions used by the ITS-1990 are any better than N=3 or N=4.

Evaluate the individual terms for T=-270 in the low range polynomial to
see what I mean. I am old school where polynomials are concerned I like
to see nice well behaved convergence towards a solution.

Put another way you should be worried when d[n]/d[n+1] < 270

I reckon d[n] for n>5 are not improving things in any meaningful sense
but have to be included because of the way the fitting was done.

FWIW Excel charting can get plausible looking fits out to N=6 (which is
as far as it permits users to go). That is in the sense that they have
coefficients d[n] that tend towards zero faster than (1/270)^n.

I am mystified how they managed to calibrate this at all when there are
so few well behaved triple points available for precision spot checks.

--
Regards,
Martin Brown
 
On 02/10/2019 21:02, Peter wrote:
Martin Brown <'''newspam'''@nezumi.demon.co.uk> wrote

If there was a way to do it that was adequate they would have done it.

https://srdata.nist.gov/its90/type_k/kcoefficients_inverse.html

but they have created polynomials for different bits of the
temperature ranges

The choice appears to have been made to splice at 0C so that both scales
have very good precision at commonly measured temperatures.

It is possible to fit a polynomial across the entire temperature range
but it will be less accurate at both extremes as a result.

--
Regards,
Martin Brown
 
This is really interesting.

I too noticed that the last coefficients, around E-30, are bound to be
just silly. You would need to use double floats for them and almost
anything done with that is defying physical reality :)

The accuracy requirement for thermocouples is perhaps 0.2C and for RTD
perhaps 0.1C. I am not doing a calibration-grade box. I am using the
ADS1118 whose smallest range is 256mV. I am amplifying the four lowest
output TCs by 7.5 with an external instrumentation amp (four 0.1%
resistors around a TLV2333) whose low input terminal is at a constant
+20mV (because I don't have a negative rail in this application; long
story).

So getting hold of the nine polynomials (8xTC, 1xRTD) would be
brilliant. The TC ones have to go both ways, for the CJC calculation.

Another reason for discarding the higher terms is that the simplified
version of the equation (the multi-nested one which doesn't involve
calculating the powers) gets really unwieldy if you are doing it for
10 terms - AFAICT; maths is not my strong point :) We do have a 32F
ARM at 150MHz with hardware 32-bit floats but still calculating 20 x^y
powers for each reading might well be a bit much...

The higher order terms should definitely make progressively smaller
contributions.



Martin Brown <'''newspam'''@nezumi.demon.co.uk> wrote:

On 03/10/2019 01:50, John Larkin wrote:
On Wed, 2 Oct 2019 18:31:20 +0100, Martin Brown
'''newspam'''@nezumi.demon.co.uk> wrote:

On 02/10/2019 17:49, jlarkin@highlandsniptechnology.com wrote:
On Wed, 02 Oct 2019 17:04:19 +0100, Peter <nospam@nospam9876.com
wrote:


Martin Brown <'''newspam'''@nezumi.demon.co.uk> wrote:

Most likely these days just store the coefficients.

I can find the polynomial coefficients for EJKRST here

https://paginas.fe.up.pt/saic/Docencia/ci_lem/Ficheiros/an043.pdf

for both directions. I just need them for B and N.

https://www.bipm.org/utils/common/pdf/ITS-90/ITS-90-Techniques-for-Approximating.pdf

Ought to do it. But those coefficients come with a health warning.
You have to evaluate them carefully to get the right answer!

Depending on the range of temperatures your sensor is expected to
encounter then you can choose the right coefficients. How many you need
depends on how accurate you want the calibration to be.

I am trying to support the full documented temp range for each type.

However I have had no luck yet finding a *single* resistance to
temperature equation for the RTD.

If there was a way to do it that was adequate they would have done it.

It's a smooth physical process, and there's nothing fundamental about
0 degrees C. One polynomial can cover the whole range.

Only if you are prepared to sacrifice accuracy at the two extremes which
happen to be very important in cryogenic and furnace applications.

I thought it might be amusing to take a look at the official N=10
coefficients and I have to say I really don't like what I see.

It is an overfit with the terms d4 and beyond being largely determined
by rounding in the numerical algorithm used to do the fitting! This is
particularly worrying in the series for low temperatures where the
magnitudes of the individual higher terms when T=-270 are all of O(1) !

The series is not absolutely convergent and so the order in which you
sum the terms matters. If you were to add them up in the summation
notation used in the article then cancellation errors dominate.

A good sanity check on a calibration polynomial is that the higher order
corrections should tend to get smaller over the entire valid range.
IOW for d[n] evaluate individual terms d[n]*270^n get smaller with n.

They don't! This is rather disturbing.

I tried splicing the two series together in Excel and allowed its
charting to do a quick and dirty polynomial fit across the entire range.

It came up with:

y = -0.0000000004055574x3 + 0.0000192958020498x2 + 0.0385860759819436x +
0.0186901808972161

y(-270) = -8.984903778
I have no confidence that any of these numbers are good to anything
better than 4 sig fig. Note the systematic error at T=0.

If I force it through the origin then it gives:

y = -0.0000000005079249x3 + 0.0000194397323253x2 + 0.0385748719682873x

y(-270) = -8.988061459

There are a couple of problems with this wide range polynomial fit.

It is wrong by about 60mK at -270C and by 25mK at 1250C.

More importantly the gradient (and zero crossing if allowed to optimally
fit all parameters) isn't quite right at T=0 which means that a lot of
commonly measured temperatures would have a systematic error.

I have no idea what the Gaussian bump at T=126.9686 is but I suspect it
might be an ad hoc fix to hit an out of position calibration point!

I am not aware of any phase transitions around that temperature.

BTW note to the OP. Do not assume that your ADC is truly linear across
its entire range if maximum accuracy deliverable really matters to you.
 
On Thu, 03 Oct 2019 09:54:24 +0100, Peter <nospam@nospam9876.com>
wrote:

whit3rd <whit3rd@gmail.com> wrote:

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

If you create a thermal gradient, in the E-W direction, just affix the copper joints along
a N-S line. The thermal gradient can be steered, too, with strategic routed slots.

It can't be hard to measure the terminal block - in a box of
electronics with not a lot of self heating, the sensor 1cm away from
the terminal block, with a 4 layer PCB with copper inside it...

Yes, it can be hard.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

I have seen forced ref junction boxes, but they are rare and
expensive. The thermocouple leads are at ambient temp outside of the
ref junction box, so conduct heat in or out, so mess up their own
transition temps. If the ref junction is at natural ambient temp, such
heat conduction is steady-state zero.

This box keeps all the terminal blocks approximately at ambient, and
gives the wires some distance to settle down to box interior temp. It
senses that with a good platinum RTD. It has no steady-state
gradients.

https://www.dropbox.com/s/5i3fph5n3ptsubq/J470.JPG?dl=0

Being different metals, the two wires in a thermocouple pair have
different thermal conductivities. Type T is copper+constantan, about
as bad as it gets. Any temp gradient from outside to the reference
junctions is double bad news.



--

John Larkin Highland Technology, Inc

lunatic fringe electronics
 
On Thursday, October 3, 2019 at 9:35:56 PM UTC+10, jla...@highlandsniptechnology.com wrote:
On Thu, 03 Oct 2019 09:54:24 +0100, Peter <nospam@nospam9876.com
wrote:


whit3rd <whit3rd@gmail.com> wrote:

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

If you create a thermal gradient, in the E-W direction, just affix the copper joints along
a N-S line. The thermal gradient can be steered, too, with strategic routed slots.

It can't be hard to measure the terminal block - in a box of
electronics with not a lot of self heating, the sensor 1cm away from
the terminal block, with a 4 layer PCB with copper inside it...

Yes, it can be hard.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

I have seen forced ref junction boxes, but they are rare and
expensive. The thermocouple leads are at ambient temp outside of the
ref junction box, so conduct heat in or out, so mess up their own
transition temps. If the ref junction is at natural ambient temp, such
heat conduction is steady-state zero.

This box keeps all the terminal blocks approximately at ambient, and
gives the wires some distance to settle down to box interior temp. It
senses that with a good platinum RTD. It has no steady-state
gradients.

The joke here is that you can't measure the resistance of a platinum resistance thermometer without dissipating some heat in it's resistance. It shouldn't be much - 1mA in 100R is 0.1mW - but it is finite.

https://www.dropbox.com/s/5i3fph5n3ptsubq/J470.JPG?dl=0

Being different metals, the two wires in a thermocouple pair have
different thermal conductivities. Type T is copper+constantan, about
as bad as it gets. Any temp gradient from outside to the reference
junctions is double bad news.

So why don't you tell you customers to put a blob of soft potting compound on top of the pairs of wires at the terminal block?

It's a lot more thermally conductive than air ...

--
Bill Sloman, Sydney
 
On 03/10/2019 10:55, Peter wrote:
This is really interesting.

I too noticed that the last coefficients, around E-30, are bound to be
just silly. You would need to use double floats for them and almost
anything done with that is defying physical reality :)

Silly they may be but when multiplied by ~1000^9 they are not ignorable.
Some of those coefficient numbers don't look at all sane to me.

It is one reason why I prefer Chebyshev polynomials for such fitting.
They necessarily converge on any reasonable dataset and you can truncate
to Nth order and get a nice solution with well defined error ripple.

If you wanted to truncate then you would have to remap the existing
polynomial into an equivalent Chebyshev series and then decide where to
cut it off and recompute the corresponding polynomial. I doubt if there
is anything of physical significance in the coefficients beyond N=5.

The accuracy requirement for thermocouples is perhaps 0.2C and for RTD
perhaps 0.1C. I am not doing a calibration-grade box. I am using the
ADS1118 whose smallest range is 256mV. I am amplifying the four lowest
output TCs by 7.5 with an external instrumentation amp (four 0.1%
resistors around a TLV2333) whose low input terminal is at a constant
+20mV (because I don't have a negative rail in this application; long
story).

So getting hold of the nine polynomials (8xTC, 1xRTD) would be
brilliant. The TC ones have to go both ways, for the CJC calculation.

Another reason for discarding the higher terms is that the simplified
version of the equation (the multi-nested one which doesn't involve
calculating the powers) gets really unwieldy if you are doing it for
10 terms - AFAICT; maths is not my strong point :) We do have a 32F
ARM at 150MHz with hardware 32-bit floats but still calculating 20 x^y
powers for each reading might well be a bit much...

The higher order terms should definitely make progressively smaller
contributions.

Unfortunately in some of the examples they do not.
Try T=-270 cryo for example or T= 1200 in the high temperature model.

You have to evaluate the terms carefully in an expression of the form

N=9;
sum = 0;
for (i=N;i>=0;i--)
sum = sum*x + d;

But some of those coefficients give divergent results :(

--
Regards,
Martin Brown
 
jlarkin@highlandsniptechnology.com wrote

Yes, it can be hard.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

I was not suggesting heating the block. I was saying that I can't see
why its temperature should be far different from that of a sensor say
1cm away from it.

Obviously the overall accuracy will be only as good as that of the CJC
sensor, which needs to be either a PT100 also, or something lesser
(like the +/-0.5C one in the ADS1118) and calibrate it in production.
 
A friend has pointed out that the fact that the equations are split
around 0C is actually not an issue.

For RTD, a resistance above/below 100R selects the equation. Simple!

For a TC, a voltage above/below zero selects the equation. Simple!

So no iteration is required.

One thing which still worries me a bit is whether I got this right:

For a TC, the process is in three steps:

1) Measure the CJ - the terminal block - (thermistor, PT100, etc) and
convert it to an equivalent TC voltage (which will be negative if the
CJ is below 0C)

2) Measure the TC voltage at the terminal block and add the above
voltage to it

3) Convert the resulting voltage to T (selecting the equation
according to whether the voltage is positive or negative)
 
On Thu, 03 Oct 2019 21:11:56 +0100, Peter <nospam@nospam9876.com>
wrote:

jlarkin@highlandsniptechnology.com wrote

Yes, it can be hard.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

I was not suggesting heating the block. I was saying that I can't see
why its temperature should be far different from that of a sensor say
1cm away from it.

Sorry, that was suggested a couple of posts above.

The t/c terminations and the reference sensor can indeed be kept
isothermal to millikelvins, but it takes some care.

Obviously the overall accuracy will be only as good as that of the CJC
sensor, which needs to be either a PT100 also, or something lesser
(like the +/-0.5C one in the ADS1118) and calibrate it in production.

I use 1K thinfilm platinum RTDs in my box. 1206 surface-mount, 4-layer
PC board, hunky die-cast aluminum box.
 
On Thu, 3 Oct 2019 10:56:23 +0100, Martin Brown
<'''newspam'''@nezumi.demon.co.uk> wrote:

On 03/10/2019 03:53, Bill Sloman wrote:
On Thursday, October 3, 2019 at 2:50:07 AM UTC+10, jla...@highlandsniptechnology.com wrote:

In real life, 3rd order mostly works.

In John Larkin's experience, this may be true. It probably doesn't generalise.

He has a point in this instance though. There is little evidence that
the N=10 solutions used by the ITS-1990 are any better than N=3 or N=4.

Evaluate the individual terms for T=-270 in the low range polynomial to
see what I mean. I am old school where polynomials are concerned I like
to see nice well behaved convergence towards a solution.

Put another way you should be worried when d[n]/d[n+1] < 270

I reckon d[n] for n>5 are not improving things in any meaningful sense
but have to be included because of the way the fitting was done.

FWIW Excel charting can get plausible looking fits out to N=6 (which is
as far as it permits users to go). That is in the sense that they have
coefficients d[n] that tend towards zero faster than (1/270)^n.

I am mystified how they managed to calibrate this at all when there are
so few well behaved triple points available for precision spot checks.

Commercial thermocouples are usually specified for 0.5 to 5 C
accuracy. Numbers like +-2C +-0.75% are typical. Ref junction sensing
and amplifier errors add to that. We're dealing with microvolts.

In real life, reasonably close to room temp, they are usually a lot
better than their specs.

Table lookup and interpolation is easy. The numbers are available in
tables.
 
On Thursday, October 3, 2019 at 4:35:56 AM UTC-7, jla...@highlandsniptechnology.com wrote:
On Thu, 03 Oct 2019 09:54:24 +0100, Peter <nospam@nospam9876.com
wrote:


whit3rd <whit3rd@gmail.com> wrote:

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

Because an uninsulated block might be subject to thermal gradients from any
and all exterior sources. Uncontrolled variables, like that, are what
the design is intended to eliminate or minimize.

Once it's insulated, heating is inexpensive.

tc-to-copper doesn't need to be controlled temperature, just paired with
the copper-to-tc return in proximity/equal temperature.

I have seen forced ref junction boxes, but they are rare and
expensive.

You mean triple-point references? You get what you pay for.
I've seen ovenized crystals with almost NO expense taken, that
could have been replicated with bottle caps and fluff from a dead
water heater.

The thermocouple leads are at ambient temp outside of the
ref junction box, so conduct heat in or out

The cheap fix is to make a two-inch thermocouple connection with
ten inches of wire, zig-zagging a lot. I put an extra
foot of wire into a tube furnace thermal sensor; worked fine.

You know that:
This box keeps all the terminal blocks approximately at ambient, and
gives the wires some distance to settle down to box interior temp.

But it controls only the gradients, not the absolute temperature, which
means a secondary measure of temperature is a variable to be first measured,
then calculated away, Repeatedly. Those aren't a feature shown in that
picture.

That can be designed out, in favor of a constant in the calibration table.
 
On Thu, 3 Oct 2019 17:45:50 -0700 (PDT), whit3rd <whit3rd@gmail.com>
wrote:

On Thursday, October 3, 2019 at 4:35:56 AM UTC-7, jla...@highlandsniptechnology.com wrote:
On Thu, 03 Oct 2019 09:54:24 +0100, Peter <nospam@nospam9876.com
wrote:


whit3rd <whit3rd@gmail.com> wrote:

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

Because an uninsulated block might be subject to thermal gradients from any
and all exterior sources. Uncontrolled variables, like that, are what
the design is intended to eliminate or minimize.

Once it's insulated, heating is inexpensive.

Not if you have to heat the whole world to the same temperature, which
is what you'll need to do to eliminate gradients and heat flow along
the wires.

tc-to-copper doesn't need to be controlled temperature, just paired with
the copper-to-tc return in proximity/equal temperature.

I have seen forced ref junction boxes, but they are rare and
expensive.

You mean triple-point references?

More common was heated boxes as ref junctions.

> You get what you pay for.

I'd rather not pay for heaters or coolers or massive layers of
insulation.


I've seen ovenized crystals with almost NO expense taken, that
could have been replicated with bottle caps and fluff from a dead
water heater.

The thermocouple leads are at ambient temp outside of the
ref junction box, so conduct heat in or out

The cheap fix is to make a two-inch thermocouple connection with
ten inches of wire, zig-zagging a lot. I put an extra
foot of wire into a tube furnace thermal sensor; worked fine.

You know that:
This box keeps all the terminal blocks approximately at ambient, and
gives the wires some distance to settle down to box interior temp.

But it controls only the gradients, not the absolute temperature, which
means a secondary measure of temperature is a variable to be first measured,
then calculated away, Repeatedly. Those aren't a feature shown in that
picture.

How can you keep the interior of the box at a constant temperature
without a sensor? What's the advantage of then adding heaters and
power supplies and power amps, other than avoiding a little math?

A microprocessor doesn't mind doing math "repeatedly."





--

John Larkin Highland Technology, Inc

lunatic fringe electronics
 
On 03/10/2019 22:31, John Larkin wrote:
On Thu, 3 Oct 2019 10:56:23 +0100, Martin Brown
'''newspam'''@nezumi.demon.co.uk> wrote:

On 03/10/2019 03:53, Bill Sloman wrote:
On Thursday, October 3, 2019 at 2:50:07 AM UTC+10, jla...@highlandsniptechnology.com wrote:

In real life, 3rd order mostly works.

In John Larkin's experience, this may be true. It probably doesn't generalise.

He has a point in this instance though. There is little evidence that
the N=10 solutions used by the ITS-1990 are any better than N=3 or N=4.

Evaluate the individual terms for T=-270 in the low range polynomial to
see what I mean. I am old school where polynomials are concerned I like
to see nice well behaved convergence towards a solution.

Put another way you should be worried when d[n]/d[n+1] < 270

I reckon d[n] for n>5 are not improving things in any meaningful sense
but have to be included because of the way the fitting was done.

FWIW Excel charting can get plausible looking fits out to N=6 (which is
as far as it permits users to go). That is in the sense that they have
coefficients d[n] that tend towards zero faster than (1/270)^n.

I am mystified how they managed to calibrate this at all when there are
so few well behaved triple points available for precision spot checks.

Commercial thermocouples are usually specified for 0.5 to 5 C
accuracy. Numbers like +-2C +-0.75% are typical. Ref junction sensing
and amplifier errors add to that. We're dealing with microvolts.

In real life, reasonably close to room temp, they are usually a lot
better than their specs.

Table lookup and interpolation is easy. The numbers are available in
tables.

That is probably why no-one has noticed that some of the N=10 fitted
polynomial coefficients in that standards document are complete crap.

Do you happen to have a table for type K? I'd be interested in doing a
proper polynomial fit to what the correct result ought to look like.

--
Regards,
Martin Brown
 
Martin Brown <'''newspam'''@nezumi.demon.co.uk> wrote

That is probably why no-one has noticed that some of the N=10 fitted
polynomial coefficients in that standards document are complete crap.

Do you happen to have a table for type K? I'd be interested in doing a
proper polynomial fit to what the correct result ought to look like.

https://www.thermocoupleinfo.com/type-k-thermocouple.htm

http://srdata.nist.gov/its90/download/type_k.tab

Those last coefficients are not even computable using 32 bit floats.
They must be crap in the physical sense, but they *are* significant
because of what they are being multiplied by.

It almost seems easier to just interpolate the table. Even storing the
whole table for all eight TCs and RTD, in 1C increments, in floats, is
40kbytes. Linear interpolation would be perfect. One could do a lot
better by storing every few degrees and fitting a curve.
 
On Thursday, October 3, 2019 at 7:24:43 PM UTC-7, jla...@highlandsniptechnology.com wrote:
On Thu, 3 Oct 2019 17:45:50 -0700 (PDT), whit3rd <whit3rd@gmail.com
wrote:

On Thursday, October 3, 2019 at 4:35:56 AM UTC-7, jla...@highlandsniptechnology.com wrote:

whit3rd <whit3rd@gmail.com> wrote:

On Wednesday, October 2, 2019 at 3:08:04 PM UTC-7, John Larkin wrote:

[about thermocouple reference junctions with controlled temperature]

If you heat the reference junction, all the incoming thermocouple pair
transitions to copper must be at the same temp. The heater creates
thermal gradients.

Why heat a block, and control its temperature, and try to keep all the
tc-to-copper junctions at that temp, when you could just leave the
block at ambient and measure it?

Because an uninsulated block might be subject to thermal gradients from any
and all exterior sources. Uncontrolled variables, like that, are what
the design is intended to eliminate or minimize.

Once it's insulated, heating is inexpensive.

Not if you have to heat the whole world to the same temperature, which
is what you'll need to do to eliminate gradients and heat flow along
the wires.

You insulate so you do NOT heat the whole world, that's why you use insulation.
It has insulating properties. This never 'eliminates' heat flow, just limits it
to within your tolerances. Gradients on the wire are why you actively
heat, of course. So, that's solved already.

How can you keep the interior of the box at a constant temperature
without a sensor? What's the advantage of then adding heaters and
power supplies and power amps, other than avoiding a little math?

Few if any boxes with ADC capabilities are lacking in power supplies, and the
heater requirements are so crude, you could even use AC. No 'added' power supply.
Every semiconductor junction is a sensor, and it only takes an error
amplifier, and one calibration trial, to find the thermal setpoint.

The advantage would be lessened computation and conversion requirements.

> A microprocessor doesn't mind doing math "repeatedly."

Or any other unnecessary task. Angry Birds doesn't annoy a cellphone.
 
On Friday, October 4, 2019 at 3:56:22 AM UTC-4, Martin Brown wrote:
On 03/10/2019 22:31, John Larkin wrote:
On Thu, 3 Oct 2019 10:56:23 +0100, Martin Brown
'''newspam'''@nezumi.demon.co.uk> wrote:

On 03/10/2019 03:53, Bill Sloman wrote:
On Thursday, October 3, 2019 at 2:50:07 AM UTC+10, jla...@highlandsniptechnology.com wrote:

In real life, 3rd order mostly works.

In John Larkin's experience, this may be true. It probably doesn't generalise.

He has a point in this instance though. There is little evidence that
the N=10 solutions used by the ITS-1990 are any better than N=3 or N=4.

Evaluate the individual terms for T=-270 in the low range polynomial to
see what I mean. I am old school where polynomials are concerned I like
to see nice well behaved convergence towards a solution.

Put another way you should be worried when d[n]/d[n+1] < 270

I reckon d[n] for n>5 are not improving things in any meaningful sense
but have to be included because of the way the fitting was done.

FWIW Excel charting can get plausible looking fits out to N=6 (which is
as far as it permits users to go). That is in the sense that they have
coefficients d[n] that tend towards zero faster than (1/270)^n.

I am mystified how they managed to calibrate this at all when there are
so few well behaved triple points available for precision spot checks.

Commercial thermocouples are usually specified for 0.5 to 5 C
accuracy. Numbers like +-2C +-0.75% are typical. Ref junction sensing
and amplifier errors add to that. We're dealing with microvolts.

In real life, reasonably close to room temp, they are usually a lot
better than their specs.

Table lookup and interpolation is easy. The numbers are available in
tables.

That is probably why no-one has noticed that some of the N=10 fitted
polynomial coefficients in that standards document are complete crap.

Do you happen to have a table for type K? I'd be interested in doing a
proper polynomial fit to what the correct result ought to look like.

The older CRC handbooks had thermocouple tables.
(not sure about newer editions)
George H.
--
Regards,
Martin Brown
 
On Fri, 4 Oct 2019 05:42:02 -0700 (PDT), George Herold
<gherold@teachspin.com> wrote:

On Friday, October 4, 2019 at 3:56:22 AM UTC-4, Martin Brown wrote:
On 03/10/2019 22:31, John Larkin wrote:
On Thu, 3 Oct 2019 10:56:23 +0100, Martin Brown
'''newspam'''@nezumi.demon.co.uk> wrote:

On 03/10/2019 03:53, Bill Sloman wrote:
On Thursday, October 3, 2019 at 2:50:07 AM UTC+10, jla...@highlandsniptechnology.com wrote:

In real life, 3rd order mostly works.

In John Larkin's experience, this may be true. It probably doesn't generalise.

He has a point in this instance though. There is little evidence that
the N=10 solutions used by the ITS-1990 are any better than N=3 or N=4.

Evaluate the individual terms for T=-270 in the low range polynomial to
see what I mean. I am old school where polynomials are concerned I like
to see nice well behaved convergence towards a solution.

Put another way you should be worried when d[n]/d[n+1] < 270

I reckon d[n] for n>5 are not improving things in any meaningful sense
but have to be included because of the way the fitting was done.

FWIW Excel charting can get plausible looking fits out to N=6 (which is
as far as it permits users to go). That is in the sense that they have
coefficients d[n] that tend towards zero faster than (1/270)^n.

I am mystified how they managed to calibrate this at all when there are
so few well behaved triple points available for precision spot checks.

Commercial thermocouples are usually specified for 0.5 to 5 C
accuracy. Numbers like +-2C +-0.75% are typical. Ref junction sensing
and amplifier errors add to that. We're dealing with microvolts.

In real life, reasonably close to room temp, they are usually a lot
better than their specs.

Table lookup and interpolation is easy. The numbers are available in
tables.

That is probably why no-one has noticed that some of the N=10 fitted
polynomial coefficients in that standards document are complete crap.

Do you happen to have a table for type K? I'd be interested in doing a
proper polynomial fit to what the correct result ought to look like.

The older CRC handbooks had thermocouple tables.
(not sure about newer editions)
George H.

--
Regards,
Martin Brown

Omega has some nice stuff.

The tables do change now and then, every few decades maybe.

Note that there are two standard platinum RTD tables, the usual 385
curve and the pure-platinum lab grade 392.

It's easy to linearize a platinum (or nickel!) RTD in hardware, but
that's not necessary much these days.



--

John Larkin Highland Technology, Inc

lunatic fringe electronics
 

Welcome to EDABoard.com

Sponsor

Back
Top