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.
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.
| 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:
-
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. -
Internal — module uses its on-board temperature sensor inside the electronic module to estimate
T_coldat the backplane connector. Suitable when the thermocouple wires transition to copper within the same ET 200S terminal block. - 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.
| 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.
4.1 Confirming the diagnosis without changing configuration
- Open STEP 7 (V5.x) or TIA Portal and connect online to the ET 200S station.
- Open HW Config (STEP 7) or Devices & Networks (TIA Portal).
- Select the affected 2AI TC HF module and open Properties → Module parameters (or Properties → General → Module parameters in TIA Portal).
- Locate the Reference junctions group. The default for a freshly inserted module is "None" — visible as the unchecked reference junction box.
- 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).
- In HW Config / Devices & Networks, double-click the 2AI TC HF module.
- Open the Inputs tab → Channel 0 (repeat for channel 1).
- Set Measurement type to Thermocouple.
- Set Thermocouple type to K.
- Set Temperature unit to Degrees Celsius.
- Under Reference junction, select Internal.
- 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.
- 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). - In the 2AI TC HF properties → Reference junctions, enable the Reference junction check box.
- Enter the slot of the 2AI RTD HF module (e.g.
4) and the channel (e.g.0) under Reference junction channel. - Set the RTD channel to Pt100 standard, 4-wire, unit °C.
- Save, compile, and download the configuration.
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.
| 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.
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
9. Verification Procedure
- Power-cycle the ET 200S station to force re-parameterisation.
- Wait at least 15 minutes for thermal equilibrium inside the cabinet.
- 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.
- Verify the Reference junction parameter in the module's online properties — it must show Internal or Channel x/y, never None.
- Check the diagnostic buffer for
Channel error,Wire breakorReference junction error— the latter only appears when the configured reference channel is faulty. - 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)
- Connect a calibrated type K dry-block calibrator set to 100.0 °C to the input terminals.
- Place a calibrated handheld reference thermocouple on the terminal block.
- 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.
- 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
| 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
| 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
- Forgetting to re-select CJ source. The SM 331 defaults to internal CJ; the 2AI TC HF defaults to None.
- Leaving a leftover program-level offset. After hardware CJ is enabled, a +380 offset will add 38 °C back, cancelling the fix.
- 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.
- 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.
- 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.