Skip to content
GRAFCET / SFC templates

GRAFCET — Commercial Dishwasher Cycle

A hood-type dishwasher whose wash tank and rinse booster heat in parallel under a double bar, with a convergence that will not start the wash until both are up to temperature, and an alternative divergence that sends a rinse below 82 C round a re-rinse loop rather than passing unsanitised ware.

Template previewGRAFCET / SFC
Commercial dishwasher — hood-type cycleSteps111 initial · 0 finalTransitions11every one conditionedDivergences1 AND · 1 ORsimultaneous · alternativeAlternationWell formedsteps and transitions alternate1Hood raised, machine idleNReady lamp onNDrain valve open2Fill wash tankRDrain valve openNFill solenoid open3Heat wash tank to 60 CNTank heater onNTank temperature PID4Heat rinse booster to 85 CNBooster heater onNBooster temperature PID5Wash tank at temperatureSWash ready lampNTank heater hold6Booster at temperatureSRinse ready lampNBooster heater hold7Wash sprayNWash pump runNDetergent dosing pumpL90sWash timer8Drain and dripRWash pump runNDrain pump runD4sDrip time9Sanitising rinseNRinse solenoid openNRinse aid dosingL12sRinse timer10Cycle complete, hood releasedRWash ready lampRRinse ready lampNCycle complete lamp11Re-rinse, sanitiser alarmPSanitiser alarm hornNBooster heater onhood_lowered . start_pressedtank_level_reachedtank_temp >= 60 Cbooster_temp >= 85 Cwash_ready . rinse_readywash_timer_donetank_drainedrinse_timer_done . rinse_temp >= 82 Crinse_timer_done . rinse_temp < 82 Chood_raisedbooster_temp >= 85 C . operator_ack11 steps · 11 transitions · 26 actions · 1 simultaneous · 1 alternative divergenceSteps and transitions alternate on all 24 links.Step 1 is the single initial step.1 simultaneous divergence is closed by a convergence of the same width.

Make it your own.

title "Commercial dishwasher — hood-type cycle"

step 1 "Hood raised, machine idle" initial
  N "Ready lamp on"
  N "Drain valve open"
step 2 "Fill wash tank"
  R "Drain valve open"
  N "Fill solenoid open"
step 3 "Heat wash tank to 60 C"
  N "Tank heater on"
  N "Tank temperature PID"
step 4 "Heat rinse booster to 85 C"
  N "Booster heater on"
  N "Booster temperature PID"
step 5 "Wash tank at temperature"
  S "Wash ready lamp"
  N "Tank heater hold"
step 6 "Booster at temperature"
  S "Rinse ready lamp"
  N "Booster heater hold"
step 7 "Wash spray"
  N "Wash pump run"
  N "Detergent dosing pump"
  L 90s "Wash timer"
step 8 "Drain and drip"
  R "Wash pump run"
  N "Drain pump run"
  D 4s "Drip time"
step 9 "Sanitising rinse"
  N "Rinse solenoid open"
  N "Rinse aid dosing"
  L 12s "Rinse timer"
step 10 "Cycle complete, hood released"
  R "Wash ready lamp"
  R "Rinse ready lamp"
  N "Cycle complete lamp"
step 11 "Re-rinse, sanitiser alarm"
  P "Sanitiser alarm horn"
  N "Booster heater on"

transition t1 : "hood_lowered . start_pressed"
transition t2 : "tank_level_reached"
transition t3 : "tank_temp >= 60 C"
transition t4 : "booster_temp >= 85 C"
transition t5 : "wash_ready . rinse_ready"
transition t6 : "wash_timer_done"
transition t7 : "tank_drained"
transition t8 : "rinse_timer_done . rinse_temp >= 82 C"
transition t9 : "rinse_timer_done . rinse_temp < 82 C"
transition t10 : "hood_raised"
transition t11 : "booster_temp >= 85 C . operator_ack"

1 -> t1 -> 2 -> t2

# Tank and booster heat independently and BOTH must be hot before the
# wash may start: SIMULTANEOUS, double bar, with a matching convergence.
simultaneous t2 -> 3, 4
3 -> t3 -> 5
4 -> t4 -> 6
simultaneous 5, 6 -> t5
t5 -> 7 -> t6 -> 8 -> t7 -> 9

# The sanitising rinse either reached 82 C or it did not: ALTERNATIVE,
# single bar. A cold rinse re-heats and rinses again rather than passing.
alternative 9 -> t8, t9
t8 -> 10
t9 -> 11
11 -> t11 -> 9

10 -> t10 -> 1