Basic
35 min

Brew Schedule Sequencer

brewingsequencingtemperatureprocess-controlmulti-phase
Brew Schedule Sequencer 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 4-phase brewing sequence controller. Phases: (1) Mash — heat to ~65°C for 60s, (2) Boil — heat to ~100°C for 45s, (3) Whirlpool — run pump for 20s, (4) Transfer — open valve for 15s. Each phase confirms readiness via temperature/flow feedback before timing out. Grain bin empty before mash start latches a pre-run fault.

Objectives

  • Grain bin must NOT be empty (GRAIN_BIN_EMPTY = FALSE) before mash phase starts
  • Phase 1 — Mash: MASH_HEATER on; MASH_TEMP_OK required within phase duration (60s)
  • Phase 2 — Boil: BOIL_HEATER on; BOIL_TEMP_OK required within phase duration (45s)
  • Phase 3 — Whirlpool: WHIRLPOOL_PUMP on for 20s
  • Phase 4 — Transfer: TRANSFER_VALVE on for 15s; FLOW_OK must assert
  • CYCLE_COMPLETE_LAMP pulses when transfer is done; GRAIN_BIN_EMPTY latches fault before mash

Hints

  • Use a PHASE INT (0=IDLE, 1=MASH, 2=BOIL, 3=WHIRLPOOL, 4=TRANSFER, 5=DONE)
  • Each phase has a TON timer; advance on timer expiry AND feedback condition met
  • GRAIN_BIN_EMPTY check: S= FAULT_BIT when GRAIN_BIN_EMPTY at mash start attempt
  • For testing, phase durations are compressed (mash=6s, boil=4.5s, whirlpool=2s, transfer=1.5s)

I/O Table

Inputs

START_PB

Start push-button

BOOL · %I0.0

STOP_PB

Stop / abort push-button

BOOL · %I0.1

MASH_TEMP_OK

Mash temperature at setpoint

BOOL · %I0.2

BOIL_TEMP_OK

Boil temperature at setpoint

BOOL · %I0.3

FLOW_OK

Flow sensor OK during transfer

BOOL · %I0.4

GRAIN_BIN_EMPTY

Grain bin empty sensor

BOOL · %I0.5

Outputs

MASH_HEATER

Mash vessel heater

BOOL · %Q0.0

BOIL_HEATER

Boil kettle heater

BOOL · %Q0.1

WHIRLPOOL_PUMP

Whirlpool pump

BOOL · %Q0.2

TRANSFER_VALVE

Transfer valve

BOOL · %Q0.3

CYCLE_COMPLETE_LAMP

Brew cycle complete lamp

BOOL · %Q0.4

Your program will be tested against:

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

  1. #1GRAIN_BIN_EMPTY blocks mash start

    If grain bin is empty when START_PB pressed, fault latches and mash does not start

  2. #2MASH_HEATER on during mash phase

    After a valid start, MASH_HEATER asserts during phase 1

  3. #3Full 4-phase brew cycle completes

    Physics provides all feedback signals; CYCLE_COMPLETE_LAMP asserts at end

  4. #4STOP_PB aborts cycle mid-phase

    Pressing STOP_PB during any phase halts all outputs

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