Alarm

Alarm System Overview

  • Alarms are represented as Alarm objects, which are created and managed by the Alarm_Manager.

  • A collection of Alarm_Rule s define the Condition s for raising Alarm s of different AlarmSeverity .

  • The alarm manager is continuously fed SensorValues objects during PVP_Gui.update_gui(), which it uses to check() each alarm rule.

  • The alarm manager emits Alarm objects to the PVP_Gui.handle_alarm() method.

  • The alarm manager also updates alarm thresholds set as Condition.depends to PVP_Gui.limits_updated() when control parameters are set (eg. updates the HIGH_PRESSURE alarm to be triggered 15% above some set PIP ).

Alarm Modules

Alarm Manager

Computes alarm logic and emits alarms to the GUI

Alarm

Objects used to represent alarms

Alarm Rule

Define conditions for triggering alarms and their behavior

Condition

Objects to check for alarm state

Main Alarm Module

Classes:

AlarmType(value)

An enumeration.

AlarmSeverity(value)

An enumeration.

Data:

ALARM_RULES

Definitions of all Alarm_Rule s used by the Alarm_Manager

class pvp.alarm.AlarmType(value)[source]

An enumeration.

Attributes:

LOW_PRESSURE

HIGH_PRESSURE

LOW_VTE

HIGH_VTE

LOW_PEEP

HIGH_PEEP

LOW_O2

HIGH_O2

OBSTRUCTION

LEAK

SENSORS_STUCK

BAD_SENSOR_READINGS

MISSED_HEARTBEAT

human_name

Replace .name underscores with spaces

LOW_PRESSURE = 1
HIGH_PRESSURE = 2
LOW_VTE = 3
HIGH_VTE = 4
LOW_PEEP = 5
HIGH_PEEP = 6
LOW_O2 = 7
HIGH_O2 = 8
OBSTRUCTION = 9
LEAK = 10
SENSORS_STUCK = 11
BAD_SENSOR_READINGS = 12
MISSED_HEARTBEAT = 13
property human_name: str

Replace .name underscores with spaces

class pvp.alarm.AlarmSeverity(value)[source]

An enumeration.

Attributes:

HIGH

MEDIUM

LOW

OFF

TECHNICAL

HIGH = 3
MEDIUM = 2
LOW = 1
OFF = 0
TECHNICAL = -1
pvp.alarm.ALARM_RULES = OrderedDict([(<AlarmType.LOW_PRESSURE: 1>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.HIGH_PRESSURE: 2>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.LOW_VTE: 3>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.HIGH_VTE: 4>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.LOW_PEEP: 5>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.HIGH_PEEP: 6>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.LOW_O2: 7>, <pvp.alarm.rule.Alarm_Rule object>), (<AlarmType.HIGH_O2: 8>, <pvp.alarm.rule.Alarm_Rule object>)])

Definitions of all Alarm_Rule s used by the Alarm_Manager

See definitions here