Purpose
PLC Pro Sequencing provides a consistent method for organizing automatic operation into structured PLC Pro Sequences. Each sequence divides assigned work into an ordered progression whose conditions, actions, completion, and reset can be clearly understood.
Using the same defined structure for every PLC Pro Sequence makes complex machine behavior more predictable and repeatable while giving operators, maintenance personnel, and future PLC Pros a familiar structure for understanding, troubleshooting, modifying, and supporting the installation throughout its service life.
The PLC Pro Sequencing Framework
Every PLC Pro Sequence is built using a consistent, deterministic workflow. This structure ensures that logic is predictable, transitions are explicit, and operators and maintenance personnel can readily understand what the machine is doing and why. For each automatic sequence in the program, a PLC Pro will:
OK to Continue
OK to Continue determines whether a PLC Pro Sequence is permitted to start or advance. When OK to Continue is FALSE, normal sequence progression is held in its current state.
The conditions used to establish OK to Continue are defined for the particular sequence and installation. For virtually all PLC Pro Sequences, Auto Mode is one of those conditions, with additional permissive conditions included as required.
OK to Start
OK to Start verifies that a PLC Pro Sequence is in a valid state to start or restart. This includes verifying that OK to Advance is FALSE and that the equipment is in the required state for sequence progression to begin or resume.
OK to Start is always conditioned by a timer so that its required starting conditions must remain satisfied for a defined period before the sequence is permitted to start.
Conditions required only to establish a valid starting state belong in OK to Start. Conditions that must remain satisfied after the sequence begins belong in OK to Continue, even when they are also required at startup. Conflicts with other sequences or machine operations are handled by NoConflict.
NoConflict
NoConflict determines whether a PLC Pro Sequence may start without conflicting with another sequence, equipment-level function, or other machine operation. If a required resource, device, or operating area is already committed to a conflicting operation, NoConflict remains FALSE and prevents the sequence from starting.
Trigger
The sequence Trigger identifies the request, event, or condition that calls for the sequence to start or resume progression. It may come from an operator command, a sensor or machine condition, a handshake from another sequence, or another appropriate part of the control program.
The Trigger does not, by itself, authorize sequence progression. It expresses the request to start or resume, while OK to Continue, OK to Start, and NoConflict determine whether that request can be acted upon.
When an interruption requires renewed authorization before sequence progression may resume, the Trigger process is repeated before OK to Advance is reestablished.
Sequence Active
Sequence Active indicates that the sequence has started and has not yet been reset. It provides a stable sequence-state indication for operators, maintenance personnel, and other program logic, even when normal sequence progression is temporarily interrupted.
Sequence Active is always programmed in the same way: if OK to Continue, OK to Start, NoConflict, and the Trigger are TRUE, and OK to Advance is FALSE, then latch Sequence Active and OK to Advance.
Sequence Active is written as latched logic and remains TRUE until Sequence Reset. An interruption does not clear the Sequence Active state.
The Sequence Active bit may also be used in the NoConflict logic of other PLC Pro Sequences. When sequences can conflict, the Sequence Active state, alone or together with Sequence Step information, can identify when that conflict exists.
OK to Advance
OK to Advance permits Sequence Step(s) to be set as their required conditions are satisfied. When OK to Advance is FALSE, sequence step progression stops.
OK to Advance is initially set when the sequence starts, using the same OK to Continue, OK to Start, No Conflict, and Trigger conditions used to establish Sequence Active.
OK to Advance is written as latched logic. Where renewed operator intent is required before an interrupted sequence may resume, loss of OK to Continue resets OK to Advance. Where renewed operator intent is not required, OK to Advance remains set through the interruption.
When OK to Advance has been reset because renewed operator intent is required, restoring OK to Continue does not restore step progression. The required operator action must again be provided before OK to Advance is restored.
OK to Advance is used as a common condition in each Sequence Step rung. A step can be set only while OK to Advance is TRUE and that step's other required conditions are satisfied.
OK to Advance is always reset when the sequence is reset.
Sequence Step(s)
Sequence Step(s) are latched state markers that represent progression through the sequence. Once established, a Sequence Step remains set through both normal sequence operation and sequence interruptions. In most circumstances, Sequence Step(s) are reset only by Sequence Reset.
The first Sequence Step is different from the steps that follow. It is set when OK to Continue and OK to Advance are TRUE, and Step 1 has not already been set. It does not require a previous step to be complete because there is no previous step. Once Step 1 is set, that step bit establishes the first active interval in the sequence and can be used later in the Link Sequence to Outputs section to assert any output commands required during that interval.
The logic for each of the subsequent steps in the sequence is similar, but also includes conditions to check that the previous step has completed. For example: if OK to Continue and OK to Advance are TRUE, the first Sequence Step bit is TRUE, the first step has completed (limit switch made, prox detection, timer timed out, etc.), and the second step bit is not TRUE, then latch the second step bit. This way, each step in the sequence explicitly waits for the previous step to complete before it advances, ensuring a deterministic flow throughout the sequence.
If any step fails to complete, then the sequence will not advance. Further on in the discussion, we will discuss PLC Pro techniques (HMI) to make clear to operators why a sequence is hung, allowing for quick resolution of most issues. But the key point is that if the condition(s) for completing the current step is or are not met, then the sequence will not advance, even if all other conditions are true.
Normal Done
The last step of the sequence is always the Normal Done bit. The Normal Done TRUE state is used as a signal to issue any handshakes to other sequences or elements of the program (rate counters, etc.) and then reset the sequence.
Handshakes are also a key feature of PLC Pro Sequencing. These allow complex builds with variables to be coded as a group of PLC Pro Sequences, where the completion of one sequence might argue for the start of the next. Like a step, handshake bits are typically latched and are unlatched only on use or on a specific command from the operator through HMI.
The logic for the Normal Done step is similar to all of the other steps: if OK to Continue and OK to Advance are TRUE, the last step has completed, and the Normal Done bit is FALSE, then latch the Normal Done bit.
Immediately following the Normal Done programming, the next rung will detail the conditions for triggering a sequence reset.
Reset Conditions
In this rung, all conditions for sequence reset are programmed. This will first include Normal Done. This may be the only condition that seems indicated at first, but there may be several others. Should we reset on E-Stop, or just wait for the E-Stop reset? What about loss of OK to Continue? Should we program in a manual reset for the operator? There may be multiple reasons for reset, but Normal Done is always among them. Alternate reset conditions are typically programmed as parallel branches and are not necessarily conditioned by OK to Continue, allowing the sequence to be reset intentionally even when the conditions required for normal operation are no longer satisfied.
The logic for the Reset command is somewhat different. A reset normally has no purpose if the Sequence Active bit is FALSE. Likewise, an operator request to reset should be accepted only under deliberately defined conditions. For example, should a manual sequence reset be permitted in Auto Mode, or only in Manual Mode? Each alternate reset path should be considered in terms of when it is appropriate and what machine state will remain after the reset.
Immediately following the Normal Done programming, the next rung will detail the conditions for triggering a sequence reset. This may include several parallel conditions, but always starts with a branch that reads: "if it is OK to Continue, and the Sequence Active bit is TRUE, and the Normal Done bit is TRUE, then assert (OUT - no latch) the Sequence Reset bit. The key point is that the reset is triggered by the Normal Done bit, ensuring that the sequence resets immediately after it completes.
In any case, the Sequence Reset bit is never latched. It is programmed as a non-retentive output instruction, such as an OTE.
Sequence Taking Too Long
In this rung, a sequence timer runs whenever Sequence Active is TRUE. If the sequence remains active beyond the timer preset, the Too Long bit becomes TRUE.
The Too Long bit indicates that the active sequence has exceeded its expected duration. Paired with the current Sequence Step description, it provides a useful indication of where to begin troubleshooting.
The Too Long timer is also a ready source of sequence cycle-time information.
Link Sequence to Outputs
We place the Link Sequence to Outputs logic for each PLC Pro Sequence after Sequence Taking Too Long and before the actual Sequence Reset logic.
This consistent location also gives maintenance personnel a predictable place to find the machine-function calls associated with the sequence.
Sequence-specific machine-function calls are driven by established Sequence Step progression. A call may be associated with a single step, maintained through several steps, removed by a later step, or established again elsewhere in the sequence.
Some sequence-specific machine-function calls are latched rather than continuously driven. How and when those calls are reset is deliberately defined for the machine function. That reset may, but does not necessarily, coincide with Sequence Reset.
In Link Sequence to Outputs, an output normally means a sequence-specific internal machine-function call rather than a physical output point. Those calls are routed through the equipment-level logic and later mapped to the appropriate physical outputs.
Sequence Reset
The final section of each PLC Pro Sequence's programming is the Sequence Reset section.
When Sequence Reset is TRUE, this section resets the PLC Pro Sequence.