Need Help to understand Aggregate StartBound|OPC UA Standard|Forum|OPC Foundation

Avatar
Search
Forum Scope


Match



Forum Options



Minimum search word length is 3 characters - maximum search word length is 84 characters
Lost password?
sp_Feed sp_PrintTopic sp_TopicIcon
Need Help to understand Aggregate StartBound
Avatar
Andre de Buhr
Member
Members
Forum Posts: 9
Member Since:
01/17/2017
sp_UserOfflineSmall Offline
1
03/14/2017 - 07:41
sp_Permalink sp_Print

Hello, 

can someone give me an example to understand the Aggregate StartBound?

I dont understand the example of the specification.

I want to realize some cyclic recording. Thats means that i will get an value all 5 minutes also when the value hasnt changed.

Is this possible with the Aggregate Functions?

 

Thanks for your Help.

Avatar
Paul Hunkar
Cleveland, Ohio, USA
Moderator
Members

Moderators-Specifications

Moderators-Companion

Moderators-Implementation

Moderators-Certification

Moderators-COM
Forum Posts: 112
Member Since:
02/24/2014
sp_UserOfflineSmall Offline
2
04/05/2017 - 12:13
sp_Permalink sp_Print

The StartBound aggregate reports the value at the start of the interval - if there is an actual interval it reports that value, if not it computes a value depending on other setting (slopped interpolation or stepped interpolation), but if there is no data it will report no data.

There are three different aggregate functions that provide similar information Start, StartBound and Interpolative.  Depending on what you are looking for all three could provide the data.  The first is just a value in the interval, the next two deal with how bad data is processed and the types of interpolation that are used (i.e. how to find the value at the starting of the interval).

Start Aggregate returns the first value that is in the interval

For StartBound and Interpolative, you need to understand that there are two types of interpolation Stepped and Sloped

- Stepped holds a value the same until the next value is received 

- Sloped assumes a straight line between the last value and the next value (i.e. a stead rate of change)

both of these aggregates can use either slopped or stepped.

Interpolative Aggregate (see section 3.1.8 in rev 1.03 of the aggregate specification for details on computing it)

 - Skips bad quality values (status become uncertain if anything skipped - but generates a value always)

 - Find the value before the start that is good status,  if it is stepped use it, if sloped - find a good quality value after the start and compute the slope/value at the start. If any bad status values are skipped, call the result uncertain.

StartBound aggregate

- uses Simple bounding values (see section 3.1.9 in rev 1.03 of aggregate specification)

- find value before, if bad status use it, if stepped use it, if sloped find the value after the start, if bad use the before value, if not bad - compute the slope and value. 

there are more special cases for what the value is after the last value in the system - i.e. the last value was collected at 10:00:00 and the current time is 10:01:20, how should we find the value for 10:01:00.  I will not go over these at this point, but they are coverd in the spec as extrapolated values.

The examples in the spec try to cover both types of interpolation and cover cases with bad status and uncertain status.  If you have specific question about an example i can try to explain it

Paul Hunkar - DSInteroperability

Forum Timezone: America/Phoenix
Most Users Ever Online: 510
Currently Online:
Guest(s) 17
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Forum Stats:
Groups: 2
Forums: 10
Topics: 1435
Posts: 4862