Previous | Table of Contents | Next |
Alarms and events are generated by a source represented by Source. A source might be a single measurement, a collection of
measurements, or some other object. A collection of measurements may represent a complex real world object like a generator
or some control function for the generator. A source has a name property. The source is also associated with a type that describes
any additional properties. If a DAIS server implements both data access and alarms & events, a client shall expect there is
a mapping between sources and nodes. A client shall however not make assumptions on how the mapping is made and use the method
translate_to_item_ids() to get the mapping from the server.
Sources are organized in areas represented by Area. An area typically represents area of responsibility concerning supervision
and operation of sources. Areas may however also be used for other groupings of sources. Areas can be hierarchically structured
to allow creation of hierarchically organized responsibilities. Multiple views of areas are supported.
Alarms and events are categorized. Category represents the categories. Three main categories are defined and must be implemented
by a server:
• simple - describing events that do not have an explicitly modeled condition space.
• tracking - describing events generated due to an operator action.
• condition - describing events generated based on an explicitly modeled condition space.
The categories simple and tracking are used for events, and the category condition is used for alarms.
For each main category it is possible to define a number of sub-categories. A server is free to implement any sub-categories.
Each type of source is expected to be associated with at least one main category and one or more sub-categories for each main
category. The main categories are not expected to have an association with a source type. Subcategories however are all expected
to have an associated source type.
A Condition category is associated with one or more condition spaces. ConditionSpace represents a condition space. Depending
on how limits are applied to the properties defined by the type associated with a condition category it is possible to create
a space consisting of different discrete conditions. Condition describes each discrete condition. A condition space will have
a number of conditions defined for it. A Transition describes each possible transition between a pair of conditions. The alarms
& event session does not however provide any methods for direct access of transitions. When a transition is traversed a condition
event is generated.
A source may be associated with one or more condition spaces. Each such association has status information describing the
current condition. The association and its data are called SourceCondition. The source condition is identified by its associated
source and condition space.
A source is of a specific type (e.g., measurement, breaker, generator, tank, etc.) and the
type has one or more properties in the same way as a node (refer to Section 4.1.1,
“Nodes, Items, Types, and Properties,? on page 4-2). A category may have any number
of properties associated with it. An alarm or event may contain values for the properties associated with the corresponding
category. This is used to convey additional server specific information with alarms and events. Specification of what properties
are associated with categories is outside the scope of this specification.
The described classes are shown in Figure 5-2. The attributes are described later with the description of the interfaces.
+aggregated_types
+parent
+conditions
+active_condition
Figure 5-2 DAIS Alarms and Events Information Model
The objects in DAIS alarms and events has the following mapping to OPC alarms and events objects.
DAIS A&E object |
OPC A&E object |
||||
Source | Source | ||||
Area | Area | ||||
Property | EventAttribute | ||||
Category | EventCategory | ||||
The categories; simple, tracking and condition | EventType | ||||
ConditionSpace | Condition | ||||
Condition | SubCondition | ||||
SourceCondition | SourceCondition |