View Issue Details

IDProjectCategoryView StatusLast Update
000616510000-013: AggregatesSpecpublic2022-03-10 16:13
ReporterSrinivasu Jitta Assigned ToRod Stein  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionno change required 
Fixed in Version1.05 
Summary0006165: Wrong value in test data for DurationGood/Historian_1
Description

A.29 DurationGood
A.29.2 DurationGood data

Wrong value entry at
12:00:32.000 800 Good, Calculated

It should be
12:00:32.000 8000 Good, Calculated

Additional Information

Spec:
OPC 10000-13 - UA Specification Part 13 - Aggregates Draft 1.05.2

TagsNo tags attached.
Commit Version

Activities

Rod Stein

2021-12-07 02:45

developer   ~0015478

Fixed in Part 13 1.05 draft 5

The calculation method for calculating the DurationGood and the DurationBadd aggregates was incorrect causing some values to be wrong.

Jim Luth

2021-12-07 18:28

administrator   ~0015484

Archie's tool output does not agree with Rod's manual calculation. Archie to resolve.

Archie Miller

2022-01-04 22:22

administrator   ~0015671

Last edited: 2022-01-04 22:23

There are two things to keep in mind with these calculations -

  1. Uncertain data does not affect the calculations
    • 5.4.3.31 DurationGood - divides the interval into regions of Good and non-Good data.
    • 5.4.3.32 DurationBad - divides the interval into regions of Bad and non-Bad data.
  2. Intervals allow for durations of 1.
    5.4.2.4 Time calculation issues - If there is one data point in the Interval and it falls on the StartTime the time duration used in calculations is one unit of the time resolution of the Server.

PercentGood and DurationGood use SimpleBounds to determine Values for each interval

Historian One

12:00:32.000 Calculation

GetSimpleValues

  • Value = Data Value status UncertainDataSubNormal [0402] timestamp 2022-01-01 12:00:32 AM value 30
  • Value = Data Value status Bad timestamp 2022-01-01 12:00:40 AM value 40
  • Value = Data Value status BadNoData timestamp 2022-01-01 12:00:48 AM value (null)

Time Regions

  • Duration 8000 StartValue 30 EndValue 30 start time 12:00:32 AM status UncertainDataSubNormal [0402]
  • Duration 8000 StartValue 30 EndValue 30 start time 12:00:40 AM status Bad

DurationGood = 0
DurationBad = 8000

PercentGood = 0
PercentBad = 50

12:01:04.000 Calculation

GetSimpleValues

  • Value = Data Value status UncertainDataSubNormal [0402] timestamp 2022-01-01 12:01:04 AM value 64
  • Value = Data Value status Uncertain timestamp 2022-01-01 12:01:10 AM value 70
  • Value = Data Value status Good timestamp 2022-01-01 12:01:20 AM value 80

    Time Regions

  • Duration 6000 StartValue 64 EndValue 64 start time 12:01:04 AM status UncertainDataSubNormal [0402]
  • Duration 10000 StartValue 70 EndValue 70 start time 12:01:10 AM status Uncertain

DurationGood = 0
DurationBad = 0

PercentGood = 0
PercentBad = 0

12:01:20.000 Calculation

GetSimpleValues

  • Value = Data Value status Good timestamp 2022-01-01 12:01:20 AM value 80
  • Value = Data Value status Good timestamp 2022-01-01 12:01:30 AM value 90
  • Value = Data Value status BadNoData timestamp 2022-01-01 12:01:36 AM value (null)

Time Regions

  • Duration 10000 StartValue 80 EndValue 80 start time 12:01:20 AM status Good
  • Duration 1 StartValue 90 EndValue 90 start time 12:01:30 AM status Good

Last Raw value of 90 at 12:01:30 meets the criteria of If there is one data point in the Interval and it falls on the StartTime the time duration used in calculations is one unit of the time resolution of the Server.

DurationGood = 10001
DurationBad = 0

PercentGood = 100
PercentBad = 0

Both the Original test tool and the CTT follow these calculations.
If desired, more data can be provided for the remaining datasets, but this should be enough to provide a conversation about how to calculate these values.

Rod Stein

2022-03-08 03:47

developer   ~0016242

Recalculated values and original values are correct.

No change needed.

Jim Luth

2022-03-10 16:13

administrator   ~0016307

Agreed to no-changerequired in VirtualF2F.

Issue History

Date Modified Username Field Change
2020-10-20 14:20 Srinivasu Jitta New Issue
2021-09-14 17:04 Jim Luth Assigned To => Archie Miller
2021-09-14 17:04 Jim Luth Status new => assigned
2021-12-07 02:45 Rod Stein Status assigned => resolved
2021-12-07 02:45 Rod Stein Resolution open => fixed
2021-12-07 02:45 Rod Stein Fixed in Version => 1.05
2021-12-07 02:45 Rod Stein Note Added: 0015478
2021-12-07 18:28 Jim Luth Note Added: 0015484
2021-12-07 18:29 Jim Luth Status resolved => assigned
2022-01-04 22:22 Archie Miller Note Added: 0015671
2022-01-04 22:23 Archie Miller Note Edited: 0015671
2022-03-08 03:47 Rod Stein Assigned To Archie Miller => Rod Stein
2022-03-08 03:47 Rod Stein Status assigned => resolved
2022-03-08 03:47 Rod Stein Resolution fixed => no change required
2022-03-08 03:47 Rod Stein Note Added: 0016242
2022-03-10 16:13 Jim Luth Status resolved => closed
2022-03-10 16:13 Jim Luth Note Added: 0016307