learn · South Africa
Alarm Priority Design: Deadband, Delay and Event Analysis
Learn alarm priority design with a fictional decision matrix, event-count analysis and tested deadband logic, plus South African PLC training questions.

Alarm priority design starts with the response an alarm is intended to support. A colour, severity number or position in a list is an implementation detail until somebody can explain the abnormal situation, its consequence, the required response and the time available for that response.
This tutorial uses a fictional priority matrix, a synthetic event log and a small virtual signal-conditioning model. They help South African PLC and SCADA learners practise the reasoning without presenting invented factory results or universal process settings. None of the example thresholds, priorities or time delays is a recommendation for a physical plant.
The aim is a reviewable record: why a notification exists, why it has its assigned priority, how the implementation behaves and what evidence would justify a change. Reducing a count is only useful if the resulting system still presents the information people need.
Separate alarm purpose from notification appearance
Start each proposed alarm with a sentence describing the condition and the action it is intended to prompt. If you cannot identify an action and its timing, record that gap for review. Do not solve an incomplete requirement by choosing a louder sound or a higher priority.
An operator message, a maintenance diagnostic, a batch prompt and an alarm may all appear on one screen while serving different purposes. Decide what each record is for before combining them in one metric. A count of every screen notification is not automatically a count of alarm activations.
The ISA overview of alarm-management questions explains rationalisation in terms of alarm attributes, consequences, response time and operator action. It also treats alarm management as continuing work, rather than merely installing software. That is useful context for the learning records below; this page does not reproduce a standard or certify compliance with one.
Keep the SCADA training guide alongside the exercise when comparing courses. Ask whether a lesson teaches the reason for an alarm, its PLC or HMI implementation, its presentation, or the review of historical events. These are related skills with different evidence of learning.
Create a rationalisation record before assigning priority
Use one record per defined alarm condition, with a stable identifier that remains meaningful when its display wording changes. Several conditions can come from one instrument, so the instrument tag alone may not identify the individual alarm unambiguously.
| Field | What the learning record should contain |
|---|---|
| Identifier and condition | The specific abnormal indication being considered |
| Operating context | The modes or circumstances in which it is relevant |
| Consequence | What could follow if the required response is absent |
| Response and timing | The action being requested and the basis for its urgency |
| Evidence and uncertainty | Sources, assumptions and unresolved questions |
| Priority decision | The approved rule applied to that evidence |
| Detection details | Threshold direction, boundaries, delay and data-quality treatment |
| Review history | Who reviewed the record, what changed and why |
For a classroom worksheet, an unresolved consequence can remain “not yet established”. That is more honest than inventing a severe consequence so the form looks complete. Mark the priority decision pending and identify the information required to resolve it.
Do not turn a pending design record into a runtime rule that silently suppresses an existing alarm. Design review status and live presentation behaviour are separate decisions. This tutorial provides a way to evaluate a proposal; it does not authorise changing an operating system.
A course assessment can give the learner two incomplete records and ask which missing facts would affect priority. This tests the reasoning behind the number. Merely asking a student to enter Priority = 1 in a tag does not establish that the priority is justified.

Practise a fictional priority matrix without treating it as a standard
For this exercise only, label consequence categories C1, C2 and C3 in increasing order. Label response urgency U1, U2 and U3 in increasing order. These are abstract categories supplied with a classroom problem, not measured physical consequences or approved response times.
Priority 1 sorts before Priority 2, which sorts before Priority 3. Use this deliberately simple matrix to practise consistent lookup and handling of incomplete inputs:
| Supplied consequence | U1 | U2 | U3 |
|---|---|---|---|
| C1 | 3 | 3 | 2 |
| C2 | 3 | 2 | 1 |
| C3 | 2 | 1 | 1 |
Every combination has one result. A missing or unrecognised category produces “review pending”, not an automatic low priority. The nine-cell matrix also has a useful internal property: moving to a higher consequence or urgency never makes the resulting priority less urgent.
Now classify six fictional records. A is C3/U3 and receives Priority 1. B is C2/U2 and receives Priority 2. C is C1/U3 and receives Priority 2. D is C1/U1 and receives Priority 3. E is C2/U1 and receives Priority 3. F is C3/U2 and receives Priority 1.
That produces two records in each priority, or one third of the six-record inventory per category. It is the result of this supplied exercise data. Changing individual decisions merely to obtain a preferred percentage would disconnect those decisions from the matrix.
A distribution can prompt questions about how the rules were applied, but it cannot answer every question about an individual alarm. Equally, this fictional matrix does not become suitable for a site because its results look tidy. A real philosophy needs its own justified categories, decision criteria and review process.
Keep priority, first-out order and alarm state independent
Priority expresses the assigned urgency of response under the chosen philosophy. First-out records which indication or group the system observed first in an episode. Acknowledgement records a separate interaction. None of those values should be inferred solely from the other two.
An early low-priority event can precede a later high-priority event. Sorting the later event to the top of the list does not make it the first event. Acknowledging either event does not establish that its condition has returned to normal or that its underlying cause has been corrected.
Use the first-out annunciator exercise to practise this separation. It preserves simultaneous first observations and documents a selection rule. It also distinguishes an active acknowledged condition from a returned but unacknowledged event.
For a mock display, retain the priority field, current condition, acknowledgement state and event time as distinct values. Explain your sort order in the test plan. For example, sorting by priority and then timestamp is a display rule; it does not alter the stored event chronology.
Do not label an alarm “SIL-rated” because it is Priority 1. A display priority number is not evidence of a safety integrity assessment. This lesson assigns classroom categories and makes no claim about a protective function or its reliability.

Calculate alarm frequency from an explicit synthetic dataset
Consider a fictional one-hour log containing 600 activation events across six alarm identifiers. Count only transitions into the reported alarm condition for this example. Exclude acknowledgements, returns to normal and display refreshes from the activation total.
| Identifier | Activations in the hour | Share of total |
|---|---|---|
| A | 240 | 40% |
| B | 160 | 26.67% |
| C | 80 | 13.33% |
| D | 60 | 10% |
| E | 40 | 6.67% |
| F | 20 | 3.33% |
The two largest contributors account for 400 of 600 events, or approximately 66.67%. The three largest account for 480 events, or 80%. That is an arithmetic property of this invented dataset, not a claim that a fixed percentage of sources always causes a fixed percentage of plant alarms.
The average rate is 600 activations per hour, equivalent to ten per minute across the whole hour. That average alone says little about short bursts. If six consecutive ten-minute buckets contain 10, 20, 25, 35, 110 and 400 activations, they still sum to 600; the busiest bucket contains two thirds of the hour's events.
A count table identifies where to investigate. It does not show whether A is chattering, repeatedly detecting a real problem, receiving duplicate messages or being counted incorrectly. Inspect event timing, operating context and data provenance before proposing a change.
Keep priority inventory and activation frequency separate. Two Priority 1 records out of six is an inventory statistic. Four hundred events from two identifiers is an event-frequency statistic. Combining them without checking which records they refer to creates a misleading conclusion.
Compare observation windows before claiming improvement
Create a second fictional one-hour dataset with counts A = 60, B = 40, C = 80, D = 60, E = 40 and F = 20. Its total is 300. Relative to the first dataset, the count is lower by 300 events, or 50%.
That calculation does not establish why the number changed. The second hour might contain different operating modes, less production, a collection failure or a genuine reduction in repeat activations. A before-and-after chart needs those questions answered before supporting a performance claim.
Compare exposure as well as totals. If the second dataset covered only thirty minutes, 300 events would still correspond to 600 per hour. If one dataset excludes a startup period and the other includes it, label that difference instead of presenting the comparison as equivalent.
A useful learning report states the observation duration, included event types, identifiers, operating modes and missing-data intervals. It separates “the count changed” from “this intervention caused the change”. The maintenance-manager training guide gives a broader context for evaluating evidence and training outcomes.
Do not promise a particular reduction from adding deadband or delay. Those mechanisms change detection behaviour. Whether a change improves an alarm system depends on the requirement and on what the changed behaviour permits or hides.

Define a virtual high-alarm detector with exact boundaries
The next exercise uses a supplied numeric value on a fictional zero-to-one-hundred scale. It has no assigned physical unit. Choose a high threshold of 90 and a return threshold of 85 solely to make the boundary cases easy to inspect.
For valid input, set HighMemory true when the value is at least 90. Clear it when the value is at most 85. Between those thresholds, retain its previous value. At initialisation HighMemory is false.
Feed HighMemory into a three-second qualification timer. On the first evaluation with HighMemory true, record the supplied current time. Qualified becomes true when HighMemory has remained true and the observed elapsed time reaches 3,000 milliseconds. When HighMemory becomes false, discard the time origin and set Qualified false.
The input must be finite, within zero through one hundred inclusive, and accompanied by a true quality flag. Otherwise set DataFault true, clear HighMemory, clear the timer and set Qualified false. A good value restores DataFault false, but a value between 85 and 90 does not restore the discarded high-state memory.
This is an explicit learning choice about reinitialising a detector after bad data. Qualified false during DataFault does not mean the process is normal; the separate invalid-data indication must remain visible in the exercise. Nor should clearing this detector erase a previously stored unacknowledged event in a separate annunciator.
The analogue signal types guide helps distinguish a numeric value from its units and quality. For the timer component, use the on-delay and pulse timer reference to compare the chosen environment's actual instruction behaviour.
Replay the hysteresis and delay trace
Use non-decreasing integer milliseconds. The timer starts at the first evaluation that observes HighMemory true, with zero elapsed time at that evaluation. The table begins from the initial state. H means HighMemory; Q means Qualified.
| Time ms | Value | Good quality | H | Elapsed ms | Q |
|---|---|---|---|---|---|
| 0 | 84 | 1 | 0 | 0 | 0 |
| 100 | 90 | 1 | 1 | 0 | 0 |
| 1000 | 89 | 1 | 1 | 900 | 0 |
| 3099 | 86 | 1 | 1 | 2999 | 0 |
| 3100 | 86 | 1 | 1 | 3000 | 1 |
| 3200 | 85 | 1 | 0 | 0 | 0 |
| 4000 | 91 | 1 | 1 | 0 | 0 |
| 5000 | 91 | 0 | 0 | 0 | 0 |
| 6000 | 88 | 1 | 0 | 0 | 0 |
| 7000 | 90 | 1 | 1 | 0 | 0 |
| 10000 | 90 | 1 | 1 | 3000 | 1 |
| 10001 | 84 | 1 | 0 | 0 | 0 |
At 3,100 ms, the value is below 90 but the qualified output is true. That follows from feeding the timer with the hysteresis memory rather than with a bare comparison. The value has not reached the return threshold of 85, so the timing interval continues.
This detail can change an implementation substantially. The official Rockwell ALMA documentation states that its deadband is not used to condition the minimum-duration measurement. Our combined exercise is therefore not an implementation of ALMA, and matching the parameter names would not make the behaviours equivalent.
The trace was checked in an independent software model. Reproduce it in your selected environment and record actual observations before claiming your own project passes. Include the quality failure and the exact equality boundaries; testing only a value far above the threshold misses the interesting decisions.

Examine what deadband and delay actually remove
Try valid samples 89, 90, 89, 90, 89, 90, 84 and 90 in that order, starting with high memory false. A bare value-at-least-90 comparison produces four rising edges. The stated hysteresis detector produces two, because the intermediate values of 89 do not clear its memory.
That is a counted result for those eight supplied samples. It does not prove a universal relationship between a noise percentage and an hourly alarm count. The sampling interval, signal trajectory and threshold definitions all affect the observed sequence.
Now add the three-second qualification rule and supply timestamps. A return to 85 before the deadline discards that timing interval. A value of 89 does not. A bad-quality sample discards it too, under this model's explicit quality policy.
Do not choose a delay solely because it hides a short pulse in a demonstration. The required response time and the consequences of waiting need independent justification. Likewise, a deadband is not a repair for every noisy measurement; the underlying signal and its quality still need investigation.
For the learning assessment, ask the student to predict which of these changes alters the result: moving the high threshold, moving the return threshold, changing the delay or changing the sampling times. Require the relevant trace to support each answer.
Review suppression and shelving as additional specifications
A notification may need different treatment in a defined operating context, but “hide it during shutdown” is an incomplete requirement. Identify the actual context signal, the affected records, entry and exit conditions, visibility of the state and the behaviour when context information is missing.
Keep temporary operator actions separate from conditions calculated by the program. Record why a record is absent from a main list and how a reviewer can see that absence. A smaller visible count is not evidence that the underlying abnormal condition has disappeared.
For a classroom extension, add a separate display-filter flag while retaining the complete event log. Compare the visible list with the stored events and prove that changing the filter does not rewrite history. Label this as a display exercise, not a complete production suppression system.
Then write a second specification for restoration: what should happen if a condition is still abnormal when the context ends? Do not assume that every PLC instruction and HMI platform handles that transition identically. Verify the selected vendor's documented behaviour.
Choose South African training that assesses alarm reasoning
When comparing PLC, instrumentation or SCADA training in Johannesburg, Pretoria, Durban, Cape Town or other South African locations, request a sample exercise with both design decisions and observable results. Confirm the actual venue, software version, access duration and instructor feedback for the course being quoted.
A useful course comparison asks whether learners prepare a rationalisation record, analyse an event log and test a detector. Ask whether the provider covers vendor alarm objects or only custom Boolean logic. Neither topic automatically includes the other.
For online study, confirm that you can inspect stored state and export or retain your observations. The online PLC training guide helps structure those practical access questions. This article does not imply local branches, scheduled classes or a recognised qualification from completing its worksheet.
To connect the topic with further software study, explore the PLC alarm-management learning material. Check the actual capabilities of the chosen environment; this tutorial does not promise a built-in six-alarm preset, cascade switch or historical-analysis dashboard.

Questions learners ask about alarm priority design
Is the highest-frequency alarm always the highest priority?
No. Frequency measures how often the defined event occurred in the observation window. Priority is a separate decision about the required response under the chosen philosophy. A frequent record may deserve investigation without automatically receiving the highest priority.
Should I force my alarms into a fixed priority percentage?
Use distributions to ask questions about the decisions and their consistency. Do not change a justified individual decision simply to make a chart match a target. The fictional matrix here produces its own distribution from the supplied records.
Is alarm deadband the same as an on-delay timer?
No. Deadband changes the value boundaries used to enter and leave a state. Delay introduces a time requirement. Their order and interaction must be specified; the worked detector times the hysteresis state, which is not the same as timing a bare threshold comparison.
Does acknowledging an alarm reset the process?
Acknowledgement is a separate state transition. It does not establish that the condition is normal or that equipment may restart. Use a defined channel sequence and test the case where an acknowledged condition remains active.
What should I include in an alarm-management portfolio?
Include the fictional assumptions, decision matrix, six classification results, event-count calculations and twelve-row detector trace. Add missing-data and exact-boundary cases. Explain what the model demonstrates and which operational decisions remain outside its scope.
The scan-cycle highlighting feature overview is a relevant next stop for exploring how program evaluation can be inspected. Keep that software practice connected to the written requirement: a convincing display should be backed by a result you can explain and reproduce.