The ISA95JobOrderReceiverObjectType contains methods to receive job order commands and optional definitions of allowable job order information as illustrated in Figure 4.
Figure 4 – Job Order Receiver Object Type Methods and Data
In addition, it provides information about the StateMachine of the job orders managed by instances of the ObjectType. As the job orders are not represented as Objects in the AddressSpace, but just as structured values, this ObjectType only provides the meta data of the StateMachine. It may be subtyped to add additional substates.
In Figure 5, an overview of the states is given. Note that this ObjectType does not define the substates of NotAllowedToStart, AllowedToStart, Ended and Interrupted. This is done in the ISA95JobOrderStateMachineType, defined in 6.2.2. The dotted states and transitions are not represented in the StateMachine at all. They express how job orders are added and removed from the system (InitialState and EndState and their transitions) and a logical state (Prepared) which is always exposed by its subtypes NotAllowedToStart and AllowedToStart.
Figure 5 – States of a Job Order
A job order is added to the system by calling the Store or StoreAndStart Method defined on the ISA95JobOrderReceiverObjectType or by some internal mechanisms. Afterwards, the job order is in the state NotAllowedToStart or AllowedToStart. In both states, the job order is not executed. Using the Update Method, the job order may still be changed. Calling the Start Method switches the state from NotAllowedToStart to AllowedToStart, and calling RevokeStart vice versa.
When a job order is in the state AllowedToStart, the system may automatically start the job order depending on available recourses and priorities in case several job orders are in the same state. If the AllowedToStart state provides substates, they may indicate if a job order can be started (e.g. Waiting indicates that it cannot be started).
When the job order starts to be executed, it switches its state to Running.
Clients may interrupt a running job order by calling the Pause Method. The system may also automatically interrupt the job order. In both cases, the state switches to Interrupted. Substates may indicate if the interruption was triggered from external (Suspended) or automatic (Held).
Clients may resume the execution of an interrupted job by calling the Resume Method, or the system may automatically continue. In both cases, the state switches back to Running.
A job order may be aborted by calling the Abort Method. This can be done while the job order is running, interrupted or not even started (AllowedToStart and NotAllowedToStart). In all cases, the state switches to Aborted.
When the job order was executed, it automatically switches in the state Ended. Substates of Ended may expose whether some postprocessing needs to be done before receiving the final results of the execution.
Some job orders may not be defined to finish its execution automatically. In addition, some job orders may get stopped before the planned amount of the job order is produced. In both cases, the Stop Method is called to end the execution of the job order. This can either be done while in Running or in Interrupted. In both cases, it switches into Ended.
When the job order is either Aborted or Ended, the job order may be deleted from the system by calling the Clear Method. This is typically done by a specific Client after the Client has received the final results of the job order execution.
A job order that has not been started (AllowedToStart or NotAllowedToStart) may be removed from the system before execution by calling the Cancel Method.
The ObjectType is formally defined in Table 12. Note that the transitions do not expose causes as the StateMachine is not used on an individual Object exposing its state, but just as meta data for values.
Table 12 – ISA95JobOrderReceiverObjectType definition
Attribute |
Value |
|||||
BrowseName |
ISA95JobOrderReceiverObjectType |
|||||
IsAbstract |
False |
|||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the 0:FiniteStateMachineType defined in OPC 10000-16, i.e. inheriting the InstanceDeclarations of that Node. |
||||||
0:HasComponent |
Method |
Store |
|
See 6.2.1.3 |
O |
|
0:HasComponent |
Method |
StoreAndStart |
|
See 6.2.1.4 |
O |
|
0:HasComponent |
Method |
Start |
|
See 6.2.1.5 |
O |
|
0:HasComponent |
Method |
Update |
|
See 6.2.1.9 |
O |
|
0:HasComponent |
Method |
Abort |
|
See 6.2.1.10 |
O |
|
0:HasComponent |
Method |
Stop |
|
See 6.2.1.10 |
O |
|
0:HasComponent |
Method |
Cancel |
|
See 6.2.1.12 |
O |
|
0:HasComponent |
Method |
Clear |
|
See 6.2.1.13 |
O |
|
0:HasComponent |
Method |
Pause |
|
See 6.2.1.7 |
O |
|
0:HasComponent |
Method |
Resume |
|
See 6.2.1.8 |
O |
|
0:HasComponent |
Method |
RevokeStart |
|
See 6.2.1.6 |
O |
|
0:HasProperty |
Variable |
MaxDownloadableJobOrders |
0:UInt16 |
0:PropertyType |
M,RO |
|
0:HasComponent |
Variable |
JobOrderList |
ISA95JobOrderAndStateDataType[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Variable |
WorkMaster |
ISA95WorkMasterDataType[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Variable |
MaterialClassID |
0:String[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Variable |
MaterialDefinitionID |
0:String[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Variable |
EquipmentID |
0:String[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Variable |
PhysicalAssetID |
0:String[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Variable |
PersonnelID |
0:String[] |
0:BaseDataVariableType |
M,RO |
|
0:HasComponent |
Object |
NotAllowedToStart |
|
0:StateType |
|
|
0:HasComponent |
Object |
AllowedToStart |
|
0:StateType |
|
|
0:HasComponent |
Object |
Running |
|
0:StateType |
|
|
0:HasComponent |
Object |
Interrupted |
|
0:StateType |
|
|
0:HasComponent |
Object |
Ended |
|
0:StateType |
|
|
0:HasComponent |
Object |
Aborted |
|
0:StateType |
|
|
0:HasComponent |
Object |
FromNotAllowedToStartToNotAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromNotAllowedToStartToAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToNotAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToRunning |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromRunningToInterrupted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromRunningToEnded |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromRunningToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromInterruptedToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromInterruptedToRunning |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromInterruptedToEnded |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromNotAllowedToStartToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToAborted |
|
0:TransitionType |
|
|
Conformance Units |
||||||
ISA-95 Job Order Receiver V2 |
||||||
|
The components of the ObjectType have additional references which are defined in Table 13.
Table 13 – ISA95JobOrderReceiverObjectType additional References
SourceBrowsePath |
Reference Type |
Is Forward |
TargetBrowsePath |
FromNotAllowedToStartToNotAllowedToStart |
0:FromState |
True |
NotAllowedToStart |
|
0:ToState |
True |
NotAllowedToStart |
|
0:HasCause |
True |
Update |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromNotAllowedToStartToAllowedToStart |
0:FromState |
True |
NotAllowedToStart |
|
0:ToState |
True |
AllowedToStart |
|
0:HasCause |
True |
Start |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromAllowedToStartToNotAllowedToStart |
0:FromState |
True |
AllowedToStart |
|
0:ToState |
True |
NotAllowedToStart |
|
0:HasCause |
True |
RevokeStart |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromAllowedToStartToAllowedToStart |
0:FromState |
True |
AllowedToStart |
|
0:ToState |
True |
AllowedToStart |
|
0:HasCause |
True |
Update |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromAllowedToStartToRunning |
0:FromState |
True |
AllowedToStart |
|
0:ToState |
True |
Running |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromRunningToInterrupted |
0:FromState |
True |
Running |
|
0:ToState |
True |
Interrupted |
|
0:HasCause |
True |
Pause |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromRunningToEnded |
0:FromState |
True |
Running |
|
0:ToState |
True |
Ended |
|
0:HasCause |
True |
Stop |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromRunningToAborted |
0:FromState |
True |
Running |
|
0:ToState |
True |
Aborted |
|
0:HasCause |
True |
Abort |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromInterruptedToAborted |
0:FromState |
True |
Interrupted |
|
0:ToState |
True |
Aborted |
|
0:HasCause |
True |
Abort |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromInterruptedToRunning |
0:FromState |
True |
Interrupted |
|
0:ToState |
True |
Running |
|
0:HasCause |
True |
Resume |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromInterruptedToEnded |
0:FromState |
True |
Interrupted |
|
0:ToState |
True |
Ended |
|
0:HasCause |
True |
Stop |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromNotAllowedToStartToAborted |
0:FromState |
True |
NotAllowedToStart |
|
0:ToState |
True |
Aborted |
|
0:HasCause |
True |
Abort |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
FromAllowedToStartToAborted |
0:FromState |
True |
AllowedToStart |
|
0:ToState |
True |
Aborted |
|
0:HasCause |
True |
Abort |
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
The component Variables of the ISA95JobOrderReceiverObjectType have additional Attributes defined in Table 14.
Table 14 – ISA95JobOrderReceiverObjectType Attribute values for child Nodes
BrowsePath |
Value Attribute |
Description |
||
NotAllowedToStart |
|
The job order is stored but may not be executed. |
||
|
1 |
|
||
AllowedToStart |
|
The job order is stored and may be executed. |
||
|
2 |
|
||
Running |
|
The job order is executing. |
||
|
3 |
|
||
Interrupted |
|
The job order has been temporarily stopped. |
||
|
4 |
|
||
Ended |
|
The job order has been completed and is no longer in execution. |
||
|
5 |
|
||
Aborted |
|
The job order is aborted. |
||
|
6 |
|
||
FromNotAllowedToStartToNotAllowedToStart |
|
This transition is triggered when the Update Method is called and the job order is modified. |
||
|
1 |
|
||
FromNotAllowedToStartToAllowedToStart |
|
This transition is triggered when the Start Method is called. |
||
|
2 |
|
||
FromAllowedToStartToNotAllowedToStart |
|
This transition is triggered when the RevokeStart Method is called. |
||
|
3 |
|
||
FromAllowedToStartToAllowedToStart |
|
This transition is triggered when the Update Method is called and the job order is modified. |
||
|
4 |
|
||
FromAllowedToStartToRunning |
|
This transition is triggered when a job order is started to be executed. |
||
|
5 |
|
||
FromRunningToInterrupted |
|
This transition is triggered when an executing job order gets interrupted, either internally or by the Pause Method. |
||
|
6 |
|
||
FromRunningToEnded |
|
This transition is triggered when the execution of a job order has finished, either internally or by the Stop Method. |
||
|
7 |
|
||
FromRunningToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
8 |
|
||
FromInterruptedToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
9 |
|
||
FromInterruptedToRunning |
|
This transition is triggered when Resume Method is called. |
||
|
10 |
|
||
FromInterruptedToEnded |
|
This transition is triggered when Stop Method is called. |
||
|
11 |
|
||
FromNotAllowedToStartToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
12 |
|
||
FromAllowedToStartToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
13 |
|
JobOrderList - Defines a read-only list of job order information available from the server. The information returned is defined by the server and may be a complete copy of a received job order or may be just the IDs and the state of the job orders. If there are no job orders available from the server, then this may be null.
MaxDownloadableJobOrders – Defines the maximum number of job orders that can be managed at the same time. As all managed job orders are accessible in the JobOrderList, it restricts the length of that array. Max of UInt16 indicates, that there is no limit.
WorkMaster - Defines a read-only set of work master IDs that may be specified in a job order, and the read-only set of parameters that may be specified for a specific work master. If there are no restrictions on what work master IDs can be sent with a job order, then this may be null.
Recipes associated with the job order are identified using the WorkMasterID. The ID in the ISA95WorkMasterDataType is an identification of the Work Master and can be internal identifications, NodeIds, web links, or a client and server agreed to format.
MaterialClassID - Defines a read-only set of Material Classes IDs that may be specified in a job order. If there are no restrictions on what Material Classes IDs can be sent with a job order, then this may be null.
MaterialDefinitionID - Defines a read-only set of Material Definition IDs that may be specified in a job order. If there are no restrictions on what Material Definition IDs can be sent with a job order, then this may be null.
EquipmentID - Defines a read-only set of Equipment Class IDs and Equipment IDs that may be specified in a job order. If there are no restrictions on what Equipment IDs can be sent with a job order, then this may be null.
PhysicalAssetID - Defines a read-only set of Physical Asset Class IDs and Physical Asset IDs that may be specified in a job order. If there are no restrictions on what Physical Asset IDs can be sent with a job order, then this may be null.
PersonnelID - Defines a read-only set of Personnel IDs and Person IDs that may be specified in a job order. If there are no restrictions on what Personnel IDs can be sent with a job order, then this may be null.
The ObjectType inherits from the 0:FiniteStateMachineType to provide the StateMachine all job orders managed by the instances of the ObjectType support. The mandatory CurrentState inherited shall always return a BAD StatusCode, as the Object only provides the meta data of the states of the job orders provided in the JobOrderList. The ObjectType may provide be subtyped to provide SubStateMachines for specific states and also the AvailableStates and AvailableTransitions Variables may be provided to restrict the usage of the StateMachine.
This Method receives a new job order and stores the new job order in local storage, but does not start the job order. After successful execution of the method, the JobOrderList shall have a new entry in state NotAllowedToStart.
The signature of this Method is specified below. Table 15 and Table 16 specify the Arguments and AddressSpace representation, respectively.
Signature
Store (
[in]ISA95JobOrderDataType JobOrder
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 15 – Store Method Arguments
Argument |
Description |
JobOrder |
Contains information defining the job order with all parameters and any material, equipment, or physical asset requirements associated with the job order. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method result codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 16 – Store Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Store |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method receives a new job order and stores the new job order in local storage, and start it as soon as the Job Order receiver is ready to start. After successful execution of the method, the JobOrderList shall have a new entry in state AllowedToStart. Note: the system may internally start executing the job order immediately, so potentially the job order is already in a different state when accessed the first time.
The signature of this Method is specified below. Table 17 and Table 18 specify the Arguments and AddressSpace representation, respectively.
Signature
StoreAndStart (
[in]ISA95JobOrderDataType JobOrder
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 17 – StoreAndStart Method Arguments
Argument |
Description |
JobOrder |
Contains information defining the job order with all parameters and any material, equipment, or physical asset requirements associated with the job order. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 18 – StoreAndStart Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
StoreAndStart |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method starts a job order as soon as the Job Order receiver is ready to start. After successful execution of the method, job order in the JobOrderList shall be in state AllowedToStart.
If multiple job orders have been commanded to start, then the priority and timing values in the job orders shall be used to determine the order of execution of the job orders.
The signature of this Method is specified below. Table 19 and Table 20 specify the Arguments and AddressSpace representation, respectively.
Signature
Start (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 19 – Start Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be started. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 20 – Start Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Start |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method revokes a not started job (in AllowedToStart). After successful execution of the method, job order in the JobOrderList shall be in state NotAllowedToStart.
The signature of this Method is specified below. Table 21 and Table 22 specify the Arguments and AddressSpace representation, respectively.
Signature
RevokeStart (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 21 – RevokeStart Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order where the start is revoked. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4 or Annex B Table 94, and Table 95).
Table 22 – RevokeStart Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
RevokeStart |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method pauses a started job. After successful execution of the method, job order in the JobOrderList shall be in state Interrupted.
The signature of this Method is specified below. Table 23 and Table 24 specify the Arguments and AddressSpace representation, respectively.
Signature
Pause (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 23 – Pause Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be paused. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 24 – Pause Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Pause |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method resumes an interrupted job (in state Interrupted). After successful execution of the method, job order in the JobOrderList shall be in state Running.
The signature of this Method is specified below. Table 25 and Table 26 specify the Arguments and AddressSpace representation, respectively.
Signature
Resume (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 25 – Resume Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be resumed. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 26 – Resume Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Resume |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method updates an existing job order that has not yet been started, with the new order information. All previously stored information is replaced.
The signature of this Method is specified below. Table 27 and Table 28 specify the Arguments and AddressSpace representation, respectively.
Signature
Update (
[in]ISA95JobOrderDataType JobOrder
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 27 – Update Method Arguments
Argument |
Description |
JobOrder |
Contains information defining the job order with all parameters and any material, equipment, or physical asset requirements associated with the job order. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 28 – Update Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Update |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method aborts a job order. After successful execution of the method, job order in the JobOrderList shall be in state Aborted.
The signature of this Method is specified below. Table 29 and Table 30 specify the Arguments and AddressSpace representation, respectively.
Signature
Abort (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 29 – Abort Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be aborted. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94 and Table 95).
Table 30 – Abort Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Abort |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method stops a started job order. After successful execution of the method, job order in the JobOrderList shall be in state Ended.
The signature of this Method is specified below. Table 31 and Table 32 specify the Arguments and AddressSpace representation, respectively.
Signature
Stop (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 31 – Stop Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be stopped. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 32 – Stop Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Stop |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method cancels a not started job order (in AllowedToStart or NotAllowedToStart) and removes the stored information. After successful execution of the method, there shall be no job order with the JobOrderID in the JobOrderList.
The signature of this Method is specified below. Table 33 and Table 34 specify the Arguments and AddressSpace representation, respectively.
Signature
Cancel (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 33 – Cancel Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be canceled. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Note: This specification does not define how a client can access the last comment. It may be displayed in a local HMI or provided in the parameters of the job response.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 34 – Cancel Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Cancel |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method clears any maintained information on the Job Order (usually sent after a receipt of a Job Response with a status of Finished.). After successful execution of the method, there shall be no job order with the JobOrderID in the JobOrderList.
Note: It is server-specific whether Job Orders get cleared by the Server automatically when it runs out of resources or after a period of time or other reasons.
The signature of this Method is specified below. Table 35 and Table 36 specify the Arguments and AddressSpace representation, respectively.
Signature
Clear (
[in]0:String JobOrderID
[in]LocalizedText[] Comment
[out]0:UInt64 ReturnStatus
);
Table 35 – Clear Method Arguments
Argument |
Description |
JobOrderID |
Identification of the Job Order to be cleared. |
Comment |
The comment provides a description of why the method was called. In order to provide the comment in several languages, it is an array of LocalizedText. The array may be empty, when no comment is provided. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 36 – Clear Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
Clear |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This ObjectType describes the overall state of a job order including common SubStateMachines. As the job orders are not represented as Objects in the AddressSpace, but just as structured values, this StateMachine only provides the meta data of the state machine. It may be subtyped to add additional substates.
The ObjectType formally defined in Table 37.
Table 37 – ISA95JobOrderReceiverSubStatesType definition
Attribute |
Value |
|||||
BrowseName |
ISA95JobOrderReceiverSubStatesType |
|||||
IsAbstract |
False |
|||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the ISA95JobOrderReceiverObjectType |
||||||
0:HasComponent |
Object |
NotAllowedToStart |
|
0:StateType |
|
|
0:HasComponent |
Object |
AllowedToStart |
|
0:StateType |
|
|
0:HasComponent |
Object |
Running |
|
0:StateType |
|
|
0:HasComponent |
Object |
Interrupted |
|
0:StateType |
|
|
0:HasComponent |
Object |
Ended |
|
0:StateType |
|
|
0:HasComponent |
Object |
Aborted |
|
0:StateType |
|
|
0:HasComponent |
Object |
FromNotAllowedToStartToNotAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromNotAllowedToStartToAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToNotAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToAllowedToStart |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToRunning |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromRunningToInterrupted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromRunningToEnded |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromRunningToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromInterruptedToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromInterruptedToRunning |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromInterruptedToEnded |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromNotAllowedToStartToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromAllowedToStartToAborted |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
NotAllowedToStartSubstates |
|
ISA95PrepareStateMachineType |
O |
|
0:HasComponent |
Object |
AllowedToStartSubstates |
|
ISA95PrepareStateMachineType |
O |
|
0:HasComponent |
Object |
EndedSubstates |
|
ISA95EndedStateMachineType |
O |
|
0:HasComponent |
Object |
InterruptedSubstates |
|
ISA95InterruptedStateMachineType |
O |
|
Conformance Units |
||||||
ISA-95 Job Control Job Order Receiver SubStates |
||||||
|
The components of the ObjectType have additional references which are defined in Table 38.
Table 38 – ISA95JobOrderReceiverSubStatesType additional References
SourceBrowsePath |
Reference Type |
Is Forward |
TargetBrowsePath |
||
FromNotAllowedToStartToNotAllowedToStart |
0:FromState |
True |
NotAllowedToStart |
||
|
0:ToState |
True |
NotAllowedToStart |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromNotAllowedToStartToAllowedToStart |
0:FromState |
True |
NotAllowedToStart |
||
|
0:ToState |
True |
AllowedToStart |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromAllowedToStartToNotAllowedToStart |
0:FromState |
True |
AllowedToStart |
||
|
0:ToState |
True |
NotAllowedToStart |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromAllowedToStartToAllowedToStart |
0:FromState |
True |
AllowedToStart |
||
|
0:ToState |
True |
AllowedToStart |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromAllowedToStartToRunning |
0:FromState |
True |
AllowedToStart |
||
|
0:ToState |
True |
Running |
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromRunningToInterrupted |
0:FromState |
True |
Running |
||
|
0:ToState |
True |
Interrupted |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromRunningToEnded |
0:FromState |
True |
Running |
||
|
0:ToState |
True |
Ended |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromRunningToAborted |
0:FromState |
True |
Running |
||
|
0:ToState |
True |
Aborted |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromInterruptedToAborted |
0:FromState |
True |
Interrupted |
||
|
0:ToState |
True |
Aborted |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromInterruptedToRunning |
0:FromState |
True |
Interrupted |
||
|
0:ToState |
True |
Running |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromInterruptedToEnded |
0:FromState |
True |
Interrupted |
||
|
0:ToState |
True |
Ended |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromNotAllowedToStartToAborted |
0:FromState |
True |
NotAllowedToStart |
||
|
0:ToState |
True |
Aborted |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
FromAllowedToStartToAborted |
0:FromState |
True |
AllowedToStart |
||
|
0:ToState |
True |
Aborted |
||
|
0:HasCause |
True |
|
||
|
0:HasEffect |
True |
ISA95JobOrderStatusEventType |
||
NotAllowedToStart |
0:HasSubStateMachine |
True |
NotAllowedToStartSubstates |
||
AllowedToStart |
0:HasSubStateMachine |
True |
AllowedToStartSubstates |
||
Ended |
0:HasSubStateMachine |
True |
EndedSubstates |
||
Interrupted |
0:HasSubStateMachine |
True |
InterruptedSubstates |
The component Variables of the ISA95JobOrderReceiverSubStatesType have additional Attributes defined in Table 39.
Table 39 – ISA95JobOrderReceiverSubStatesType Attribute values for child Nodes
BrowsePath |
Value Attribute |
Description |
||
NotAllowedToStart |
|
The job order is stored but may not be executed. |
||
|
1 |
|
||
AllowedToStart |
|
The job order is stored and may be executed. |
||
|
2 |
|
||
Running |
|
The job order is executing. |
||
|
3 |
|
||
Interrupted |
|
The job order has been temporarily stopped. |
||
|
4 |
|
||
Ended |
|
The job order has been completed and is no longer in execution. |
||
|
5 |
|
||
Aborted |
|
The job order is aborted. |
||
|
6 |
|
||
FromNotAllowedToStartToNotAllowedToStart |
|
This transition is triggered when the Update Method is called and the job order is modified. |
||
|
1 |
|
||
FromNotAllowedToStartToAllowedToStart |
|
This transition is triggered when the Start Method is called. |
||
|
2 |
|
||
FromAllowedToStartToNotAllowedToStart |
|
This transition is triggered when the RevokeStart Method is called. |
||
|
3 |
|
||
FromAllowedToStartToAllowedToStart |
|
This transition is triggered when the Update Method is called and the job order is modified. |
||
|
4 |
|
||
FromAllowedToStartToRunning |
|
This transition is triggered when a job order is started to be executed. |
||
|
5 |
|
||
FromRunningToInterrupted |
|
This transition is triggered when an executing job order gets interrupted, either internally or by the Pause Method. |
||
|
6 |
|
||
FromRunningToEnded |
|
This transition is triggered when the execution of a job order has finished, either internally or by the Stop Method. |
||
|
7 |
|
||
FromRunningToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
8 |
|
||
FromInterruptedToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
9 |
|
||
FromInterruptedToRunning |
|
This transition is triggered when Resume Method is called. |
||
|
10 |
|
||
FromInterruptedToEnded |
|
This transition is triggered when Stop Method is called. |
||
|
11 |
|
||
FromNotAllowedToStartToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
12 |
|
||
FromAllowedToStartToAborted |
|
This transition is triggered when Abort Method is called. |
||
|
13 |
|
||
NotAllowedToStartSubstates |
|
Substates of NotAllowedToStart |
||
AllowedToStartSubstates |
|
Substates of AllowedToStart |
||
EndedSubstates |
|
Substates of Ended |
||
InterruptedSubstates |
|
Substates of Interrupted |
This ObjectType describes a SubStateMachine that a job order may use while already stored in the system but not being executed. The ObjectType formally defined in Table 40.
Table 40 – ISA95PrepareStateMachineType definition
Attribute |
Value |
|||||
BrowseName |
ISA95PrepareStateMachineType |
|||||
IsAbstract |
False |
|||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the 0:FiniteStateMachineType defined in OPC 10000-16, i.e. inheriting the InstanceDeclarations of that Node. |
||||||
0:HasComponent |
Object |
Waiting |
|
0:StateType |
|
|
0:HasComponent |
Object |
Ready |
|
0:StateType |
|
|
0:HasComponent |
Object |
Loaded |
|
0:StateType |
|
|
0:HasComponent |
Object |
FromWaitingToReady |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromReadyToLoaded |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromReadyToWaiting |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromLoadedToReady |
|
0:TransitionType |
|
|
0:HasComponent |
Object |
FromLoadedToWaiting |
|
0:TransitionType |
|
|
Conformance Units |
||||||
ISA-95 Job Control Job Order Receiver SubStates |
||||||
|
The components of the ObjectType have additional references which are defined in Table 41.
Table 41 – ISA95PrepareStateMachineType additional References
SourceBrowsePath |
Reference Type |
Is Forward |
TargetBrowsePath |
FromWaitingToReady |
0:FromState |
True |
Waiting |
|
0:ToState |
True |
Ready |
FromReadyToLoaded |
0:FromState |
True |
Ready |
|
0:ToState |
True |
Loaded |
FromReadyToWaiting |
0:FromState |
True |
Ready |
|
0:ToState |
True |
Waiting |
FromLoadedToReady |
0:FromState |
True |
Loaded |
|
0:ToState |
True |
Ready |
FromLoadedToWaiting |
0:FromState |
True |
Loaded |
|
0:ToState |
True |
Waiting |
The component Variables of the ISA95PrepareStateMachineType have additional Attributes defined in Table 42.
Table 42 – ISA95PrepareStateMachineType Attribute values for child Nodes
BrowsePath |
Value Attribute |
Description |
||
Waiting |
|
The necessary pre-conditions have not been met and the job order is not ready to run. |
||
|
1 |
|
||
Ready |
|
The necessary pre-conditions have been met and the job order is ready to run, awaiting a Start command. |
||
|
2 |
|
||
Loaded |
|
In situations where only one job may be in active memory and is able to be run, then the job is loaded in active memory, the necessary pre-conditions have been met, and the job order is ready to run, awaiting a Start command. |
||
|
3 |
|
||
FromWaitingToReady |
|
This transition is triggered when the system is ready to start the execution of the job order. |
||
|
1 |
|
||
FromReadyToLoaded |
|
This transition is triggered when the program or configuration to execute the job order is loaded. |
||
|
2 |
|
||
FromReadyToWaiting |
|
This transition is triggered when the system is not ready to start the execution of the job order anymore. |
||
|
3 |
|
||
FromLoadedToReady |
|
This transition is triggered when the program or configuration to execute the job order is unloaded. |
||
|
4 |
|
||
FromLoadedToWaiting |
|
This transition is triggered when the system is not ready to start the execution of the job order anymore. |
||
|
5 |
|
This ObjectType describes a SubStateMachine that a job order may use after being executed. The ObjectType formally defined in Table 43.
Table 43 – ISA95EndedStateMachineType definition
Attribute |
Value |
||||
BrowseName |
ISA95EndedStateMachineType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the 0:FiniteStateMachineType defined in OPC 10000-16, i.e. inheriting the InstanceDeclarations of that Node. |
|||||
0:HasComponent |
Object |
Completed |
|
0:StateType |
|
0:HasComponent |
Object |
Closed |
|
0:StateType |
|
0:HasComponent |
Object |
FromCompletedToClosed |
|
0:TransitionType |
|
Conformance Units |
|||||
ISA-95 Job Control Job Order Receiver SubStates |
|||||
|
The components of the ObjectType have additional references which are defined in Table 44.
Table 44 – ISA95EndedStateMachineType additional References
SourceBrowsePath |
Reference Type |
Is Forward |
TargetBrowsePath |
FromCompletedToClosed |
0:FromState |
True |
Completed |
|
0:ToState |
True |
Closed |
The component Variables of the ISA95EndedStateMachineType have additional Attributes defined in Table 45.
Table 45 – ISA95EndedStateMachineType Attribute values for child Nodes
BrowsePath |
Value Attribute |
Description |
||
Completed |
|
The job order has been completed and is no longer in execution. |
||
|
1 |
|
||
Closed |
|
The job order has been completed and no further post processing is performed. |
||
|
2 |
|
||
FromCompletedToClosed |
|
This transition is triggered when the system has finalized post processing of a ended job order. |
||
|
1 |
|
This ObjectType describes a SubStateMachine a job order may use when being interrupted. The ObjectType formally defined in Table 46.
Table 46 – ISA95InterruptedStateMachineType definition
Attribute |
Value |
||||
BrowseName |
ISA95InterruptedStateMachineType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the 0:FiniteStateMachineType defined in OPC 10000-16, i.e. inheriting the InstanceDeclarations of that Node. |
|||||
0:HasComponent |
Object |
Held |
|
0:StateType |
|
0:HasComponent |
Object |
Suspended |
|
0:StateType |
|
0:HasComponent |
Object |
FromHeldToSuspended |
|
0:TransitionType |
|
0:HasComponent |
Object |
FromSuspendedToHeld |
|
0:TransitionType |
|
Conformance Units |
|||||
ISA-95 Job Control Job Order Receiver SubStates |
|||||
|
The components of the ObjectType have additional references which are defined in Table 47.
Table 47 – ISA95InterruptedStateMachineType additional References
SourceBrowsePath |
Reference Type |
Is Forward |
TargetBrowsePath |
FromHeldToSuspended |
0:FromState |
True |
Held |
|
0:ToState |
True |
Suspended |
FromSuspendedToHeld |
0:FromState |
True |
Suspended |
|
0:ToState |
True |
Held |
The component Variables of the ISA95InterruptedStateMachineType have additional Attributes defined in Table 48.
Table 48 – ISA95InterruptedStateMachineType Attribute values for child Nodes
BrowsePath |
Value Attribute |
Description |
||
Held |
|
The job order has been temporarily stopped due to a constraint of some form. |
||
|
1 |
|
||
Suspended |
|
The job order has been temporarily stopped due to a deliberate decision within the execution system. |
||
|
2 |
|
||
FromHeldToSuspended |
|
This transition is triggered when the system has switched the job order from internally held to externally suspended, for example by a call of the Pause Method. |
||
|
1 |
|
||
FromSuspendedToHeld |
|
This transition is triggered when the system has switched the job order from externally suspended to an internal held, for example by a call of the Resume Method. |
||
|
2 |
|
The ObjectType defines Events that can be send out every time the state of a job order is changing.
Table 49 contains the AddressSpace definition of an ISA95JobOrderReceiverObjectType.
Table 49 – ISA95JobOrderStatusEventType AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
ISA95JobOrderStatusEventType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
Data Type |
TypeDefinition |
Other |
Subtype of the 0:BaseEventType defined in OPC 10000-5 |
|||||
0:HasProperty |
Variable |
JobOrder |
ISA95JobOrderDataType |
0:PropertyType |
M |
0:HasProperty |
Variable |
JobState |
ISA95StateDataType[] |
0:PropertyType |
M |
0:HasProperty |
Variable |
JobResponse |
ISA95JobResponseDataType |
0:PropertyType |
M |
Conformance Units |
|||||
ISA-95 Job Control Job Response Provider Job Order Status Events |
|||||
|
The JobOrder contains the planned job order received by the system.
The JobState contains the current state of the job order. Clients may filter for Events of specific states, for example only receiving Events of ended job orders. The array shall provide at least one entry representing the top level state and potentially additional entries representing substates. The first entry shall be the top level entry, having the BrowsePath set to null. The order of the substates is not defined.
The JobResponse contains the current job response of the job order. The State in the JobResponse shall be identical to the JobState.
The ISA95JobResponseProviderObjectType contains a method to receive unsolicited job response requests as illustrated in Figure 6.
Figure 6 – ISA95JobResponseProvider Methods
Table 50 is the AddressSpace definition of an ISA95JobResponseProviderObjectType.
Table 50 – ISA95JobResponseProviderObjectType AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
ISA95JobResponseProviderObjectType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
Data Type |
TypeDefinition |
Other |
Subtype of the BaseObjectType defined in OPC 10000-5 |
|||||
0:HasComponent |
Method |
RequestJobResponseByJobOrderID |
|
See 6.2.7.2 |
M |
0:HasComponent |
Method |
RequestJobResponseByJobOrderState |
|
See 6.2.7.3 |
M |
0:HasComponent |
Variable |
JobOrderResponseList |
ISA95JobResponse DataType[] |
BaseData VariableType |
O |
0:GeneratesEvent |
ObjectType |
ISA95JobOrderStatusEventType |
|
|
|
Conformance Units |
|||||
ISA-95 Job Response Provider V2 |
|||||
|
RequestJobResponseByJobOrderID – Defines the ISA95JobResponseRequest Method which receives requests for Job Responses by JobOrderID.
RequestJobResponseByJobOrderState – Defines the ISA95JobResponseRequest Method which receives requests for Job Responses by JobOrderState.
The ISA95JobOrderReceiverObjectType with the StoreAndStart Method may be paired with an ISA95JobResponseProviderObjectType and the RequestJobResponseByJobOrderID Method, to send a Job Order and query for a JobResponse. This transaction is illustrated in Figure 7.
Objects may generate Events of ISA95JobOrderStatusEventType for every change of the state of a job order managed by the Object. In that case, the JobResponse of the Event shall be identical to the entry in the JobOrderResponseList of the job order and the JobOrder to the counterpart job order receiver Objects JobOrderList.
Figure 7 – StoreAndStart and RequestJobResponseByJobOrderID Transaction Example
The JobOrderResponseList, if provided, shall contain one entry for each job order of the corresponding job order receiver Object provided in the JobOrderList which is not in the states AllowedToStart or NotAllowedToStart. That means, for all job orders that have at least started the execution and are still managed by the job order receiver Object, there shall be an entry. The states of the job orders in both lists (JobOrderList and JobOrderResponseList) shall match for each job order.
When a Job Order gets removed from the JobOrderList, it shall also get removed from the JobOrderResponseList.
This Method is used to return Job Responses for unsolicited requests for responses from a job order.
The signature of this Method is specified below. Table 51 and Table 52 specify the Arguments and AddressSpace representation, respectively.
Signature
RequestJobResponseByJobOrderID (
[in]0:String JobOrderID
[out]ISA95JobResponseDataTypeJobResponse
[out]0:UInt64 ReturnStatus
);
Table 51 – RequestJobResponseByJobOrderID Method Arguments
Argument |
Description |
JobOrderID |
Contains an ID of the job order, as specified by the method caller. |
JobResponse |
Contains information about the execution of a job order, such as the current status of the job, actual material consumed, actual material produced, actual equipment used, and job specific data. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 52 – RequestJobResponseByJobOrderID Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
RequestJobResponseByJobOrderID |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
This Method is used to return Job Responses for unsolicited requests for responses from a job order.
The signature of this Method is specified below. Table 53 and Table 54 specify the Arguments and AddressSpace representation, respectively.
Signature
RequestJobResponseByJobOrderState (
[in] ISA95StateDataType[] JobOrderState
[out]ISA95JobResponseDataType[]JobResponses
[out]0:UInt64 ReturnStatus
);
Table 53 – RequestJobResponseByJobOrderState Method Arguments
Argument |
Description |
JobOrderState |
Contains a job status of the JobResponse to be returned. The array shall provide at least one entry representing the top level state and potentially additional entries representing substates. The first entry shall be the top level entry, having the BrowsePath set to null. The order of the substates is not defined. |
JobResponses |
Contains a list of information about the execution of a job order, such as the current status of the job, actual material consumed, actual material produced, actual equipment used, and job specific data. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 54 – RequestJobResponseByJobOrderState Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
RequestJobResponseByJobOrderState |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
A Job Response Receiver receives unsolicited Job Responses, usually as the result of completion of a job, or at intermediate points within the job as illustrated in Figure 8.
Figure 8 – ISA95JobResponseReceiverObjectType
Table 55 is the AddressSpace definition of an ISA95JobResponseReceiverObjectType.
Table 55 – ISA95JobResponseReceiverObjectType AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
ISA95JobResponseReceiverObjectType |
||||
IsAbstract |
False |
||||
References |
NodeClass |
BrowseName |
Data Type |
TypeDefinition |
Other |
Subtype of the BaseObjectType defined in OPC 10000-5 |
|||||
0:HasComponent |
Method |
ReceiveJobResponse |
|
See 6.2.8.2 |
M |
Conformance Units |
|||||
ISA-95 Job Response Receiver V2 |
|||||
|
ReceiveJobResponse – Defines the ReceiveJobResponse Method which receives unsolicited Job Responses.
The ISA95JobOrderReceiverObjectType with the ReceiveJobOrder method may often be paired with an ISA95JobResponseReceiverObjectType and the ReceiveJobResponse method, to send a Job Order and receive a JobResponse. This transaction is illustrated in Figure 9.
Figure 9 – ReceiveJobOrder and ReceiveJobResponse Transaction Example
The ReceiveJobResponse method is used to receive unsolicited Job Responses.
The signature of this Method is specified below. Table 56 and Table 57 specify the Arguments and AddressSpace representation, respectively.
Signature
ReceiveJobResponse(
[in]ISA95JobResponseDataType JobResponse
[out]0:UInt64 ReturnStatus
);
Table 56 – ReceiveJobResponse Method Arguments
Argument |
Description |
JobResponse |
Contains information about the execution of a job order, such as actual material consumed, actual material produced, actual equipment used, and job specific data. |
ReturnStatus |
Returns the status of the method execution. |
B.2 defines common values for ReturnStatus.
Method Result Codes are defined as part of the Call service (see OPC 10000-4, or Annex B Table 94, and Table 95).
Table 57 – ReceiveJobResponse Method AddressSpace Definition
Attribute |
Value |
||||
BrowseName |
ReceiveJobResponse |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
ModellingRule |
0:HasProperty |
Variable |
0:InputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |
0:HasProperty |
Variable |
0:OutputArguments |
0:Argument[] |
0:PropertyType |
Mandatory |