2020 VR Digital Twin v4

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

VR Digital Twin for a Smart Factory

Gicu-Călin Deac, Crina-Narcisa Georgescu, Costel-Emil Coteț

protocols must converge on a prevalent protocol platform [2].


Abstract—This paper describes some author’s research in One of the present existing protocols for industrial
developing collaborative virtual reality applications as an communication is OPC-UA, a protocol that has been
interface for monitoring big data by creating a digital twin of standardized in the IEC 62541 series. OPC UA is an open and
the factory and sync the movement of virtual machines with the secure platform that allows vendor-neutral programmable
real ones. The platform allows an interactive reading of the logic controllers (PLCs) to communicate with each other and
sensor telemetry and processes data, maintenance information
and access to a large technical library. For data acquisition and
up to the manufacturing level and into the production
reports, a novel image data method was used. The data values planning or ERP system [3].
that are encoded as pixel colors of images, using different
encoding methods for each data type (text, integer, float,
Boolean) are also encrypted using an image as a symmetric II. DATA ACQUISITION AND STORAGE
encryption key and are stored in the cloud in a time base folder
structure, assuring a better data compression, security and The present paper proposes a Client OPC UA application that
speed, compared with the existing solutions based on JSON and will read all the values from the OPC UA Server, on timed
NoSQL databases. cycles with a predefined frequency (each second for
example) and use a novel method for encoding and
Index Terms — virtual reality, smart factory, digital twin, big encrypting of data and automatic uploading in the cloud.
data, Industry 4.0 The method consists of creating full-color images (16 million
colors) whose pixels are generated based on numerical or
alphanumeric values to be stored.
I. INTRODUCTION The color of each pixel can be defined by the
In the implementation of a control system, according to I. three-component R, G, and B with values between 0 and 255,
Gonzales et al. the key factor is the interconnection between respectively 0 and FF in hexadecimal. The image size can be
sensors, controllers, tools and cloud services, through a defined according to the number of values to be archived and
secure communications network. their type.
Monitoring, tracking and automation of technological
processes for both industrial and non-industrial settings For encoding, there are several methods, depending on the
requires efficient transmission of information through type of values to be stored:
communications networks [1] Wired or wireless channels are a. In the case of positive integers between 0 and 16777215,
used to communicate data. Due to mobility and flexibility, the encoding can be done directly by converting the decimal
wireless communication has great advantages and will be number to hexadecimal (ex. 16777215 becomes FFFFFF),
widely used in Internet-of-Things (IoT). Various wireless the six-digit hexadecimal string explodes into three groups of
protocols such as Wi-Fi, Bluetooth, ZigBee, 3G / 4G / 5G, two digits and each of this group is (R = 255, G = 255 and B =
RFID, Z-Wave, IPV6 over personal area networks with low 255, in this case, a white pixel corresponding to the
power (6LoWPAN) and Near Field Communication (NFC) maximum value that can be stored);
are available [1]. b. In the case of positive and negative integers, the same
Industrial Internet-of-Things (IIoT) is a term used to refer encoding variant as above may be used by having the
to IoT applications in the industrial context and involves the maximum value to +/- 8388607, the numbers being encoded
use of sensors and actuators, control systems, M2M by summing the storage value by 8388607 and decoding
communications (from machine to machine), cloud storage being made by subtracting this value;
of Big Data, data analysis and security mechanisms [1]. c. For float numbers they can be converted to 16-digit
According to L. Monostori et al. another challenging concept hexadecimal values: 00.00.00.00.00.00.00.00, requiring three
emerges, starting with the Industry 4.0 paradigm: pixels for storage (R1G1B1, R2G2B2, and R3G3, the last
Cyber-Physical Systems (CPS) which means that industrial component B3, is not used). Thus, any float value with any
machines have sophisticated communication and smart number of decimals, positive or negative, (in IEEE 754
capabilities. Devices are linked over the network to detect, double-precision standard, the full range of numbers is
monitor and act on physical components in the real world [2]. −9.999999×1096 through 9.999999×1096 [9]) can be
In order to simplify and optimize this large-scale integration, archived using a group of three consecutive pixels. The
proprietary protocols and new evolving communication image will have the number of pixels equals three times the
number of archived float values;
Manuscript received Febrary 20, 2020. d. For String, alphanumeric values (UTF8), the conversion of
G . C. Deac PhD student University “Politehnica” of Bucharest (e-mail: each alphanumeric character into hexadecimal is made
george.deac@impromedia.ro). according to the UTF8 encoding table or a custom defined
C. N. Georgescu PhD student University “Politehnica” of Bucharest table (for example A becomes hex: 41, z becomes hex: 7a),
(e-mail: crina.deac@impromedia.ro).
C. E. Cotet PhD professor University “Politehnica” of Bucharest (e-mail: so each pixel can store a hexadecimal to decimal number of 3
costelemilcotet@gmail.com). alphanumeric characters, one for each component R, G, B.
Figure 1. Image generation value of R, G or B is greater than 255, (FF in hex) the result
will be decreased by 255 (FF in hex).
The decryption and decoding process is analogous but in
reverse. In other words, from the hexadecimal value returned
The image will have the number of pixels equal to one third by decoding the RGB values of each group of pixels (based
of the total number of characters. on variable type and encoding method) the hexadecimal
e. Booleans values can be stored as alphanumeric values 0 value returned by RGB of the correspondent pixel in the
and 1, on a pixel being stored three Booleans, one on each Image Key will be subtracted based on the established rule
component R, G and B. and then based on the encoding method the variable value
For encrypting data of any kind, corresponding to the will be decoded. If the value obtained by subtraction is
above-mentioned encoding methods, an encryption image negative, this value will be increased with 255 (FF in hex)
with the number of pixels equal to 1/3 of the variables before decoding the variable value. (Figure 1).
number is used. Some descriptive information may also be entered in the first
The automated generation of the image key is based on image pixels of the storage image such as: time stamp, device ID,
size and using random values for Rk, Gk, Bk. When variables the number of variables of each type, the size of varchar
(properties values) are encoded, for each variable converted variables (number of characters), like a dictionary, in this
in hexadecimal, the hexadecimal value returned from the way we can implement a more flexible solution. For
correspondent pixel in the image key will be added (for the example: first 3 pixels will store the timestamp (as a float),
first variable will be used the first pixel, for the second the fourth pixel will store the device ID (as integer), pixels 5,
variable the second pixel and so on, or we can scramble the 6, 7, 8 will store data types, the number of variables of each
pixel order based on an established rule). The hex average or data type and the order of placement in the image (on each
RGB values or only one hex value can be used (from R, G, or pixel we will encode in each component: R: type of variable,
B based on a variable ID established rule). If the resulting G: number of variables, B: placement order), pixel 9 will
store the number of characters of the varchar variable. For the animation system and a gesture interface for the users which
type of variable, we can assume values: 1 for Boolean, 2 for are using the platform without HMD and hand controllers, in
integer, 3 for float, 4 for varchar. Regarding the order of desktop mode. With a simple handshake, users can exchange
placement, we will sort the data by variable type before contact information, all contacts being displayed in a contact
encoding, we will count the number of variables of each type list application. Using this contact list application, all your
and then we will choose an order of encoding for each type of contacts and friends can be displayed with their status, online
variables. The generated image will have in this case a or offline and by a simple click on their names you can see
dictionary composed by 4 pixels (for timestamp) and 5 pixels their location and have the option to follow them.
for variable dictionary. 8agora engine allows also the access of web content inside a
In IoT applications, the OPC UA Client application will web entity, which is a chromium-based web browser. Using
generate the images based on the device properties values, this option, to display web content in 3D environment, can be
with a predefined frequency (example: 1 time/second) and developed a wide array of applications to extend the
send them to the cloud using a socket, or any other protocol. functionality of the platform.
The PNG images names can be constructed on the following
model:
deviceUniqueID_timestampInMiliseconds.png
example: kep35_31494270124240.png

and will be stored on the cloud in an arborescent file structure


based on a model like:

/deviceUniqueID/t1/t2/t3/t4/t5/t6/t7/deviceUniqueID_timest
ampInMiliseconds.png
example:
/kep35/1/4/9/4/2/7/0/ kep35_1494270124240.png

The folder structure can be generated based on timestamp by Figure 2 Outside view of the factory
exploding the first 7 characters and store the images inside
the last subfolder (t7). This storing model allows a good This paper presents an application for a Smart Factory
management of time-series data, to read, copy and replicate (Fig.2), where Virtual Reality is used to create a digital tween
only the desired intervals. This model also allows real-time of a factory, where all the machines and processes are
interrogations of device state at a specific time. simulated. Using the telemetry data and other information
The PNG nondestructive compression, based on LZW offers accumulated in cloud from the factory, using the data image
a great compression rate, comparing to JSON files, the same method, the virtual digital tween can be synchronized, each
amount of data being much smaller (about 30 times smaller). machine movement being in sync with the real ones. (Fig. 3)

III. VR INTERFACE

To develop the VR server-client multi-user platform as an


immersive interface we selected the 8agora engine
(https://8agora.com) that allows development by exposing a
large API through JavaScript and QML. The 3D environment
can be created by importing 3D models with PBR (physically
based rendering) materials in FBX open format. The 3D
objects can have all the textures embedded, or externally
linked and could include animations which are easily
triggered by scripting. The frame rate of the animations can
be changed accordingly with the speed of real machines.
8agora engine provide live audio communication and include Figure 3 Assembly line on the factory
a server-side audio mixer that compute the attenuation based
on the distance between user’s avatars and spatial surround Also, we have included a technical library and all the users
panning based on angular position of the user user avatar, have access in real time to technical information regarding
providing a very realistic and immersive communication the machines and processes. The virtual warehouse is
between users. The engine also allows the use of populated with spare parts and objects, based on a real time
customizable 3D avatars and includes a powerful physics synchronization with the ERP. Using this technology for
simulation system for avatar movement and object visualization, provide a better and immersive interface to all
interaction. Based on HTC Vive or Oculus Rift trackers, or data that can be consulted in real time with the team in a
by using a Leap Motion controller, all the joints motions of collaborative way. By clicking on the components of the
the user are reflected in real time to the avatar and are also machines the users can show the telemetry data from sensors,
broadcasted to the other users, using an avatar mixer information regarding the maintenance (can be implemented
server-side process. In this way all the user movements are also a predictive maintenance cloud application to see the
shown in real time by all the participants of the simulation. remaining working hours for each component), they can
To enhance the nonverbal communication and body access technical catalogs and brochures, working instructions
language, the engine includes an advanced automated and more. The platform can be used also for training on
Figure 4 Assembly line

machines, different scenarios for working conditions, hazard


REFERENCES
and simulations being easy to be implemented using the
[1] I. Gonzales, A. J. Calderon, A. J. Barragan and J. M. Andujar,
physics engine in combination with the fbx baked animations Integration of Sensors, Controllers and Instruments Using a Novel OPC
triggered by scripting. In this way the new employees can be Architecture Published online 2017
trained to proper use the machines without stopping the [2] L. Monostori, B. Kadar, T. Bauernhansl, S. Kondoh, S. Kumara, G.
production process and affecting expensive machine. After Reinhart, O. Sauer, G. Schuh, W. Sihn, K. Ueda, Cyber-physical systems in
manufacturing. CIRP Ann-Manuf. Technol. 2016 [1]. Hype Cycle for
completing the training in VR they can easily use the Emerging Technologies, Gartner Research, August 2008,
knowledge to operate the real machines and processes. http://www.gartner.com/it/page.jsp?id=739613
[3] Podnar Žarko I., Broering A., Soursos S., Serrano M. Interoperability and
Open-Source Solutions for the Internet of Things. InterOSS-IoT 2016.
Lecture Not
[4]. https://8agora.com
[5] Burdea G., Coiffet Ph., La realite Virtuelle, Ed. Hermes, Paris, 1995
[6] Chaillou C., Froumentin M., La Synthese d’images, 1997, Ėcole
Universitaire d’ingenieurs de Lille, France
[7] Gicu Calin Deac, Crina Narcisa Georgescu, Cicerone Laurentiu Popa,
C.E. Cotet, Virtual Reality Exhibition Platform, Proceedings of the 29th
International DAAAM Symposium 2018, DOI:
10.2507/29th.daaam.proceedings.033
[8.] Gicu Calin Deac, Crina Narcisa Deac, C.E. Cotet, M. Ghinea,
TIMV-plus, a new approach of the immersive e-learning platforms, The 4th
International Conference on Economic Sciences and Business
Administration, 2017, DOI: 10.26458/v4.i1.12

Figure 5. Virtual production line


Gicu-Calin Deac. Born in Baia Mare in 1970, PhD
IV. CONCLUSION student at University “Politehnica” of Bucharest,
master’s degree in Training Techniques in the Virtual
As a result of applications implemented in this paper, we Environment at University “Politehnica” of Bucharest
can conclude that Virtual Reality is an emerging technology 2016, dipl. Engineer, University of North Baia Mare
that can be used with success for visualization of industrial (1995). He is entrepreneur and are working at
Impro-Media SRL (https://impromedia.eu) as
processes. Future research will be done in order to implement cofounder and CTO. He has published some articles and books in VR, AR
commands from the VR application to Factory processes. and IIoT topics.

This work has been funded by the European Social Fund from the Crina-Narcisa Deac (Georgescu). Born in Baia Mare
Sectoral Operational Programme Human Capital 2014-2020, through the in 1973, PhD student at University “Politehnica” of
Financial Agreement with the title "Scholarships for entrepreneurial Bucharest, master’s degree in Training Techniques in
education among doctoral students and postdoctoral researchers (Be the Virtual Environment at University “Politehnica” of
Bucharest 2016, matematician, University of North
Antreprenor!)", Contract no. 51680/09.07.2019 - SMIS code: 124539.
Baia Mare (1997). She is entrepreneur and are working
at Impro-Media SRL (https://impromedia.eu) as
cofounder and CEO. She has published some articles and books in VR, AR
and predictive maintenance topics.

You might also like