This section describes the configuration settings for the connection types defined in clause 5.5.1 using PubSub as a communication model. For simplicity, all samples describe a single logical connection contained in the ConnectionConfigurationSet. Note, however, that as shown in E.1.3, a ConnectionConfigurationSet may contain multiple Connections, which may have different connection types.

The examples provide illustrations of how PubSub communication can be configured. The configuration contains various settings which have an influence on the communication model, including Address, PublishingInterval, QoS, MessageReceiveTimeout, ReceiveQos and SecurityMode (see 6.13.3 for additional details). Some of these settings can be complex to apply, such as the Address. Depending on the type of connection, this Address might contain a destination address, a receiving address, or a multicast address.

To set up the PubSubConfiguration for the bidirectional connection (illustrated in Figure E.1), information from multiple configuration elements is used, as illustrated in Figure E.10. For a simpler overview, configuration data not related to the communication model and the Endpoint2 are omitted.

image130.png

Figure E.10 – Configuring PubSub

CommunicationModelConfig contains the PubSub configuration elements to be applied to the AutomationComponent. The ConnectionManager uses the configuration information in Flow1 and Sub1 to update the communication model. CommunicationLinks indicate which DataSetReader and DataSetWriter contained in the communication model are relevant for this ConnectionEndpoint. This information is also used to set up the ToDataSetReader and ToDataSetWriter References on Con_A.

The ConnectionConfiguration for a bidirectional connection contains the following configuration information (see Figure E.11):

image131.png

Figure E.11 – Bidirectional connection illustration

The ConnectionConfiguration for a unidirectional connection with heartbeat contains the following configuration information (see Figure E.12):

  • EndpointA, indicating OutputVariables,
  • EndpointB, indicating InputVariables,
  • Flow1 and SubB describing the configuration for the information flow from EndpointA to EndpointB,
  • Flow2 and SubA for the heartbeat from EndpointB to EndpointA.

image132.png

Figure E.12 – Unidirectional connection with heartbeat illustration

The ConnectionConfiguration for a unidirectional connection contains the following configuration information (see Figure E.13):

  • EndpointA, indicating OutputVariables,
  • EndpointB, indicating InputVariables,
  • Flow1 and SubB describing the configuration for the information flow from EndpointA to EndpointB

image133.png

Figure E.13 – Unidirectional connection illustration

The ConnectionConfiguration for an autonomous publisher contains the following configuration information (see Figure E.14):

  • EndpointA, indicating OutputVariables,
  • Flow1 describing the configuration for the information flow from EndpointA to one or more unknown Subscribers.

For an autonomous publisher, no SubscriberConfiguration is required (see 6.13.3.2).

image134.png

Figure E.14 – Autonomous publisher illustration

The ConnectionConfiguration for an autonomous subscriber contains the following configuration information (see Figure E.15):

  • EndpointA, indicating InputVariables,
  • Flow1 and SubA describing the configuration for the information flow from an unknown Publisher to EndpointA.

For an autonomous subscriber, no ToOutboundFlow Reference is required. Configuration which applies only to the Publisher of the information flow may be omitted, i.e., Address and TransmitQos (see E.4.1).

image135.png

Figure E.15 – Autonomous subscriber illustration