The short answer
Sequential Function Chart
A sequential function chart describes a process as a series of steps connected by transitions: a step is active, its actions run, and when the transition condition below it becomes true the step deactivates and the next one activates. The chart is the natural language for anything that happens in order, such as a filter backwash, a membrane clean-in-place, a chemical batch, or a plant startup, because the chart on the screen is the sequence of operations from the narrative, and the operator can see which step the plant is in. The discipline that makes it reliable is the same as for any state machine: every step has an exit, a timeout, and an abort path; the chart starts in a known step on power-up or after a fault; and manual intervention takes the chart to a defined step rather than leaving it stranded.
Key points
- Steps hold actions; transitions hold conditions; exactly one path is active in a simple chart.
- Action qualifiers say when the action runs: non-stored, set, reset, pulse, delayed, and time limited.
- Alternative branches choose one path; simultaneous branches run several and rejoin.
- Every step needs a timeout and an abort transition, and the chart needs a defined restart step.
- Use it for backwash, clean-in-place, batching, and startup sequences; keep continuous control in ladder or function blocks.
The elements
- Initial step
- The step active on first scan or after a reset; drawn with a double border. Usually an idle or ready state.
- Step
- A state of the sequence. It is active or not, has a step timer, and carries actions.
- Transition
- A boolean condition between two steps. When the step above is active and the condition is true, the step above deactivates and the step below activates on the next scan.
- Action
- Something done while the step is active, with a qualifier that says how: energize an output, set a value, call a routine.
- Alternative branch
- Several transitions under one step; the first true one is taken. Used for choices: pass or fail, manual or auto.
- Simultaneous branch
- Several steps activated together from one transition and rejoined by one transition that waits for all of them. Used for parallel activities.
- Jump
- A return to an earlier step, for loops and restarts.
| Qualifier | Name | Behavior |
|---|---|---|
| N | Non-stored | Active while the step is active; the usual choice |
| S | Set | Turned on when the step activates and stays on until reset by an R action elsewhere |
| R | Reset | Turns off an action that was set |
| P | Pulse | Executes once when the step activates |
| D | Delayed | Starts after a delay from step activation, if the step is still active |
| L | Limited | Active for a limited time from step activation |
| P1, P0 | Rising and falling pulse | Once on activation, once on deactivation |
Where it fits
| Sequence | Why a chart | Typical steps |
|---|---|---|
| Filter backwash | Fixed order, timed steps, air and water phases, operator visibility | Drain, air scour, air and water, water wash, filter to waste, return to service |
| Membrane clean-in-place | Chemical phases with temperatures and soaks | Flush, heat, chemical recirculation, soak, rinse, neutralize |
| Chemical batching | Fill, mix, transfer in order with volumes | Charge water, charge chemical, mix, transfer, clean |
| Plant startup | Permissives checked in order, equipment started in sequence | Check permissives, open valves, start pumps, ramp, confirm flows |
| Generator test | Timed transfer and retransfer | Start, warm, transfer, run, retransfer, cool, stop |
Continuous control does not belong in a chart: level control, PID, and lead and lag pumping run every scan whether or not any sequence is active, and they live in ladder or function blocks. A chart that tries to control a level with steps becomes a state machine with hundreds of transitions. Use the chart for what happens in order and the other languages for what happens all the time.
Design rules
- 1
A defined start
The initial step is idle. Power-up, a processor fault recovery, and an operator reset all return to it, and the actions it runs put the equipment in a safe state.
- 2
An exit from every step
A transition that will become true when the step has done its work, and a timeout transition in parallel that takes the chart to a fault or hold step if it does not. A step with no timeout is where the chart will sit for a week.
- 3
An abort path
An emergency stop, a critical alarm, or an operator abort takes the chart from any step to a defined abort step, which shuts things down in the right order and then returns to idle.
- 4
Hold and resume
A hold step that pauses the sequence with equipment in a safe state, and a resume that returns to the held step, for interruptions such as a low chemical level.
- 5
Manual mode
When an operator takes a device to manual during a sequence, the chart either holds or is told, and the step it returns to is defined.
- 6
Step time on the screen
The active step, the time in it, and the transition it is waiting for are displayed. An operator who can see what the chart is waiting for can fix it.
- 7
Retentive state
Decide what the chart does after a power loss mid-sequence: restart from idle, or resume the held step after operator confirmation. Store the step if resuming.
Vendor implementations
The chart language exists in every major platform under its own name and with its own details. Schneider Control Expert calls it SFC or Grafcet and supports the full qualifier set; Rockwell Studio 5000 provides SFC routines with actions written in structured text; Siemens provides S7-GRAPH as a separate option. Smaller platforms often lack it, and there the same design is built as a state machine in ladder with a step register, which is the same discipline in a different notation. The chart is documented against the sequence of operations in the control narrative, with each step and transition named the same in both.
Frequently asked questions
- Ladder state machine or a chart?
- A chart when the platform supports it and the sequence has more than a handful of steps or any branching; the chart is self-documenting and the step is visible. A ladder state machine with a step register when the platform lacks charts or the maintenance staff will not touch anything else. Both need the same exits, timeouts, and aborts.
- Can two charts run at once?
- Yes, and each should own its own equipment. Two charts that command the same valve will fight. A simultaneous branch inside one chart is the way to run parallel phases of one sequence; separate charts are for separate processes.
- What happens on a download or an online edit?
- Platform dependent, and dangerous. A chart may reset to its initial step or keep its active step. Plan edits for an idle sequence, and test what the platform does before relying on it.
- How do I test a chart before startup?
- With the transitions forced or simulated one at a time, watching the actions, then with timeouts shortened, then with each abort input. A chart that has never been aborted in testing will be aborted for the first time on a bad night.
Related topics
- State Machines in PLC ProgramsWriting sequences as explicit states instead of tangled interlock chains: what a state is, how transitions are written, the pattern in structured text and in ladder, publishing the state to the HMI, and the failure handling every state machine needs.
- SequencersStep-based control for operations that always run in the same order: backwash, pump and valve startup, batch makeup, membrane cleans. What every step needs, three ways to implement one, handling faults and power loss mid-sequence, and what the HMI shows.
- IEC 61131-3The standard behind PLC programming languages: the five languages, the common elements of data types, variables, and program organization units, what conformance actually means, and how the standard shows up in real platforms.
- Structured TextThe text language of IEC 61131-3: syntax, control structures, how it fits alongside ladder, the conventions that keep it readable for the next person, and the mistakes that make structured text a liability in a plant that troubleshoots online.
- Sequences of OperationWriting the ordered, step-by-step description of what a system does: states, transitions, timeouts, and the format that lets a programmer implement it and a tester verify it without interpretation.
- PermissivesThe conditions that must be true before a device may start: how permissives differ from interlocks and trips, the list a pump or feeder usually needs, coding them so the HMI can say why a start was refused, and the rules for time delays and bypasses.
Direct contact
Have a controls question?
Reach Eric Sullivan directly about anything on this site, a controls or automation topic, or one of his personal projects.