IOT based Web application concept for monitoring and control of fluid power systems

This paper presents a novel concept of the WEB application for monitoring and control of fluid power systems. The proposed concept is based on the internet of things principles. WEB application is built on the Web2py framework which uses Python as the programming language. The client-side of the proposed application is based on the responsive open source AdminLTE dashboard. On the server-side Python is used for executing SQL queries sent to the database and for continuous data logging. The ModbusTCP protocol is used as the communication protocol between the server and systems. The application is tested on two experimental setups. The first one uses an industrial PLC and the second one is an Arduino PLC as a control device. Finally, experimental results are presented and a conclusion is given.


Introduction
The Internet of Things (IoT) is a new concept in the IT world that attracted the attention of many researchers over the last decade. For now, there is no unique definition of IoT, but it's considered as a global network that allows communication between human-to-human, human-to-things, and things-tothings anywhere in the world [1].
From the aspect of fluid power in [2], a short introduction to Industry 4.0 (I4.0) and IoT is given with basic strategies for improving flexible manufacturing. The concept of the I4.0 is described on a linear hydraulic actuator with all problems which need to be overcome for successful implementation of the I4.0. In [3] design of the direct-driven hydraulic system is proposed based on IoT technologies. The proposed design uses an ARM Cortex M3 microcontroller with an LCD touchscreen for system control. The IoT technologies allowed remote monitoring of measured data but remote system control wasn't implemented. A new concept of soft sensor networks which contributes towards industry digitalization is presented in [4] where soft sensors are based on physical models. The soft sensor can be easily used for predictive maintenance and by such lower the maintenance cost of equipment. In [5] web controlled pneumatic press is presented. It is connected to the internet over an ethernet shield on the Arduino Mega controller. The pneumatic press can be monitored and controlled online via a simple GUI or voice-controlled using neural networks. The proposed concept uses HTTP protocol to send data and socket communication to receive input given by the user. The main problem in this approach is that application is not scalable on another system and HTTP communication is slow in comparison to other protocols.
In this paper, a web application for monitoring and control of fluid power systems is presented. The proposed application is built on IoT principles and it's tested on two experimental setups. In Section 2 experimental setups are presented while in Section 3 working principle is given. The web application is described in Section 4. Conclusion and further work are given in Section 5.

Hydraulic experimental setup
The hydraulic experimental setup used in this research is shown in Figure 1. The setup consists of a proportional electrohydraulic system and a direct driven hydraulic system with a double-acting cylinder placed in the gravitational field.
For the control of the whole system, Mitsubishi electric PLC FX5U-32MT/ESS is used while HMI is used for the user interface. The PLC and HMI communicate mutually over the router while access to the server is only allowed to the PLC and Raspberry Pi 4. Video from the system si streamed over Raspberry Pi which uses a Logitech USB camera for capturing video. A detailed system description is given in [6].

Pneumatic experimental setup
The pneumatic experimental setup used for IoT application is shown in Figure  2. The proposed setup consists of seven double-acting pneumatic cylinders, two semi-rotary drives with a swivel angle of 180º, and two vacuum suctions. Festo compact valve terminal VTUG with eleven 5/2 monosTable and two 3/2 bisTable directional control valves is used for motion control. As a control device, Controllino Maxi Automation is used which is an industrial PLC based

Proposed concept
Schematics representation of the proposed concept is shown in Figure 3 and it's divided into three main blocks. Block 1 represents an individual system inside the production plant. Every system has its router which allows local communication between a PLC and HMI. The ModbusTCP protocol is used for communication between the server and a PLC while HMI doesn't communicate with the server. The Raspberry Pi streams the video from a USB camera via a router on port 8081. The server and a database are represented with block 2. For the webserver, Apache is used while for the relation database MariaDB server is used. Web2py framework is installed on the server and it allows the design of dynamical web pages. The users are represented with block 3. They can use any device with internet access and a web browser for accessing the web application.
Depending on different user privileges some of the users can only see monitored data while others can send data back to the system.

IoT based web application
The proposed web application is built on the Web2py framework. Python 2.7 is used on the server-side for accessing the database and for achieving ModbusTCP communication between a server and a PLC. The client-side is based on the newest web technologies. The user interface is built on a free open source AdminLTE dashboard which includes Bootstrap 4.
After successful login in the web application, the first page which the user sees is a dashboard shown in The web page for system administration is shown in Figure 5. The user with administrative privileges can edit, delete or add a new system to the database.
The list of all systems from the database with their basic data is shown in the Table in Figure 5. By clicking on the green cogs button the web page for system registres appears as shown in Figure 6. Here, the user can add all relevant registres used in a PLC which are needed for remote monitoring and control. For each registres user needs to define the register number from a PLC, name, data type, read/write mode, logging, and description. Next, Tables in the database for the added registres need to be defined. Defined Tables are used for saving continuous logged data and monitored data in the database. The submenus for the hydraulic and pneumatic systems are located under the main menu systems. The web page lists all systems depending on a chosen system category as shown in Figure 7. Every system has its card with a basic description, two buttons for history, and a detailed view while system status is updated every 100 ms. The detailed system view is shown in Figure 8. The live charts are showing all process variables which need to be continuously monitored and they are updated every 100 ms. Live stream video is shown on the card titled video. The registres which only need to be monitored are given in the  The history view of logged data is shown in Figure 9. Users can choose between two values and mutually compare them. Their comparison is shown on a line graph and it can easily be exported in CSV, jpeg, png, and other formats.

Conclusion
The proposed web application is user-friendly and scalable. It is easily integrated into existing systems controlled via PLC due to the use of standard industrial ModbusTCP protocol. Integrated systems are monitored and controlled in realtime. The web application can be expanded with custom statistics dependable on plant requirements. Further work will include the integration of different industrial communication protocols to the web application such as EtherCAT, EtherNet/IP, Powerlink, etc.