Resolving ET200S 2AI TC HF 38°C Cold Junction Offset Error

David Krause17 min read
I/O ModulesSiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Resolving ET200S 2AI TC HF 38°C Cold Junction Offset Error

A 38°C systematic reading error on a Siemens ET 200S 2AI TC HF analog electronic module (order number 6ES7134-4NB01-0AB0) is almost never a hardware defect. It is the unmistakable fingerprint of missing cold-junction (reference-junction) compensation in the STEP 7 / TIA Portal hardware configuration. This article walks an automation engineer through the thermoelectric physics behind the symptom, the module-internal compensation options, the exact parameter path that restores correct temperature reporting, and the field checks that prove the fix is complete.

Field reality: if 15 modules installed at the same time on the same ET 200S station all read exactly 38 °C low on K-type thermocouples, the configuration is wrong. The 2AI TC HF is intentionally unable to return a meaningful temperature without a reference-junction temperature value supplied either internally (electronic compensation), externally via Pt100 on the terminal block, or via the reference junction channel of the same station. The reading is not a calibration error; it is a missing input.

1. Problem Description

Typical fault picture as observed by the field engineer who reported the issue:

  • Hardware in use: ET 200S distributed I/O station with 15× 2AI TC HF modules, order number 6ES7134-4NB01-0AB0.
  • Sensor: Type K (NiCr-Ni) thermocouples, mineral-insulated sheath, terminated on standard ET 200S terminal blocks.
  • Original system: SM 331 AI 8×TC rack module (S7-300) — reading correct without offset.
  • Symptom: All 15 modules report a temperature approximately 38 °C lower than the process temperature measured with a calibrated handheld reference.
  • Workaround attempted: a fixed additive offset of +380 (in 0.1 °C engineering units) inserted in the PLC program — readings are now in range but drift with ambient and are wrong at start-up.
  • Reproduction: every channel of every module, immediately after power-up, before the panel warms.

Because the deviation is identical across 15 modules installed in three different ET 200S stations, the failure cannot be a calibration drift on the modules, nor a wiring polarity problem on individual thermocouples. The common-mode component is a parameterisation issue located in the STEP 7 / TIA Portal hardware configuration.

2. Thermoelectric Background — Why a Thermocouple Needs Cold-Junction Compensation

A thermocouple does not measure absolute temperature. It measures the Seebeck voltage generated between two dissimilar metals, and that voltage is proportional to the difference between the measuring junction (hot junction) and the reference junction (cold junction) at the instrument terminals:

V_out = ∫[T_hot to T_cold] S(T) · dT

where S(T) is the Seebeck coefficient of the thermocouple type (≈ 40 µV/°C for type K at 25 °C). To recover T_hot from V_out, the controller must know T_cold and add the corresponding thermal voltage back:

T_hot = f_typeK⁻¹(V_out + V_typeK(T_cold))

If the controller assumes T_cold = 0 °C, every reported temperature is exactly T_cold_actual low. A 38 °C ambient temperature at the terminal block (panel interior, fully warmed up) therefore produces exactly the 38 °C negative offset observed in the field.

Table 1 — Typical cold-junction temperatures and resulting offset
Installation state T_cold (approx.) Observed error (if CJ not compensated)
Cold panel at power-up, 5 °C ambient 5 °C −5 °C
Warmed panel, 25 °C ambient, door closed 25 °C −25 °C
Warmed panel, sealed cabinet, 38 °C ambient 38 °C −38 °C
Hot cabinet with adjacent VFDs, 55 °C 55 °C −55 °C

2.1 Compensation strategies supported by the 2AI TC HF

The 2AI TC HF module implements the cold-junction temperature value using one of three sources, selectable per channel in the hardware configuration:

  1. None — module returns the raw Seebeck voltage interpreted as if T_cold = 0 °C. Default after first insertion; responsible for the 38 °C negative offset.
  2. Internal — module uses its on-board temperature sensor inside the electronic module to estimate T_cold at the backplane connector. Suitable when the thermocouple wires transition to copper within the same ET 200S terminal block.
  3. Reference junction channel — module uses a separate Pt100 / Pt1000 / thermocouple channel on the same station whose terminal is the physical connection point of the thermocouple wires (the actual iso terminal). Required when the thermocouple compensation cable terminates on a passive terminal block that does not house the internal sensor.

The internal sensor alone is often not sufficient for high accuracy. The Siemens manual specifies a typical internal-sensor accuracy of ±2 °C; the external reference junction channel method delivers ±0.5 °C when wired with a Pt100 class A.

3. ET 200S 2AI TC HF Module — Hardware Reference

The module 6ES7134-4NB01-0AB0 is a 2-channel, 16-bit, high-functional thermocouple analog input for the ET 200S distributed I/O system. Key parameters from the official Siemens manual are summarised below.

Table 2 — ET 200S 2AI TC HF (6ES7134-4NB01-0AB0) technical data
Parameter Value
Order number (MLFB) 6ES7134-4NB01-0AB0
Function 2 AI TC HF — thermocouple, 16-bit, high-functional
Supported thermocouple types B, E, J, K, N, R, S, T, U, L, TXK (per IEC 60584)
Voltage measurement range ±80 mV (15 bits + sign)
Diagnostic Wire break, group error, overflow, underflow
Resolution at K-type 0.1 °C / 0.01 °C depending on integration time
Integration time 2.5 / 16.67 / 20 / 100 ms (50/60 Hz rejection selectable)
Cold-junction compensation None / Internal / Reference channel
Required terminal block TM-E15S26-A1 / TM-E15C26-A1 (spring / screw, with AUX)
Required base unit BU-15 (any variant supporting AUX)
Bus interface ET 200S backplane (PROFIBUS DP or PROFINET via IM 151)
Status / value representation S7 analog value (PIW) per channel, 16-bit signed

Source: ET 200S distributed I/O 2AI TC HF analog electronic module manual.

4. Root Cause Analysis — The 38 °C Negative Offset

The diagnostic decision tree below leads from the observed symptom to the configuration parameter that must be changed.

All channels of 2AI TC HF read ~38 °C low (type K) Is the value identical on every module? Yes — common mode No — channel specific Parameterisation issue Check CJ compensation (this article) Hardware / wiring issue Polarity, TC type, shielding Reference junction selection Properties → Module parameters → Reference junctions → Internal / Channel Wire a Pt100 at the TC terminal block and reference the same channel for CJ compensation (most accurate)

4.1 Confirming the diagnosis without changing configuration

  1. Open STEP 7 (V5.x) or TIA Portal and connect online to the ET 200S station.
  2. Open HW Config (STEP 7) or Devices & Networks (TIA Portal).
  3. Select the affected 2AI TC HF module and open Properties → Module parameters (or Properties → General → Module parameters in TIA Portal).
  4. Locate the Reference junctions group. The default for a freshly inserted module is "None" — visible as the unchecked reference junction box.
  5. If None is selected, the module returns the raw Seebeck voltage and interprets it as if T_cold = 0 °C. This is the smoking gun.

4.2 Why the same SM 331 AI 8×TC on the rack does not show the offset

The SM 331 AI 8×TC (e.g. 6ES7331-7PF11-0AB0) is delivered with internal CJ compensation enabled by default and uses a dedicated terminal block with a built-in temperature sensor that the module addresses automatically. The 2AI TC HF, because it can also use an external reference-junction channel, exposes the compensation source as a user-selectable parameter; the default is the safe-but-useless None. Migrating code from SM 331 to 2AI TC HF therefore requires the explicit selection of a reference-junction source in the hardware configuration.

5. Solution — Enabling Reference-Junction Compensation in STEP 7 and TIA Portal

The fix is purely a parameter change. No firmware update, no module replacement, and no hardware rewiring (in most cases) is required.

5.1 Option A — Internal cold-junction compensation (recommended for cost-sensitive installations)

This uses the temperature sensor integrated into the electronic module. Sufficient for ±2 °C applications where the thermocouple wires are landed within the same ET 200S section and the module is close to the terminal block (no significant thermal gradient).

  1. In HW Config / Devices & Networks, double-click the 2AI TC HF module.
  2. Open the Inputs tab → Channel 0 (repeat for channel 1).
  3. Set Measurement type to Thermocouple.
  4. Set Thermocouple type to K.
  5. Set Temperature unit to Degrees Celsius.
  6. Under Reference junction, select Internal.
  7. Click OK and download the hardware configuration to the CPU.

5.2 Option B — External Pt100 reference junction (recommended for high-accuracy installations)

The most accurate method. A Pt100 (class A or better) is mounted in a dedicated reference-junction terminal block such as TM-E15S24-01 (Siemens compensating block) at the exact location where the thermocouple compensation cable transitions to copper. The Pt100 reading is fed back to the module as the cold-junction temperature.

  1. Wire a 4-wire Pt100 to a free channel on a 2AI RTD HF module (6ES7134-4JB51-0AB0) on the same ET 200S station. The Pt100 must be physically clamped to the same terminal where the TC wires land (e.g. inside a Siemens compensating box).
  2. In the 2AI TC HF properties → Reference junctions, enable the Reference junction check box.
  3. Enter the slot of the 2AI RTD HF module (e.g. 4) and the channel (e.g. 0) under Reference junction channel.
  4. Set the RTD channel to Pt100 standard, 4-wire, unit °C.
  5. Save, compile, and download the configuration.
In TIA Portal (V16 and later) the parameter is under Properties → General → Module parameters → Reference junctions. Tick the Reference junction check box and specify slot and channel of the Pt100 source. See Configuring an ET 200S (S7-300, S7-400, S7-1500) - STEP 7.

5.3 Option C — Compensating box (legacy installations)

An external electronic or passive compensating box (e.g. 7MC1000-1AA) generates a millivolt signal equal to the Seebeck voltage corresponding to its terminal temperature. The signal is injected in series with the thermocouple leads. Use this only on legacy systems where no RTD channel is available. The new ET 200S 2AI TC HF supports the configuration natively via the Reference junction = None with external mV compensation, but the engineer must convert the box temperature to an mV offset manually — this is rarely cost-effective in new projects.

6. Configuration Parameter Reference

The complete parameter set for one channel of the 2AI TC HF is reproduced below. Use the table as a checklist when commissioning.

Table 3 — Module parameter checklist for 2AI TC HF (one channel)
Parameter Recommended value Effect
Measurement type Thermocouple Selects voltage / TC mode
Thermocouple type K (NiCr-Ni) Polynomial linearisation
Temperature unit Degrees Celsius PIW scaling 0–27648 = full range
Measuring range −270 °C … +1372 °C (type K) Defines full-scale
Integration time 20 ms (50 Hz) / 16.67 ms (60 Hz) Rejects mains noise
Smoothing None / Weak / Medium / Strong Digital filtering
Reference junction Internal or Channel Enables CJ compensation — fix for 38 °C offset
Reference junction channel (if Channel) Slot + channel of Pt100 Source of T_cold
Diagnostics: Wire break Enabled Detects open TC
Diagnostics: Group error Enabled Aggregates diagnostic interrupts
Overflow / underflow Enabled Catches out-of-range values

7. Wiring and Terminal Block Considerations

The cold-junction sensor reads the temperature at the location where the thermocouple wire ends and the copper conductor of the terminal block begins. If the thermocouple compensation cable is extended to a remote terminal box, the cold-junction temperature is the temperature of that terminal box, not of the ET 200S module.

Thermocouple in process (T_hot) e.g. 250 °C type K wire Terminal box T_cold ≈ 38 °C CJ must be added here copper 2AI TC HF module reads mV Pt100 reference 2AI RTD HF T_cold value CJ feedback If CJ = 0 °C (default "None"): reported T = 250 − 38 = 212 °C If CJ = 38 °C enabled: reported T = 250 °C ✓ If hard-coded offset +38 °C added in program: correct at one ambient, drifts with temperature

Key wiring rules:

  • Use the same terminal block type for the thermocouple and the reference Pt100. Mixing screw and spring terminals introduces a thermal EMF error.
  • Keep the thermocouple and the copper lead-out as short as possible inside the cabinet. Any copper section inside the heated zone is part of the cold-junction.
  • For long runs (> 10 m), use thermocouple extension wire of the same type (KX for type K) all the way to the terminal block — not copper.
  • Route thermocouple wires away from VFD power cables. The integration time parameter (50/60 Hz rejection) helps against mains pickup; common-mode noise from PWM inverters requires shielded twisted pair.

8. Removing the Hard-Coded Offset in the PLC Program

Once the hardware configuration provides correct CJ compensation, the program-level offset must be removed. Otherwise the reading will be 38 °C high.

8.1 STL code (STEP 7 V5.x) — current incorrect block

L     PIW318            // raw value from 2AI TC HF channel 0
L     380               // manual offset (1 digit = 0.1 °C)
+I
T     DB1.DBW20         // process value

8.2 STL code — corrected after enabling CJ compensation

L     PIW318            // raw value, already CJ-compensated
T     DB1.DBW20         // use directly

8.3 SCL code (S7-1500 / TIA Portal)

// Input scaling for 2AI TC HF with CJ compensation enabled
// PIW256 = type K, range −270 … +1372 °C
// 16-bit signed value: 0 = −270 °C, 27648 = +1372 °C
FUNCTION FC100 : VOID
VAR_INPUT
  iRawValue : INT;          // PIW from input process image
END_VAR
VAR_OUTPUT
  rTemperatureC : REAL;     // °C
END_VAR
BEGIN
  rTemperatureC := (INT_TO_REAL(iRawValue) / 27648.0) * 1642.0 - 270.0;
END_FUNCTION
Do not apply any additional offset unless a known sensor-specific zero-point error has been quantified with a portable calibrator. The PLC is not the place to correct for cold-junction error; it is the place to scale the already-compensated value.

9. Verification Procedure

  1. Power-cycle the ET 200S station to force re-parameterisation.
  2. Wait at least 15 minutes for thermal equilibrium inside the cabinet.
  3. In the online watch table, monitor the raw PIW of each affected channel. With a known process temperature (verified with a handheld calibrator) the value must match within ±0.5 °C when external Pt100 CJ is used, ±2 °C when internal CJ is used.
  4. Verify the Reference junction parameter in the module's online properties — it must show Internal or Channel x/y, never None.
  5. Check the diagnostic buffer for Channel error, Wire break or Reference junction error — the latter only appears when the configured reference channel is faulty.
  6. Compare the reading with the SM 331 AI 8×TC reading on the same process point. They should agree within the combined tolerance.

9.1 Quick functional test (workshop bench)

  1. Connect a calibrated type K dry-block calibrator set to 100.0 °C to the input terminals.
  2. Place a calibrated handheld reference thermocouple on the terminal block.
  3. With Internal CJ selected, expect the PIW to correspond to (100 − T_terminal_block + T_cold_compensation_internal). If the terminal block and the module are at the same temperature, the reading will be 100.0 °C ± 2 °C.
  4. Switch to None CJ. The reading drops to (100 − T_terminal_block) — this is the same 38 °C behaviour the field engineer observed. The test confirms CJ is the root cause.

10. 2AI TC HF vs SM 331 AI 8×TC — At-a-Glance

Table 4 — Cold-junction handling comparison
Aspect ET 200S 2AI TC HF (6ES7134-4NB01-0AB0) SM 331 AI 8×TC (6ES7331-7PF11-0AB0)
Default CJ compensation None — must be enabled Internal — enabled by default
CJ source options None / Internal / Reference channel Internal / Reference channel
External CJ accuracy ±0.5 °C with Pt100 class A ±0.5 °C with Pt100 class A
Internal CJ accuracy ±2 °C typical ±1 °C typical
Channel count 2 per module 8 per module
Form factor ET 200S slice module (15 mm wide) S7-300 SM (40 mm wide)
Resolution 15 bits + sign 15 bits + sign
Integration time 2.5 / 16.67 / 20 / 100 ms 2.5 / 16.67 / 20 / 100 ms
Diagnostic interrupt Yes Yes

11. Field Commissioning Checklist

  • ☐ Hardware configuration downloaded with explicit CJ compensation source per channel.
  • ☐ Reference junction parameter verified online: Internal or Channel x/y, never None.
  • ☐ All hard-coded offsets removed from the PLC program.
  • ☐ Thermocouple type matches the actual sensor (K, J, etc.) — wrong type causes systematic error of tens of degrees, not 38 °C exactly.
  • ☐ Wiring polarity checked against the diagram in the module manual.
  • ☐ Reference Pt100 (if used) is the same temperature as the TC terminal block.
  • ☐ Compensation cable used between the thermocouple head and the terminal block for long runs.
  • ☐ Cabinet door closed for at least 15 minutes before final calibration acceptance.
  • ☐ Diagnostic buffer cleared after commissioning.
  • ☐ Cross-check against a calibrated handheld reference at one process point.

12. Troubleshooting Matrix

Table 5 — Common 2AI TC HF reading errors and corrective actions
Observed reading Most likely cause Corrective action
38 °C low (consistent, all channels, all modules) CJ compensation = None Set Reference junction = Internal or Channel (this article)
Reading drifts 1–3 °C with cabinet door Internal CJ selected but terminal block far from module Switch to Channel CJ with Pt100 at the terminal block
Reading shows 7FFF hex / overflow Wrong TC type or open circuit Check wiring, enable Wire-break diagnostic
Reading is correct at 0 °C, off at 200 °C Wrong TC type selected in configuration Re-select type K (or actual sensor type)
Reference channel shows 85 °C (Siemens S7 substitute value) Pt100 channel faulty or wrong slot Verify slot/channel in Reference junction parameter
Random spikes ±5 °C Mains pickup / VFD noise Set integration time to 20 ms (50 Hz) or 16.67 ms (60 Hz); use shielded twisted pair
DIAG LED on module red Module diagnostic interrupt active Read diagnostic buffer; check Reference junction error first
Reading matches SM 331 ±0.1 °C but HMI shows ×10 error Engineering unit scaling in HMI Verify HMI scaling: 0.1 °C per digit, not 1 °C per digit

13. Common Pitfalls When Migrating From SM 331 to 2AI TC HF

  1. Forgetting to re-select CJ source. The SM 331 defaults to internal CJ; the 2AI TC HF defaults to None.
  2. Leaving a leftover program-level offset. After hardware CJ is enabled, a +380 offset will add 38 °C back, cancelling the fix.
  3. Selecting the wrong TC type in the new project. When the GSD / GSDML is re-imported, the type defaults to Type J or Type K depending on firmware. Verify per channel.
  4. Polarity reversal during the migration. ET 200S uses the AUX terminals; SM 331 uses dedicated TC terminals. Pin assignments differ between TM-E15S26-A1 (ET 200S) and the SM 331 front connector.
  5. Using copper cable instead of thermocouple extension cable between the field sensor and the terminal block. This adds another isothermal block and changes the cold-junction location.

14. Frequently Asked Questions

Why does my ET 200S 2AI TC HF read exactly 38 °C low on every channel?

The 38 °C offset is the temperature of your cabinet interior at the terminal block, with the module configured to Reference junction = None. The module reports raw Seebeck voltage assuming a 0 °C cold junction, so every reading is exactly T_cold low. Enable Internal or Channel reference junction in Properties → Module parameters → Reference junctions.

Do I need to add a hard-coded +380 offset in my PLC program to fix the 38 °C error?

No. A hard-coded offset is a workaround that drifts with ambient temperature. The correct fix is to enable reference-junction compensation in the hardware configuration. After the fix, remove the offset; the PIW value from the module is already correctly scaled in 0.1 °C.

What is the most accurate cold-junction compensation method for the 2AI TC HF?

External reference-junction compensation using a 4-wire Pt100 (class A or better) mounted at the same isothermal block as the thermocouple termination. Configure the 2AI RTD HF module slot and channel under Properties → Module parameters → Reference junctions on the 2AI TC HF. Expected accuracy is ±0.5 °C.

Can the 2AI TC HF share a single Pt100 reference across all thermocouple channels?

Yes. One Pt100 channel on a 2AI RTD HF can be referenced by multiple 2AI TC HF modules on the same ET 200S station, provided all thermocouple wires terminate at the same physical isothermal block. Configure the same slot and channel number in the Reference junction field of every TC module.

What is the parameter path to enable reference-junction compensation in TIA Portal V16+?

In Devices & Networks, double-click the 2AI TC HF module, then open Properties → General → Module parameters → Reference junctions. Tick the Reference junction check box and enter the slot and channel of the Pt100 source. See the Siemens TIA Portal ET 200S configuration guide.

Why does my SM 331 AI 8×TC not show the 38 °C offset when the 2AI TC HF does?

The SM 331 enables internal cold-junction compensation by default; the 2AI TC HF defaults to None. The hardware configuration of the new module must be updated to match the SM 331 behaviour. This is a parameter difference, not a hardware defect.

Back to blog