Keywords

1 Introduction

The constant change of society and the technological revolution that the world is living, makes improvements appear in the techniques and methods implemented in the process of formation of skills to be applied in labor or educational activities.[1].The inclusion of Information and Communication Technologies (ICT's) such as smart boards, videoconferencing, virtual platforms, among others, have allowed a rapid advancement of education, creating in current generations a high dependence on digital products and services to perform daily activities [2].

Due to the pandemic, more and more educational institutions are introducing new teaching methods, which means that engineering students are confronted with real professional situations in the learning process [2]. The use of game simulators in the educational process improves the quality of educational material and enhances the educational effects of the use of innovative pedagogical programs and methods, as it offers teachers additional opportunities to build individual educational trajectories of students [3].

In recent years, technology has shown a great interest in improving methods and skills in training processes in different areas such as education, medicine and especially in industrial processes, thus allowing to increase the experience of operators and instrumentalists at work [4, 5]. Industrial technology has incorporated simulators and programming languages to represent and emulate the operation of different processes in real time, because the maintenance of the operation and maneuvers require significant resources, it is important to mention that by associating these technological tools with the different branches of engineering, great advantages are obtained, for example, in Electromechanical Engineering, allows constant maintenance of calibrations and adjustments of electrical and mechanical components, where the main responsible is the operator to perform these procedures [6].

A virtual environment is an environment in which simulations of activities that are found in everyday life are performed, this is done in order to bring these activities to a controlled environment and analyze in greater depth the stability and robustness of the designed systems, allowing in this virtual test environment, you can experience various disturbances of the system, and thus obtain a complete study of the operation of the system [7]. The advancement of technology has developed computers that allow increasingly realistic and complex simulations in different areas. A virtual environment would be divided into i) interactive environment means that the user is “free” to navigate the virtual environment without having programmed the trajectory he/she wishes to move, the system responds according to the user's wishes, this represents that the user can make decisions in “real time” in order to observe the scene from the selected point of view [8]; ii) implicit interaction refers to the fact that the user does not have to learn commands or procedures to perform any action in the virtual world; on the contrary, the user performs movements that are natural to those used in the real world to move. It is then sought that the computer adapts to human nature and not the other, thus ensuring that the experience in the virtual environment is as similar as possible to the experience in the real world; and iii) sensory immersion refers to the disconnection of the sense of the real world and the connection of this with the virtual world [8].

There are several investigations on virtual systems for industrial processes, in which different control strategies for double effect evaporators are presented, mainly tomato concentrate for commercial use [9, 10]. Another of the fundamental points of this line of research is the focus on the training of workers in different industrial processes. To make the factory of the future a reality, several requirements must be met. It is necessary to continuously train the worker on new and changing technological trends, since the human being is the most flexible entity in the production system [11, 12]. The objective of Industry 4.0 is to integrate machines and operators through networking and information management. It proposes the use of a set of technologies in industry, such as data analytics, the Internet of Things, cloud computing, cooperative robots, and immersive technologies [13, 14].

This work presents the control and virtualization of a distillation tower plant that is widely used in different industrial processes. All the components of the distillation towers are designed from a diagram that is taken as a reference for the creation of the plant in 3D using Blender software. The animation of the plant's own objects is implemented in the UNITY 3D graphics engine. The virtual environment incorporates a control panel that allows to modify the control parameters of the process, as well as to visualize the evolution of the system. Through a bilateral communication between Unity and MATLAB, advanced control algorithms are implemented to control the system in real time.

The stages that make up this work are described as follows: Sect. 2 describes the structure of the system. Section 3 describes the development of the virtual environment in Blender and Unity 3D; the control scheme is detailed in Sect. 4. Section 5 describes the analysis of results; and finally, Sect. 6 describes the conclusions of the work.

2 System Structure

This paper describes the development of an interactive virtual environment for training on distillation tower systems. The virtualization of the plant and the simulation of the industrial process together result in a training tool for new users in a safe environment free of occupational hazards. In addition, the industrial process control is developed through events that occur when the user interacts in the virtual environment, which allows to simulate the process behavior and critical situations that may occur (Fig. 1).

Fig. 1.
figure 1

Virtual environment architecture

The simulation of the process behavior is generated by the mathematical model developed through the analysis of components and variables that act in the behavior of the plant, the exchange of data with MATLAB together with the mathematical modeling produces a reliable behavior of the variables of the virtual environment.

For the creation of the virtual environment begins with the study of the plant diagram, in order to understand each of the parts involved in the process; after finishing the analysis, begins the 3D design in the Blender program where from a real industrial environment begins the modeling and de-sizing of the plant that will later be exported. Once the plant is exported to Unity, the behaviors must be programmed and assigned to each of the elements of the environment. To achieve an effective evolution of the system MATLAB has the function to carry out the control actions and send them to Unity through a bilateral communication.

3 Environment Virtualization

This section describes the process implemented for the virtualization of the distillation towers using Blender, Unity which allows a high degree of immersion for the user (Fig. 2).

Fig. 2.
figure 2

Virtual system diagram for distillation towers

3.1 Design in Blender Software

The 3D design allows virtualizing the structure of the distillation towers consisting of a system of interconnected piping and industrial equipment to create a double effect. The creation and three-dimensional interconnection of the piping systems and instruments is done using Blender 3D software for the design of virtual environments, as shown in Fig. 3.

Fig. 3.
figure 3

Distillation tower in blender

3.2 Design in Unity Software

The design obtained in Blender 3D is imported in FBX format (Film Box) to Unity 3D, which is scaled and placed inside the plant in its corresponding place. The design in format (*.fbx) must have features that are similar to reality, the creation of animations, the assignment of sounds to existing equipment conforms to the Unity 3D design. For the animations of the explosions in particular, each part of the system was fragmented, both tanks and pipes, and the behavior of these was implemented in a script, in which an explosion force is added that thanks to the Unity 3D graphics engine simulates the behavior of the plant in case of possible failures. This provides a more realistic training environment for the user of the training system.

Fig. 4.
figure 4

Virtual environment explosion

4 Modeling and Control

Finding equations that describe the behavior of a system is of great importance because through these equations it is possible to describe the behavior of a process and thus know its state at any instant of time. The differential equations are obtained through the study of chemical and physical effects that intervene in a process, in most cases there is a differential equation that governs the behavior of these effects.

The distillation operation basically consists of separating a mixture by difference of composition between a liquid and its vapor, this is the key to know elements. This operation is carried out continuously in the aforementioned distillation towers where a vapor rises from the liquid until it finally exits through the head or highest part of the column, and on the other side the liquid descends until it finally reaches the base.

Fig. 5.
figure 5

Distillation column model

The behavior of the system is divided into two effects, in both of which the total mass balance, solute balance and energy balance are analyzed. For didactic purposes the temperature of the second effect is kept constant by the action of the barometric condenser. The system represented in matrix form is presented as follows [15]

$$ \left[ {\begin{array}{*{20}c} {\dot{C}_{1} } \\ {\dot{C}_{2} } \\ \end{array} } \right] = \left[ {\begin{array}{*{20}c} {\frac{{k_{1} }}{{w_{1} }}C_{1} } & 0 \\ 0 & { - \frac{{k_{1} }}{{w_{2} }}C_{1} + \frac{{k_{1} \left( {1 + k_{2} } \right)}}{{w_{2} }}C_{2} } \\ \end{array} } \right]\left[ {\begin{array}{*{20}c} {O_{1} } \\ {O_{2} } \\ \end{array} } \right] + \left[ {\begin{array}{*{20}c} {\frac{1}{{w_{1} }}F_{0} \left( {C_{0} - C_{1} } \right)} \\ {\frac{1}{{w_{2} }}F_{0} \left( {C_{1} - C_{2} } \right)} \\ \end{array} } \right] $$
(1)
$$ {\dot{\mathbf{c}}}\left( t \right) = {\mathbf{Ho}}\left( t \right) + {\mathbf{p}}\left( t \right) $$
(2)

where, \(k_{1} {\text{ and k}}_{2}\): are positive counters and denote the ratio of the produced flow rate to the steam feed flow rate in both effects.; \(w_{1} {\text{ and}}\;w_{2}\): are the masses of the retained liquid or “level”; \(F_{0}\): is the initial solution flow; \(C_{0} ,\;C_{1} \;and\;C_{2}\): represents the initial concentration and each concentration in the towers respectively; \({\mathbf{p}} \in R^{2x1}\): corresponding to the coefficients of the variations of the concentrations; \({\mathbf{H}} \in R^{2x2}\): corresponding to the coefficients of the concentrations; \({\mathbf{o}} \in R^{2x1}\): corresponding to the steam flows to the distillation towers.

4.1 Control Algorithm

From the matrix representation of the system, the design of the plant controller is based on the numerical methods tool.

To discretize the system, we start from the Nyquist theorem defining a sampling period \(T_{0}\) Thus, by discretizing \({\mathbf{c}}\left( t \right)\) becomes \({\mathbf{c}}(k)\) where \(k\) are the samples. Thus, the discretized system is as follows:

$$ {\dot{\mathbf{c}}}\left( k \right) = {\mathbf{Ho}}\left( k \right) + {\mathbf{p}}\left( k \right) $$
(3)

Given that the state and control action at the instant of time \(t\left( k \right)\) are known, the state of the system at instant \(t\left( {k + 1} \right)\) can be approximated by Euler's method [16] under this consideration it is possible to apply Markov chains, which allows proposing a control law as described in Eq. 4.

$$ {\mathbf{o}}_{ref} \left( k \right) = \frac{{{\mathbf{H}}^{ - 1} }}{{T_{0} }}\left( {{\mathbf{cd}}\left( {k + 1} \right) - {\mathbf{W\tilde{c}}}\left( k \right) - {\mathbf{c}}\left( k \right)} \right) - {\mathbf{p}}\left( k \right) $$
(4)

Where \({\mathbf{cd}}\left( k \right)\) represent the desired values of the system; \({\tilde{\mathbf{c}}}\) symbolizes the control errors, being a vector of \({\tilde{\mathbf{c}}} \in R^{2x1}\) and \({\mathbf{W}}\) represents the gain matrix as: \({\mathbf{W}} \in R^{2x2}\): which must be a diagonal matrix so that the errors are not dependent on each other.

Using the control law proposed in Eq. 3, the behavior of the errors is described by:

$$ {\tilde{\mathbf{c}}}\left( {k + 1} \right) = {\mathbf{W\tilde{c}}}\left( k \right) $$
(5)

When \(k = n\) in Eq. 5

$$ {\tilde{\mathbf{c}}}\left( {n + 1} \right) = {\mathbf{W}}^{n} {\tilde{\mathbf{c}}}\left( n \right) $$
(6)

If \(w_{ii}\) are bounded on the interval \(0 < w_{ii} < 1\) the system is globally uniformly asymptotically stable.

5 Analysis and Results

This section presents the experimental results of the virtual environment implemented for the control of an industrial process consisting of 2 distillation towers. For the execution of several simulation or experimentation tests, different situations that may arise were considered; the control algorithm based on numerical methods was implemented using MATLAB software. Meanwhile, the virtual environment and the simulation of the industrial process was implemented in Unity 3D.

For the development of the plant, we used a laptop with the following specifications: i7 eighth generation processor, with a RAM memory of 16 GB and a dedicated video card. These resources allow a fluidity in the development of the virtual application. Based on a real plant, a 3D model is obtained in Blender, which is generated through a three-dimensional geometric modeling process, which is responsible for creating consistent models that can be algorithmically managed in a computer. These models will later be exported to Unity for the simulation of the virtual system.

Once the plant is implemented in Unity using free license assets, different behaviors are programmed to allow the animation of the environment. As shown in Fig. 5.

Fig. 6.
figure 6

Virtual environment

In addition, it is important to mention that for the simulation of failures, explosions of tanks and pipes were implemented as shown in Fig. 6, these explosions are programmed in a script which triggers them every time there is an error in the process. The main error occurs when there is a non-coherent control value, i.e., outside the limits preset in the model of the plant. Once an explosion is denoted, the controller in MATLAB gives an error, so the system must be reset to return to work and rebuild the towers.

Fig. 7.
figure 7

System failure simulation

Figure 8 shows the evolution of the plant under variations of the desired value, as can be seen. Thus, the code implemented in MATLAB complies with the control requirements, and shows a correct operation for different operating points.

Fig. 8.
figure 8

Plant evolution

6 Conclusions

The development of the Virtual System for Industrial Processes using Unity software provides a very immersive experience in such industrial environment, with the use of MATLAB as a control tool greatly facilitates the management of sending and receiving data between programs, in order to monitor and control the percentage of concentration in the distillate contained in each tower. Finally, the application reflects that the developed 3D environment has components and elements that simulate a real industrial process, showing the correct operation of the mathematical model and the proposed control algorithm, since they allow reaching the desired values entered by the user, in which the errors tend to zero as the system evolves as a function of time.