S7-1200 PT100 RTD Module: Wiring, TIA Portal & 6-Zone Oven Setup

David Krause15 min read
S7-1200SiemensTutorial / How-to
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

Overview: Why Direct RTD Connection Beats External Converters

A common misconception when integrating PT100 resistance temperature detectors (RTDs) with a Siemens S7-1200 PLC is that an external PT100-to-voltage or PT100-to-current converter is mandatory. The S7-1200 family has dedicated SM 1231 RTD signal modules and a compact SB 1231 RTD signal board that accept 2-wire, 3-wire, and (on selected variants) 4-wire RTDs directly. This eliminates the cost of six DIN-rail transmitters, removes a layer of failure, eliminates additional 24 V load, and improves noise immunity because the signal never leaves the shielded sensor cable as a low-level analog voltage.

This reference covers a 6-zone oven application: six 3-wire PT100 probes, four ramp/soak setpoints per profile, ±1 °C control tolerance, and a CPU 1214C or CPU 1215C host. The same architecture scales to any S7-1200 RTD application from 1 to 16 channels.

Field note: External transmitters (e.g., PT100 → 4–20 mA) are still the right choice for very long cable runs (> 50 m in noisy plants), for hazardous area isolation via zener barriers, or when the sensor must be tied into an existing 4–20 mA loop. Inside a control cabinet next to a 6-zone oven, direct SM 1231 RTD connection is preferred.

PT100 RTD Sensor Fundamentals

A PT100 is a platinum RTD with a nominal resistance of 100.00 Ω at 0 °C. The IEC 60751 nominal coefficient is α = 0.00385 Ω/Ω/°C (the European/IEC curve, also called PT100 standard). A second curve, α = 0.003916 (American curve, PT100 legacy US), is occasionally encountered on older probes; the SM 1231 lets you select either via the sensor type parameter.

Temperature (°C) Resistance (Ω, IEC 60751) Notes
-50 80.31 Lower limit of typical oven RTD
0 100.00 Calibration point
100 138.51 Span: 0.385 Ω/°C nominal
200 175.86 Typical oven max
400 247.09 Common cure-oven target
600 313.71 Above most PT100 probe ratings
850 390.48 Max RTD element limit per IEC 60751

3-Wire vs 2-Wire vs 4-Wire

  • 2-wire: Lead resistance adds directly to the measured Ω. At 0.385 Ω/°C, a 1 Ω lead = 2.6 °C error. Acceptable only for short pigtails.
  • 3-wire (recommended): Two leads carry the excitation current; the third lead senses the element terminal. The SM 1231 cancels lead resistance by measuring both excitation legs. This is the default for industrial oven installations.
  • 4-wire (Kelvin): Two excitation + two sense leads, eliminates lead error completely. Supported on selected SM 1231 RTD variants; use it for lab-grade or sub-±0.5 °C work.

S7-1200 RTD Module Family

The S7-1200 supports RTD inputs through two product lines:

Catalog Number Form Factor Channels Resolution Typical Use
6ES7231-5PA30-0XB0 SB 1231 (signal board) 1 AI 15 bit + sign 1-zone / retrofit
6ES7231-5PD30-0XB0 SM 1231 (signal module) 4 AI 15 bit + sign Legacy 4-zone
6ES7231-5PD32-0XB0 SM 1231 (signal module) 4 AI 16 bit Current production, 4-zone
6ES7231-5QF32-0XB0 SM 1231 (signal module) 8 AI 16 bit Current production, 8-zone

All four modules accept PT100, PT200, PT500, PT1000, Ni100, Ni120, Ni200, Ni500, Ni1000, Cu10 (selected types) and plain resistance. The 5PD32 / 5QF32 series are the current production variants and are the right pick for new builds.

For the official Siemens product page and current firmware, refer to the S7-1200 Programmable Controller System Manual and the SM 1231 RTD module manual entry.

Maximum Module Count per CPU

CPU Max SMs Max SM + SB combo Notes
CPU 1211C 0 1 SB only No signal module slot
CPU 1212C 2 1 SB + 2 SM Single-zone oven only
CPU 1214C 8 1 SB + 8 SM Recommended 6-zone floor
CPU 1215C 8 1 SB + 8 SM Add PROFINET for HMI
CPU 1217C 8 1 SB + 8 SM High-speed tasks

Module Selection for 6 Oven Zones

For six PT100 probes, the cleanest hardware plan is:

  1. Option A (recommended): 1 × SM 1231 RTD 8AI (6ES7231-5QF32-0XB0). 8 channels, 2 spares, no SB needed.
  2. Option B: 2 × SM 1231 RTD 4AI (6ES7231-5PD32-0XB0). 8 channels total. Useful if channels must be on different physical modules for serviceability.
  3. Option C: 1 × SM 1231 RTD 4AI + 1 × SB 1231 RTD. Only 5 channels — insufficient for 6 zones.
Validate the system manual for your specific CPU/firmware combination because the maximum number of modules, channels per module, and update time depend on the firmware version installed on the CPU and on the module. Always cross-check with the S7-1200 System Manual edition that matches your TIA Portal project version.

3-Wire PT100 Wiring Procedure

The SM 1231 RTD uses a removable terminal block. The 3-wire PT100 connects to the two excitation terminals (I+ and I-) and one sense terminal (M-). The fourth wire, if present, is tied to M+ for 4-wire mode (not used here).

Terminal layout (SM 1231 RTD, channel 0 shown)

Channel 0  |  Channel 1
  1  I0+       5  I1+
  2  I0-       6  I1-
  3  M0+       7  M1+
  4  M0-       8  M1-

Power:    L+  /  M  (24 V DC supply to module)

3-wire PT100 hookup

  1. Strip the probe cable shield back to within 20 mm of the gland; expose the three conductors and drain wire.
  2. Tie the drain wire to the cabinet ground bar via a short pigtail — do not land it on the RTD module terminal.
  3. Land red (excitation return) on I0+.
  4. Land red (excitation source) on I0-. The two reds are interchangeable as long as one is on I+ and the matching pair-side on I-.
  5. Land white (sense lead) on M0-.
  6. Repeat for channels 1…5. Channels 6 and 7 stay open (or jumper M+ to M- to defeat the open-wire diagnostic; see Diagnostics below).
  7. Apply 24 V DC to L+ / M on the module power terminals.
3-Wire PT100 → SM 1231 RTD Channel 0 PT100 R = 100 Ω @ 0°C red (excitation +) red (excitation -) white (sense) SM 1231 RTD 1 I0+ (red) 2 I0- (red) 4 M0- (white) 3 M0+ (not used in 3-wire) 24 V DC — L+ / M
Shielding: Use shielded, twisted instrumentation cable (e.g., Belden 8761 or Alpha 58411). Ground the shield at the cabinet end only; leave the field end floating. Do not ground both ends — this builds a ground loop that injects 50/60 Hz into the mΩ measurement.

TIA Portal Hardware Configuration

Open the project in TIA Portal (V16 or later recommended for the 5PD32/5QF32 modules). In the project tree: Devices & Configuration → [CPU 1214C] → Device view.

  1. From the hardware catalog, expand SM 1231AIRTD.
  2. Drag the SM 1231, AI 8x16 bit RTD (order number 6ES7231-5QF32-0XB0) into slot 1 of the CPU. The order is determined by the physical slot in the rack; slot 1 sits immediately to the left of the CPU.
  3. If using the SB 1231 instead, drag the SB 1231, AI 1x16 bit RTD (6ES7231-5PA30-0XB0) into the signal board slot of the CPU. The SB mounts on the lower front of the CPU; only one SB per CPU.
  4. Double-click the module to open the Properties inspector. Set the channel-by-channel configuration described in the next section.
  5. Compile the device configuration (Hardware (rebuild all)) and download to the CPU.
Firmware gate: Older CPU firmware releases (≤ V4.3) may not recognize the 5PD32 / 5QF32 modules. If the module is grayed out or shows a type error, update the CPU firmware to V4.4 or later using the S7-1200 firmware update tool.

TIA Portal Channel Configuration

Select channels 0…5 (channels 6 and 7 are unused). For each, set the following parameters in the Properties → Inputs tab:

Parameter Value Notes
Measurement type RTD (3-wire) For 3-wire probe; pick "RTD (4-wire)" only if Kelvin wired
RTD type PT100 Standard (0.00385) IEC 60751; pick PT100 Climatic (0.00385) for sub-zero extended range
Temperature unit Celsius Also: Fahrenheit, Kelvin
Temperature range -200 °C … +850 °C For oven service, 0…400 °C improves resolution
Smoothing Weak / Medium / Strong Strong for noisy plants, Weak for fast response
Diagnostics: Wire break Enabled Flags open circuit — critical for oven safety
Diagnostics: Upper / Lower limit Enabled Alarms at 110 % / -10 % of full scale
Overflow / Underflow Enabled Detects shorted sensor

The configured input word (IW) returns temperature in 1/10 °C units by default. An oven at 250 °C reads back as decimal 2500. Confirm this in Properties → IO Tags on the module — Siemens calls it the Process Value Scale.

Temperature Scaling and Smoothing

The RTD module returns a normalized integer in 1/10 °C. For analog scaling math (e.g., when feeding a PID that expects a real number), use the standard TIA Portal NORM_X and SCALE_X instructions, or read the value as INT and divide by 10.0.

// FB "Temp_Raw_To_Float" — SCL
// Input:  iRaw   : INT    — 1/10 °C from SM 1231
// Output: rTempC : REAL   — °C as real

rTempC := INT_TO_REAL(iRaw) / 10.0;

// Optional plausibility check
IF rTempC < -50.0 OR rTempC > 500.0 THEN
    bSensorFault := TRUE;
END_IF;

For moving-average smoothing to fight electrical noise on long probe leads:

// FB "Temp_MA_Filter" — SCL
// 8-sample moving average, runs at the OB1 cycle time

IF iCnt >= 8 THEN
    iCnt := 0;
END_IF;
arSamples[iCnt] := rTempC;
iCnt := iCnt + 1;

rTempFiltered := (arSamples[0] + arSamples[1] + arSamples[2] + arSamples[3]
                + arSamples[4] + arSamples[5] + arSamples[6] + arSamples[7]) / 8.0;

Ramp/Soak Profile Programming (4 Setpoints, 4 Ramps)

"4 setpoints and 4 ramps" describes a four-segment profile. The standard pattern is Ramp1 → Soak1 → Ramp2 → Soak2 … but the implementation below uses a generic setpoint table, so it can be configured as 4 ramps only, 4 soaks only, or any mix.

Profile data block

DATA_BLOCK "OvenProfile_DB"
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
  STRUCT
      rSetpoint : ARRAY[1..4] OF REAL := [100.0, 200.0, 250.0, 25.0];
      rRampRate : ARRAY[1..4] OF REAL := [5.0, 3.0, 2.0, 10.0];  // °C/min
      rDwellTime: ARRAY[1..4] OF REAL := [30.0, 45.0, 60.0, 15.0]; // min
      iActiveSeg: INT  := 0;
      bRunProfile: BOOL := FALSE;
  END_STRUCT;
END_DATA_BLOCK

Profile execution FB

// FB "RampSoak_4Seg" — SCL
// Inputs: rTempC (°C), bStart, bStop, rTarget (setpoint of active seg)
// Outputs: rOutput (target to PID), bProfileDone, bFault
// Internal: timer advances the segment when rTempC reaches rTarget within tolerance

IF bStop THEN
    iActiveSeg := 0;
    bRunProfile := FALSE;
    bProfileDone := FALSE;
END_IF;

IF bStart AND NOT bRunProfile THEN
    iActiveSeg := 1;
    bRunProfile := TRUE;
    bProfileDone := FALSE;
    tSegmentTimer(IN := TRUE, PT := T#0ms);
END_IF;

IF bRunProfile THEN
    // Determine next setpoint & ramp slope
    rTarget := "OvenProfile_DB".rSetpoint[iActiveSeg];
    rRate   := "OvenProfile_DB".rRampRate[iActiveSeg];
    rDwell  := "OvenProfile_DB".rDwellTime[iActiveSeg];

    // Linear ramp: dT/dt = rRate °C/min
    rOutput := rLastOutput
             + SIGN(rTarget - rLastOutput) * rRate * (tTick_ms / 60000.0);

    // Clamp to setpoint
    IF (rTarget - rLastOutput) * (rOutput - rLastOutput) <= 0.0 THEN
        rOutput := rTarget;
    END_IF;

    rLastOutput := rOutput;

    // Dwell timer
    IF ABS(rTempC - rTarget) < 1.0 THEN  // ±1 °C tolerance
        tSegmentTimer(IN := TRUE, PT := REAL_TO_TIME(rDwell * 60000.0));
        IF tSegmentTimer.Q THEN
            iActiveSeg := iActiveSeg + 1;
            tSegmentTimer(IN := FALSE);
            IF iActiveSeg > 4 THEN
                bRunProfile := FALSE;
                bProfileDone := TRUE;
            END_IF;
        END_IF;
    END_IF;
END_IF;
4-Segment Ramp/Soak State Machine IDLE RAMP 1 (5°C/min) RAMP 2 (3°C/min) RAMP 3 (2°C/min) SOAK 1 (30 min) SOAK 2 (45 min) SOAK 3 (60 min) bStart done

PID_Compact Integration per Oven Zone

For each of the six zones, instantiate PID_Compact from the TIA Portal instructions library. The PID output drives either a solid-state relay (SSR) for electric heaters, a 4–20 mA proportional gas valve, or a PWM output on a digital output module.

  1. Add PID_Compact to the program. Create a separate instance DB per zone (e.g., PID_Compact_DB_1 through PID_Compact_DB_6).
  2. Wire Setpoint to rOutput from the RampSoak_4Seg FB.
  3. Wire Input to rTempC from the Temp_Raw_To_Float FB.
  4. Configure Input / Output → Input scaling as 0.0 to 400.0 °C.
  5. Configure Output → Output scaling as 0.0 to 100.0 %.
  6. Select Output → Activate mode: PWM (digital out, 1 s period) for SSR loads, or analog out (0…10 V via AQ module).
  7. Run Commissioning → Pretuning once the oven reaches a stable temperature. Pretuning identifies Kp, Tn, Tv automatically.
  8. Run Fine tuning at the operating setpoint to capture the actual process dynamics.
Validate the PID configuration with the official PID_Compact V2 documentation. PID_Compact version compatibility depends on TIA Portal version; V2 is the current default in TIA V16+.

Diagnostics and Troubleshooting

Symptom Likely Cause Verification Fix
Reading shows -32768 or 32767 (saturated) Wire break on one of the three leads Check LEDs on SM 1231, look at diagnostics buffer in TIA Portal (Online → Diagnostics) Inspect probe leads, re-land I+ / I- / M- on terminal block
Reading drifts by 1–3 °C between zones Lead resistance mismatch (poor 3-wire termination) Measure resistance between I+ and I- with probe disconnected; should be ~ 0 Ω + lead Use identical cable gauge for all three conductors; re-terminate
All channels read the same value (e.g., ambient) Excitation polarity reversed; module in 2-wire mode Confirm channel configuration in TIA Portal Recheck TIA configuration, swap I+ and I-
SF (red) LED on module Module diagnostic event — wire break, overflow, or 24 V missing Online → Diagnostics → Module information Resolve the listed diagnostic, then power cycle the module
Temperature reads high by ~ 2.6 °C per Ω Module is in 2-wire mode but 3-wire probe is wired Properties → Inputs → Measurement type Change to "RTD (3-wire)"
Reading noisy (±2 °C ripple) 50/60 Hz pickup or VFD noise Scope probe terminal to ground; check for VFD cable in same tray Route RTD cable in its own conduit, use shielded cable, enable Strong smoothing
One channel stuck at 0 °C, others OK Channel configured but no probe connected Channel configuration → enable wire break diagnostic Disable unused channel or short I+/I-/M- together
Reading -200 °C or +850 °C Shorted element or out-of-range input Check probe resistance with multimeter Replace probe if R < 18 Ω or R > 390 Ω at room temperature

Commissioning Verification

  1. Module online test: In TIA Portal, right-click the SM 1231 → Online & Diagnostics → Monitor. All six channels should show a sensible ambient temperature (e.g., 18–25 °C).
  2. Short-circuit test: On channel 0, disconnect the probe and short I0+ to I0- to M0- with a short wire. The reading should drop to a defined underflow value (e.g., -200 °C) and trigger the wire-break diagnostic.
  3. Calibration check: Use a decade resistance box (or calibrated PT100 simulator) connected to channel 0. Inject 100.00 Ω — the module should read 0.0 °C ± 0.3 °C. Inject 138.51 Ω — should read 100.0 °C ± 0.5 °C.
  4. Cold-junction observation: For an unheated probe, log the value over 5 minutes. The spread should be < ± 0.1 °C with no smoothing, or < ± 0.05 °C with Weak smoothing.
  5. Profile run: With the oven at ambient, start a profile that ramps to 200 °C at 10 °C/min. Verify the FB advances Ramp1 → Soak1 → Ramp2 correctly and that the PID output modulates the heater.
  6. Fault injection: Yank the channel 0 probe while the oven is heating. Confirm the wire-break diagnostic trips and the PID output drops to 0 % (fail-safe).

Sourcing the Module in Canada

For Canada-based builds, Siemens partners include:

  • Distributors: WESCO, Guillevin Automation, Wesco / CED, Eaton Electrical, Atlas Apex, EBH Elektronik.
  • OEM direct: Siemens Canada Limited — order via the local rep.
  • Online: PLCDirect (not affiliated), a UBC affiliated surplus reseller, and eBay for development spares (avoid for production builds).

Lead time for the 6ES7231-5QF32-0XB0 is typically 1–3 weeks from a Canadian distributor. Always confirm the firmware version printed on the module label matches the version your TIA Portal project supports.

Field note: If a 6ES7231-5QF32-0XB0 cannot be sourced quickly, two 6ES7231-5PD32-0XB0 4AI modules will deliver the same result. Slot 1 and slot 2 of the CPU each take a 4AI module, yielding 8 channels. Pin-for-pin, channel-for-channel identical — only the slot in the TIA Portal device view changes.

Do I really need a PT100-to-4-20 mA transmitter between the probe and the S7-1200?

No. The SM 1231 RTD (6ES7231-5PD32-0XB0 or 6ES7231-5QF32-0XB0) and the SB 1231 RTD accept PT100 probes directly, including 3-wire and 4-wire, with 15-bit or 16-bit resolution. External transmitters are only needed for long cable runs > 50 m, hazardous-area isolation, or retrofitting an existing 4–20 mA loop.

How many SM 1231 RTD modules do I need for 6 PT100 probes?

One SM 1231 RTD 8AI (6ES7231-5QF32-0XB0) is sufficient, with 2 spare channels. Alternatively, two SM 1231 RTD 4AI (6ES7231-5PD32-0XB0) modules give 8 channels across slot 1 and slot 2. The SB 1231 (1 channel) is too small by itself and would need to be combined with a 4AI SM to reach 6 channels.

Can the SM 1231 RTD accept 2-wire PT100 probes?

Yes, select "RTD thermal resistor (2-wire)" in the TIA Portal channel configuration. The module subtracts a fixed lead-resistance compensation value, so accuracy depends on consistent lead length. For new installations, use 3-wire to get automatic lead-resistance cancellation and ±0.1 °C repeatability.

What accuracy can I expect for oven control with PT100 + SM 1231 RTD?

For an IEC 60751 PT100 Standard class A element, the SM 1231 RTD delivers ±0.3 °C typical error at 0 °C, degrading to about ±0.8 °C at 400 °C. Combined with the FB-based moving average and PID_Compact pretuning, an oven control loop settles within ±1 °C of setpoint, which meets the ±1 °C tolerance the application requires.

Does PID_Compact support a ramp/soak setpoint generator natively?

No. PID_Compact accepts a single Setpoint input. The ramp/soak must be generated externally — either with a recipe DB and a state machine FB (as shown in the RampSoak_4Seg example) or with a third-party recipe library. The FB output rOutput becomes the Setpoint of PID_Compact, so the two integrate cleanly.

What is the maximum SM 1231 RTD update time per channel?

Update time is set by the integration time parameter in TIA Portal, typically 60 Hz / 50 Hz rejection. With 4 enabled channels on a 4AI SM 1231, the per-channel update time is around 100 ms; with 8 enabled channels on the 8AI variant it is around 200 ms. This is fast enough for oven control (typical thermal time constant 30 s–10 min) but too slow for high-speed surface-mount profiling.

Can I mix PT100 and PT1000 probes on the same SM 1231 RTD module?

Yes. Each channel is configured independently in TIA Portal, so channels 0…3 can be PT100 and channels 4…7 can be PT1000, for example. The hardware is identical — only the channel-level "RTD type" parameter changes.

Back to blog