Only a few companies using real-time technology solutions have test environments for the SCADA, MES or ETRM systems. Creating the ETRM environment (e.g. our SELT system – System for Electricity trading on Liberated Market) is quite easy since it is mainly a database-based system, so you can duplicate the database and application server and restrict the test systems' data connections to the environment (email, web services etc.)... though if ETRM is connected to other real-time trading platforms, it may not be so easy even here.
Creating SCADA and MES test system is complicated in practice mainly because of the communication connections. For example, test PLCs with a simulation of technology are rarely available.
Nevertheless, creating a test environment is important – whether as a simulator or during a generational upgrade to test the functionality of the new version. SCADA and MES systems built on the D2000 technology have several built-in options to solve the communication in the test system.
- Simulation of a communication
- KOM replay
- Transparent gateway
Let us briefly describe the uses and benefits of each option.
1. Simulation of a communication
The communication process (the KOM Process) can be run in a simulation mode, in which instead of communicating with the environment it only generates the values of the input I/O tags. For analog and integer points it performs the simulation of sinusoids, for logical and quadruple measured objects, it generates random values. Simulation is the easiest, most accessible but also the least realistic replacement of a reality. It is used, for example, during the development phase to animate values in display screens.
If necessary, also a selected subset of communications can be put into the simulation.
2. KOM replay
The KOM process in the production environment allows activating of the recording of values from communication to data files (if the recording lasts for several hours, a new file is created every hour). These files, which are in the version-independent format, can be transferred to the test system and the KOM process can be run in so-called replay-mode. In this mode, the KOM process does not communicate but awaits the command to start replaying the recorded values. The values will be replayed in order and in the timings as recorded, just the timestamps will be updated to the current time.
In addition to more realistic data simulation using the production data, the KOM replay allows you to replay a real event captured on the production system and eventually train the operators’ response. This functionality is available from version 7.2.11 (2008).
3. Transparent gateway
The D2000 Gateway process connects two D2000 systems that can have different versions. It facilitates the transfer of real-time values as well as the reading of historical values after an outage. Starting from version 8.0.5 (2013), it can also work in a so-called "transparent gateway” mode. In this mode, the gateway can transfer values of objects or their children according to the given mask (e.g. I/O tags, communication stations, linea, or whole KOM process) between systems. In such a configuration in the test environment, the KOM process is not running and its functionality (collecting of input points) is taken over by a gateway which provides real-time data from the production environment. Writing output point values is, of course, non-functional in the test environment.
In this way, we have been providing real-time data from a third-party SCADA system to a testing environment of a specific large MES system for several years. The SCADA uses the IEC104 protocol to communicate with the production MES system. This protocol could be used by several clients (both test and production MES), but due to hardware constraints of SCADA servers, only the communication with the production MES system can be realized. Subsequently, the transparent gateway transmits all the values from the production MES to the test MES system where they are displayed, archived and processed in a standard way. The upgrade of the MES system is first performed on a test environment where it is possible to test the full functionality of the MES system (except for communication) on live data.
Similarly, the development of new features and application modifications can take place in the test environment using 'live' data, but without the risk of breaking the production system which is used by 150 users on average.
Ideally, for each communication protocol, there would be at least one device available for the test environment – to test the functionality of a particular protocol implementation in the KOM process, for example, when doing a version upgrade. In reality, it is not always possible – for example, also because a communication module can be embedded as a part of the technology. The above-mentioned three ways of solving the problem of communication in the test environment can also be combined, e.g. some KOM processes can simulate values, others perform the value replay, and others can be replaced by transparent gateways. It depends on the users' requirements which way will be preferred for a specific communication or currently exploited purpose of the test environment. And of course, they can also be combined with a real communication with devices if it is available at least for some communication protocols...