This Object is used as the browse entry point for information about the Aggregates supported by a Server. The content of this Object is already defined by its type definition. All Instances of the FolderType use the standard BrowseName of ‘AggregateFunctions’. The HasComponent Reference is used to relate a ServerCapabilities Object and/or any HistoryServerCapabilitiesType Object to an AggregateFunction Object. AggregateFunctions is formally defined in Table 3.

Table 3 – Aggregate Functions Definition

Attribute

Value

BrowseName

AggregateFunctions

References

Node

Class

BrowseName

DataType

TypeDefinition

ModellingRule

HasTypeDefinition

Object

Type

FolderType

Defined in OPC 10000-5

Conformance Units

Historical Access Aggregates

Each ServerCapabilities and HistoryServerCapabilitiesType Object shall reference an AggregateFunction Object. In addition, each HistoricalConfiguration Object belonging to a HistoricalDataNode may reference an AggregateFunction Object using the HasComponent Reference.

This ObjectType defines an Aggregate supported by a UA Server. This Object is formally defined in Table 4.

Table 4 – AggregateFunctionType Definition

Attribute

Value

BrowseName

AggregateFunctionType

IsAbstract

False

References

Node

Class

BrowseName

DataType

TypeDefinition

Mod.Rule

Subtype of the BaseObjectType defined in OPC 10000-5

Conformance Units

Historical Access Aggregates

For the AggregateFunctionType, the Description Attribute (inherited from the Base NodeClass), is mandatory. The Description Attribute provides a localized description of the Aggregate.

Table 5 specifies the BrowseName and Description Attributes for the standard Aggregate Objects. The description is the localized “en” text. For other locales it shall be translated.

Table 5 – Standard AggregateType Nodes

BrowseName

Description

Interpolation Aggregate

Interpolative

At the beginning of each interval, retrieve the calculated value from the data points on either side of the requested timestamp.

Average

Retrieve the average value of the data over the interval.

TimeAverage

Retrieve the time weighted average data over the interval using Interpolated Bounding Values.

TimeAverage2

Retrieve the time weighted average data over the interval using Simple Bounding Values.

Total

Retrieve the total (time integral) of the data over the interval using Interpolated Bounding Values.

Total2

Retrieve the total (time integral) of the data over the interval using Simple Bounding Values.

Minimum

Retrieve the minimum raw value in the interval with the timestamp of the start of the interval.

Maximum

Retrieve the maximum raw value in the interval with the timestamp of the start of the interval.

MinimumActualTime

Retrieve the minimum value in the interval and the timestamp of the minimum value.

MaximumActualTime

Retrieve the maximum value in the interval and the timestamp of the maximum value.

Range

Retrieve the difference between the minimum and maximum value over the interval.

Minimum2

Retrieve the minimum value in the interval including the Simple Bounding Values.

Maximum2

Retrieve the maximum value in the interval including the Simple Bounding Values.

MinimumActualTime2

Retrieve the minimum value with the actual timestamp including the Simple Bounding Values.

MaximumActualTime2

Retrieve the maximum value with the actual timestamp including the Simple Bounding Values.

Range2

Retrieve the difference between the Minimum2 and Maximum2 value over the interval.

Count

Retrieve the number of raw values over the interval.

DurationInStateZero

Retrieve the time a Boolean or numeric was in a zero state using Simple Bounding Values.

DurationInStateNonZero

Retrieve the time a Boolean or numeric was in a non-zero state using Simple Bounding Values.

NumberOfTransitions

Retrieve the number of changes between zero and non-zero that a Boolean or numeric value experienced in the interval.

Start

Retrieve the value at the beginning of the interval.

End

Retrieve the value at the end of the interval.

Delta

Retrieve the difference between the Start and End value in the interval.

StartBound

Retrieve the value at the beginning of the interval using Simple Bounding Values.

EndBound

Retrieve the value at the end of the interval using Simple Bounding Values.

DeltaBounds

Retrieve the difference between the StartBound and EndBound value in the interval using Simple Bounding Values.

DurationGood

Retrieve the total duration of time in the interval during which the data is Good.

DurationBad

Retrieve the total duration of time in the interval during which the data is Bad.

PercentGood

Retrieve the percentage of data (0 to 100) in the interval which has Good StatusCode.

PercentBad

Retrieve the percentage of data (0 to 100) in the interval which has Bad StatusCode.

WorstQuality

Retrieve the worst StatusCode of data in the interval.

WorstQuality2

Retrieve the worst StatusCode of data in the interval including the Simple Bounding Values.

AnnotationCount

Retrieve the number of Annotations in the interval (applies to Historical Aggregates only).

StandardDeviationSample

Retrieve the standard deviation for the interval for a sample of the population (n-1).

VarianceSample

Retrieve the variance for the interval as calculated by the StandardDeviationSample.

StandardDeviation Population

Retrieve the standard deviation for the interval for a complete population (n) which includes Simple Bounding Values.

VariancePopulation

Retrieve the variance for the interval as calculated by the StandardDeviationPopulation which includes Simple Bounding Values.