Figure 42depicts the ObjectTypefor the PubSubconnection model and its components and the relations to other parts of the model.

image045.png

Figure 42– PubSubConnectionType overview

This ObjectTypeis a concrete type for Objectsrepresenting PubSubConnections. A PubSubConnectionis a combination of protocol selection, protocol settings and addressing information. The PubSubConnectionTypeis formally defined in Table 226.

Table 226– PubSubConnectionType definition

Attribute

Value

BrowseName

PubSubConnectionType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of BaseObjectType defined in OPC 10000-5.

HasProperty

Variable

PublisherId

BaseDataType

PropertyType

Mandatory

HasComponent

Variable

TransportProfileUri

String

SelectionListType

Mandatory

HasProperty

Variable

ConnectionProperties

KeyValuePair[]

PropertyType

Mandatory

HasComponent

Object

Address

NetworkAddressType

Mandatory

HasComponent

Object

TransportSettings

ConnectionTransportType

Optional

HasWriterGroup

Object

<WriterGroupName>

WriterGroupType

OptionalPlaceholder

HasReaderGroup

Object

<ReaderGroupName>

ReaderGroupType

OptionalPlaceholder

HasComponent

Object

Status

PubSubStatusType

Mandatory

HasComponent

Object

Diagnostics

PubSubDiagnostics‌ConnectionType

Optional

HasComponent

Method

AddWriterGroup

Defined in 9.1.5.3.

Optional

HasComponent

Method

AddReaderGroup

Defined in 9.1.5.4.

Optional

HasComponent

Method

RemoveGroup

Defined in 9.1.5.5.

Optional

Conformance Units

PubSub Model Base

The PublisherIdis defined in 6.2.7.1.

The TransportProfileUri is defined in 6.2.7.2. The Propertyis initialized with the default transport protocol for the Addressduring the creation of the connection. The SelectionValues Propertyof the SelectionListTypeshall contain the list of supported TransportProfileUris. The SelectionListTypeis defined in OPC 10000-5.

The ConnectionPropertiesis defined in 6.2.7.4.

The Address is defined in 6.2.7.3. The abstract NetworkAddressTypeis defined in 9.1.5.6. The default type used for concrete instances is the NetworkAddressUrlTypedefined in 9.1.5.7. It represents the Addressin the form of a URL String.

The transport protocol mapping specific settings are provided in the optional Object TransportSettings. The ConnectionTransportTypeis defined in 9.1.5.8. The Objectshall be present if the transport protocol mapping defines specific parameters.

The configured WriterGroupand ReaderGroup Objectsare added as components to the instance of the PubSubConnectionType. PubSubGroup Objectsmay be configured with product-specific configuration tools or added and removed through the OPC UA Methods AddWriterGroup, AddReaderGroupand RemoveGroup.

The Status Objectprovides the current operational status of the connection. The PubSubStatusTypeis defined in 9.1.10. The state machine for the status and the relation to other PubSub Objectslike PublishSubscribe, PubSubGroup, DataSetWriterand DataSetReaderare defined in 6.2.1.

The Diagnostics Object provides the current diagnostic information for a PubSubConnectionType Object. The PubSubDiagnosticsConnectionTypeis defined in 9.1.11.8.

This Methodis used to add a new WriterGroup Objectto an instance of the PubSubConnection.

The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.

Signature

AddWriterGroup(

[in]WriterGroupDataType Configuration,

[out]NodeId GroupId

);

Argument

Description

Configuration

Configuration parameters for the WriterGroup. The parameters and the WriterGroupDataTypeare defined in 6.2.6.

GroupId

The NodeIdof the new WriterGroup Object.

Method Result Codes

ResultCode

Description

Bad_InvalidArgument

The Serveris not able to apply the GroupName. The name may be too long or may contain invalid characters.

Bad_BrowseNameDuplicated

An Objectwith the name already exists in the connection.

Bad_ResourceUnavailable

The Serverdoes not have enough resources to add the group.

Bad_UserAccessDenied

The Sessionuser does not have rights to create the group.

Table 227specifies the AddressSpacerepresentation for the AddWriterGroup Method.

Table 227– AddWriterGroup Method AddressSpace definition

Attribute

Value

BrowseName

AddWriterGroup

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

HasProperty

Variable

OutputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model Base

This Methodis used to add a new ReaderGroup Objectto an instance of the PubSubConnection.

The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.

Signature

AddReaderGroup(

[in]ReaderGroupDataType Configuration,

[out]NodeId GroupId

);

Argument

Description

Configuration

Configuration parameters for the ReaderGroup. The parameters and the ReaderGroupDataTypeare defined in 6.2.8.

GroupId

The NodeIdof the new ReaderGroup Object.

Method Result Codes

ResultCode

Description

Bad_InvalidArgument

The Serveris not able to apply the GroupName. The name may be too long or may contain invalid characters.

Bad_BrowseNameDuplicated

An Objectwith the name already exists in the connection.

Bad_ResourceUnavailable

The Serverdoes not have enough resources to add the group.

Bad_UserAccessDenied

The Sessionuser does not have rights to create the group.

Table 228specifies the AddressSpacerepresentation for the AddReaderGroup Method.

Table 228– AddReaderGroup Method AddressSpace definition

Attribute

Value

BrowseName

AddReaderGroup

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

HasProperty

Variable

OutputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model Base

This Methodis used to remove a PubSubGroup Objectfrom the connection.

A successful removal of the PubSubGroup Objectremoves all associated DataSetWriteror DataSetReader Objects. Before the Objectsare removed, their state is set to Disabled.

The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.

Signature

RemoveGroup(

[in]NodeIdGroupId

);

Argument

Description

GroupId

NodeIdof the group to remove from the connection

Method Result Codes

ResultCode

Description

Bad_NodeIdUnknown

The GroupIdis unknown.

Bad_UserAccessDenied

The Sessionuser does not have rights to delete the group.

Table 229specifies the AddressSpacerepresentation for the RemoveGroup Method.

Table 229– RemoveGroup Method AddressSpace definition

Attribute

Value

BrowseName

RemoveGroup

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InputArguments

Argument[]

PropertyType

Mandatory

ConformanceUnits

PubSub Model Base

An instance of a subtype of this abstract ObjectTyperepresents network address information. The NetworkAddressTypeis formally defined in Table 230.

Table 230– NetworkAddressType definition

Attribute

Value

BrowseName

NetworkAddressType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of BaseObjectType defined in OPC 10000-5.

HasComponent

Variable

NetworkInterface

String

SelectionListType

Mandatory

Conformance Units

PubSub Model Base

The NetworkInterface Variableallows the selection of the network interface used for the communication relation. The network interface can be listed by name, by IP address or a combination of name and IP address. The SelectionValues Propertyof the SelectionListTypeshall contain the list of available network interfaces as application-specific strings. The Value of the Variable contains the selected network interface as String. The SelectionListTypeis defined in OPC 10000-5. The Objectmay allow providing additional Stringsnot defined in the SelectionValues. In this case the NotRestrictToList Propertyof the SelectionListTypeis set to true.

An instance of this ObjectTyperepresents network address information in the form of a URL String. The NetworkAddressUrlTypeis formally defined in Table 231.

Table 231– NetworkAddressUrlType definition

Attribute

Value

BrowseName

NetworkAddressUrlType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of NetworkAddressType defined in 9.1.5.6.

HasComponent

Variable

Url

String

BaseDataVariableType

Mandatory

Conformance Units

PubSub Model Base

The URL Variablecontains the address string for the communication middleware or the communication relation. The syntax of the URL is defined by the transport protocol.

This ObjectTypeis the abstract base type for Objectsrepresenting transport protocol mapping specific settingsforPubSubConnections. The ConnectionTransportTypeis formally defined in Table 232.

Table 232– ConnectionTransportType definition

Attribute

Value

BrowseName

ConnectionTransportType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of BaseObjectType

Conformance Units

PubSub Model Base

The HasWriterGroup ReferenceTypeis a concrete ReferenceTypethat can be used directly. It is a subtype of the HasComponent ReferenceType.

The SourceNodeof Referencesof this type shall be an instance of the PubSubConnectionTypedefined in 9.1.5.2.

The TargetNodeof this ReferenceType shall be an instance of the WriterGroupTypedefined in 9.1.6.3.

Serversshall provide the inverse Referencethat relates a WriterGroup Objectback to a PubSubConnectionTypeObject.

The representation of the HasWriterGroup ReferenceTypein the AddressSpaceis specified in Table 233.

Table 233– HasWriterGroup ReferenceType

Attributes

Value

BrowseName

HasWriterGroup

InverseName

IsWriterGroupOf

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment

Subtype of HasComponent defined in OPC 10000-5.

Conformance Units

PubSub Model Base

The HasReaderGroup ReferenceTypeis a concrete ReferenceTypethat can be used directly. It is a subtype of the HasComponent ReferenceType.

The SourceNodeof Referencesof this type shall be an instance of the PubSubConnectionTypedefined in 9.1.5.2.

The TargetNodeof this ReferenceType shall be an instance of the ReaderGroupTypedefined in 9.1.6.6.

Serversshall provide the inverse Referencethat relates a ReaderGroup Objectback to a PubSubConnectionTypeObject.

The representation of the HasReaderGroup ReferenceTypein the AddressSpaceis specified in Table 234.

Table 234– HasReaderGroup ReferenceType

Attributes

Value

BrowseName

HasReaderGroup

InverseName

IsReaderGroupOf

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment

Subtype of HasComponent defined in OPC 10000-5.

Conformance Units

PubSub Model Base