Status code calculation method (PercentTime)|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
Status code calculation method (PercentTime)
Avatar
Saurabh Deshpande
Member
Members
Forum Posts: 25
Member Since:
02/03/2016
sp_UserOfflineSmall Offline
1
05/05/2016 - 02:52
sp_Permalink sp_Print

Hello All,

Can someone please explain the "PercentTime" calculation method for determining status code.

Explanation with examples will be of great help

Regards, 

Saurabh

Avatar
Paul Hunkar
Cleveland, Ohio, USA
Moderator
Members

Moderators-Specifications

Moderators-Companion

Moderators-Implementation

Moderators-Certification

Moderators-COM
Forum Posts: 109
Member Since:
02/24/2014
sp_UserOfflineSmall Offline
2
05/05/2016 - 17:51
sp_Permalink sp_Print

Saurabh,

PercentTime deals with the time interval during which the value was bad , not just the count or number of bad quality values.

Let say I have a 1 minute aggregate - and I have values :

  • 10:00:00 -> 25.0 Good
  • 10:00:10 -> 30.0 Good
  • 10:00:30 -> bad quality
  • 10:00:40-> 35.0 Good
  • 10:00:50-> Bad quality
  • 10:00:55-> 32.0 Good

I could say I have 6 values in the minute and 2 of them are bad quality - then use the count to determine the resulting quality (1/3 of the value (30%) are bad quality), but for some aggregate this would not be correct.  So need to look at the length of time (PercentTime) in the overall period that the value was bad quality. When compute PercentTime for status codes what I want to do is look at how long the value was bad - so in my example the value went bad quality at 10:00:30 and then returned to good quality at 10:00:40, then went bad again at 10:00:50 and returned to good at 10:00:55. So I have 60 seconds in my aggregate and I have bad quality for 15 seconds during the interval so the PercentTime Bad is 15/60 or 25%.  This is usually fairly easy to compute, but there are other cases like boundary case (Value is bad at the begining or end of the interval) or were a value is Uncertain not Bad that can become more involved to compute.  The aggregate specification has a number of examples (at least 1 for each type of aggregate) that shows this type of calculation.  The definition of an aggregate will include something like if the value is good 80% of the time then it is good and if it is bad 50% then it is bad otherwise it is uncertain.  So in my example we had 25% bad, we also had 75% good - so Percent of Time would fall into the uncertain range.

Hopefully this helps 

Paul

Paul Hunkar - DSInteroperability

Avatar
Saurabh Deshpande
Member
Members
Forum Posts: 25
Member Since:
02/03/2016
sp_UserOfflineSmall Offline
3
05/18/2016 - 04:35
sp_Permalink sp_Print

paul.hunkar@dsinteroperability.com said
Saurabh,

PercentTime deals with the time interval during which the value was bad , not just the count or number of bad quality values.

Let say I have a 1 minute aggregate - and I have values :

  • 10:00:00 -> 25.0 Good
  • 10:00:10 -> 30.0 Good
  • 10:00:30 -> bad quality
  • 10:00:40-> 35.0 Good
  • 10:00:50-> Bad quality
  • 10:00:55-> 32.0 Good

I could say I have 6 values in the minute and 2 of them are bad quality - then use the count to determine the resulting quality (1/3 of the value (30%) are bad quality), but for some aggregate this would not be correct.  So need to look at the length of time (PercentTime) in the overall period that the value was bad quality. When compute PercentTime for status codes what I want to do is look at how long the value was bad - so in my example the value went bad quality at 10:00:30 and then returned to good quality at 10:00:40, then went bad again at 10:00:50 and returned to good at 10:00:55. So I have 60 seconds in my aggregate and I have bad quality for 15 seconds during the interval so the PercentTime Bad is 15/60 or 25%.  This is usually fairly easy to compute, but there are other cases like boundary case (Value is bad at the begining or end of the interval) or were a value is Uncertain not Bad that can become more involved to compute.  The aggregate specification has a number of examples (at least 1 for each type of aggregate) that shows this type of calculation.  The definition of an aggregate will include something like if the value is good 80% of the time then it is good and if it is bad 50% then it is bad otherwise it is uncertain.  So in my example we had 25% bad, we also had 75% good - so Percent of Time would fall into the uncertain range.

Hopefully this helps 

Paul

Thanks Paul for the explanation  

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