Test Architecture
Introduction
In today's article we are going to test Collaboration, a Siemens tool for WinCC Unified that allows us to share screens (Screens) between different Runtimes.
This is very useful if we have distributed HMIs in the plant and, for example, we want to centralize all the information in a single point without duplicating the PLC connections.
For this test, I have built the following architecture:
- Virtual machine 1: Main server
- TIA Portal V20: main engineering station.
- PLCSIM Advanced V7.0
- PLC 1: communicates with SCADA 1 and runs on 192.168.1.188.
- PLC 2: communicates with SCADA 2 and runs on 192.168.1.190.
- WinCC Runtime 1: runs SCADA 1 on IP 192.168.1.157.
- Virtual machine 2: Secondary server
- WinCC Runtime 2: runs SCADA 2 on IP 192.168.1.169.
In this way we have two SCADA systems, each one pointing to its PLC, as shown in the image. The goal is to view screens from SCADA 1 in SCADA 2 using Collaboration. Let's go.
Collaboration
First, we assume that we have generated a project with a minimal program in each PLC, and that the corresponding configurations have been made so everything communicates correctly.
Steps:
Enable the Collaboration function:
SCADA Runtime 1: in the HMI project, we open Runtime settings and select the Collaboration option. Once inside, we enable it with Enable collaboration.
- System ID: we can leave it as default, or set another one.
- Collaboration name: we can leave the one generated from the HMI name. This is how we will see it when searching for its screens from other HMI/SCADA stations.
- IP Address: we enter the HMI's own IP address.
- Connect actively to: the first time this section will be empty, because this is where the connections with other HMIs appear.
SCADA Runtime 2: we do exactly the same.
Collaboration Data: once the previous step is done, we must select which screens we want to share in both SCADA systems. Previously we configured the Collaboration connection, but now we need to specify which screens will be shared. In our case, we will share only the Start screen.
Using shared screens
Using screens: once the configuration is established, we can use screens from one HMI in another in several ways.
Opening the other HMI screen with a button, just as we would open a local screen.
Screen Windows: instantiate a Screen Window object and associate it with the screen we want from the other HMI. This way, it is integrated into a Screen of HMI 2.
Scripting: there are also options to activate it through scripting based on events or triggers, just like other properties.
Certificates
Certificates: it is important that the certificates are correctly generated and configured in WinCC Unified Certificate Manager for this to work properly.
Generate certificates: certificates are generated for both SCADA systems.
We add the certificate for Web Server and enter the information.
We add the certificate for Runtime Collaboration.
Certificate export: once both certificates have been generated for both SCADA systems, we should have something like this:
We select Export:
And these files are generated:
We copy and paste them, or move them through USB. The intention is to import them on the other PC, where HMI 2 is running.
In HMI 2, we open SIMATIC Runtime Manager and select Settings:
We select Import and browse for the certificate that was previously generated and copied to this machine.
Certificate installed: now we have the certificate installed in HMI_1 and HMI_2.
Results
Results: for this example, I have shared the Main screen from HMI_1 in HMI_2 in two ways. First through a button using ChangeScreen, and then using the Screen Viewer object.
Change Screen: we can see that each Runtime has its own IP address.
By pressing the configured Change Screen button, we can display the HMI_1 screen in HMI_2, as shown in the image, each one with its own IP.
Screen Viewer: in this case the Screen Viewer object is embedded inside HMI_2, displaying the Main screen from Screen 1.