Accuracy of temperature measures by thermocouple

Accuracy of temperature measures by thermocouple

We were recently asked details on the absolute accuracy of the Yocto-Thermocouple and on the temperature measures by thermocouple in general. As it's impossible to answer this question without detailed explanations, we wrote it into a post so that it can be useful to everybody. So, let's see which absolute accuracy one can reasonably expect from a thermocouple and then let's test with an experiment whether the theoretical value matches the real one...

Theoretical accuracy

A thermocouple probe is made of two metallic wires, made from specific dissimilar alloys. The junction of these two alloys creates a weak voltage between the wires, whose value is directly correlated to the temperature at the junction point (known as the hot junction), and which can be measured at the other end of the wires. There, the junction between the wires and the terminal block (known as the cold junction) also creates a thermocouple voltage depending on the temperature of the cold junction. If this temperature is known, one can substract the voltage caused by the cold junction thermocouple to compute the voltage created by the hot junction thermocouple, which makes it possible to estimate the hot junction temperature.

The junction of two alloys at the tip of a thermocouple probe
The junction of two alloys at the tip of a thermocouple probe

The accuracy of measurements will therefore depend on the accuracy of the thermocouple probe itself as well as the accuracy of the instrument used to measure the probe output.

Accuracy of a thermocouple probe

The theoretical error of a thermocouple probe is mainly due to the impurities and inaccuracies in the alloy used to produce the probe. There are standards that define the maximum tolerance for this error, different for each type of thermocouple, defining several qualities. Here is for example the error range defined by IEC for type K thermocouples:

(source: Texas Instruments, Application Report SBAA274)
(source: Texas Instruments, Application Report SBAA274)

Class 2 corresponds to the standard quality. This diagram shows that the maximum expected error on a standard thermocouple is of +/- 2.5°C, as long as the temperature doesn't go above 330°C. It's therefore an uncertainty range of 5°C... ouch!

The good news is that this error depends on the physical characteristics of the thermocouple probe and that you can therefore compensate it with a calibration, that you can even store in the Yoctopuce module, as described in a previous post.

The not so good news is that you must be aware than on top of its initial error, a thermocouple probe may be subject to drift issues,¹ in particular if it is exposed to high temperatures - which is usually the case. The timing of the drift is not predictable, and can lead to large measurement errors from one day to the next, which can only be detected by comparison with another sensor. Once the probe has drifted, calibrating it again isn't useful as it's going to continue drifting: you must replace it.

Accuracy of the Yocto-Thermocouple itself

To determine the temperature at the end of a thermocouple probe, the Yocto-Thermocouple must perform two measures: first it must measure the "electromotive force" (EMF), that is the voltage generated by the thermocouple probe, and second it must measure the temperature at the contact point with the probe in order to correctly interpret the measured voltage to compute the temperature at the end.

Although it is generally only in the order of a few millivolts, the measure of the electromotive force is not an important source of error: the electrical noise will only distort the measurement by a few tenths of a degree. The most problematic part is to accurately measure the temperature of the contact point with the probe. The Yocto-Thermocouple has an absolute temperature sensor on the PCB, right between the two terminals, but nothing guaranties that the temperature is exactly the same as on the contacts of the terminal in case the module is subjected to a temperature gradient. The announced typical error range of 1°C+/-1%, determined empirically, is mostly designed to cover this risk. Let's see what it actually is...

Actual absolute accuracy

It's not as easy as you may think to check the absolute accuracy of a temperature probe. Indeed, it's not enough to put the probe that you want to test close to a reference probe, because it's difficult to submit them to different temperatures in an absolutely identical manner. Because they are not exactly at the same location, they will necessarily be subject to slightly different conditions: it is common to experience temperature variation over 1°C at close locations in the same room or even in a circulated air oven.

Rather than truly trying to create identical measuring conditions, we decided to build a system enabling us to evaluate the spatial variation of the measuring conditions, and thus to be able to estimate the absolute error. So we made a small fiberglass (FR-4) plate with five reference measurement points for small Pt100 probes, and four test points for thermocouple probes:

Our thermocouple testing device
Our thermocouple testing device

Two testing points are measured with the two inputs of a single Yocto-Thermocouple, while the two remaining testing points are measured individually on distinct modules, in order to see if it makes a difference. On one of the unused input of a module, we put a bridge (a simple wire) to simulate a null electromotive force, which allows us to obtain a reading of the temperature value measured on the PCB, used to estimate the temperature at the contact point with the probe.

Pt100 probes are measured with Yocto-PT100 modules, and all the modules are connected to a YoctoHub-Ethernet in order to query them through the network in different environments:

The complete test device
The complete test device

First test

The first test consists in checking that our device does indeed provide the expected result. Here is an example of values measured at ambient conditions:

Measures at ambient temperature
Measures at ambient temperature

We observe an expected variation on the Pt100 measures in the order of +/-0.1°C. We can thus deduce that the total effective error on the measured values with thermocouples is of about 2°C. It's well within the range of theoretical error, but it's probably more than what you were expecting, isn't it?

Let's see if we can quantify the origin of the measuring error.

The error origins

First, a measure with a precision multimeter on the Yocto-Thermocouple terminal confirms that the measure of the electromotive force, as we can read it with the get_signalValue() method, corresponds to reality, within a few hundredth of millivolts. So that's not the issue.

To reduce the risk of thermal gradient between the terminal to which the probe is connected and the temperature sensor on the PCB, we can remove the measuring part of the Yocto-Thermocouple from the system with a small four-wire cable. Thus, we can remove all the electronics of the system, which gives off heat in an inhomogeneous way.

We can split the measuring part from the main body of the module
We can split the measuring part from the main body of the module

The effect is obvious: the error diminishes by about 1°C when you remove the measuring part from the heat sources. And when warming between your hands the measuring part of the module, you can easily see the effect of the perturbations on the measure of the thermocouple, particularly marked during the rapid temperature transitions of the PCB:

Effect on the measure of the temperature variations of the measuring circuit
Effect on the measure of the temperature variations of the measuring circuit

The remainder of the error, that is a little more than a 1°C, is due to the thermocouple probe itself. It's a twisted wire, of the kind we provide with the Yocto-Thermocouple. They are cheap products - otherwise they would cost more than the module itself - for which you should not have excessive expectations...


We hope that this short theoretical reminder and this experiment will help you avoid deceptions when using thermocouple probes. Remember in any case that thermocouples are not known for their absolute accuracy. Whenever possible, it's better to use a Pt100 if accuracy is important.

If you nevertheless want to obtain a relatively accurate measure with a thermocouple, you must:

  • use a class 1 thermocouple (or "special class" by the ANSI standard)
  • protect the measuring part of the Yocto-Thermocouple from temperature gradients, if necessary by removing the main body of the module as described in the user's guide
  • perform an initial calibration with a reference Pt100 probe
  • plan a redundant measure with another probe of a different manufacture to detect the end-of-life drift of the probe. It's imperative, in particular if the thermocouple is used to control an oven!

And finally, let's remember the three basic rules for the use of thermocouples, even when absolute accuracy isn't what you are after:

  • never extend a thermocouple probe with a copper wire, but always with a thermocouple extension wire of the same type on the whole length;
  • never solder with a foreign metal (tin) for connections: extension wires must be in direct contact with the probe wires to preserve the thermocouple properties;
  • If the measured object is a metal or a conductive liquid stored in a potentially conductive container connected to the ground, even indirectly, you must imperatively use a thermocouple with mineral insulation to avoid ground currents.

¹ A few references regarding drift problems:
- Michele Scervini DRIFT: A SHORT EXPLANATION, University of Cambridge, 2009
- Webster, E.S. Low-Temperature Drift in MIMS Base-Metal Thermocouples. Int J Thermophys 35, 574–595 (2014).

Add a comment No comment yet Back to blog

Yoctopuce, get your stuff connected.