01/17/2017
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.
Moderators-Specifications
Moderators-Companion
Moderators-Implementation
Moderators-Certification
Moderators-COM
02/24/2014
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
1 Guest(s)