Cold Junction Compensation


Anyone else seeing thermcouple readings in the hot junction affected by changes in ambient temperature in the cold junction?

I am using a SNAP-PAC-R1 with the SNAP-AITM-4i module with 4 thermocouples connected to a high temperature application. I have noticed that changes in room temperature have an effect on the thermocouple readings, especially if the changes are drastic. For example, opening the door for a few hours during a cold winter day will have an effect on the readings.

We made a cover the AITM modules with an insulating metal box to try to control the surrounding temperatures of the modules and have more stable readings. Is anyone else seeing this or doing something similar to this? My understanding was the controller was supposed to take care of cold junction compensation, is that not the case?


The cold junction is formed at the point where the thermocouple wires are joined to a dissimilar metal. In most cases, this is at the terminal strip of the AD module that reads the voltage and converts it to temperature. In high accuracy systems, the terminals temperature will be measured by a sensor located on a metal block with the terminals, forming what is known as an isothermal block and is often either copper or aluminum. The sensor is often either an RTD or thermistor. The terminals are electrically isolated from the isothermal block but are physically attached so that all are at the same temperature as the compensating sensor. Any difference between the actual cold junction temp and the measured temp is directly reflected in the reported temperature.

There are many ICs on the market where the cold junction compensation is part of the chip. The data sheets fro these invariably recommend that the board layout place the cold junction as close to the chip as possible to reduce the compensation error. This requires that the leads going directly to the board match the thermocouple being measured. This is obviously impossible where more than one thermocouple type is possible and where it is impossible to terminate the thermocouple directly on the board. In this case, accuracy depends on the temp of the chip and the temp of the terminal forming the cold junction remaining fairly close and stable.

Enclosing the PLC to stabilize its environment will probably help, especially if the operating environment is otherwise subject to wide fluctuations. If you have a couple of spare channels, the cold junction compensation can be measured by shorting a channel with a piece of copper wire, the reported temp will then be the cold junction temp that is being used. Connecting a very short thermocouple to another channel will give some idea of what the true cold junction temperature is. It is also possible for the cold junction sensor calibration to be wrong.

It’s important that the path from the hot junction consists only of high quality thermocouple wire or extension wire, matching the thermocople. Any splices must be either with proper hardware made of the appropriate metals, by very tightly twisting the wires together or by welding so that no false junctions are formed.

The short answer your original question is yes, on many different systems. As a general rule, I expect about ten times the accuracy from an RTD as I can get easily from thermocouple because of the problems of cold junction compensation.


@mcs Thank you for the reply. We are monitoring the cold junction temperature with a short TC and added a small heater to our metal cover that we control so we can keep the cold junction at a steady temperature. Hoping this will keep our temperature readings more reliable.


I’m definitely having an issue with this as well and will have to call tech support on Monday. Yes the physical cold junction is in each input module, but I’m wondering if Opto22 may be doing cold junction compensation based on the temperature inside the PAC-R controller, instead of sensing it inside each individual input module. I am seeing temperature offsets in the order of +12 deg. F which seems to be around the same temperature differential between inside of the PAC-R controller (due to self heating) and the area around the input modules. Hopefully I’m wrong on this.


Just a quick note to anyone else ever having issues with Thermocouple module reading inaccuracy and temperature fluctuations. For us the issue turned out to be that someone had substituted regular copper wire for real thermocouple extension wire on our calibration set up. They even used the correct color code for the type of TC wire we were using.

Double check your connection wiring and make sure it is the correct type of thermocouple extension wiring to match the thermocouple type or calibrator output you are using. This wire is typically stiffer and the metal in the two leads often looks different than the other and than copper wire due to its different combination of metals.

Each module has its own cold junction compensation temperature sensor inside the module right next to each plug input. Since the modules do tend to heat up 5-15 deg F when sitting at room temperature, that can warm this cold junction up, even compared to a calibration source right next to the module. Without the correct connection wire, this creates two more junctions at different temperatures which create a temperature offset reading equal to the temperature difference between these two junctions.