D.3.7.5 Using ControlGroups to expose functionality.
ControlGroups can be used to expose functionality that is required to be used as a group. This example describes a pair of controllers that are part of a cascade control application (see Figure D.31). For a cascade control application, the PID controller is required to get feedback from the other controller as well as provide a setpoint to the other controller. This requires bidirectional communication.
In this example, Controller B comes with preconfigured DataSets, one for the Publisher and one for the Subscriber.

ControlGroup can be created to indicate that if using the PID in cascade mode, then the ControlGroup shall be used.
The communication between Controller A and Controller B could be set up by the ConnectionManager in Controller A, which would see the ControlGroup and would utilise the preconfigured Datasets that are described in the ControlGroup.