The short answer
Sequences of Operation
A sequence of operation describes a system as an ordered set of steps, each with what happens in it, what condition moves to the next step, and what happens if that condition never comes. It is the part of the control narrative that is sequential, and it is written as numbered steps with explicit transitions so that the programmer builds the same state machine the tester checks. Startup, shutdown, backwash, and any batch process are sequences; continuous control is not.
Key points
- A sequence is a list of states. Each state says what is on, what is off, and what condition leaves it.
- Every transition has a condition, and every condition has a timeout with a defined response.
- Write what the equipment does, not how the logic does it; the programmer chooses the implementation.
- A sequence that cannot be drawn as a diagram of boxes and arrows is not a sequence yet.
- Abnormal exits, stop, fault, and power loss, are steps too, and they are the ones that get left out.
What is sequential and what is not
A pressure loop holding a setpoint is continuous: it does the same thing every scan, and describing it is a matter of stating the loop, the setpoint, and the limits. Starting a plant is sequential: the intake valve opens, then the pump starts when the valve is proven open, then the discharge valve opens when pressure is established, then the chemical feed starts when flow is confirmed, and each step waits for the one before. Filter backwash, lift station pump-down with a flush cycle, generator transfer, and any process that goes through phases are sequences. The narrative describes both; the sequence of operation is the form the sequential parts take.
The form
A sequence is written as numbered steps, and every step has the same four parts.
- The step name and number
- A short name the HMI can display and the program can use as a state name: Step 3, Establish Flow.
- What is commanded in the step
- Every output that changes on entering the step, and the state of everything else, stated so that nothing is assumed.
- The transition condition
- The condition that moves to the next step: flow above 100 gpm for 10 seconds; valve open limit switch made; timer expired. Measurable, with tags and values.
- The timeout and its response
- How long the step waits for the transition before something else happens, and what that something is: alarm and hold, alarm and abort to a safe step, or retry.
| Step | Actions | Transition | Timeout |
|---|---|---|---|
| 1 Ready | All outputs off. Suction valve open limit made. | Start command in Auto and permissives satisfied | None; the sequence waits here |
| 2 Open discharge valve | Command discharge valve to open | Discharge valve open limit switch made | 30 s: alarm Valve Failed To Open, go to step 9 |
| 3 Start pump | Start pump at minimum speed | Run feedback within 5 s and discharge pressure above 10 psi within 20 s | 20 s: alarm Pump Failed To Start, go to step 9 |
| 4 Ramp | Release speed to the pressure controller | Pressure within 5 psi of setpoint | 120 s: alarm Failed To Reach Pressure, continue to step 5 |
| 5 Run | Pressure control active | Stop command, or a trip condition | None |
| 6 Stop | Ramp pump to minimum speed | Speed at minimum | 30 s: continue |
| 7 Close valve | Stop pump; command discharge valve to close | Discharge valve closed limit made | 30 s: alarm Valve Failed To Close, continue |
| 8 Complete | Return to step 1 | Immediate | None |
| 9 Abort | Stop pump; close discharge valve; hold | Operator reset | None; the sequence waits for a person |
The rules
- One step at a time. If two things can happen in parallel, they are two sequences, or the step commands both and waits for both.
- Every transition is a measurable condition with a value and, where it matters, a duration. Not "when the pump is running" but "run feedback made for 5 seconds".
- Every wait has a timeout. A step that waits forever for a limit switch that never makes is a plant that hangs quietly.
- The abnormal exits are steps. Stop, emergency stop, trip, loss of communication, loss of power, and operator abort each land in a defined step with defined actions.
- Steps command outputs; they do not describe rungs. "Start the pump" is the sequence; how the start is implemented is the program.
- The step number is displayed on the HMI. An operator who can see "Step 3, waiting for discharge pressure" can help; one who sees "Starting" cannot.
Power loss and restart
The step the sequence was in when power failed is not the step it should resume in. The equipment has moved, the timers have not been counting, and the conditions that were true are not. A sequence defines where it goes on power-up, usually to the ready step or the abort step, and whether it restarts automatically or waits for a person. That decision belongs in the sequence, and it is tested at FAT by removing power in every step.
Relation to the other documents
The control narrative holds the sequence, or refers to it, and adds the modes, the interlocks, and the alarms around it. The cause and effect matrix tabulates the trip conditions that force the abort step. The FAT procedure walks the sequence step by step, with each transition forced and each timeout allowed to expire. The program implements it as a state machine, and the HMI shows the step. When any of those disagree, the sequence document is normally the one they are reconciled to.
Frequently asked questions
- What is the difference between a sequence of operation and a control narrative?
- The sequence is the ordered, step-by-step part: first this, then that, with the conditions between. The narrative is the whole description, including the sequence and also the modes, interlocks, alarms, and failure handling that are not sequential. On small systems the terms are used interchangeably.
- How detailed should the steps be?
- Detailed enough that two programmers working independently would build systems that behave identically, and that a tester can force every transition and expire every timeout. Tags, values, and durations on every transition.
- Do I need a timeout on every step?
- On every step that waits for something to happen, yes, with a stated response. Steps that wait for a command from a person can wait indefinitely, and the document says so.
- How does a sequence become a program?
- As a state machine: one active step at a time, each step setting its outputs, and transitions moving between them. A sequential function chart implements it directly; ladder does it with a step bit or a step number and the transitions as rungs. The state machines page covers the pattern.
Related topics
- Control NarrativesWhat a control narrative is, what it must contain, how to write statements that can be tested, and how it drives programming, FAT, and the owner’s acceptance.
- Cause and Effect MatricesThe table that lists every trip condition against every action it causes: how to build one, what goes in the cells, how it distinguishes hardwired from software protection, and how it becomes the test.
- 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.
- Sequential Function ChartThe IEC 61131-3 language for sequences: steps, transitions, actions and their qualifiers, alternative and simultaneous branches, where it fits in water and wastewater, and the rules that keep a chart from sticking in a step.
- Factory Acceptance TestingTesting a control system before it leaves the shop: what must exist before the test, how the procedure is built from the narrative and the matrix, how the field is simulated, what is witnessed, and what the punch list and the sign-off mean.
- Functional DescriptionsThe system-level document that states what a control system does, organized from the overview down to each piece of equipment in one format: modes, control, setpoints, permissives, interlocks, alarms, sequences, and failure behavior, and how it is used.
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.