The NotificationType is used to structure information given in the MachineToolType. It groups the messages and alerts of the machine tool and contains the prognoses for the machining operation.

The NotificationType is formally defined in Table 53.

Table 53 – NotificationType Definition

Attribute

Value

BrowseName

NotificationType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in OPC 10000-5 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Object

Messages

MessagesType

O

0:HasComponent

Object

Prognoses

PrognosisListType

O

Messages is the node sending events, which are used for errors, warnings and messages. The respective references are formally defined in Table 54.

Prognoses contains a list of the current prognoses for machine tool operation. Reliability for any prognosis in the list will rely on the specific case and cannot be guaranteed to be precise.

The MessagesType is used to define the object sending events. These events are used for errors, warnings and messages.

The MessagesType is formally defined in Table 54.

Table 54 – MessagesType Definition

Attribute

Value

BrowseName

MessagesType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in OPC 10000-5 i.e. inheriting the InstanceDeclarations of that Node.

0:GeneratesEvent

ObjectType

AlertType

0:GeneratesEvent

ObjectType

NotificationEventType

To differentiate between errors, warnings and messages on the interface, the following convention shall be used, with regard to the recommendations in OPC 10000-5:

Errors have a high Severity between 667 and 1000 and are using an AlertType.

Warnings have a medium Severity between 334 and 666 and are using an AlertType.

Messages have a low Severity lower or equal to 333 and are using a NotificationEventType.

The PrognosisListType is a structuring node to collect predictions about future times when certain interaction with the machine tool may be necessary.

The PrognosisListType is formally defined in Table 55.

Table 55 – PrognosisListType Definition

Attribute

Value

BrowseName

PrognosisListType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in OPC 10000-5 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Object

<Prognosis>

PrognosisType

OP

0:HasProperty

Variable

NodeVersion

String

0:PropertyType

O, RO

0:GeneratesEvent

ObjectType

0:GeneralModelChangeEventType

<Prognosis > is an optional placeholder for PrognosisType nodes. Thus, the PrognosisListType can have any number of prognoses as components, including none. If the number of prognoses in this list changes during the runtime of the OPC UA server, the NodeVersion and GeneralModelChangeEventType can be used to indicate those changes. The NodeVersion and the GeneralModelChangeEventType are intended to be used in the way defined in OPC 10000-3 and 7.3.

The PrognosisType is the most basic prognosis type and the supertype to more specific prognosis types. It is an abstract type, meaning it is not instantiated, only the subtypes are.

The PrognosisType is formally defined in Table 56.

Table 56 – PrognosisType Definition

Attribute

Value

BrowseName

PrognosisType

IsAbstract

True

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in OPC 10000-5 i.e. inheriting the InstanceDeclarations of that Node.

0:HasSubtype

ObjectType

MaintenancePrognosisType

Defined in 8.6.5

0:HasSubtype

ObjectType

ManualActivityPrognosisType

Defined in 8.6.6

0:HasSubtype

ObjectType

PartUnloadPrognosisType

Defined in 8.6.8

0:HasSubtype

ObjectType

ProcessChangeoverPrognosisType

Defined in 8.6.9

0:HasSubtype

ObjectType

ProductionJobEndPrognosisType

Defined in 8.6.10

0:HasSubtype

ObjectType

PartLoadPrognosisType

Defined in 8.6.7

0:HasSubtype

ObjectType

ToolLoadPrognosisType

Defined in 8.6.12

0:HasSubtype

ObjectType

ToolUnloadPrognosisType

Defined in 8.6.13

0:HasSubtype

ObjectType

ToolChangePrognosisType

Defined in 8.6.11

0:HasSubtype

ObjectType

UtilityChangePrognosisType

Defined in 8.6.14

0:HasProperty

Variable

PredictedTime

0:UtcTime

0:PropertyType

M, RO

PredictedTime is used to indicate the point in time the predicted user interaction will become necessary.

The MaintenancePrognosisType is a prognosis indicating at which time in the future a specific maintenance action may become necessary.

Examples may be oil changes, filter mat replacements or regular checks.

The MaintenancePrognosisType is formally defined in Table 57.

Table 57 – MaintenancePrognosisType Definition

Attribute

Value

BrowseName

MaintenancePrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Activity

0:LocalizedText

0:BaseDataVariableType

M, RO

Activity indicates the specific maintenance task to perform.

The ManualActivityPrognosisType is a prognosis indicating at which time in the future a manual intervention may become necessary.

An example for a manual intervention is a measurement or control activity, which needs to be carried out during the run of the program.

The ManualActivityPrognosisType is formally defined in Table 58.

Table 58 – ManualActivityPrognosisType Definition

Attribute

Value

BrowseName

ManualActivityPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Activity

0:LocalizedText

0:BaseDataVariableType

M, RO

Activity indicates the specific maintenance task to perform.

The PartLoadPrognosisType is a prognosis indicating at which time in the future a part needs to be loaded into the machine tool in order to be processed further.

The PartLoadPrognosisType is formally defined in Table 59.

Table 59 – PartLoadPrognosisType Definition

Attribute

Value

BrowseName

PartLoadPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Location

0:LocalizedText

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

PartIdentifier

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

PartName

0:String

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

PartNodeId

0:NodeId

0:BaseDataVariableType

O, RO

Location is the place where the part to load will be located within the machine tool. This may for example be the indication and number of the working area.

PartIdentifier shall be identical to the Identifier property of the ProductionPartType instance the prognosis relates to.

PartName shall be identical to the Name property of the ProductionPartType instance the prognosis relates to if the part is modelled in the AddressSpace. Otherwise it is filled with the most appropriate value as a name of the part.

PartNodeId shall reference the ProductionPartType instance the prognosis relates to.

The PartUnloadPrognosisType is a prognosis indicating at which time in the future a part unload may become necessary.

The PartUnloadPrognosisType is formally defined in Table 60.

Table 60 – PartUnloadPrognosisType Definition

Attribute

Value

BrowseName

PartUnloadPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Location

0:LocalizedText

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

PartIdentifier

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

PartName

0:String

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

PartNodeId

0:NodeId

0:BaseDataVariableType

O, RO

Location is the place where the part to unload is located within the machine tool. This may for example be the indication and number of the working area.

PartIdentifier shall be identical to the Identifier property of the ProductionPartType instance the prognosis relates to.

PartName shall be identical to the Name property of the ProductionPartType instance the prognosis relates to if the part is modelled in the AddressSpace. Otherwise it is filled with the most appropriate value as a name of the part.

PartNodeId shall reference the ProductionPartType instance the prognosis relates to.

The ProcessChangeoverPrognosisType is a prognosis indicating at which time in the future the machine tool has to be prepared for its next manufacturing process. This might e.g. be the change of a fixture within the machine tool. It can also be used to group different manual steps like tool changes and loading new parts when done between processes, usually given as setup instruction.

The ProcessChangeoverPrognosisType is formally defined in Table 61.

Table 61 – ProcessChangeoverPrognosisType Definition

Attribute

Value

BrowseName

ProcessChangeoverPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Activity

0:LocalizedText

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

Location

0:LocalizedText

0:BaseDataVariableType

M, RO

Activity indicates the specific task(s) to perform or the indication of the setup instruction.

Location is the place where the activity for the process changeover is located within the machine tool. This may for example be the indication and number of the working area.

The ProductionJobEndPrognosisType is the estimated point in time of the end of the current Job.

The ProductionJobEndPrognosisType is formally defined in Table 62.

Table 62 – ProductionJobEndPrognosisType Definition

Attribute

Value

BrowseName

ProductionJobEndPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

SourceIdentifier

0:String

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

JobNodeId

0:NodeId

0:BaseDataVariableType

O, RO

The SourceIdentifier Variable shall be identical to the Identifier property belonging to the ProductionJobType the prognosis refers to if modelled in the AddressSpace. Otherwise it shall contain the identifier of the job.

The JobNodeId shall reference the NodeId of the ProductionJobType instance the prognosis refers to.

The ToolChangePrognosisType is a prognosis indicating at which time in the future a tool within the machine tool or a magazine shall be exchanged with a similar tool (usually due to wear).

The ToolChangePrognosisType is formally defined in Table 63.

Table 63 – ToolChangePrognosisType Definition

Attribute

Value

BrowseName

ToolChangePrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Location

0:LocalizedText

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

ToolIdentifier

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

ToolName

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

ToolNodeId

0:NodeId

0:BaseDataVariableType

O, RO

Location refers to the place the tool shall be removed from within the machine tool’s system boundary, e.g. a tool magazine or the workspace of the machine tool.

ToolIdentifier is identical to the Identifier property of the tool to change, if applicable. If the tool is not modelled in the AddressSpace of the OPC UA Server, this component shall be filled accordingly.

ToolName contains the name of the tool to change, as described for the BaseToolType in 8.5.3. If the tool is not available in the AddressSpace, the ToolName shall be given in a similar manner.

ToolNodeId is the NodeId of the BaseToolType subtype instance this prognosis refers to.

The ToolLoadPrognosisType is a prognosis indicating at which time in the future a tool will be loaded into the machine tool. This prognosis indicates loading a tool within the machine tool’s workspace or a tool magazine the machine tool has access to. The ToolLoadPrognosisType shall also be used for prognoses to load tools larger than standard tools (which might imply different work routines).

If a tool that already is in the machine is intended to be exchanged with a similar tool, the ToolChangePrognosisType shall be used.

The ToolLoadPrognosisType is formally defined in Table 64.

Table 64 – ToolLoadPrognosisType Definition

Attribute

Value

BrowseName

ToolLoadPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Location

0:LocalizedText

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

ToolIdentifier

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

ToolName

0:String

0:BaseDataVariableType

O, RO

Location refers to the place the tool shall be put within the machine tool’s system boundary, e.g. a tool magazine or the workspace of the machine tool.

ToolIdentifier contains the unique identifier of the tool. This value shall be the same as for the Identifier Property of the BaseToolType. If the tool is not available in the AddressSpace, the ToolIdentifier shall be given in a similar manner. The ToolIdentifier of ToolLoadPrognosisType and ToolUnloadPrognosisType shall match exactly for the same tool.

ToolName contains the name of the tool, as described for the BaseToolType in 8.5.3. If the tool is not available in the AddressSpace, the ToolName shall be given in a similar manner.

The ToolUnloadPrognosisType is a prognosis indicating at which time in the future a tool will be loaded out of the machine tool or a tool magazine.

The ToolUnloadPrognosisType is formally defined in Table 65.

Table 65 – ToolUnloadPrognosisType Definition

Attribute

Value

BrowseName

ToolUnloadPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

Location

0:LocalizedText

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

ToolIdentifier

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

ToolName

0:String

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

ToolNodeId

0:NodeId

0:BaseDataVariableType

O, RO

Location refers to the place the tool shall be removed from within the machine tool’s system boundary, e.g. a tool magazine or the workspace of the machine tool.

ToolIdentifier contains the unique identifier of the tool. This value shall be the same as for the Identifier Property of the BaseToolType. If the tool is not available in the AddressSpace, the ToolIdentifier shall be given in a similar manner. The ToolIdentifier of ToolLoadPrognosisType and ToolUnloadPrognosisType shall match exactly for the same tool.

ToolName contains the name of the tool, as described for the BaseToolType in 8.5.3. If the tool is not available in the AddressSpace, the ToolName shall be given in a similar manner.

ToolNodeId contains the NodeId of the appropriate BaseToolType subtype instance.

The UtilityChangePrognosisType is the estimated point in time at which a utility needs to be refilled or changed. Utilities are for example coolants, filters or scrap material storages.

The UtilityChangePrognosisType is formally defined in Table 66.

Table 66 – UtilityChangePrognosisType Definition

Attribute

Value

BrowseName

UtilityChangePrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the PrognosisType defined in 8.6.4 i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Variable

UtilityName

0:String

0:BaseDataVariableType

M, RO

UtilityName provides an identifier of the utility to be changed inside the machine tool. This variable can for example be used by human personnel to prepare the right material for the utility change.