02/03/2016
Hello,
In the OPC UA specification part 13 for aggregates:
5.4.3.2.2 Sloped Interpolation and Simple Bounding Values
5.4.3.2.3 Stepped Interpolation and Interpolated Bounding Values
points shows region identification for good, bad and uncertain. But no such explanation about how they are calculating or how to decide a region is good bad or uncertain.
Would like to understand this calculation/identification of the regions.
Regards,
Saurabh
Moderators-Specifications
Moderators-Companion
Moderators-Implementation
Moderators-Certification
Moderators-COM
02/24/2014
Saurabh,
The region in which the value has a bad status are denoted as open (white space). The raw value has a bad status - no calculation just an observation. The region with an Uncertain again - no calculation the value has a status of Uncertain. For simple bounding it is not a calculation just looking at the raw value (timestamp and status). The figure illustrates what the status is of the raw value. It does not matter how the status was set, it is just illustrating what to do if the bad status (or uncertain status) is encounter when calculating a bounding value.
Paul
Paul Hunkar - DSInteroperability
02/03/2016
Paul,
Thanks for the above explanation. But I would like to know how the region is decided ? My present understanding of identifying the region is based on the status of previous value. E.g. If I have two points P1 and P2 in time ascending nature and if the value of P1 is good then the region between P1 and P2 is good and same is for Uncertain and Bad values.
Correct me if I am wrong. Please have a look into below table which shows the comparison between OPC and our understanding:
S. No. |
Configurations
(P1 – P2) |
Region Quality OPC UA
(between P1 – P2) |
Current Uncerstanding
(between P1 – P2) |
1. | Good – Good | Good | Good |
2. | Uncertain – Uncertain | Uncertain | Uncertain |
3. | Bad – Bad | Bad | Bad |
4. | Good – Uncertain | Uncertain | Good |
5. | Good – Bad | Uncertain | Good |
6. | Uncertain – Good | Uncertain | Uncertain |
7. | Uncertain – Bad | ? (unknown) | Uncertain |
8. | Bad – Good | Bad | Bad |
9. | Bad – Uncertain | ? (unknown) | Bad |
10. | No Data – Good | Bad | Bad |
11. | No Data – Uncertain | ? (unknown) | Bad |
12. | No Data – Bad | ? (unknown) | Bad |
13. | Good – No Data | Uncertain | Good |
14. | Uncertain – No Data | ? (unknown) | Uncertain |
15. | Bad – No Data | ? (unknown) | Bad |
Table 1.Region Calculation comparison for configuration “Variable with Stepped = False and Simple Bounding Values”.
Regards,
Saurabh
Moderators-Specifications
Moderators-Companion
Moderators-Implementation
Moderators-Certification
Moderators-COM
02/24/2014
Saurabh,
So you are looking at the Sloped interpolated & Simple Bounding? [Lets remember what the purpose of this is - to find what the value of a point would be at a given instance in time, if there is a value at that instance then it is used. If not then it is derived - two ways to do it Sloped and Stepped (with two ways to deal with status Simple and Interpolated)]
for item 4 & 5 - uncertain is correct I can't calculate a slope when the second point is bad or uncertain (Uncertain I have a value, but since it is uncertain the sloped line calculation is uncertain - i.e. I can be sure the bounding value is correct)
Also if the starting point is uncertain then slope is uncertain (good /uncertain / bad end at the other end makes no difference)
If the point is bad at the start - then I can NOT calculate a slope so the value is bad.
The key point is to remember that time is moving forward when finding a bounding value (i.e. older value to newer value) so if a value is bad it is bad until a new value is received that is not bad. If the start if good, but the end is bad then I'm not sure if the value held that value until it went bad or if it changed at sometime, but just did not get recorded (uncertain) (maybe there is some filter for percent change, maybe there was a communication problem that resulted in the bad - so I'm missing values for any of a number of other possibilities).
No data is the same as bad - I do not have a value, I can NOT compute a value - remember a bad status does not store a value.
case 13,14,15 - where No data is current time - are more special cases - what do you do with the future - it not that I was not collecting, I just don't know what the value will be - some systems can take a guess (extrapolate), but if there is any chance that the computed value could change it needs to be uncertain. If the start is bad it is always bad (15)
Paul
Paul Hunkar - DSInteroperability
02/03/2016
Paul,
Thanks for the detailed clarification, but the above clarification holds good for "5.4.3.2.2 Sloped Interpolation and Simple Bounding Values" when crosschecked but failed to map with "5.4.3.2.3 Stepped Interpolation and Interpolated Bounding Values" specially in first interval between second third and interpolated bound. Could you please explain these two point and the region transition given in them.
Saurabh
Moderators-Specifications
Moderators-Companion
Moderators-Implementation
Moderators-Certification
Moderators-COM
02/24/2014
Saurabh,
The explanation was for sloped (where you need a start and an end value), for stepped you only need the start. All decision are made based on what the value is while going forward in time. If using interpolation bounding, then you don't want bad, so you use the last good value. For simple bounding, bad is ok to report, so any bound value is just the last value received. In stepped with interpolation if a value goes bad, the previous good value is maintained, but the status goes to uncertain - not sure if something changed, since the status is bad. [note all of this also needs to factor in any percentages that are configured. If stepped with simple bounding, then any changes are just reported and held until the next value.
Paul
Paul Hunkar - DSInteroperability
1 Guest(s)