13 Profiles and Namespaces

13.1 Namespace Metadata

Table 157 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 NamespacesObject 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 157 – NamespaceMetadata Object for this Specification
Attribute Value
BrowseName http://opcfoundation.org/UA/MachineVision
References BrowseName DataType Value
HasPropertyNamespaceUriStringhttp://opcfoundation.org/UA/MachineVision
HasPropertyNamespaceVersionString1.0
HasPropertyNamespacePublicationDateDateTime2018-06-18
HasPropertyIsNamespaceSubsetBooleanFalse
HasPropertyStaticNodeIdTypesIdType[]
HasPropertyStaticNumericNodeIdRangeNumericRange[]
HasPropertyStaticStringNodeIdPatternString

13.2 Conformance Units

13.2.1 Overview

This section defines Conformance Units that are specific to the OPC UA Machine Vision Information model. These Conformance Units are separated into Conformance Units that are Server specific and those that are Client specific.

13.2.2 Server

Table 158 defines the server based Conformance Units.

Table 158 – Definition of Server Conformance Units
Category Title Description
ServerVision System – Basic Vision SystemThe VisionSystemType with all mandatory sub nodes is implemented by the server.
ServerVision System – Basic Result ManagementThe Result Management node with all mandatory sub nodes is implemented by the server.
ServerVision System – Basic Configuration ManagementThe ConfigurationManagement node with all mandatory sub nodes is implemented by the server.
ServerVision System – Basic Recipe ManagementThe RecipeManagement node with all mandatory sub nodes is implemented by the server.
ServerVision System – Safety State ManagementThe SafetyStateManagement node is implemented and VisionSafetyEvents are generated by the server.
ServerVision System – System State InformationThe SystemState node is implemented and used by the server to publish its current state.
ServerVision System – Diagnostic EventsThe DiagnosticLevel node is implemented, used by the server to publish the current diagnostic level, and can be written by the Client to set the current diagnostic level. VisionDiagnosticInfoEvents are generated by the server.
ServerVision System – Information Events VisionInformationEvents are generated by the server.
ServerVision System – Error Conditions VisionWarningConditions , VisionErrorConditions and VisionPersistentErrorConditions are generated by the server.
ServerVision State Machine – Automatic ModeThe AutomaticModeStateMachine node with all mandatory sub nodes and the SelectModeAutomatic method are implemented by the server.
ServerVision State Machine – Easy ConfirmationThe ConfirmAll method is implemented by the server.
ServerVision State Machine – Error Events ErrorEvents and ErrorResolvedEvents are generated by the server.
ServerVision State Machine – StepModel PreoperationalThe PreoperationalStepModel state machine is implemented by the server.
ServerVision State Machine – StepModel HaltedThe HaltedStepModel state machine is implemented by the server.
ServerVision State Machine – StepModel ErrorThe ErrorStepModel state machine is implemented by the server.
ServerAutomatic Mode – SimulationThe SimulationMode method is implemented by the server. The isSimulated sub nodes of ResultReadyEvents, ResultDataType and ResultType are implemented and reflect the state of the simulation mode during creation of the job generaring this result; likewise, the isSimulated output arguments of methods GetResultComponentsById and GetResultById reflect this state.
ServerAutomatic Mode – StepModel InitializedThe InitializedStepModel state machine is implemented by the server.
ServerAutomatic Mode – StepModel ReadyThe ReadyStepModel state machine is implemented by the server.
ServerAutomatic Mode – StepModel SingleExecutionThe SingleExecutionStepModel state machine is implemented by the server.
ServerAutomatic Mode – StepModel ContinuousExecutionThe ContinuousExecutionStepModel state machine is implemented by the server.
ServerMeta Data Handling – Measurement IDThe measId argument of methods StartSingleJob and StartContinuous is associated to the jobs started by calling these methods. Results arising from these jobs include the given MeasId. Therefore the server implements the MeasId sub node of all occurrences of ResultDataType and ResultType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById as well as observing it in the input argument of method GetResultListFiltered. The server may additionally implement the MeasId sub node of VisionDiagnosticInfoEvents, VisionInformationEvents, VisionWarningConditions, VisionErrorConditions and VisionPersistentErrorConditions.
ServerMeta Data Handling – Part IDThe partId argument of methods StartSingleJob and StartContinuous is associated to the jobs started by calling these methods. Results arising from these jobs include the PartId. Therefore the server implements the PartId sub node of all occurrences of the ResultDataType and ResultType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById as well as observing it in the input argument of method GetResultListFiltered method. The server may additionally implement the PartId sub node of VisionDiagnosticInfoEvents, VisionInformationEvents, VisionWarningConditions, VisionErrorConditions and VisionPersistentErrorConditions
ServerMeta Data Handling – Recipe ID ExternalThe externalRecipeId argument of methods StartSingleJob and StartContinuous is associated to the jobs started by calling these methods. All results arising from these jobs include the ExternalRecipeId. Therefore the server implements the ExternalRecipeId sub node of all occurrences of the ResultDataType and ResultType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById as well as observing it in the input argument of method GetResultListFiltered. The server may additionally implement the ExternalRecipeId sub node of VisionDiagnosticInfoEvents, VisionInformationEvents, VisionWarningConditions, VisionErrorConditions and VisionPersistentErrorConditions
ServerMeta Data Handling – Recipe VersioningTo enforce the uniqueness of recipe IDs, the server implements the calculation and comparison of hash values of the binary object representing a recipe. All occurrences of the RecipeIdExternalDataType and RecipeIdInternalDataType implement the sub nodes version, hash and hashAlgorithm.
ServerMeta Data Handling – Product IDThe productId argument of methods StartSingleJob and StartContinuous is associated to the jobs started by calling these methods. All results arising from these jobs include the ProductId. Therefore the server implements the ProductId sub node of all occurrences of the ResultDataType, ResultType and RecipeType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById as well as observing it in the intput argument of method GetResultListFiltered. The server may additionally implement the ProductId sub node of VisionDiagnosticInfoEvents, VisionInformationEvents, VisionWarningConditions, VisionErrorConditions and VisionPersistentErrorConditions
ServerMeta Data Handling – Configuration ID ExternalThe externalConfigurationId argument of methods StartSingleJob and StartContinuous is associated to the jobs started by calling these methods. All results arising from these jobs include the ExternalConfigurationId. Therefore the server implements the ExternalConfigurationId sub node of all occurrences of the ResultDataType and ResultType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById as well as observing it in the intput argument of method GetResultListFiltered. The server may additionally implement the ExternalConfigurationId sub node of VisionDiagnosticInfoEvents, VisionInformationEvents, VisionWarningConditions, VisionErrorConditions and VisionPersistentErrorConditions
ServerMeta Data Handling – Configuration VersioningTo enforce the uniqueness of configuration IDs, the server implements the calculation and comparison of hash values of the binary object representing a configuration. All occurrences of the ConfigurationIdDataType implement the sub nodes version, hash and hashAlgorithm.
ServerMeta Data Handling – Processing TimesThe server implements the logging of the start and end times of a job and associates these with the results of this job. Therefore the server implements the processingTimes sub node of all occurrences of the ResultDataType and ResultType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById().
ServerMeta Data Handling – Processing Times ExtendedThe server implements the logging of the start and end times of a job as well as the determination of the duration of acquisition and processing and associates these with the results of this job. Therefore the server implements the processingTimes sub node of all occurrences of the ResultDataType and ResultType as well as within ResultReadyEvents, and returns it in the output argument of methods GetResultComponentsById and GetResultById.
ServerResult Handling – Event Based ContentThe server provides full or partial result content as sub node of ResultReadyEvents and provides a means for the client to interpret the application-specific structure of this node.
ServerResult Handling – Method Based ContentThe server provides full or partial result content in the output argument of methods GetResultComponentsById GetResultById and provides a means for the client to interpret the application-specific structure of this argument.
ServerResult Handling – Result FileThe server implements the ResultTransfer node to offer additional result content as a downloadable file. It implements the HasTransferableDataOnFile node within all occurrences of ResultDataType and ResultType and provides information about the existence of such content in these nodes and in the output argument of methods GetResultComponentsById and GetResultById.
ServerResult Handling – Result FolderThe server provides meta data and full or partial result content by implementing the Results folder node.
ServerConfiguration Handling – Configuration FileThe server allows upload and download of configuration objects. Therefore it implements the ConfigurationTransfer node as well as the AddConfiguration and RemoveConfiguration methods. Additionally it signals the availability of a local configuration object by using the hasTransferableDataOnFile node within all occurrences of the ConfigurationDataType.
ServerConfiguration Handling – Configuration FolderThe server provides meta data on local configuration objects by implementing the Configurations folder node.
ServerRecipe Handling – Recipe FileThe server allows upload and download of recipe objects. Therefore it implements the RecipeTransfer node as well as the AddRecipe and RemoveRecipe methods. Additionally it signals the availability of a local recipe object by using the Handle node within all occurrences of the RecipeType.
ServerRecipe Handling – Recipe FolderThe server provides meta data on local recipe objects by implementing the Recipes folder node. Additionally it returns the node id of the recipe object created in the folder by an AddRecipe method call.
ServerRecipe Handling – Product FolderThe server provides meta data on local product objects by implementing the Products folder node. Additionally it returns the node id of the product object created in the folder by an AddRecipe method call.

13.2.3 Client

Table x defines the Client based Conformance Units.

Table 159 – Definition of Client Conformance Units
Category Title Description
ClientVision System – System State Information ClientThe Client is capable of monitoring the SystemState node if existing in the server including optional items.
ClientVision System – Diagnostic Events ClientThe Client is capable of reading and writing the DiagnosticLevel node if existing in the server and to monitor VisionDiagnosticInfoEvents generated by the server, including all possibly existing data elements of the events.
ClientVision System – Information Events ClientThe Client is capable of monitoring VisionInformationEvents generated by the server, including all possibly existing data elements of the events.
ClientVision System – Error Conditions ClientThe Client is capable of monitoring, acknowledging and confirming VisionWarningConditions, VisionErrorConditions and VisionPersistentErrorConditions generated by the server, including all possibly existing data elements of the conditions.
ClientVision State Machine – State Machine MonitoringThe Client is capable of monitoring state and transitions of the mandatory VisionStateMachine.
ClientVision State Machine – State Machine Events MonitoringThe Client is capable of monitoring the events generated by the mandatory VisionStateMachine.
ClientVision State Machine – State Machine ControlThe Client is capable of controlling the mandatory VisionStateMachine by calling its methods.
ClientVision State Machine – StepModel MonitoringThe Client is capable of detecting the existence of StepModel state machines inside any state of any state machine in the server and monitor their states and transitions.
ClientVision State Machine – StepModel Events MonitoringThe Client is capable of monitoring events generated by an active StepModel state machine in the server.
ClientVision State Machine – StepModel ControlThe Client is capable of controlling any StepModel state machine existing in the server by calling its Sync method.
ClientVision Automatic Mode – Automatic Mode SelectionThe Client is capable of calling the SelectAutomaticMode method and monitor the success of entering the VisionAutomaticModeStateMachine.
ClientVision Automatic Mode – Safety Information ClientThe Client is capable of monitoring VisionSafetyEvents and the SafetyStateManagement node and is capable of reporting safety information by using the ReportSafetyState method.
ClientVision Automatic Mode – Easy Confirmation ClientThe Client can call the ConfirmAll method if implemented by the server.
ClientVision Automatic Mode – Simulation Mode ControlThe Client is capable of calling the SimulationMode method. If the client processes vision system results, it takes appropriate action based on the value of the isSimulated flag included with the results.
ClientVision Automatic Mode– Automatic Mode MonitoringThe Client is capable of monitoring state and transitions of the AutomaticModeStateMachine
ClientVision Automatic Mode – Automatic Mode Events MonitoringThe Client is capable of monitoring the events generated by the AutomaticModeStateMachine.
ClientVision Automatic Mode – Automatic Mode ControlThe Client is capable of controlling the AutomaticModeStateMachine by calling its methods.
ClientMeta Data Handling – Client Job IDThe Client is capable of reading a jobId from methods providing one and to pass it to methods accepting one, provided the client implements the call of this method at all (as stated by other Conformance Units). The client is also capable of processing jobId information contained in vision system results.
ClientMeta Data Handling – Client Measurement IDThe Client is capable of providing a measId to all methods accepting one, provided the client implements the call of this method at all (as stated by other Conformance Units). The client is also capable of processing measId information contained in vision system results and events and returned by methods.
ClientMeta Data Handling – Client Part IDThe Client is capable of providing a partId to all methods accepting one, provided the client implements the call of this method at all (as stated by other Conformance Units). The client is also capable of processing partId information contained in vision system results and events and returned by methods.
ClientMeta Data Handling – Result IsSimulatedThe client is capable of monitoring if the isSimulated flag included within ResultReadyEvents.
ClientMeta Data Handling – Client Recipe ID The Client is capable of providing externalRecipeId or internalRecipeId arguments to methods requiring one (provided the client implements the call to that method at all, as stated by other Conformance Units) and of processing externalRecipeId and internalRecipeId information contained in vision system results and events and returned by methods.
ClientMeta Data Handling – Basic Client Recipe VersioningThe Client is capable of comparing version and hash information contained in externalRecipeId and internalRecipeId structures.
ClientMeta Data Handling – Full Client Recipe VersioningThe Client is capable of computing hash information on recipes based on the hashAlgorithm information optionally contained in externalRecipeId and internalRecipeId structures, provide the server with such information and process such information when returned from the server.
ClientMeta Data Handling – Client Product IDThe Client is capable of providing a productId to all methods accepting one, provided the client implements the call of this method at all (as stated by other Conformance Units). The client is also capable of processing productId information contained in vision system results and events and returned by methods.
ClientMeta Data Handling – Basic Client Configuration VersioningThe Client is capable of providing externalConfigurationId or internalConfigurationId arguments to methods requiring one (provided the client implements the call to that method at all, as stated by other Conformance Units) and of processing externalConfigurationId and internalConfigurationId information contained in vision system results and events and returned by methods.
ClientMeta Data Handling –Full Client Configuration VersioningThe Client is capable of comparing version information contained in externalConfigurationId and internalConfigurationId structures.
ClientMeta Data Handling – Client Processing TimesThe Client is capable of processing basic ProcessingTimes information contained in vision systems results and events and returned by methods (provided the client implements calls to these methods at all, as stated by other Conformance Units).
ClientMeta Data Handling – Client Processing Times ExtendedThe Client is capable of processing extended ProcessingTimes information contained in vision systems results and events and returned by methods (provided the client implements calls to these methods at all, as stated by other Conformance Units).
ClientResult Handling – Client Event Based Content BasicThe Client is capable of monitoring ResultReady events generated by the server and extracting all provided meta data from the event.
ClientResult Handling – Client Event Based Content ExtendedThe Client is capable of monitoring ResultReady events generated by the server and extracting all provided meta data from the event, as well as extracting application-specific result content.
ClientResult Handling – Client Method Based Content BasicThe Client is capable of calling method GetResultListFiltered, GetResultById, GetResultComponentsById, ReleaseResultHandle. The client is further capable of processing the meta data for the returned results.
ClientResult Handling – Client Method Based Content ExtendedThe Client is capable of calling method GetResultListFiltered, GetResultById, GetResultComponentsById, ReleaseResultHandle. The client is further capable of processing the meta data for the returned results as well as extracting application-specific result content.
ClientResult Handling – Client Result FileThe client is capable of using the ResultTransfer methods to obtain opaque result content based on resultId and hasTransferableDataOnFile information obtained from ResultReady events or method calls.
ClientResult Handling – Client Result FolderThe client is capable of obtaining result meta data from the Results folder node, if implemented by the server.
ClientConfiguration Handling – Client Configuration MethodsThe client is capable of calling the methods of the ConfigurationManagementType node to manage configuration information on the server.
ClientConfiguration Handling – Client Configuration FileThe client is capable of using the ConfigurationTransfer methods to upload and download opaque configuration content based on configurationId and hasTransferableDataOnFile information obtained from events or method calls.
ClientConfiguration Handling – Client Configuration FolderThe client is capable of obtaining configuration meta data from the Configurations folder node if implemented by the server.
ClientRecipe Handling – Client Recipe MethodsThe client is capable of calling the methods of the RecipeManagementType node to manage recipe and product information on the server.
ClientRecipe Handling – Client Recipe FileThe client is capable of using the RecipeTransfer methods to upload and download opaque recipe content based on recipeId and hasTransferableDataOnFile information obtained from events or method calls.
ClientRecipe Handling – Client Recipe FolderThe client is capable of obtaining recipe meta data from the Recipes folder node if implemented by the server.
ClientRecipe Handling – Client Product FolderThe client is capable of obtaining product meta data from the Products folder node if implemented by the server.

13.3 Facets and Profiles

13.3.1 Overview

Profiles and facets are named groupings of Conformance Units as defined in OPC 10000-7. This section describes the various facets and profiles on the server and the client side that are provided as part of the OPC UA Machine Vision companion specification information model.

13.3.2 Server

13.3.2.1 Overview
Table 160 – Server Facets
Profile Related Category URI
Basic Vision System Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/BasicVisionSystemServerFacet
Inline Vision System Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/InlineVisionSystemServerFacet
Automatic Mode Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/AutomaticModeServerFacet
Processing Times Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/ProcessingTimesMetaDataHandlingServerFacet
File Transfer Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/FileTransferServerFacet
Basic Result Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/BasicResultHandlingServerFacet
Inline Result Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/InlineResultHandlingServerFacet
Full Result Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/FullResultHandlingServerFacet
Standard Configuration Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/StandardConfigurationHandlingServerFacet
Full Configuration Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/FullConfigurationHandlingServerFacet
Standard Recipe Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/StandardRecipeHandlingServerFacet
Full Recipe Handling Server FacetMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/FullRecipeHandlingServerFacet
Basic Vision System Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/BasicVisionSystemServerProfile
Basic Vision System Server Profile without OPC UA SecurityMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/BasicVisionSystemServerProfileWithoutOPCUASecurity
Simple Inline Vision System Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/SimpleInlineVisionSystemServerProfile
Simple Inline Vision System with File Transfer Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/SimpleInlineVisionSystemWithFileTransferServerProfile
Simple Inline Vision System with File Revisioning Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/SimpleInlineVisionSystemWithFileRevisioningServerProfile
Inline Vision System with File Transfer Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/InlineVisionSystemWithFileTransferServerProfile
Inline Vision System with File Revisioning Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/InlineVisionSystemWithFileRevisioningServerProfile
Full Vision System Server ProfileMachine Vision CS Server http://opcfoundation.org/UA-Profile/External/Server/ MachineVision/FullVisionSystemServerProfile
13.3.2.2 Facets
13.3.2.2.1 Basic Vision System Server Facet

This facet defines the elements for a very basic machine vision system. It shall implement the mandatory nodes and also some fundamental types and functionality concerning results, configurations and recipes

Table 161 – Definition of Basic Vision System Server Facet
Group Conformance Unit / Profile Title M / O
Vision SystemBasic Vision SystemMandatory
Vision SystemBasic Result ManagementMandatory
Vision SystemBasic Configuration ManagementMandatory
Vision SystemBasic Recipe ManagementMandatory
13.3.2.2.2 Inline Vision System Server Facet

An “inline” machine vision system, as defined in Section 3.1, is used in the manner of a 100% inspection system within a production line (which does not necessarily mean that it is a quality inspection system at all).

This type of use typically takes place under the guidance and supervision of a control system which requires information about the current operating state of the vision system, error conditions and other diagnostic information, and may want to inform the vision system about safety-related events.

Table 162 – Definition of Inline Vision System Server Facet
Group Conformance Unit / Profile Title M / O
Vision SystemSafety State ManagementOptional
Vision SystemSystem State InformationMandatory
Vision SystemDiagnostic EventsMandatory
Vision SystemInformation EventsMandatory
Vision SystemError ConditionsMandatory
13.3.2.2.3 Automatic Mode Server Facet

This facet gives a superior control system more detailed control over the behavior of the vision system. This is related to the notion of an inline machine vision system which will typically operate in automatic mode.

Table 163 – Definition of Automatic Mode Server Facet
Group Conformance Unit / Profile Title M / O
Vision State MachineAutomatic ModeMandatory
Vision State MachineEasy ConfirmationOptional
Vision State MachineError EventsMandatory
Vision State MachineStepModel PreoperationalOptional
Vision State MachineStepModel HaltedOptional
Vision State MachineStepModel ErrorOptional
Automatic ModeSimulation Mandatory
Automatic ModeStepModel InitializedOptional
Automatic ModeStepModel ReadyOptional
Automatic ModeStepModel SingleExecutionOptional
Automatic ModeStepModel ContinuousExecutionOptional
13.3.2.2.4 Processing Times Server Facet

This facet contains information about the basic start and end time of jobs as well as information about internal timing of jobs.

Table 164 – Definition of Processing Times Server Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingProcessing TimesMandatory
Meta Data HandlingProcessing Times ExtendedMandatory
13.3.2.2.5 File Transfer Server Facet

This facet combines the various TemporaryFileTransfer definitions for the transfer of black-box data to and from the vision system.

Table 165 – Definition of File Transfer Server Facet
Group Conformance Unit / Profile Title M / O
Result HandlingResult FileMandatory
Configuration HandlingConfiguration FileMandatory
Recipe HandlingRecipe FileMandatory
13.3.2.2.6 Basic Result Handling Server Facet

This facet contains the basic definitions for the handling of result content within the ResultDataType (the basic definitions for the identification of results are already contained in the Basic Vision System Facet in Section 13.3.2.2.1).

Table 166 – Definition of Basic Result Handling Server Facet
Group Conformance Unit / Profile Title M / O
Result HandlingEvent Based ContentMandatory
Result HandlingMethod Based ContentOptional
13.3.2.2.7 Inline Result Handling Server Facet

This facet contains result handling functionality which will typically be expected from an inline vision system (see Section 13.3.2.2.2). Since such a system running within an automated production line will usually handle series of individual, often identifiable parts, and may need to buffer results for later collection, the conformance units Part ID and Result File are part of this facet.

Table 167 – Definition of Inline Result Handling Server Facet
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server FacetBasic Result Handling FacetMandatory
Meta Data HandlingMeasurement IDMandatory
Meta Data HandlingPart IDMandatory
Result HandlingMethod Based ContentMandatory
Result HandlingResult FileMandatory
13.3.2.2.8 Full Result Handling Server Facet

This facet adds the capability of exposing individual results in the address space inside the Results folder to the Inline Result Handling Facet (see Section 13.3.2.2.7).

Table 168 – Definition of Full Result Handling Server Facet
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server FacetInline Result Handling FacetMandatory
Result HandlingResult FolderMandatory
13.3.2.2.9 Standard Configuration Handling Server Facet

This facet combines the handling of configuration identification with the transfer of black-box configuration content by TemporaryFileTransfer objects.

Table 169 – Definition of Standard Configuration Handling Server Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingConfiguration ID ExternalMandatory
Configuration HandlingConfiguration FileMandatory
13.3.2.2.10 Full Configuration Handling Server Facet

This facet adds the capability of exposing individual configurations in the address space inside the Configurations folder to the Standard Configuration Handling Facet (see Section 13.3.2.2.9).

Table 170 – Definition of Full Configuration Handling Server Facet
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server FacetStandard Configuration Handling FacetMandatory
Meta Data HandlingConfiguration VersioningMandatory
Configuration HandlingConfiguration FolderMandatory
13.3.2.2.11 Standard Recipe Handling Server Facet

This facet combines the handling of recipe and product identification with the transfer of black-box recipe content by TemporaryFileTransfer objects.

Table 171 – Definition of Standard Recipe Handling Server Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingRecipe ID ExternalMandatory
Meta Data HandlingProduct IDMandatory
Recipe HandlingRecipe FileMandatory
13.3.2.2.12 Full Recipe Handling Server Facet

This facet adds the capability of exposing individual recipes and products in the address space inside the Recipes and Products folders to the Standard Recipe Handling Facet (see Section13.3.2.2.1113.3.2.2.11).

Table 172 – Definition of Full Recipe Handling Server Facet
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server FacetStandard Recipe Handling Facet
Meta Data HandlingRecipe VersioningMandatory
Recipe HandlingRecipe FolderMandatory
Recipe HandlingProduct FolderMandatory
13.3.2.3 Profiles
13.3.2.3.1 Basic Vision System Server Profile

This Profile is a FullFeatured Profile intended for basic machine vision systems capable of limited handling of recipe and configuration information, provision of result information and content and executing the standard automatic mode as defined in Section 8.3.

It is built upon the Embedded 2017 UA Server Profile which provides Security conformance units.

Table 173 – Definition of Basic Vision System Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Basic Vision System Server FacetMandatory
Machine Vision CS Server Basic Result Handling Server FacetMandatory
Vision SystemDiagnostic EventsOptional
Vision SystemInformation EventsOptional
Vision State MachineAutomatic ModeMandatory
OPC UAEmbedded 2017 UA Server ProfileMandatory
13.3.2.3.2 Basic Vision System Server Profile without OPC UA Security

This profile is intended as fallback for very limited systems not capable of implementing OPC UA security functionality as required by the Embedded 2017 UA Server Profile used in all other profiles in this specification. We strongly recommend implementing OPC UA security whenever possible.

Table 174 – Definition of Basic Vision System Server Profile without OPC UA Security
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Basic Vision System Server FacetMandatory
Machine Vision CS Server Basic Result Handling Server FacetMandatory
Vision SystemDiagnostic EventsOptional
Vision SystemInformation EventsOptional
Vision State MachineAutomatic ModeMandatory
OPC UAMicro Embedded Device 2017 Server ProfileMandatory
13.3.2.3.3 Simple Inline Vision System Server Profile

In accordance with the notion of an “inline” machine vision system, used, as defined in Section 3.1 and Section 13.3.2.2.2, in the manner of a 100% inspection system within a production line, this is a FullFeatured Profile, providing the typical functionality required for a simple version of such a system: full automatic mode, diagnostic info required by a control system, basic result handling. It lacks the handling of client-supplied IDs included in the (not-simple) Inline Result Handling Facet in Section 13.3.2.2.7, leaving the part tracing to the superior control system.

Table 175 – Definition of Simple Inline Vision System Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Basic Vision System Server FacetMandatory
Machine Vision CS Server Inline Vision System Server FacetMandatory
Machine Vision CS Server Automatic Mode Server FacetMandatory
Machine Vision CS Server Basic Result Handling Server FacetMandatory
Meta Data HandlingProcessing TimesMandatory
OPC UAEmbedded 2017 UA Server ProfileMandatory
13.3.2.3.4 Simple Inline Vision System with File Transfer Profile

This FullFeatured Profile complements the Simple Inline Vision System with the handling of recipe and configuration identification and the black-box transfer of contents by TemporaryFileTransfer objects.

Table 176 – Definition of Simple Inline Vision System with File Transfer Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Simple Inline Vision System Server ProfileMandatory
Machine Vision CS Server Standard Recipe Handling Server FacetMandatory
Machine Vision CS Server Standard Configuration Handling Server FacetMandatory
Machine Vision CS Server File Transfer FacetMandatory
Meta Data HandlingProcessing TimesMandatory
13.3.2.3.5 Simple Inline Vision System with File Revisioning Server Profile

This FullFeatured Profile complements the Simple Inline Vision System with File Transfer by the capability of managing recipe and configuration versions.

Table 177 – Definition of Simple Inline Vision System with File Revisioning Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Simple Inline Vision System with File Transfer Server ProfileMandatory
Meta Data HandlingRecipe VersioningMandatory
Meta Data HandlingConfiguration VersioningMandatory
13.3.2.3.6 Inline Vision System with File Transfer Server Profile

This FullFeatured Profile complements the Simple Inline Vision System with File Transfer by the complete ProcessingTimes information and the additional capability of handling result content and client-supplied IDs defined in the Inline Result Handling Facet in Section 13.3.2.2.7, and is thus suitable for sophisticated vision systems in automated production handling part traceability information.

Table 178 – Definition of Inline Vision System with File Transfer Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Simple Inline Vision System with File Transfer Server ProfileMandatory
Machine Vision CS Server Processing Times Server FacetMandatory
Machine Vision CS Server Inline Result Handling Server FacetMandatory
13.3.2.3.7 Inline Vision System with File Revisioning Server Profile

This FullFeatured Profile complements complements the Inline Vision System with File Transfer by the capability of managing recipe and configuration versions and is thus suitable for sophisticated vision systems in automated production handling a multitude of recipes and configurations changing over time.

Table 179 – Definition of Inline Vision System with File Revisioning Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Inline Vision System with File Transfer Server ProfileMandatory
Meta Data HandlingRecipe VersioningMandatory
Meta Data HandlingRecipe Versioning
13.3.2.3.8 Full Vision System Server Profile

This FullFeatured Profile comprises the complete functionality of this specification and is thus suitable for the most complex vision systems.

Table 180 – Definition of Full Vision System Server Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Server Inline Vision System with File Revisioning Server ProfileMandatory
Machine Vision CS Server Full Result Handling Server FacetMandatory
Machine Vision CS Server Full Configuration Handling Server FacetMandatory
Machine Vision CS Server Full Recipe Handling Server FacetMandatory

13.3.3 Client

13.3.3.1 Overview
Table 181 – Definition of Client Facets
Profile Related Category URI
Basic Control Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/BasicControlClientFacet
Full Control Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/FullControlClientFacet
Basic Result Content Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/BasicResultContentClientFacet
Simple Result Content Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/SimpleResultContentClientFacet
Full Result Content Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/FullResultContentClientFacet
Result Meta Data Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/ResultMetaDataClientFacet
Configuration Handling Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/ConfigurationHandlingClientFacet
Recipe Handling Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/RecipeHandlingClientFacet
Vision State Monitoring Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/VisionStateMonitoringClientFacet
Production Quality Monitoring Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/ProductionQualitaMonitoringClientFacet
Data Backup Client FacetMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/DataBackupClientFacet
Basic Control Client ProfileMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/BasicControlClientProfile
Simple Control Client ProfileMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/SimpleControlClientProfile
Full Control Client ProfileMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/FullControlClientProfile
Result Content Client ProfileMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/ResultContentClientProfile
Monitoring Client ProfileMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/MonitoringClientProfile
Configuration Management Client ProfileMachine Vision CS Client http://opcfoundation.org/UA-Profile/External/Client/ MachineVision/ConfigurationManagementClientProfile
13.3.3.2 Facets
13.3.3.2.1 Basic Control Client Facet

This facet contains the basic functionality required for a client to monitor and control a vision system server using DataChange subscriptions and basic methods.

Table 182 – Definition of Basic Control Client Facet
Group Conformance Unit / Profile Title M / O
Vision SystemSystem State Information ClientMandatory
Vision SystemError Conditions ClientOptional
Vision State MachineState Machine MonitoringMandatory
Vision State MachineState Machine ControlMandatory
Vision Automatic ModeAutomatic Mode SelectionMandatory
Vision Automatic ModeAutomatic Mode MonitoringMandatory
Vision Automatic ModeAutomatic Mode ControlMandatory
13.3.3.2.2 Full Control Client Facet

This facet contains functionality required for in-depth control of a vision system including StateChanged and Error events and the StepModel methods and events.

Table 183 – Definition of Full Control Client Facet
Group Conformance Unit / Profile Title M / O
Vision SystemSystem State Information ClientMandatory
Vision SystemError Conditions ClientMandatory
Vision State MachineState Machine MonitoringMandatory
Vision State MachineState Machine Events MonitoringMandatory
Vision State MachineState Machine ControlMandatory
Vision State MachineStepModel MonitoringMandatory
Vision State MachineStepModel Events MonitoringMandatory
Vision State MachineStepModel ControlMandatory
Vision Automatic ModeAutomatic Mode SelectionMandatory
Vision Automatic ModeSimulation Mode ControlMandatory
Vision Automatic ModeAutomatic Mode MonitoringMandatory
Vision Automatic ModeAutomatic Mode Events MonitoringMandatory
Vision Automatic ModeAutomatic Mode ControlMandatory
13.3.3.2.3 Basic Result Content Client Facet

This facet contains basic functionality required to monitor and access result information, including the distinction between real and simulated results.

Table 184 – Definition of Basic Result Content Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingClient Result IsSimulated Mandatory
Result HandlingClient Event Based Content BasicMandatory
Result HandlingClient Method Based Content BasicMandatory
13.3.3.2.4 Simple Result Content Client Facet

This facet contains the same functionality as the Basic Result Content Client Facet in Section 13.3.3.2.3 and in addition the capability to process the – potentially dynamic – application-specific result content and to access black-box result content using TemporaryFileTransfer objects.

Table 185 – Definition of Simple Result Content Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingClient Result IsSimulated Mandatory
Result HandlingClient Event Based Content BasicMandatory
Result HandlingClient Event Based Content ExtendedOptional
Result HandlingClient Method Based Content BasicMandatory
Result HandlingClient Method Based Content ExtendedOptional
Result HandlingClient Result FileMandatory
13.3.3.2.5 Full Result Content Client Facet

This facet contains the same functionality as the Simple Result Content Client Facet in Section 13.3.3.2.4 and in addition the capability to access result nodes exposed by a server in the Results folder.

Table 186 – Definition of Full Result Content Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingClient Result IsSimulated Mandatory
Result HandlingClient Event Based Content BasicMandatory
Result HandlingClient Event Based Content ExtendedMandatory
Result HandlingClient Method Based Content BasicMandatory
Result HandlingClient Method Based Content ExtendedMandatory
Result HandlingClient Result FileMandatory
Result HandlingClient Result FolderOptional
13.3.3.2.6 Result Meta Data Client Facet

This facet contains functionality to process the entire range of meta data a vision system server can provide for a result.

Table 187 – Definition of Result Meta Data Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingClient Job IDMandatory
Meta Data HandlingClient Measurement IDMandatory
Meta Data HandlingClient Part IDMandatory
Meta Data HandlingClient Result IsSimulated Mandatory
Meta Data HandlingClient Recipe ID Mandatory
Meta Data HandlingBasic Client Recipe VersioningOptional
Meta Data HandlingClient Product IDMandatory
Meta Data HandlingBasic Client Configuration VersioningOptional
Meta Data HandlingClient Processing TimesMandatory
Meta Data HandlingClient Processing Times ExtendedMandatory
13.3.3.2.7 Configuration Handling Client Facet

This facet contains the capabilities required to access the full potential range of configuration handling functionality potentially provided by a vision system server.

Table 188 – Definition of Configuration Handling Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingBasic Client Configuration VersioningMandatory
Meta Data HandlingFull Client Configuration VersioningMandatory
Configuration HandlingClient Configuration MethodsMandatory
Configuration HandlingClient Configuration FileMandatory
Configuration HandlingClient Configuration FolderOptional
13.3.3.2.8 Recipe Handling Client Facet

This facet contains the capabilities required to access the full potential range of recipe handling functionality potentially provided by a vision system server.

Table 189 – Definition of Recipe Handling Client Facet
Group Conformance Unit / Profile Title M / O
Vision Automatic ModeAutomatic Mode Events MonitoringMandatory
Meta Data HandlingClient Recipe ID Mandatory
Meta Data HandlingBasic Client Recipe VersioningMandatory
Meta Data HandlingFull Client Recipe VersioningMandatory
Meta Data HandlingClient Product IDMandatory
Recipe HandlingClient Recipe MethodsMandatory
Recipe HandlingClient Recipe FileMandatory
Recipe HandlingClient Recipe FolderOptional
Recipe HandlingClient Product FolderOptional
13.3.3.2.9 Vision State Monitoring Client Facet

This facet contains the capabilities required to access the full potential range of state and condition information functionality potentially provided by a vision system server.

Table 190 – Definition of Vision State Monitoring Client Facet
Group Conformance Unit / Profile Title M / O
Vision SystemSystem State Information ClientMandatory
Vision SystemDiagnostic Events ClientMandatory
Vision SystemInformation Events ClientMandatory
Vision SystemError Conditions ClientMandatory
Vision State MachineState Machine MonitoringMandatory
Vision State MachineState Machine Events MonitoringMandatory
Vision State MachineStepModel MonitoringMandatory
Vision State MachineStepModel Events MonitoringMandatory
Vision Automatic ModeSafety Information ClientMandatory
Vision Automatic ModeEasy Confirmation ClientOptional
Vision Automatic ModeAutomatic Mode MonitoringMandatory
Vision Automatic ModeAutomatic Mode Events MonitoringMandatory
13.3.3.2.10 Production Quality Monitoring Client Facet

This facet contains the capabilities required to access production-quality relevant information potentially provided by a vision system server, including the distinction between real and simulated results, result contents and the processing times which can be an important indicator for problems in either production or vision system.

Table 191 – Definition of Production Quality Monitoring Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingClient Result IsSimulated Mandatory
Meta Data HandlingClient Processing TimesMandatory
Meta Data HandlingClient Processing Times ExtendedMandatory
Result HandlingClient Event Based Content BasicMandatory
Result HandlingClient Event Based Content ExtendedMandatory
13.3.3.2.11 Data Backup Client Facet

This facet contains the capabilities required to manage the retrieval and organized backup of all types of data from a vision system server.

Table 192 – Definition of Data Backup Client Facet
Group Conformance Unit / Profile Title M / O
Meta Data HandlingClient Job IDMandatory
Meta Data HandlingClient Measurement IDMandatory
Meta Data HandlingClient Part IDMandatory
Meta Data HandlingClient Result IsSimulated Mandatory
Meta Data HandlingClient Recipe ID Mandatory
Meta Data HandlingBasic Client Recipe VersioningMandatory
Meta Data HandlingFull Client Recipe VersioningMandatory
Meta Data HandlingClient Product IDMandatory
Meta Data HandlingBasic Client Configuration VersioningMandatory
Meta Data HandlingFull Client Configuration VersioningMandatory
Meta Data HandlingClient Processing TimesMandatory
Meta Data HandlingClient Processing Times ExtendedMandatory
Result HandlingClient Method Based Content BasicMandatory
Result HandlingClient Method Based Content ExtendedMandatory
Result HandlingClient Result FileMandatory
Result HandlingClient Result FolderMandatory
Configuration HandlingClient Configuration MethodsMandatory
Configuration HandlingClient Configuration FileMandatory
Configuration HandlingClient Configuration FolderMandatory
Recipe HandlingClient Recipe MethodsMandatory
Recipe HandlingClient Recipe FileMandatory
Recipe HandlingClient Recipe FolderMandatory
Recipe HandlingClient Product FolderMandatory
13.3.3.3 Profiles
13.3.3.3.1 Basic Control Client Profile

This FullFeatured Profile defines a client capable of basic monitoring and control of a vision system server and its results.

Table 193 – Definition of Basic Control Client Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Client Basic Control Client FacetMandatory
Machine Vision CS Client Basic Result Content Client FacetMandatory
OPC UAStandard UA Client 2017 ProfileMandatory
13.3.3.3.2 Simple Control Client Profile

This FullFeatured Profile defines a client capable of in-depth monitoring and control of a vision system server and full utilization of its results.

Table 194 – Definition of Simple Control Client Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Client Full Control Client FacetMandatory
Machine Vision CS Client Simple Result Content Client FacetMandatory
Machine Vision CS Client Vision State Monitoring Client FacetMandatory
OPC UAStandard UA Client 2017 ProfileMandatory
13.3.3.3.3 Full Control Client Profile

This FullFeatured Profile defines a client capable of in-depth monitoring and control of a vision system server and full utilization of its results including all potentially provided result meta data.

Table 195 – Definition of Full Control Client Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS ClientFull Control Client FacetMandatory
Machine Vision CS ClientFull Result Content Client FacetMandatory
Machine Vision CS ClientResult Meta Data Client FacetMandatory
Machine Vision CS ClientVision State Monitoring Client FacetMandatory
OPC UAStandard UA Client 2017 ProfileMandatory
13.3.3.3.4 Result Content Client Profile

This FullFeatured Profile defines a client capable of full utilization of the results of a vision system server including all potentially provided meta data. The intention of such a client is not control of the vision system server but observation and retrieval of its results.

Table 196 – Definition of Result Content Client Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS ClientFull Result Content Client FacetMandatory
Machine Vision CS ClientResult Meta Data Client FacetMandatory
OPC UAStandard UA Client 2017 ProfileMandatory
13.3.3.3.5 Monitoring Client Profile

This FullFeatured Profile defines a client capable of monitoring all aspects of the state of a vision system server as well as production-quality relevant data and events. The intention of such a client is not control of the vision system but observation and condition monitoring.

Table 197 – Definition of Monitoring Client Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS ClientVision State Monitoring Client FacetMandatory
Machine Vision CS ClientProduction Quality Monitoring Client FacetMandatory
OPC UAStandard UA Client 2017 ProfileMandatory
13.3.3.3.6 Configuration Management Client Profile

This FullFeatured Profile defines a client capable of retrieving and providing all meta data and black-box data for vision system server configurations, recipes and results. The intention of such a client is not control of the vision system server, but management of all relevant data in connection with the server.

Table 198 – Definition of Configuration Management Client Profile
Group Conformance Unit / Profile Title M / O
Machine Vision CS Client Configuration Handling Client FacetMandatory
Machine Vision CS Client Recipe Handling Client FacetMandatory
Machine Vision CS ClientData Backup Client FacetMandatory
OPC UAStandard UA Client 2017 ProfileMandatory

13.4 Handling of OPC UA Namespaces

Namespaces are used by OPC UA to create unique identifiers across different naming authorities. The AttributesNodeId and BrowseName are identifiers. A Node in the UA AddressSpace 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 EngineeringUnitsProperty. All NodeIds of Nodes not defined in this specification shall not use the standard namespaces.

Table 199 provides a list of mandatory and optional namespaces used in an MachineVision OPC UA Server.

Table 199 – Namespaces used in a MachineVision Server
NamespaceURI Description Use
http://opcfoundation.org/UA/Namespace for NodeIds and BrowseNames defined in the OPC UA specification. This namespace shall have namespace index 0.Mandatory
Local Server URINamespace for nodes defined in the local server. This may include types and instances used in an AutoID Device represented by the server. This namespace shall have namespace index 1.Mandatory
http://opcfoundation.org/UA/MachineVision/Namespace for NodeIds and BrowseNames defined in this specification. The namespace index is server specific.Mandatory
Vendor specific types and instancesA server may provide vendor-specific types like types derived from ObjectTypes defined in this specification or vendor-specific instances of those types in a vendor-specific namespace.Optional

Table 200 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 200 – Namespaces used in this specification
NamespaceURI Namespace Index Example
http://opcfoundation.org/UA/00:EngineeringUnits
http://opcfoundation.org/UA/MachineVision/22:VisionSystem