# PROSIM in the Cloud: Remote Automation Training Platform with Virtualized Infrastructure
## 3 PRO-CPS Approach for Industrial Process Simulator Virtualization
The reference approach for a virtualized solution based on this description (main questions relate to what is virtualized and how) is presented in the block diagram from Figure 2. Existing components are marked in green and include the industrial PLC system which supports both industrial i/o interfacing and/or industrial communication using standardized protocols: Modbus TCP, OPC-UA and MQTT to dedicated data acquisition subsystems. These provide a number of digital and analog inputs and outputs which also represent a limitation in the design and implementation of the physical simulator as more complex simulation, making use of over 16 digital input/output channels or 6 analog inputs or 4 analog outputs are not supported. An alternative can be implemented in a hybrid manner where part of the input and output signals and additional signals are relayed via communication protocols between the industrial PLC and the process simulations. The process simulations encode the process models for various typical applications in industry with a one-to-one mapping between the process variables and control signals on both sides. The components marked in yellow represent new developments. These start with the dedicated package of add-on simulations for the process simulations based on user/adopter requirements in this field. These include mainly flow and thermal plant models in various industries such as food and beverages, chemicals and healthcare. A special digital-twin-type model is also included for the ASTANK2 control engineering platform [20], which is a two-tank system for the experimental study of level, flow and temperature modelling and control. In this particular case, the.NET simulation application is replaced by an executable virtual instrument in which the system model is described either through differential equations or transfer functions and the respective control and output variables are linked to the Modbus registers or the OPC-UA tags. Further on the behavior of the PROSIM solution is similar to with the rest of the simulations. Virtualization of the industrial PLC control unit is carried out using manufacturer-specific software modules that allow the emulation of the respective automation hardware structures while running the same PLC programming projects. In our case, the first option is represented by the Siemens PLCSIM [21] component which provides tight integration with the automation projects developed in the Step7 TIA Portal development environment. This implements a virtual controller which behaves in similar fashion to the physical unit. An alternative, which is illustrated in this article, is the use of the Automation Runtime Simulation (ARSim) component provided in the Automation Studio developments environment supplied by the manufacturer B&R. In this situation, the OPC-UA server functionality is built into the virtual PLC which offers a significant advantage. Finally the packaged simulations, alongside the automation projects built as stand-alone executables including all necessary dependencies are uploaded and tested in a virtual machine provisioned on the HUBCAP cloud platform. This type of virtualized solution can support new paradigms associated with decentralized and distributed systems over a communication mesh network. We thus also consider enabling solutions for IIoT such as OPC-UA and multiagent systems as [22]. An open-source distributed middleware can be used between the control device and the simulations. The middleware can link together physical and virtual control units which cooperate for control of a single process simulation. Conversely, the simulations can represent parts of a distributed or large-scale system with interlinking process variables communicated over the communication mesh network. One example has been provided in [23] for a laboratory motion-control application with distributed edge devices both industrial-grade, S7-1200 PLC and commodity, Raspberry Pi.