alarm_rationalization_worksheet
Create an ISA-18.2 alarm rationalization worksheet to rank alarm sources by frequency and flag chattering or flood-prone alarms.
Instructions
[READ][risk=low] ISA-18.2 alarm-rationalization worksheet (CSV or inline rows).
One row per alarm source, count-descending: count, % of total annunciations,
chattering?, flood contributor?, and a recommendation stub — the starting
document for an ISA-18.2 rationalization review. Pass 'events' for pure
analysis, or an endpoint to collect live via the same OPC-UA active-condition
scan the RCA copilot uses. With out_path the full worksheet is written as CSV
and the path returned; otherwise bounded inline rows (truncation noted).
Args:
endpoint: Endpoint name from config (used only when events is omitted).
duration_s: Live collection window in seconds (1..300, default 60).
events: Injected alarm events — {source, timestamp (ISO-8601), state?}.
window_s: Flood analysis window in seconds (ISA-18.2 default 600).
threshold: Annunciations per window that start a flood (default 10).
out_path: Optional CSV destination; parent directory must exist.
Returns dict: {row_count, columns:[alarm_id, count, pct_of_total, chattering,
in_flood, recommendation], csv_path? , rows?:[...], truncated (bool)}.
Example: alarm_rationalization_worksheet(events=[...], out_path="worksheet.csv").
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| events | No | ||
| endpoint | No | ||
| out_path | No | ||
| window_s | No | ||
| threshold | No | ||
| duration_s | No |