Cascade Heating Control with LOGO! 0BA5: Parallel Gas Heaters

David Krause12 min read
Process ControlSiemensTutorial / 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

1. Application Overview

This reference describes a two-stage gas-heater cascade implemented on a Siemens LOGO! 0BA5 base module extended with an AM2 RTD expansion block. Two PT1000 Class A sensors measure flow and return water temperatures of a primary heating loop. A room thermostat provides the demand signal. Stage 1 starts when the room calls for heat. Stage 2 is allowed to start only when the return-water temperature has not reached a configurable set point (default 50 °C) within a configurable window (default 10 minutes). The intent is to maximize single-stage efficiency, reduce burner cycling, and limit the parallel running time of the second appliance.

The same architecture generalises to any LOGO! 5-series base module (0BA5) with the 6ED1055-1MD00-0BA2 RTD expansion. Programming is performed in LOGO!Soft Comfort V5.x; the FBD and ladder fragments in this article are compatible with the 0BA5 instruction set.

2. System Architecture

Block Function LOGOLabel / Address
Base module 0BA5 Logic execution, 8 DI, 4 DO, 2 AI (0–10 V) I1…I8, Q1…Q4, AI1, AI2
AM2 RTD (6ED1055-1MD00-0BA2) 2 × PT100/PT1000 inputs AI3, AI4 (mapped to AM inputs)
PT1000 sensor A Return water temperature (T_ret) AI3
PT1000 sensor B Flow water temperature (T_flow) AI4
Room thermostat Potential-free contact, demand I1
Heater 1 start Relay output to burner 1 Q1
Heater 2 start Relay output to burner 2 Q2
System enable Hard-wired safety contact I2
Fault reset Pushbutton, NC I3

The AM2 RTD expansion is mandatory; the 0BA5 onboard analog inputs (AI1/AI2) are 0–10 V and cannot accept a 2-wire PT1000 directly. The PT1000 must be wired in the 2-wire configuration to terminals I1+ / I1- and I2+ / I2- of the AM2 module using shielded cable, with the shield grounded at the LOGO! end only.

3. Sensor Scaling on the 0BA5 / AM2 RTD

PT1000 nominal resistance is 1000 Ω at 0 °C with a near-linear slope of approximately 3.85 Ω/°C. The AM2 RTD linearises the resistance and presents the result as a scaled analog value on the LOGO! 0BA5.

Parameter Value Note
PT1000 sensing range -50 °C to +200 °C Application range, sensor and AM2 limited
AM2 measurement range 0 to 1000 (mapped from range) Verify against AM2 manual
Resistance at 0 °C 1000 Ω IEC 60751
Resistance slope 3.85 Ω/°C average Use Callendar-Van Dusen for high accuracy
Recommended excitation < 1 mA Self-heating limit per IEC 60751

For FBD use an Analog Amplifier (B02) block in conjunction with the AI input. Configure sensor type = PT1000 and measurement range = 0…100 °C. The amplifier output becomes a 0–1000 integer equivalent that downstream math blocks (threshold triggers, PI controller) interpret directly.

If the AM2 RTD block is configured for PT1000 in LOGO!Soft Comfort, the block performs linearisation internally. Do not apply a second linearisation in the FBD; the gain will be applied twice. The output scaling is in tenths of a degree by default on the 0BA5 (verify in the AM2 manual shipped with the module).

4. Why Both Flow and Return Are Measured

A common confusion in the source thread is whether the flow sensor is required when the return sensor already gives a meaningful signal. The answer is that the two sensors carry different information:

  • Return water (T_ret) is the controlled variable. It indicates how much heat the emitters have already extracted from the loop. If T_ret stalls, the loop is calling for more heat than a single burner can deliver.
  • Flow water (T_flow) is a supervisory variable. The flow/return differential (ΔT) is a proxy for instantaneous loop load. A high ΔT with a low T_ret is a robust start condition for a second burner; a low ΔT with a high T_ret means the loop is over-supplied and the demand should be shed instead of added.

A simple two-stage cascade can run on T_ret alone, but the addition of T_flow enables anti-oscillation, lead/lag, and maximum ΔT clamp logic, which prevents short cycling of the second burner when the loop is near steady state.

5. Cascade Control Strategy

The recommended state machine for the heater pair is shown below.

IDLEQ1=0, Q2=0 STAGE 1Q1=1, Q2=0 STAGE 1 + STAGE 2Q1=1, Q2=1 COOLDOWNQ1=0, Q2=0, timer I1=1, I2=1 timeoutT_ret < SP I1=0 or fault T_ret ≥ SP+2 3 min timer system enable lost

State transitions in plain language:

  1. IDLE → STAGE 1: room thermostat closes (I1) and system enable (I2) is present.
  2. STAGE 1 → STAGE 1 + 2: timer T1 elapses (10 minutes default) AND T_ret is below set point (50 °C default).
  3. STAGE 1 + 2 → COOLDOWN: room thermostat opens, fault, or T_ret ≥ (set point + hysteresis, default 2 °C).
  4. COOLDOWN → IDLE: minimum off-time T2 (3 minutes default) expires, both Q1 and Q2 are forced off to allow pump overrun.

6. Building the FBD on LOGO! 0BA5

The program is constructed in the following block order in LOGO!Soft Comfort V5.x. Block numbers shown are illustrative; renumber for your project.

6.1 Inputs and Scaling

B01  Digital Input  I1     -- Room thermostat
B02  Digital Input  I2     -- System enable
B03  Digital Input  I3     -- Fault reset (NC)
B04  Analog Input   AI3    -- PT1000, T_ret (return)
B05  Analog Input   AI4    -- PT1000, T_flow (flow)
B06  Analog Amplifier (PT1000, 0..100 °C) -> AQ3
B07  Analog Amplifier (PT1000, 0..100 °C) -> AQ4

6.2 Threshold Detection

B08  Threshold Trigger   On:  AQ3 >= 500  (T_ret >= 50.0 °C)
                         Off: AQ3 <  480  (hysteresis 2.0 °C)
                         Output -> M1
B09  Threshold Trigger   On:  AQ3 <  500  (T_ret <  50.0 °C)
                         Off: AQ3 >= 500
                         Output -> M2
B10  Threshold Trigger   On:  (AQ4 - AQ3) >= 150  (ΔT >= 15.0 °C)
                         Off: (AQ4 - AQ3) <  130
                         Output -> M3  -- "loop still hungry"

The 0BA5 does not perform subtractions between two analog inputs directly. Use an Analog Math block (B11) with the expression AQ4 - AQ3 and feed the result into B10.

6.3 Time-Delayed Stage-2 Enable

B12  AND              I1, I2            -- master demand
B13  On-Delay         00:10:00          -- 10 minute window
      Triggered by:  B12
      Output:        M4  -- "stage 2 allowed"
B14  AND              M4, M2, M3        -- stage 2 allowed AND
                                    -- T_ret < 50 °C AND
                                    -- loop ΔT > 15 °C
B15  Set/Reset Latch  S = B14, R = B08

6.4 Output Drivers

B16  AND              B12, NOT(B15)     -- Q1 if demand and not in stage 2
B17  Output Q1        = B16
B18  Output Q2        = B15

Block B16 deliberately forces Q1 off while B15 is set if you want exclusive operation, but for parallel/cascade operation with the source's requirement keep B16 = (I1 AND I2) so that Q1 stays on whenever there is demand and the safety contact is closed. Replace B16 with a direct pass-through of B12 if parallel running is desired.

7. PI Controller Variant

The source thread mentions that a PI controller was attempted but abandoned due to unfamiliarity. The PI controller block (B20) on the 0BA5 can be used as a supervisory controller on T_ret with a slower integral action that decides whether stage 2 should be added. A practical implementation:

Parameter Value Comment
Set point SP 500 (= 50.0 °C) T_ret target
Sensor input AQ3 From B06
Kp (gain) 1.0 Proportional band of 100 %
Ti (integral time) 120 s Slow integration prevents oscillation
Direction Direct Output rises as T_ret falls below SP
Output low limit 0 Disable stage 2
Output high limit 1000 Enable stage 2

The PI output is fed into an additional threshold trigger (B21) that turns on stage 2 when the integrated error exceeds 70 % of the controller span. This provides soft staging and avoids hard time-based decisions during steady-state operation.

For thermal loops with response times in minutes, Ti in the 60–240 s range is typical. Start with Ti = 120 s and reduce by half if the controller is too slow, or double it if the system oscillates. Kp = 1.0 with normalised output is the safest starting point on a 0BA5.

8. Hardware Wiring

Wire From To Notes
PT1000 #1, red Sensor A AM2 terminal I1+ 2-wire, no polarity
PT1000 #1, red Sensor A AM2 terminal I1- Use a single pair, no junction
PT1000 #2, red Sensor B AM2 terminal I2+ 2-wire
PT1000 #2, red Sensor B AM2 terminal I2- 2-wire
Room thermostat Common LOGO! terminal I1 Potential-free contact
Room thermostat Switched +24 V (or L for 230 V base) Match base module supply
Heater 1 start LOGO! Q1 Burner 1 enable input Respect burner control voltage
Heater 2 start LOGO! Q2 Burner 2 enable input Respect burner control voltage
PE Earth LOGO! PE terminal Required for CE compliance

9. Commissioning Procedure

  1. Power the LOGO! 0BA5 with the AM2 RTD detached. Verify the base module boots and the LOGO! display shows no expansion error.
  2. Connect the AM2 RTD on the expansion bus. Confirm in LOGO!Soft Comfort online view that AQ3 and AQ4 appear in the I/O status list.
  3. Apply known temperature sources (ice-water slurry at 0 °C, boiling water at 100 °C) to each PT1000. Read AQ3/AQ4 values. Trim the amplifier offset in the AM2 configuration if the deviation exceeds 0.5 °C.
  4. Force I1 on in online test. Confirm Q1 energises within 100 ms and the burner lights.
  5. Force I1 off and verify Q1 drops, Q2 drops, and the on-delay B13 resets.
  6. Simulate the alarm condition: with I1 on, clamp T_ret to 20 °C using a calibration source. After 10 minutes Q2 must energise. The on-delay B13 must be the only gating element on the cold start.
  7. Apply the actual return temperature by running the loop. Verify M1 toggles at the expected set point ± hysteresis.
  8. Log the LOGO!Soft Comfort online trace for at least 30 minutes of normal operation; verify no fault, no spurious stage transitions.

10. Verification Checklist

Check Expected Method
T_ret scaling at 0 °C AQ3 ≈ 0 Ice bath
T_ret scaling at 50 °C AQ3 ≈ 500 Calibrated source
T_flow scaling at 50 °C AQ4 ≈ 500 Calibrated source
Stage 1 only at warm start Q1=1, Q2=0, T_ret > 50 °C Heat loop to 55 °C, energise I1
Stage 2 enabled after 10 min Q2=1, T_ret < 50 °C Clamp T_ret low, wait 10 min
ΔT detection M3 true when ΔT ≥ 15 °C Online monitor
Safety contact (I2) Both Q1 and Q2 drop when I2 opens Manual test
Minimum off-time No re-start for 3 min after shutdown Cycle thermostat

11. Troubleshooting Matrix

Symptom Likely Cause Action
AQ3 reads 0 with sensor connected Open or shorted PT1000 Measure resistance at AM2 terminal: 1000 Ω ± 4 Ω at 0 °C
AQ3 reads negative or out of range Sensor type misconfigured (PT100 vs PT1000) Reconfigure AM2 in LOGO!Soft Comfort to PT1000
Q1 never energises I1 not wired to 24 V reference, or I2 open Check I1 and I2 with multimeter; verify I/O status
Q2 energises immediately On-delay B13 disabled or short-circuited Check B13 trigger input; reset to 10:00
Q2 chatters on/off Hysteresis too small on B08, or no minimum off-time Raise hysteresis to 20, add 3 min off-delay (B22)
Q1 and Q2 both on for hours ΔT set point wrong, or T_ret sensor in dead leg Verify sensor location; check B10 threshold
No expansion detected AM2 not seated, bus terminator issue Power down, reseat AM2, restart
LOGO! display shows "No program" Program not transferred LOGO!Soft Comfort > PC → LOGO!, then run mode

12. Safety Considerations

Gas burners require independent flame supervision; the LOGO! must never be the sole safety interlock. The burner controller's own safety chain (air pressure, flame rod, gas valve proving) is authoritative. The LOGO! enable outputs (Q1, Q2) must be wired in series with the burner enable circuit so that a LOGO! fault cannot energise a burner unintentionally. A watchdog or fail-safe relay on Q1 and Q2 is recommended if the burner enable input is not galvanically isolated.

Verify that the LOGO! 0BA5 output relays are rated for the burner control voltage and current. On a 230 V AC base module, the relay contacts are typically rated 8 A resistive, which is generally adequate for low-current enable inputs only. Do not switch the gas valve directly from Q1/Q2 unless the contact rating has been confirmed against the valve coil inrush.

13. Practical Tuning Notes

  • Default 10 min delay is a good cold-start value. For well-insulated loops, reduce to 6 min; for sluggish emitters, extend to 15 min.
  • Set point 50 °C is appropriate for low-temperature underfloor loops. For radiator loops, raise to 60–65 °C.
  • Hysteresis on the disable threshold should be 2–3 °C, not less, to prevent contactor hunting.
  • ΔT threshold of 15 °C is conservative. Calibrate it to the actual ΔT observed at design load (typically 10–20 °C for residential heating loops).
  • Pump overrun: if the system pump is not controlled by the LOGO!, the 3 min minimum off-time protects the burner; if the pump is also LOGO!-controlled, extend the off-time to 5 min to dissipate loop heat.

Why does my LOGO! 0BA5 show "No program" after transfer?

The 0BA5 must be in STOP mode to receive a program. In LOGO!Soft Comfort select PC → LOGO!, place the base in STOP, transfer, then run. If "No program" persists, the cartridge may be loose or the password is locked; clear via Tools > Clear Password.

Is the flow sensor really required if the return sensor already drives the cascade?

A return-only cascade works for simple on/off staging. The flow sensor adds ΔT information that prevents short cycling when the loop is near steady state, and allows a true PI-based load share. For a two-stage installation the return sensor alone is sufficient, but the flow sensor is recommended for diagnostics.

What is the resolution of a PT1000 on the AM2 RTD?

The AM2 RTD linearises the PT1000 internally and presents a 10-bit value (0–1000) over the configured measurement range, giving approximately 0.1 °C resolution on a 0–100 °C span. Verify the exact specification in the AM2 RTD manual shipped with the 6ED1055-1MD00-0BA2 module.

Can the 0BA5 outputs switch a 230 V gas valve coil directly?

Only if the relay contact rating matches the coil inrush. The 0BA5 relay is typically 8 A resistive; solenoid coils often have inrush of 20–30 A. Use an interposing relay or contactor between Q1/Q2 and the gas valve.

How do I log the cascade behaviour for debugging?

Connect LOGO!Soft Comfort online, open the I/O status, and use the data log function to record AQ3, AQ4, Q1, Q2, M1, M2, M3 over time. Export to CSV and plot the stage transitions against T_ret to confirm the 10 min delay is honoured.

Back to blog