Basic
30 min

Boiler Startup Sequence

boilersafetysequencerflameHVAC
Boiler Startup Sequence scenario preview

Ready to build this?

Sign up free — no credit card required. This scenario requires the Basic plan.

Sign up to play this scenario →

Already have an account? Log in

Briefing

A gas-fired boiler uses a strict startup sequence to ensure safe ignition. The purge fan must run for 30s while PURGE_PRESSURE_OK is confirmed. Then a pilot valve opens and ignition energises for 5s — FLAME_SENSOR must confirm ignition within this window. If flame is confirmed, the main fuel valve opens and the pilot is closed. Loss of flame during run latches a fault. Low water also latches a fault.

Objectives

  • Start sequence: PURGE_FAN on for 30s with PURGE_PRESSURE_OK confirmed
  • After purge: PILOT_VALVE + IGNITION on for 5s — FLAME_SENSOR must assert
  • Flame confirmed: MAIN_FUEL_VALVE on, PILOT_VALVE off, IGNITION off, BURNER_ON_LAMP on
  • Loss of FLAME_SENSOR during run latches FAULT_LAMP and shuts fuel
  • WATER_LEVEL_OK must be true before and during run; loss latches FAULT_LAMP
  • ESTOP or STOP_PB at any time shuts all outputs and latches fault if mid-sequence

Hints

  • Steps: IDLE → PURGE (30s) → IGNITION (5s) → RUN → FAULT
  • Use TON timers; check PURGE_PRESSURE_OK during purge, FLAME_SENSOR during ignition window
  • FAULT_BIT: SET on flame loss, water loss, or ignition timeout; clear only via STOP_PB reset from IDLE
  • BURNER_ON_LAMP := in RUN step AND FLAME_SENSOR

I/O Table

Inputs

START_PB

Start push-button

BOOL · %I0.0

STOP_PB

Stop push-button

BOOL · %I0.1

ESTOP

Emergency stop (normally open)

BOOL · %I0.2

FLAME_SENSOR

Flame detector — high = flame present

BOOL · %I0.3

PURGE_PRESSURE_OK

Combustion air pressure switch

BOOL · %I0.4

WATER_LEVEL_OK

Boiler water level switch

BOOL · %I0.5

Outputs

PURGE_FAN

Combustion air purge fan

BOOL · %Q0.0

IGNITION

Spark igniter

BOOL · %Q0.1

MAIN_FUEL_VALVE

Main gas fuel valve

BOOL · %Q0.2

PILOT_VALVE

Pilot gas valve

BOOL · %Q0.3

BURNER_ON_LAMP

Burner on indicator lamp

BOOL · %Q0.4

FAULT_LAMP

Fault indicator lamp

BOOL · %Q0.5

Your program will be tested against:

All test cases run automatically when you submit. Assertions are hidden until you pass.

  1. #1Purge fan starts on START_PB with water OK

    START_PB while WATER_LEVEL_OK -> PURGE_FAN energises

  2. #2Ignition fires after 30s purge

    After 30s purge with pressure OK, PILOT_VALVE + IGNITION energise

  3. #3Flame confirmation opens main valve

    FLAME_SENSOR during ignition -> MAIN_FUEL_VALVE on, pilot off

  4. #4ESTOP shuts all outputs and latches fault

    ESTOP during run -> all outputs off, FAULT_LAMP on

Ready to build this?

Sign up free — no credit card required. This scenario requires the Basic plan.

Sign up to play this scenario →

Already have an account? Log in