This ObjectType is the abstract base type of all communication model-specific ConnectionEndpointTypes. It defines the elements and behaviour that are common to all ConnectionEndpointTypes. Additional communication model-specific subtypes are defined in subsequent clauses.
The ConnectionEndpointType is formally defined in Table 73.
Table 73 – ConnectionEndpointType definition
Attribute |
Value |
||||
BrowseName |
3:ConnectionEndpointType |
||||
IsAbstract |
True |
||||
References |
NodeClass |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the 0:BaseObjectType defined in OPC 10000-5 |
|||||
0:HasComponent |
Variable |
3:Status |
3:ConnectionEndpointStatusEnum |
0:BaseDataVariableType |
M, RO |
0:HasComponent |
Variable |
3:RelatedEndpoint |
2:RelatedEndpointDataType |
0:BaseDataVariableType |
M |
0:HasComponent |
Variable |
3:InputVariables |
0:NodeId[] |
0:BaseDataVariableType |
O |
0:HasComponent |
Variable |
3:OutputVariables |
0:NodeId[] |
0:BaseDataVariableType |
O |
0:HasComponent |
Variable |
3:IsPersistent |
0:Boolean |
0:BaseDataVariableType |
M |
0:HasComponent |
Variable |
3:CleanupTimeout |
0:Duration |
0:BaseDataVariableType |
M |
0:HasComponent |
Variable |
3:ConnectionManagerApplicationUri |
0:String |
0:BaseDataVariableType |
O |
0:HasComponent |
Object |
5:Diagnostics |
|
5:FunctionalGroupType |
O |
0:HasSubtype |
ObjectType |
3:PubSubConnectionEndpointType |
Defined in 6.6.3 |
||
ConformanceUnits |
|||||
UAFX ConnectionEndpoint Base |
The components of the ConnectionEndpointType have additional subcomponents, which are defined in Table 74.
Table 74 – ConnectionEndpointType additional subcomponents
BrowsePath |
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Others |
5:Diagnostics |
0:HasComponent |
Variable |
3:CreationTime |
0:DateTime |
0:BaseDataVariableType |
O |
5:Diagnostics |
0:HasComponent |
Variable |
3:ModificationTime |
0:DateTime |
0:BaseDataVariableType |
O |
|
|
|
|
|
|
|
The Status describes the current status of a ConnectionEndpoint. This status is illustrated by the state machine in Figure 29. The Status values are defined in the ConnectionEndpointStatusEnum (see 10.17).
Figure 29 – Status illustration
How Status is determined for a specific communication model is specified in the subtypes of ConnectionEndpointType.
The optional InputVariables indicate Variables that are to have their values updated by the communication model connected to the ConnectionEndpoint. All referenced Variables shall be in the InputData of the FunctionalEntity related to the ConnectionEndpoint or a SubFunctionalEntity of the FunctionalEntity. The referenced Variables may be a subset of the Variables referenced by InputData.
The optional OutputVariables reference Variables that are to be reported by the communication model connected to the ConnectionEndpoint. All referenced Variables shall be listed in the OutputData of the FunctionalEntity related to the ConnectionEndpoint or a SubFunctionalEntity of the FunctionalEntity. The referenced Variables may be a subset of the Variables referenced by OutputData.
The communication represented by the ConnectionEndpoint shall include all referenced InputVariables and OutputVariables.
A ConnectionEndpoint shall include at least one of the following:
- 1 or more InputVariables
- 1 or more OutputVariables
RelatedEndpoint points to the related ConnectionEndpoint (i.e., the other end of the Connection). The RelatedEndpointDataType is defined in 10.38. If the ConnectionEndpoint is not exposed in the Information Model of the related connection partner, RelatedEndpoint will specify the path to the connected FunctionalEntity.
IsPersistent indicates if the ConnectionEndpoint shall be persistent. Persistent ConnectionEndpoints shall be restored following a power cycle by the AutomationComponent. The restoration of a persistent ConnectionEndpoint shall include:
- ConnectionEndpoint including references to ControlGroups and communication model Objects
- Established control on related ControlGroups
- Communication model Objects
An AutomationComponent indicates support for persistent Connections; see SupportsPersistence in 6.2.6.
Non-persistent ConnectionEndpoints following a power cycle behave as if the CloseConnections Method was called with Remove set to TRUE(see 6.2.5).
The CleanupTimeout defines a time delay period before a clean-up shall occur. The time delay period starts following a status change from Operational to any other Status. The time delay period is reset to its original value when the Status changes back to Operational. If the time delay period expires, this Connection shall be closed as if the CloseConnections Method was called with Remove set to TRUE(see 6.2.5), and if Auditing is supported, an Event of AuditConnectionCleanupEventType shall be generated. Any negative number indicates that the CleanupTimeout shall not be used, and no clean-up occurs. For a persistent ConnectionEndpoint, the CleanupTimeout shall be set to a negative number. A zero indicates immediate clean-up. CleanupTimeout processing may be disabled by a CloseConnections Call (see 6.2.5).
The ConnectionManagerApplicationUri can be used to identify the ConnectionManager that created this ConnectionEndpoint. The ConnectionManagerApplicationUri shall be set to the ApplicationUri in the ApplicationDescription associated with the Client connection from the ConnectionManager that established this Connection. If the ConnectionManager is local to this AutomationComponent (no Client connection), this shall be set to the ApplicationUri associated with the local ConnectionManager.
The CreationTime provides the timestamp associated with the creation of this ConnectionEndpoint.
The ModificationTime provides the timestamp associated with any modification of this ConnectionEndpoint. This timestamp shall be set on creation, enabling, and disabling.