An OPC UA Server must provide the CncInterface Object of type CncInterfaceType when supporting this companion standard. The CncInterface manages
- a list containing all CNC axis Objects (CncAxisList of type CncAxisListType),
- a list containing all CNC spindle Objects (CncSpindleList of type CncSpindleListType) and
- a list containing all CNC channel Objects (CncChannelList of type CncChannelListType).
CNC Channel Objects shall reference all CNC drive Objects (axes, spindles) affiliated to this channel.
If a CNC system’s OPC UA Server supports file access, the entry point to the file system is a FileSystem Object in the standard UA Namespace (0:http://opcfoundation.org/UA/) that must be subordinated to the CncInterface Object.
There are concepts for the system architecture of an OPC UA based CNC data interface illustrated in Figure 20 and Figure 21. Both enable to provide and realize the information model described in this document. However it has to be considered that there are OPC UA specific mechanisms used by this information model that need a closely coupled link to the CNC, e.g. the alarm and event mechanisms or the file access intents.
Figure 20 – Integrated OPC UA Server into CNC control for realizing OPC UA Information Model for CNC Systems
Figure 21 – Decoupled OPC UA Server from CNC control for realizing OPC UA Information Model for CNC Systems
Table 33 defines the namespace metadata for this specification. The Object is used to provide version information for the namespace and an indication about static Nodes. Static Nodes are identical for all Attributes in all Servers, including the Value Attribute. See OPC 10000-5 for more details.
The information is provided as Object of type NamespaceMetadataType. This Object is a component of the Namespaces Object that is part of the Server Object. The NamespaceMetadataType ObjectType and its Properties are defined in OPC 10000-5.
The version information is also provided as part of the ModelTableEntry in the UANodeSet XML file. The UANodeSet XML schema is defined in OPC 10000-6.
Table 33 – NamespaceMetadata Object for this Specification
Attribute |
Value |
|||
BrowseName |
||||
References |
BrowseName |
DataType |
Value |
|
HasProperty |
NamespaceUri |
String |
||
HasProperty |
NamespaceVersion |
String |
1.00 |
|
HasProperty |
NamespacePublicationDate |
DateTime |
2017-xx-xx |
|
HasProperty |
IsNamespaceSubset |
Boolean |
False |
|
HasProperty |
StaticNodeIdTypes |
IdType[] |
{Numeric} |
|
HasProperty |
StaticNumericNodeIdRange |
NumericRange[] |
Null |
|
HasProperty |
StaticStringNodeIdPattern |
String |
Null |
This chapter defines the corresponding Profiles and Conformance Units for the “OPC UA Information Model for CNC Systems”. Profiles are named groupings of Conformance Units. Facets are Profiles that will be combined with other Profiles to define the complete functionality of an OPC UA Server or Client. The following tables specify the facets available for Servers that implement the “OPC UA Information Model for CNC systems” companion standard.
Table 34 describes the Conformance Units included in the minimum needed facet. It allows to realize the base mechanisms of this “OPC UA Information Model for CNC systems” companion standard, data access of simple and complex data types and the alarm and event mechanisms.
Table 34 – Base CNC Data Interface Server Facet Definition
Conformance Unit |
Description |
Optional/ Mandatory |
CNC Basis Data Access |
Support the interface structure and the access of all data provided by the CNC data interface. |
Mandatory |
CNC Alarming |
Support the alarm and event types defined by this “OPC UA Information Model for CNC systems” companion standard. |
Mandatory |
Table 35 defines a facet for the support of model change events to inform about model changes, e.g. change of the channel affiliation of a CNC axis.
Table 35 – Model Change Server Facet Definition
Conformance Unit |
Description |
Optional/ Mandatory |
CNC Model Change |
Support the model change event mechanisms proposed by this “OPC UA Information Model for CNC systems” companion standard. |
Mandatory |
Table 36 defines a facet for the support of access of a CNC file system.
Table 36 – File Access Server Facet Definition
Conformance Unit |
Description |
Optional/ Mandatory |
CNC File Access |
Support the file access mechanisms proposed by this “OPC UA Information Model for CNC systems” companion standard. |
Mandatory |
Table 37 defines a facet available for Clients that implement the “OPC UA Information Model for CNC systems” standard.
Table 37 – CNC Data Interface Client Facet Definition
Conformance Unit |
Description |
Optional/ Mandatory |
CNC Client Information Model |
Consume objects that conform to the types specified in the “OPC UA Information Model for CNC systems” |
Mandatory |
CNC Client Model Change |
Consume the model change event proposed in the “OPC UA Information Model for CNC systems”. |
Optional |
CNC Client File Access |
Transfer files bidirectional between the OPC UA Server of a CNC supporting this “OPC UA Information Model for CNC systems” and an OPC UA Client. |
Optional |
Namespaces are used by OPC UA to create unique identifiers across different naming authorities. The NodeId and BrowseName Attributes are identifiers. A Node in the UA Address Space is unambiguously identified using a NodeId. Unlike NodeIds, the BrowseName cannot be used to unambiguously identify a Node. Different Nodes may have the same BrowseName. They are used to build a browse path between two Nodes or to define a standard Property.
Servers may often choose to use the same namespace for the NodeId and the BrowseName. However, if they want to provide a standard Property, its BrowseName shall have the namespace of the standards body although the namespace of the NodeId reflects something else, for example the EngineeringUnits Property. All NodeIds of nodes not defined in this specification shall not use the standard namespaces.
Table 38 provides a list of mandatory and optional namespaces used in an OPC UA Server of a CNC system.
Table 38 – Namespaces used in an OPC UA Server of a CNC system
Namespace |
Description |
Use |
Namespace for NodeIds and BrowsNames defined in the OPC UA specification. This namespace shall have namespace index 0. |
Mandatory |
|
Local Server URI |
Namespace for Nodes defined in the local Server. This may include types and instances used in a device represented by the Server. This namespace shall have namespace index 1. |
Mandatory |
Namespace for NodeIds and BrowsNames defined in this specification. The namespace index is Server specific. |
Mandatory |
Table 39 provides a list of namespaces and their index used for BrowseNames in this specification. The default namespace of this specification is not listed since all BrowseNames without prefix use this default namespace.
Table 39 – Namespaces used in this specification
Namespace |
Namespace Index |
Example |
0 |
0:EngineeringUnits |
|
|
|
|