Bridges: Sprints 4 (SFC), 5 (timers), 6 (safety) β and is directly applicable to real-world burner management systems and kedelpasser-style industrial training.
Design and document a complete start-up sequence for a small industrial gas-fired boiler. Your deliverable is a portfolio piece: SFC + structured text + safety logic + documentation.
This is the kind of project a control engineer might present in a job interview. Take your time.
A natural-gas-fired steam boiler with the following components:
Inputs (sensors):
PB_Start β Start push button (NO)PB_Stop β Stop push button (NC, fail-safe)PB_EStop β Emergency stop (NC, dual-channel)PSL_Gas β Low gas pressure switch (NO when adequate)PSH_Gas β High gas pressure switch (NC)LSL_Water β Low water level switch (NO when adequate)LSH_Water β High water level switch (NC)FT_Air β Forced-draft fan running feedbackFS_Flame β Flame detection (UV scanner, NO when flame present)PT_Steam β Steam pressure transducer (4β20 mA, 0β10 bar)TT_Stack β Stack temperature (4β20 mA, 0β500 Β°C)Outputs (actuators):
Y_Fan β Forced-draft fan contactorY_Pilot β Pilot gas valveY_Main β Main gas valveY_Igniter β Spark igniterY_Alarm β General alarm hornHMI_Status β Status word to HMIflowchart TD
S0[Step 0: STANDBY] -->|PB_Start β§ permissives OK| S1
S1[Step 1: PURGE<br/>Run fan for 30s<br/>at full speed] -->|T#30s elapsed β§ FT_Air β| S2
S2[Step 2: PILOT TRIAL<br/>Open Y_Pilot<br/>Energize Y_Igniter<br/>10s window] -->|FS_Flame β within 10s| S3
S2 -->|10s timeout β§ no flame| F1
S3[Step 3: MAIN IGNITION<br/>Open Y_Main<br/>Igniter off after 5s] -->|FS_Flame β stable 5s| S4
S3 -->|FS_Flame lost| F1
S4[Step 4: RUN<br/>Modulate to setpoint<br/>Monitor all permissives] -->|PB_Stop| S5
S4 -->|Any permissive fault| F1
S5[Step 5: POST-PURGE<br/>Close gas valves<br/>Fan runs 60s] -->|T#60s elapsed| S0
F1[FAULT<br/>Close all valves<br/>Hold fan<br/>Sound alarm<br/>Lock out] -->|Manual reset β§ fault cleared| S0
style S0 fill:#94a3b8,color:#fff
style S1 fill:#3b82f6,color:#fff
style S2 fill:#f59e0b,color:#fff
style S3 fill:#f59e0b,color:#fff
style S4 fill:#22c55e,color:#fff
style S5 fill:#3b82f6,color:#fff
style F1 fill:#ef4444,color:#fff
/capstone/ folder of the PR)README.md β system description, sequence of operations, assumptionsio-list.csv β every tag, type, address, fail-safe statesfc-diagram.png, .svg, or a Mermaid source β the SFC drawn outmain.st β the SFC + actions in Structured Textsafety.st β separate safety POU (would normally run on a safety PLC)fmea.md β at least 10 entries with severity / likelihood / detectability scoringtest-plan.md β how youβd FAT and SAT this systemreflection.md β what was hardest, what surprised you, what would change in real life| Criterion | Weight |
|---|---|
| Sequence correctness β all steps and transitions covered | 20% |
| Safety logic β fail-safe behavior on every fault | 25% |
| Code clarity β comments, naming, structure | 15% |
| FMEA β coverage and quality of mitigations | 15% |
| Documentation β could maintenance read it? | 15% |
| Reflection β honest, specific, useful | 10% |
This capstone is illustrative. A real installation requires a certified burner management system from a vendor like Honeywell, Siemens LMV, or Fireye β never a custom PLC program in the safety path.