The OPC UA Object Type TMCServerType is used to describe the features supported by the TMC server implementation.

Figure 23 shows an overview for the TMCServerType with related Variable. It is formally defined in Table 41.

image027.png

Figure 23 TMCServerType overview

The TMCServerType is formally defined in Table 46.

Table 46 – TMCServerType Definition

Attribute

Value

BrowseName

TMCServerType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5

HasProperty

Variable

AggregatedServers

String[]

PropertyType

Mandatory

HasProperty

Variable

Aggregating

Boolean

PropertyType

Mandatory

HasComponent

Method

GetTMCImplementedLevel

Mandatory

HasComponent

Method

SetServerTime

Mandatory

The TMCServerType ObjectType is a concrete type and can be used directly.

When the instance of the OPC server acts as an aggregation server, the Variable AggregatedServers lists the URIs of the servers that are aggregated by the server. When the server does not act as an aggregation server, the Variable AggregatedServers contains no element.

The Property Aggregating specifies if the OPC UA server is running as an aggregation server or not.

The Method GetTMCImplementedLevel returns the implemented level of the server.

Signature

GetTMCImplementedLevel (

[out]TMCImplementedLevelEnumerationTMCImplementedLevel

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

TMCImplementedLevel

The server implemented level.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The TMCImplementedLevelEnumeration is formally defined in Table 47.

Table 47 TMCImplementedLevelEnumeration Definition

ResultCode

Description

BadNodeIdUnknown

See table 173 in OPC 10000-4 for the description of these result codes.

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Enumstring

Value

Description

Other

0

None of the below.

Essential

1

Essential server functionality

Advanced

2

Advanced features are implemented.

The present document requires that the OPC UA Server explicitly exposes the support (or lack thereof) for certain features that depend on the underlying capabilities of the computing hardware:

  1. Method GetIOImage, 6.13.4.7;
  2. Method GetLiveStream, 6.13.4.8;
  3. Method GetRemoteConnection, 6.13.4.9;
  4. Method GetScreenshot, 6.13.4.10;
  5. Method GetSystemDump, 6.13.4.12;
  6. Method InstallSoftwarePackageRemotely, 6.14.4.3;
  7. Method TransferSoftwarePackageFromRepository, 6.14.4.5 and Method TransferSoftwarePackageToRepository, 6.14.4.6

The above mentioned features are not covered by the following definition of the TMCImplementedLevel and may be implemented or opted out for either the Essential or Advanced level.

An OPC UA Server implementing the Essential level, shall support the nodeset of the Object Types listed below, including relevant enumerations, data variable types, references and events required:

  1. MachineModuleType, 6.1;
  2. MachineModuleLiveStatusType, 6.2;
  3. MachineModuleConfigurationType, 6.3;
  4. MachineModuleSpecificationType, 6.4;
  5. MachineModuleHistoricalRecordType, 6.5;
  6. MachineModuleSetupType, 6.7;
  7. MaterialLoadingPointType, 6.76.8 excluding the Variable TotalLoadedLot
  8. MaterialStorageBufferType, 6.86.9;
  9. MaterialRejectionTrapType, 6.10;
  10. DefectDetectionSensorType, 6.11;
  11. MaterialOutputType, 6.12;
  12. ControlsHWType, 6.13;

ControlsSWType, 6.14;

  1. TMCServerType, 0;
  2. UIInformationType, 6.16;
  3. UserInterfaceType, 6.17;
  4. ProcessItemType, 6.18;
  5. LogbookEvent, 6.19;

An OPC UA Server implementing the Advanced level, shall implement the Essential Level and additionally shall support the nodeset of the Object Types listed below, including relevant enumerations, data variable types, references and events required:

  1. MachineModuleProductionType, 6.6;
  2. MaterialLoadingPointType, 6.8 including the Variable TotalLoadedLot

The Method SetServerTime sets the time of the server. It is used for time synchronisation purposes.

Signature

SetServerTime (

[in]DateTimeToSet UtcTime

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

DateTimeToSet

The time to set the internal clock of the server.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

Please report errors or issues with the site to webmaster.

Copyright © 2024 - OPC Foundation

ResultCode

Description

BadNodeIdUnknown

See table 173 in OPC 10000-4 for the description of these result codes.

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound