View Issue Details

IDProjectCategoryView StatusLast Update
000463030070: MTConnectApi Changepublic2019-07-12 18:11
ReporterWilliam Sobel Assigned ToRandy Armstrong  
PriorityhighSeveritymajorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version2.0 RC7 
Target Version2.0 RC9Fixed in Version2.0 
Summary0004630: Page 62: Reset trigger to status code releationships
Description

MTConnect has a set of reset triggers that indicate when a statistic or counter are reset back to an initial value. This allows MTConnect to synchronously inidcate when a value has been reset and the reset reason, daily, hourly, maintainence, etc...

The mechanism suggested by Randy was to utilize the UA StatusCode facility and create a set of Good_ status codes to reprewsent these reset reasons. That idea was incorporated into the spec, but requires OPC F TAC changes to the set of existing enumerations.

RC 8 includes the set of MTConnect status codes and a set of mappings that are suggestions. We are awaiting OPC Foundation response if this is an acceptable solution and the final set of codes.

|ResetTrigger|StatusCode|Description|
|ACTION_COMPLETE|Good_ActionCompleteReset|The value of the Data Entity that is measuring an action or operation was reset upon completion of that action or operation.|
|ANNUAL|Good_AnnualReset|The value of the Data Entity was reset at the end of a 12-month period.|
|DAY|Good_DayReset|The value of the Data Entity was reset at the end of a 24-hour period.|
|MAINTENANCE|Good_MaintenanceReset|The value of the Data Entity was reset upon completion of a maintenance event.|
|MANUAL|Good_ManualReset|The value of the Data Entity was reset based on a physical reset action.|
|MONTH|Good_MonthReset|The value of the Data Entity was reset at the end of a monthly period.|
|POWER_ON|Good_PowerOnReset|The value of the Data Entity was reset when power was applied to the piece of equipment after a planned or unplanned interruption of power has occurred.|
|SHIFT|Good_ShiftReset|The value of the Data Entity was reset at the end of a work shift.|
|WEEK|Good_WeekReset|The value of the Data Entity was reset at the end of a 7-day period.|

TagsNo tags attached.

Activities

Randy Armstrong

2019-02-22 19:10

administrator   ~0009907

Add new codes to mantis issue and I will raise with UA WG.

Randy Armstrong

2019-04-09 16:01

administrator   ~0010161

Discussed in WG:
These codes do not belong as StatusCodes because the information does not change frequently on a value by value.
This use case is best resolved by using the existing SemanticChange bit + property indicating the reset cycle and last reset time.

William Sobel

2019-05-21 18:56

developer   ~0010254

Please confirm my intrepretation of your suggestion:

We use the SemanticChange bit (14) of the StatusCode to indicate this (as documented in Table 176 of Part 4):

SemanticsChanged

14:14

Indicates that the semantics of the associated data value have changed. Clients should not process the data value until they re-read the metadata associated with the Variable. Servers should set this bit if the metadata has changed in way that could cause application errors if the Client does not re-read the metadata. For example, a change to the engineering units could create problems if the Client uses the value to perform calculations.
Part 8 defines the conditions where a Server shall set this bit for a DA Variable. Other specifications may define additional conditions. A Server may define other conditions that cause this bit to be set.

This bit has meaning only for StatusCodes returned as part of a data change Notification or the HistoryRead. StatusCodes used in other contexts shall always set this bit to zero.

William Sobel

2019-05-21 18:57

developer   ~0010255

Randy, please verify solution.

William Sobel

2019-05-21 20:00

developer   ~0010257

Added the following to the section on streaming.

MTConnect supports data items that provide statistical values for various numeric quantities. The statistics can be reset at arbitrary points in time by indicating the reason for the reset in the attribute \mtmodel{resetTriggered} in the streaming data. The client application is then aware of the occurrence of the reset and why it occurred.

When the \mtmodel{resetTriggered} attribute is give, the property in the \mtmodel{MTNumericDataItemType}, this is included in all numeric data items, will set the \mtmodel{MTResetTriggeredReason} to the enumerated value. The update will also set the \uamodel{SemanticsChanged}, bit 14 of the \uamodel{StatusCode} (see \cite{UAPart4} \textit{Section 7.34 StatusCode}, associated with the data update to indicate to the client application that it should interrogate the \mtmodel{MTResetTriggeredReason} property.

William Sobel

2019-06-06 03:29

developer   ~0010361

Changed to SemanticsChanged bit in the model and in the section on streaming.

Stan Brubaker

2019-07-12 18:11

manager   ~0010486

Included in final 2.0 release

Issue History

Date Modified Username Field Change
2019-02-19 16:03 William Sobel New Issue
2019-02-19 16:03 William Sobel Status new => assigned
2019-02-19 16:03 William Sobel Assigned To => Randy Armstrong
2019-02-22 19:10 Randy Armstrong Note Added: 0009907
2019-02-22 19:36 William Sobel Description Updated
2019-02-22 21:56 Randy Armstrong Project 30070: MTConnect => NodeSets, XSDs and Generated Code
2019-04-04 03:09 Randy Armstrong Status assigned => new
2019-04-09 16:01 Randy Armstrong Note Added: 0010161
2019-04-09 16:01 Randy Armstrong Project NodeSets, XSDs and Generated Code => 30070: MTConnect
2019-04-09 16:01 Randy Armstrong Category Documentation Errata => Api Change
2019-04-26 18:15 Stan Brubaker Assigned To Randy Armstrong => William Sobel
2019-04-26 18:15 Stan Brubaker Status new => assigned
2019-04-26 18:15 Stan Brubaker Target Version 2.0 RC8 => 2.0 RC9
2019-04-26 18:15 Stan Brubaker Description Updated
2019-05-21 18:56 William Sobel Note Added: 0010254
2019-05-21 18:57 William Sobel Status assigned => acknowledged
2019-05-21 18:57 William Sobel Note Added: 0010255
2019-05-21 18:57 William Sobel Assigned To William Sobel => Randy Armstrong
2019-05-21 20:00 William Sobel Note Added: 0010257
2019-06-06 03:29 William Sobel Status acknowledged => resolved
2019-06-06 03:29 William Sobel Resolution open => fixed
2019-06-06 03:29 William Sobel Fixed in Version => 2.0
2019-06-06 03:29 William Sobel Note Added: 0010361
2019-07-12 18:11 Stan Brubaker Status resolved => closed
2019-07-12 18:11 Stan Brubaker Note Added: 0010486