2.3. Configuring the OPC DataHub for the client

Now you need to set up the OPC DataHub on this machine to tunnel across to the DataHub on the OPC server machine.

Configure the OPC DataHub as tunnelling slave

The tunnelling slave DataHub behaves exactly like the tunnelling master DataHub except that the slave establishes the tunnelling connection initially, and reestablishes it after a network break. For this reason we recommend that the DataHub on the OPC client side act as the tunnelling slave, while the DataHub on the OPC server side act as the tunnelling master.

  1. Right click on the OPC DataHub system-tray icon and choose Properties.
  2. In the Properties window, select Tunnel/Mirror .
  3. Check the box Act as a tunnelling/mirror slave to these masters.
  4. Click the Add Master... button to assign a master to this slave. The Tunnel/Mirror Master Configuration window will open:
  5. Type in the following information:

      Primary Host: the name or IP address of the computer running the tunnelling master DataHub.

      Port: the port number or service name for this host. You should use default port number (4600) unless you have changed the entry in the master DataHub.

      Secondary Host: gives you the option to have an alternate host and service/port number. On startup or after a network break, the DataHub will search first for the primary host, then for the secondary host, alternating between primary and secondary until a connection is made. If no secondary host is specified, the connection will be attempted on the primary host only.

      Local data domain: The data domain in which you plan to receive data.

      Remote data domain: the master DataHub data domain from which you plan to receive data. Point names will be mapped from the remote data domain (on the master DataHub) into the local data domain (on this DataHub), and vice versa.


      Unless you have a good reason for making these different, we recommend using the same data domain name on both DataHubs for the sake of simplicity.


    There is a DataHub running on Cogent's server that you can connect to for testing. Here are the parameters you will need to enter for it:

      Primary Host: developers.cogentrts.com

      Port: 4600

      Local data domain: test

      Remote data domain: test

  6. You now have several options for the mirrored connection.
    1. Data Flow Direction: lets you determine which way the data flows. The default is bi-directional data flow between slave and master, but you can effectively set up a read-only or write-only connection by choosing that respective option.

      To optimize throughput, check the Read-only: Receive data from the Master, but do not send option. Only do this if you actually want a read-only connection. If you do not require read-write access, a read-only tunnel will be faster.

    2. When the connection is initiated: determines how the values from the points are assigned when the slave first connects to the master. There three possibilities: the slave gets all values from the master, the slave sends all its values to the master, or the master and slave synchronize their data sets, point by point, according to the most recent value of each point (the default).
    3. When the connection is lost: determines where to display the data quality as "Not Connected"—on the master, on the slave, or neither.

      If you have configured When the connection is initiated as Synchronize based on time stamp (see above), then this option must be set to Do not modify the data quality here or on the Master to get correct data synchronization.

    4. Connection Properties gives you these options:

        Replace incoming timestamp... lets you use local time on timestamps. This is useful if the source of the data either does not generate time stamps, or you do not trust the clock on the data source.

        Transmit point changes in binary gives users of x86 CPUs a way to speed up the data transfer rate. Selecting this option can improve maximum throughput by up to 50%.

        Target is a Cogent Embedded Toolkit server allows this slave to connect to an Embedded Toolkit server rather than to another DataHub.

        Heartbeat sends a heartbeat message to the master every number of milliseconds specified here, to verify that the connection is up.

        Timeout specifies the timeout period for the heartbeat. If the slave DataHub doesn't receive a response from the master within this timeout, it drops the connection. You must set the timeout time at least twice the heartbeat time.


        To optimize this setting for slow networks, please refer to Section 18.2, “Tunnel/Mirror (TCP) Connections for Slow Networks”.

        Retry specifies a number of milliseconds to wait before attempting to reconnect a broken connection.

  7. Click OK to close the Tunnel/Mirror Master window. The fields in the Tunnelling Slave table of the Properties Window should now be filled in.
  8. Click the Apply button in the Properties Window. If the master DataHub is running, this DataHub should establish the tunnelling connection, and the Status should display Connected. You can view the data with the Data Browser, or view the connection with the Connection Viewer.

Configure the OPC DataHub to act as a server to the OPC client

Finally, we suggest that you ensure that the OPC DataHub on the OPC client machine is configured to act as an OPC server. Every OPC DataHub comes preconfigured that way, but it doesn't hurt to check.

  1. Right click on the DataHub system-tray icon and choose Properties.
  2. In the Properties window, select OPC .
  3. Ensure that the Act as an OPC Server box is checked.

    If your OPC client requires that you hand-enter the OPC server name, use either Cogent.OPCDataHub or Cogent.OPCDataHub.1 .

    The Do not adjust OPC registry entries for this program option tells the OPC DataHub not to alter its registry settings. This is useful if you want to use the OPC DataHub with a redundancy server or some other program that modifies the DataHub's registry independently. Without this box checked, the DataHub will overwrite any external changes when it starts or when a change to the Act as an OPC Server status is applied.
    These two boxes work together, because turning the OPC server behavior on or off necessarily makes changes to the registry. Here is how you can change OPC server behavior when you also need to maintain registry settings:
    1. Uncheck Do not adjust OPC registry entries for this program. This will make the Act as an OPC Server checkbox visible.
    2. Check or uncheck the Act as an OPC Server as needed, and click Apply.
    3. Check Do not adjust OPC registry entries for this program and click Apply.
  4. Click Apply button at the bottom of the Properties window to apply the change. You can view connections with the Connection Viewer.

Now you can start your OPC client, connect to the OPC DataHub, and access your data.