An Alarm defines a monitoring condition that triggers notifications when a process variable exceeds defined limits. Alarms are a key part of process safety and operator awareness, following ISA-18.2 alarm management principles.
💡 In pharmaceutical terms: Alarms protect your process by alerting operators when critical values go out of range — for example, when a CIP tank temperature exceeds the safe limit, or when WFI conductivity rises above specification. A well-configured alarm system is essential for GMP compliance and patient safety.
📋 Properties
Identity and Trigger
|
Property |
Type |
Description |
|---|---|---|
|
Name |
Text |
Unique identifier for the alarm (e.g., "HighTemp_CIPTank") |
|
Tag Name |
Text |
The associated tag or variable being monitored |
|
Condition Expression |
Text |
The trigger condition expression |
📏 Limit Configuration
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Limit Type |
Selection |
High |
The type of limit (see table below) |
|
Setpoint HH |
Decimal |
— |
High-High threshold value |
|
Setpoint H |
Decimal |
— |
High threshold value |
|
Setpoint L |
Decimal |
— |
Low threshold value |
|
Setpoint LL |
Decimal |
— |
Low-Low threshold value |
|
Discrete State |
Text |
— |
State name for discrete alarms |
|
Deadband |
Decimal |
0 |
Deadband value to prevent alarm chattering |
|
Delay On (seconds) |
Decimal |
0 |
Time the condition must persist before triggering |
|
Delay Off (seconds) |
Decimal |
0 |
Time the condition must clear before returning to normal |
🏷️ Classification
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Priority |
Selection |
Medium |
How urgently the operator should respond (see below) |
|
Severity |
Selection |
Normal |
How serious the consequence is (see below) |
|
Classification |
Selection |
Process Deviation |
Quality, Safety, Environment, Maintenance, Process Deviation, Equipment Protection, or Regulatory |
💬 Messaging
|
Property |
Type |
Description |
|---|---|---|
|
Alarm Message |
Text |
Message displayed when the alarm triggers |
|
Engineering Units |
Text |
Unit description for the alarmed value |
|
Operator Response |
Text |
Recommended response for the operator |
|
Consequence If Ignored |
Text |
What happens if the alarm is not addressed |
✅ Acknowledgement and Shelving
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Acknowledgement Rule |
Selection |
Require operator acknowledgment |
See table below |
|
Shelving Rule |
Selection |
Allow timed shelving |
See table below |
|
Max Shelve Duration (min) |
Integer |
480 |
Maximum time an alarm can be shelved |
|
Flood Protection Enabled |
Yes/No |
Yes |
Whether flood protection is active |
|
Flood Suppression (seconds) |
Integer |
10 |
Time window for flood suppression |
📡 Routing and Return-to-Normal
|
Property |
Type |
Default |
Description |
|---|---|---|---|
|
Routing |
Flags |
HMI Popup + Historian Log |
How the alarm is delivered (combinable): Horn, Light, HMI Popup, Email, SMS, Historian Log |
|
Return-to-Normal |
Selection |
Auto-clear |
How the alarm clears when the condition returns to normal |
📊 Limit Types Explained
|
Limit Type |
What It Means |
Typical Use |
|---|---|---|
|
High-High (HH) |
Emergency high — the value is dangerously high |
Immediate action required — possible equipment damage or safety risk |
|
High (H) |
Warning high — the value is above the normal operating range |
Operator attention needed — take corrective action soon |
|
Low (L) |
Warning low — the value is below the normal operating range |
Operator attention needed — take corrective action soon |
|
Low-Low (LL) |
Emergency low — the value is dangerously low |
Immediate action required — possible equipment damage or safety risk |
|
Discrete (on/off) |
Triggers on a specific state change rather than an analog value |
Equipment state change — e.g., a valve unexpectedly changing position |
🏭 Example: A CIP tank temperature alarm might have: LL = 5 °C, L = 65 °C, H = 92 °C, HH = 98 °C — providing graduated warnings before reaching dangerous levels.
⚖️ Priority vs Severity
|
Concept |
Question It Answers |
Values |
|---|---|---|
|
Priority |
"How quickly must the operator respond?" |
Critical > High > Medium > Low > Diagnostic |
|
Severity |
"How serious is the consequence?" |
Emergency > Urgent > Normal > Advisory > Log Only |
A Critical priority + Emergency severity alarm demands immediate operator action with maximum notification (horn, HMI popup, email, etc.). A Low priority + Log Only severity alarm is recorded for trending but does not interrupt the operator.
✅ Acknowledgement Rules
|
Rule |
What It Means |
|---|---|
|
Require operator acknowledgment |
The operator must actively acknowledge the alarm before it clears from the active list |
|
Auto-acknowledge |
The alarm is automatically acknowledged when the condition returns to normal |
|
No acknowledgment needed |
The alarm is informational only — no operator action required |
|
Acknowledge with mandatory comment |
The operator must acknowledge AND provide a written comment explaining the response |
📖 How To: Configure Alarms for a CIP Tank
-
Open Module Data — Navigate to the Data panel in the Module Ribbon and open the Module Data window.
-
Go to the Alarms tab — Select the Alarms section.
-
Create alarm definitions — For each critical variable (temperature, pressure, level, flow), create alarm entries with appropriate limit types and setpoints.
-
Set priorities and severities — Use Critical/Emergency for safety-related alarms, Medium/Normal for process deviations, and Low/Advisory for informational alerts.
-
Configure acknowledgement — Safety-critical alarms should "Require operator acknowledgment". Routine alarms can use "Auto-acknowledge".
-
Set routing — Ensure critical alarms trigger Horn + HMI Popup + Historian Log. Lower-priority alarms may only need HMI Popup + Historian Log.
-
Add operator guidance — Fill in the "Operator Response" and "Consequence If Ignored" fields to help operators respond correctly.
♻️ Alarm Templates
A typical project repeats the same well-reasoned alarm again and again across whole equipment families. Every jacketed tank wants the same temperature alarm shape; every WFI loop wants the same conductivity alarm; every reactor wants the same pressure alarm. The only things that really change from one instance to the next are the tag, the setpoints, and the engineering units — the rationalization (priority, severity, classification, acknowledgement rule, shelving rule, routing, return-to-normal behaviour, message wording and operator guidance) stays the same.
Alarm templates let you capture a fully rationalized alarm once and stamp it out for every instance, so you never re-type the same reasoning. A template is a saved snapshot of an alarm together with a name, an optional category, and a description.
📁 Templates are project-wide. Templates live with the project — alongside symbol styles and shared classes — not with a single module. A template you create while working in one module is immediately available in every other module of the same project.
🌱 Templates are seeds, not live links. When you create an alarm from a template, the values are copied into a brand-new, independent alarm. Later edits to the template do not reach back and change alarms you already created, and deleting a template never affects alarms that were stamped from it. Each alarm stands on its own once created.
🖱️ The Alarms Toolbar
The bottom bar of the Alarms list is where the whole template workflow lives:
|
Control |
What It Does |
|---|---|
|
Manage Templates (left side) |
Opens the template library window for browsing, previewing, and curating templates. |
|
"+" button (primary click) |
Adds a fresh, blank alarm — the quickest way to author from scratch. |
|
"+" chevron (the small caret beside the "+") |
Opens a short menu: New Blank Alarm…, From Template…, and Manage Templates… |
The split "+" button keeps the everyday "add a blank alarm" action one click away, while tucking the template choices behind the chevron so they are present but never in the way.
💾 Saving an Alarm as a Template
Whenever you realize an alarm you have just configured is going to be reused, you can promote it into a project-wide template:
-
Right-click the alarm row in the Alarms list and choose Save as Template… — or, while the alarm is open in the editor, click the Save as Template… button in the editor footer.
-
Give the template a name in the metadata prompt. The name must be unique within the project (matching is case-insensitive), so "High Temp" and "high temp" cannot both exist.
-
Optionally add a category and a description. A category such as "Temperature", "Conductivity", or "Pressure" groups related templates together; a description records when and why to use it.
-
Confirm. The template is added to the project library and is instantly available everywhere.
💡 Saving from the editor does not close the alarm you are working on. You can keep editing the live alarm after the snapshot is captured — the template is a separate, independent copy.
📋 Creating an Alarm From a Template
-
Click the chevron beside the "+" button and choose From Template…
-
The template picker opens — a searchable list of cards, each showing the template name, its category chip, and a coloured side bar that reflects the alarm's priority. Type in the search box to filter by name, category, tag, message, and more; use the up/down arrow keys to move through the list.
-
Pick a template (single click to select, double-click to choose it outright) and confirm.
-
The alarm editor opens pre-filled with the template's values. Change only the tag, the setpoints, and the units for this specific instance, then save. The result is a new, independent alarm in your module.
🧰 Editing Inside the Editor — the Templates Panel
While you are drafting an alarm, a Templates panel sits along the left edge of the alarm editor. It is a searchable card list — each card carries the priority side bar and category chip — so you can browse the library without leaving the form.
-
Click any card to refill every field in the form with that template's snapshot. A banner reading "Applied template: name" appears so it is always clear what was just loaded.
-
Applying a template while editing an existing alarm updates that alarm in place — it does not replace it with a different one — so you can re-rationalize an alarm against a template without losing its identity.
-
Use the chevron toggle to collapse the panel to a thin rail when you want the full width for the form, and expand it again when you need it.
The Templates panel and the template menu entries appear only when a project template library is available. In contexts that do not offer one, the alarm editor simply shows the form on its own.
🗂️ The Manage Templates Window
The Manage Templates window is the home for curating your project's template library. It uses a master/detail layout: a searchable list of template cards on the left, and a full preview of the selected template on the right. The preview shows the snapshot's tag, units, condition, limit type and setpoints, deadband and delays, classification and severity, acknowledgement and shelving rules, routing, alarm message, and recommended operator response — everything you need to confirm a template before relying on it.
|
Action |
What It Does |
|---|---|
|
New Template |
Prompts for name, category, and description, then opens the alarm editor to define the template's alarm from scratch. |
|
Edit Alarm |
Opens the selected template's alarm in the editor so you can adjust its underlying values. |
|
Rename / Describe |
Updates the template's name, category, or description. |
|
Duplicate |
Creates a copy (automatically named to stay unique, e.g. "High Temp (copy)") — ideal for spinning off a variant. |
|
Delete |
Removes the template from the library. Alarms already created from it are left untouched. |
⚠️ Deleting a template is about housekeeping the library, not the project. Because templates are seeds rather than live links, removing a template never alters or deletes any alarm that was previously stamped from it.
📖 How To: Roll Out a Temperature Alarm Across a Tank Farm
-
Configure one excellent temperature alarm on your first tank — for example on TT-101, with HH/H/L/LL setpoints, Critical priority, "Require operator acknowledgment", and Horn + HMI Popup + Historian Log routing, plus clear operator response text.
-
Right-click that alarm and choose Save as Template… Name it "Jacketed Tank High/Low Temp", category "Temperature".
-
Move to the next tank's module, click the "+" chevron, choose From Template…, and pick "Jacketed Tank High/Low Temp".
-
In the pre-filled editor, change only the tag (e.g. TT-201) and any setpoints that differ for this vessel, then save.
-
Repeat for every remaining tank. Each alarm carries the same rationalization while standing as its own independent definition.
🏭 Example: CIP Tank Temperature Alarms
|
Alarm Name |
Tag |
Limit Type |
Setpoint |
Priority |
Severity |
Acknowledgement |
Routing |
|---|---|---|---|---|---|---|---|
|
HighHighTemp_CIPTank |
TT-101 |
High-High |
98 °C |
Critical |
Emergency |
Require operator acknowledgment |
Horn + HMI Popup + Historian Log |
|
HighTemp_CIPWarn |
TT-101 |
High |
92 °C |
Medium |
Normal |
Auto-acknowledge |
HMI Popup + Historian Log |
|
LowTemp_CIPWarn |
TT-101 |
Low |
65 °C |
Medium |
Normal |
Auto-acknowledge |
HMI Popup + Historian Log |
|
LowLowTemp_CIPFail |
TT-101 |
Low-Low |
5 °C |
High |
Urgent |
Require operator acknowledgment |
Horn + HMI Popup + Email + Historian Log |
🏭 Pharma context: During a CIP caustic wash, the solution must maintain a minimum temperature (typically 65-80 °C) for effective cleaning. The Low alarm warns operators when temperature drops below the minimum, while the Low-Low alarm indicates a failure that requires investigation and possible batch review.
🛠️ Common Operations
|
Operation |
Description |
|---|---|
|
Create |
Add a new alarm from the Module Data window |
|
Create from template |
Stamp out a pre-rationalized alarm via the "+" chevron → From Template… |
|
Edit |
Modify alarm properties |
|
Save as template |
Promote an alarm into a reusable, project-wide template |
|
Duplicate |
Create a deep copy of an alarm with all properties |
|
Delete |
Remove an alarm |
|
Search |
Filter by name, tag name, alarm message, operator response, or condition expression |
|
Excel Export |
Export alarms to Excel |
|
Excel Import |
Import alarms from Excel |
🔗 Related Pages
-
📋 Module Data — All module data types
-
🛡️ Interlock — Safety interlocks that can trigger on alarm conditions
-
🔁 Control Loop — Control loops with alarm integration
-
🧠 Algorithm Design — Condition logic that references alarms
-
📏 Parameter — Parameters used as alarm setpoints