Thermocouple calculator
Convert thermocouple millivolts to temperature and back for types K, J, T, E, N, R, S and B, with cold junction compensation, using the NIST ITS-90 equations.
NIST ITS-90 reference functions
A thermocouple produces a voltage set by the temperature difference between its hot (measuring) junction and its cold (reference) junction, where the thermocouple wires meet copper at your DAQ’s terminals. NIST Monograph 175 defines a reference function for each letter type that gives the EMF in millivolts for a hot junction at t °C with the reference junction at 0 °C:
E(t) = c0 + c1*t + c2*t^2 + ... + cn*t^n all types
E(t) = sum(ci * t^i) + a0 * exp(a1 * (t - a2)^2) type K, 0 to 1372 °C
Each type has two or three temperature sub-ranges with their own coefficients. For voltage to temperature NIST publishes inverse polynomials, t = d0 + d1·E + d2·E² + ..., fitted over sub-ranges with a stated error. For type K from 0 to 500 °C the inverse stays within −0.05 to +0.04 °C of the reference function. This calculator uses the reference functions for temperature to voltage and the NIST inverse polynomials for voltage to temperature. Where no inverse exists, such as type K below −200 °C, it solves the reference function numerically and says so under the result.
Cold junction compensation
E_total = E_measured + E(T_cj)
T_hot = inverse(E_total)
The voltage at your DAQ reflects only the difference between the two junctions. To recover the hot junction temperature, convert the cold junction temperature to an EMF with the reference function, add it to the measured voltage, then invert the total. Converting the measured voltage to a temperature and adding the cold junction temperature gives the wrong answer, because the curve isn’t linear.
Worked example: type K with the terminals at 25 °C
The DAQ reads 3.096 mV and the cold junction sensor on the terminal block reads 25.0 °C. The type K reference function gives E(25 °C) = 1.000 mV, so the total is 4.096 mV, which inverts to 100.0 °C. Adding temperatures instead gives 75.9 °C + 25.0 °C = 100.9 °C, almost a degree high. The error grows with temperature. A 20.000 mV reading with the junction at 35 °C is really 517.9 °C, and the shortcut says 519.9 °C.
| Type | Reference function range | NIST inverse range | Sensitivity at 25 °C |
|---|---|---|---|
| K | −270 to 1372 °C | −200 to 1372 °C | 40.5 µV/°C |
| J | −210 to 1200 °C | −210 to 1200 °C | 51.8 µV/°C |
| T | −270 to 400 °C | −200 to 400 °C | 40.7 µV/°C |
| E | −270 to 1000 °C | −200 to 1000 °C | 61.0 µV/°C |
| N | −270 to 1300 °C | −200 to 1300 °C | 26.8 µV/°C |
| R | −50 to 1768.1 °C | −50 to 1768.1 °C | 5.9 µV/°C |
| S | −50 to 1768.1 °C | −50 to 1768.1 °C | 6.0 µV/°C |
| B | 0 to 1820 °C | 250 to 1820 °C | about 0 µV/°C |
NIST defines each curve over a wider range than the type is used for in service. Type B produces almost no voltage near room temperature, so its cold junction barely affects the reading and the type is only useful well above 250 °C.
Common mistakes
- Measuring cold junction temperature somewhere other than at the junction itself. If the CJC sensor sits a few centimeters from the screw terminals and a fan blows across the block, the error passes straight into the reading at about 1 °C per °C.
- Using a wide input range. A 16-bit DAQ on ±10 V has a 305 µV LSB, which is about 7.5 °C for type K. Use the smallest range the device offers, or a thermocouple input such as the MCC USB-TC or NI 9211.
- Reversing polarity. In the ANSI color code the red lead is negative. A reversed thermocouple moves the wrong way as the hot end heats, reading below the cold junction temperature.
- Assuming a constant 41 µV/°C for type K. That linear shortcut drifts by several degrees over a few hundred degrees of span.
- Splicing with copper wire. Every junction of dissimilar metals is another thermocouple, so extend with thermocouple or extension-grade wire of the same type.
The thermocouple measurement guide covers wiring and hardware choices. DAQAtlas, which is in development, includes a simulated MCC USB-TC, so you can set up thermocouple channels, alarms and a dashboard before the hardware arrives.
Questions
How do I convert thermocouple mV to temperature?
Add the EMF of the cold junction temperature to the measured voltage, then convert the total with the NIST inverse polynomial for your type. For type K, 3.096 mV with the terminals at 25 °C is 3.096 + 1.000 = 4.096 mV, which is 100.0 °C.
What is the voltage of a type K thermocouple at 100 °C?
4.096 mV with the reference junction at 0 °C, per the NIST ITS-90 table. At 500 °C it is 20.644 mV and at 1000 °C it is 41.276 mV.
How does cold junction compensation work?
The thermocouple measures the difference between its two junctions. A sensor at the terminals measures the cold junction temperature, its equivalent EMF is added to the reading, and the sum is converted to temperature as if the reference were 0 °C.
Can I just add the cold junction temperature to the converted reading?
No. The thermocouple curve isn’t linear, so adding temperatures gives an error that grows with temperature, almost 1 °C at 100 °C and 2 °C at 520 °C for type K with the cold junction near room temperature.