Figure 41depicts the ObjectTypefor the PubSubgroup model and its components and the relations to other parts of the model.
Figure 41– PubSubGroupType Overview
This ObjectTypeis the abstract base type for Objectsrepresenting communication groupingsforPubSub connections. The PubSubGroupTypeis formally defined in Table 114.
Table 114– PubSubGroupType Definition
Attribute |
Value |
||||
BrowseName |
PubSubGroupType |
||||
IsAbstract |
True |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of BaseObjectType defined in OPC 10000-5. |
|||||
HasProperty |
Variable |
SecurityMode |
MessageSecurityMode |
PropertyType |
Mandatory |
HasProperty |
Variable |
SecurityGroupId |
String |
PropertyType |
Optional |
HasProperty |
Variable |
SecurityKeyServices |
EndpointDescription[] |
PropertyType |
Optional |
HasProperty |
Variable |
MaxNetworkMessageSize |
UInt32 |
PropertyType |
Mandatory |
HasProperty |
Variable |
GroupProperties |
KeyValuePair[] |
PropertyType |
Mandatory |
HasComponent |
Object |
Status |
|
PubSubStatusType |
Mandatory |
The SecurityModeis defined in 6.2.4.2.
The SecurityGroupIdis defined in 6.2.4.3. If the SecurityModeis not NONE_1, the Propertyshall provide the SecurityGroupId. The value of the Propertyis null or the Propertyis not present if the SecurityModeis NONE_1.
The SecurityKeyServicesparameter is defined in 6.2.4.4. If the SecurityModeis not NONE_1, the Propertyshall provide the list of Security Key Servicesfor the SecurityGroupId.
The MaxNetworkMessageSizeis defined in 6.2.4.5.
The GroupPropertiesis defined in 6.2.4.6.
The Status Objectprovides the current operational status of the group. The PubSubStatusTypeis defined in 9.1.10. The state machine for the status and the relation to other PubSub Objectslike PubSubConnection, DataSetWriterand DataSetReaderare defined in 6.2.1.
Instances of WriterGroupTypecontain settings for a group of DataSetWriters. The WriterGroupTypeis formally defined in Table 115.
Table 115– WriterGroupType Definition
Attribute |
Value |
|||||
BrowseName |
WriterGroupType |
|||||
IsAbstract |
False |
|||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
|
Subtype of PubSubGroupType defined in 9.1.6.2 |
||||||
HasProperty |
Variable |
WriterGroupId |
UInt16 |
PropertyType |
Mandatory |
|
HasProperty |
Variable |
PublishingInterval |
Duration |
PropertyType |
Mandatory |
|
HasProperty |
Variable |
KeepAliveTime |
Duration |
PropertyType |
Mandatory |
|
HasProperty |
Variable |
Priority |
Byte |
PropertyType |
Mandatory |
|
HasProperty |
Variable |
LocaleIds |
LocaleId[] |
PropertyType |
Mandatory |
|
HasProperty |
Variable |
HeaderLayoutUri |
String |
PropertyType |
Mandatory |
|
HasComponent |
Object |
TransportSettings |
|
WriterGroupTransportType |
Optional |
|
HasComponent |
Object |
MessageSettings |
|
WriterGroupMessageType |
Optional |
|
HasDataSetWriter |
Object |
<DataSetWriterName> |
|
DataSetWriterType |
OptionalPlaceholder |
|
HasComponent |
Object |
Diagnostics |
|
PubSubDiagnosticsWriterGroupType |
Optional |
|
HasComponent |
Method |
AddDataSetWriter |
Defined in 9.1.6.4. |
Optional |
||
HasComponent |
Method |
RemoveDataSetWriter |
Defined in 9.1.6.5. |
Optional |
The WriterGroupIdis defined in 6.2.5.1.
The PublishingIntervalis defined in 6.2.5.2.
The KeepAliveTimeis defined in 6.2.5.3.
The Priorityis defined in 6.2.5.4.
The LocaleIdsparameter is defined in 6.2.5.5.
The transport protocol mapping specific setting settings are provided in the optional Object TransportSettings. The WriterGroupTransportTypeis defined in 9.1.6.7. The Objectshall be present if the transport protocol mapping requires specific settings.
The message mapping specific setting settings are provided in the optional Object MessageSettings. The WriterGroupMessageTypeis defined in 9.1.6.8. The Objectshall be present if the message mapping defines specific parameters.
The configured DataSetWriterType Objectsare added as components to the instance of the group. DataSetWriterType Objectsmay be configured with productspecific configuration tools or through OPC UA Methods AddDataSetWriterand RemoveDataSetWriter. The DataSetWriterTypeis defined in 9.1.7.1. The ReferenceType HasDataSetWriteris defined in 9.1.6.6.
The Diagnostics Object provides the current diagnostic information for a WriterGroupType Object. The PubSubDiagnosticsWriterGroupTypeis defined in 9.1.11.9.
This Methodis used to add a new DataSetWriterType Objectto an instance of the WriterGroup. A successful creation of the DataSetWritershall also create a Referencefrom the related PublishedDataSet Objectto the created DataSetWriter.
The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.
Signature
AddDataSetWriter(
[in]DataSetWriterDataType Configuration
[out]NodeId DataSetWriterNodeId
);
Argument |
Description |
Configuration |
Configuration parameters for the DataSetWriter. The parameters and the DataSetWriterDataTypeare defined in 6.2.3. |
DataSetWriterNodeId |
The NodeIdof the new DataSetWriter Object. |
Method Result Codes
ResultCode |
Description |
Bad_InvalidArgument |
The Serveris not able to apply the name. The name may be too long or may contain invalid character. |
Bad_DataSetIdInvalid |
The DataSetspecified for the DataSetWritercreation is invalid. |
Bad_BrowseNameDuplicated |
An Objectwith the name already exists in the group. |
Bad_ResourceUnavailable |
The Serverhas not enough resources to add the DataSetWriter. |
Bad_UserAccessDenied |
The Sessionuser does not have rights to create the DataSetWriter. |
This Methodis used to remove a DataSetWriter Objectfrom the group. The state of the DataSetWriteris set to Disabled_0 before removing the Object. A successful removal of the DataSetWritershall also delete the Referencefrom the related PublishedDataSetType Objectto the removed DataSetWriter.
The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.
Signature
RemoveDataSetWriter(
[in]NodeIdDataSetWriterNodeId
);
Argument |
Description |
DataSetWriterNodeId |
NodeIdof the DataSetWriter to remove from the group. |
Method Result Codes
ResultCode |
Description |
Bad_NodeIdUnknown |
The DataSetWriterNodeIdis unknown. |
Bad_NodeIdInvalid |
The DataSetWriterNodeIdis not a NodeIdof a DataSetWriter. |
Bad_UserAccessDenied |
The Sessionuser is not allowed to delete a DataSetWriter. |
The HasDataSetWriter 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 WriterGroupTypedefined in 9.1.6.3.
The TargetNodeof this ReferenceType shall be an instance of the DataSetWriterTypedefined in 9.1.7.1.
The representation of the HasDataSetWriter ReferenceTypein the AddressSpaceis specified in Table 116.
Table 116– HasDataSetWriter ReferenceType
Attributes |
Value |
||
BrowseName |
HasDataSetWriter |
||
InverseName |
IsWriterInGroup |
||
Symmetric |
False |
||
IsAbstract |
False |
||
References |
NodeClass |
BrowseName |
Comment |
Subtype of HasComponent defined in OPC 10000-5. |
This ObjectTypeis the abstract base type for Objectsrepresenting transport protocol mapping specific settingsforWriterGroups. The WriterGroupTransportTypeis formally defined in Table 117.
Table 117– WriterGroupTransportType Definition
Attribute |
Value |
||||
BrowseName |
WriterGroupTransportType |
||||
IsAbstract |
True |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of BaseObjectType |
|||||
HasSubtype |
ObjectType |
DatagramWriterGroupTransportType |
Defined in 9.3.1.2. |
||
HasSubtype |
ObjectType |
BrokerWriterGroupTransportType |
Defined in 9.3.2.2. |
This ObjectTypeis the abstract base type for Objectsrepresenting message mapping specific settingsforWriterGroups. The WriterGroupMessageTypeis formally defined in Table 118.
Table 118– WriterGroupMessageType Definition
Attribute |
Value |
||||
BrowseName |
WriterGroupMessageType |
||||
IsAbstract |
True |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of BaseObjectType |
|||||
HasSubtype |
ObjectType |
UadpWriterGroupMessageType |
Defined in 9.2.1.1. |
||
HasSubtype |
ObjectType |
JsonWriterGroupMessageType |
Defined in 9.2.2.1. |
This ObjectTypeis a concrete type for Objectsrepresenting DataSetReadergroupingsforPubSub connections. The ReaderGroupTypeis formally defined in Table 114.
Table 119– ReaderGroupType Definition
Attribute |
Value |
||||
BrowseName |
ReaderGroupType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
Data Type |
TypeDefinition |
Modelling Rule |
Subtype of PubSubGroupType defined in 9.1.6.2 |
|||||
HasDataSetReader |
Object |
<DataSetReaderName> |
|
DataSetReaderType |
OptionalPlaceholder |
HasComponent |
Object |
Diagnostics |
|
PubSubDiagnosticsReaderGroupType |
Optional |
HasComponent |
Object |
TransportSettings |
|
ReaderGroupTransportType |
Optional |
HasComponent |
Object |
MessageSettings |
|
ReaderGroupMessageType |
Optional |
HasComponent |
Method |
AddDataSetReader |
Defined in 9.1.6.10. |
Optional |
|
HasComponent |
Method |
RemoveDataSetReader |
Defined in 9.1.6.11. |
Optional |
The configured DataSetReaderType Objectsare added as components to the instance of the group. DataSetReaderType Objectsmay be configured with productspecific configuration tools or through OPC UA Methods AddDataSetReaderand RemoveDataSetReader. The DataSetReaderTypeis defined in 9.1.8.1. The ReferenceType HasDataSetReaderis defined in 9.1.6.12.
The Diagnostics Object provides the current diagnostic information for a ReaderGroupType Object. The PubSubDiagnosticsReaderGroupTypeis defined in 9.1.11.10.
The transport protocol mapping specific setting settings are provided in the optional Object TransportSettings. The ReaderGroupTransportTypeis defined in 9.1.6.13. The Objectshall be present if the transport protocol mapping defines specific parameters.
The message mapping specific setting settings are provided in the optional Object MessageSettings. The ReaderGroupMessageTypeis defined in 9.1.6.14. The Objectshall be present if the message mapping defines specific parameters.
This Methodis used to add a new DataSetReaderType Objectto an instance of the ReaderGroup.
The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.
Signature
AddDataSetReader(
[in]DataSetReaderDataType Configuration
[out]NodeId DataSetReaderNodeId
);
Argument |
Description |
Configuration |
Configuration parameters for the DataSetWriter. The parameters and the DataSetReaderDataTypeare defined in 6.2.8. |
DataSetReaderNodeId |
The NodeIdof the new DataSetReaderObject. |
Method Result Codes
ResultCode |
Description |
Bad_InvalidArgument |
The Serveris not able to apply the name. The name may be too long or may contain invalid characters. |
Bad_BrowseNameDuplicated |
An Objectwith the name already exists in the group. |
Bad_ResourceUnavailable |
The Serverdoes not have enough resources to add the DataSetReader. |
Bad_UserAccessDenied |
The Sessionuser does not have rights to create the DataSetReader. |
This Methodis used to remove a DataSetReader Objectfrom the group. The state of the DataSetReaderis set to Disabled_0 before the Objectis removed.
The Clientshall be authorized to modify the configuration for the PubSubfunctionality when invoking this Methodon the Server.
Signature
RemoveDataSetReader(
[in]NodeIdDataSetReaderNodeId
);
Argument |
Description |
DataSetReaderNodeId |
NodeIdof the DataSetReaderto remove from the group. |
Method Result Codes
ResultCode |
Description |
Bad_NodeIdUnknown |
The DataSetReaderNodeIdis unknown. |
Bad_NodeIdInvalid |
The DataSetReaderNodeIdis not a NodeId of a DataSetReader. |
Bad_UserAccessDenied |
The Sessionuser does not have rights to delete the DataSetReader. |
The HasDataSetReader 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 ReaderGroupTypedefined in 9.1.6.6.
The TargetNodeof this ReferenceType shall be an instance of the DataSetReaderTypedefined in 9.1.8.1.
The representation of the HasDataSetReader ReferenceTypein the AddressSpaceis specified in Table 120.
Table 120– HasDataSetReader ReferenceType
Attributes |
Value |
||
BrowseName |
HasDataSetReader |
||
InverseName |
IsReaderInGroup |
||
Symmetric |
False |
||
IsAbstract |
False |
||
References |
NodeClass |
BrowseName |
Comment |
Subtype of HasComponent defined in OPC 10000-5. |
This ObjectTypeis the abstract base type for Objectsrepresenting transport protocol mapping specific settingsforReaderGroups. The ReaderGroupTransportTypeis formally defined in Table 121.
There is currently no transport protocol mapping specific setting defined.
Table 121– ReaderGroupTransportType Definition
Attribute |
Value |
||||
BrowseName |
ReaderGroupTransportType |
||||
IsAbstract |
True |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of BaseObjectType |
This ObjectTypeis the abstract base type for Objectsrepresenting message mapping specific settingsforReaderGroups. The ReaderGroupMessageTypeis formally defined in Table 122.
There is currently no message mapping specific setting defined.
Table 122– ReaderGroupMessageType Definition
Attribute |
Value |
||||
BrowseName |
ReaderGroupMessageType |
||||
IsAbstract |
True |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of BaseObjectType |