• Tidak ada hasil yang ditemukan

Development of IoT Based Logistic Vehicle Maintenance System

N/A
N/A
Nguyễn Gia Hào

Academic year: 2023

Membagikan "Development of IoT Based Logistic Vehicle Maintenance System "

Copied!
6
0
0

Teks penuh

(1)

Development of IoT Based Logistic Vehicle Maintenance System

S. Mohammad, M. A. A. Masuri, S. Salim, M.R. Abdul Razak Communication Technology Section,

Universiti Kuala Lumpur British Malaysian Institute, Gombak, Selangor, Malaysia

Abstract— The efficient maintenance and service system is crucial to ensure the vehicle always in perfect condition.

Conventional periodic maintenance has been proven to lack in term of efficiency and could cause major damage inside the vehicle system. An approach of predictive maintenance is proposed in this project. This project focuses on the logistics industry because transportation is very crucial in their environment. They must ensure their process of supplying the product run smoothly without any problems. A prototype of the Development of IoT Based Logistic Vehicle Maintenance system has been developed using both hardware and software.

Two main microcontrollers which are Arduino UNO and NodeMCU will be used to collect the sensor reading from DHT11 sensor and two pressure transducer sensors and then send the data to the MySQL database. There will be two methods of displaying the data which are through a private webpage that acts as the data log and through a visualization method by using Grafana dashboard. The prototype system was implemented successfully for the intended application

Keywords—Arduino, NodeMCU, vehicle maintenance system I. INTRODUCTION (HEADING 1)

Transportation is one of the vital activities in the logistics industry. They need to transport goods from the supplier to customers by using a logistic vehicle such as a lorry, truck, and van. As the company grows, it would require more logistic vehicles to supply its products to the customer.

Hence, the cost spent on transportation including maintenance could be significant to the company's overall budgets.

In the current situation, they are practicing the periodic maintenance routine. A periodic maintenance routine is where users are advised to do regular services after a specific time frame[1]. However, the periodic maintenance routine was found to be not very effective and has a lot of drawbacks. One of the drawbacks caused by the periodic maintenance is no one knows when the vehicle is broken down until it's broken. Thus, it will cause a problem to the other road user if the vehicle is broken in the middle of the road. Another type of maintenance routine is called a predictive maintenance routine. The predictive maintenance routine is attempting to predict vehicle is faulty before it happens by monitoring several vehicle main indicators. This monitoring can be accomplished through the used of Internet of Things (IoT) technology [2]. The IoT technology can help in terms of collecting and analyzing the data from the sensors located inside the logistic vehicle.

A development of a prototype predictive maintenance system that can collect and captures the sensor reading of vehicle sensors and transmit the reading to the local database through the internet is described in this paper. The developed

system can help the service manager to track and monitor the logistic vehicle for the possibility of a breakdown. The data stored inside the local database can help the service manager to analyze the possibility of the vehicle breakdown and possibly develop a plan to address the issue. Apart from that, the system developed also able to display the data in an analytic platform that will show the recorded parameters.

The analytic platform can help the person that has a basic knowledge of the technical part of the vehicle to understand the vehicle status. This is important as a survey by [3] found that, not all drivers have good knowledge and willing to learn the technical part of a vehicle.

II. LITERATUREREVIEW

The system aims to help the service manager to monitor and make a better decision on scheduling the vehicle for maintenance - the activities required to keep the facility in its original state [4]. Some of the works with similar aims and using IoT will be discussed here. The focus of the discussions are methods to send the sensor readings from vehicle to database through the internet, server and database type and type of microcontroller used.

The following work discussed the method of sending the sensor reading from the vehicle to the database through the internet. The work in [5] discussed connecting the vehicle maintenance system to the user's smartphone via Bluetooth connection. An android application will become the middle application between the engine sensor and the Google Firebase. In our proposed work, the data will directly send to the MySQL database via Wi-Fi and the method of displaying the data is through the web page and Grafana dashboard.

As for the type of server, a few methods have been proposed. One approach, proposed by [1] uses the MQTT server. There is some component that is used in their research paper such as MQTT broker, Eclipse Paho, etc.

Compared to the proposed project in [1], our project is proposing the use of Apache HTTP server since the server architecture is request and response which matched the project concept where NodeMCU will post requests to the server to send the sensor reading to the database.

When it comes to the database there are three types of database level which are being used namely cloud-hosted database, fog database, and edge computing database. The paper by [6] described how the sensor reading from the vehicle is stored in the fog database and cloud-hosted database. The cloud-hosted database allows users to access the data through internet access while the fog computing database is stored in the local area network (LAN). In our project, the data from the sensor reading will be stored in edge computing. Edge computing has certain similarities

(2)

with fog computing [7]. Both concepts were almost the same and the advantages are low latency and have higher security.

Various options also exist with regards to the microcontroller to send the data from the sensor to the server.

A study by [2] aims to develop a low-cost maintenance system by using Arduino and Raspberry Pi. In the project, the Raspberry Pi will become the IoT gateway that will process, encrypt, and manage the sensor reading from the sensor. Another study by [8] also used the same microcontroller. As for our work, Arduino Uno and NodeMCU will be used as microcontrollers.

Two microcontrollers are used because the system required more than one analog port to be connected to the sensors and the system must be connected to a WiFi module.

Thus we used the Arduino because it can support up to 6 analog ports as opposed to the NodeMCU which has only a single analog port. The NodeMCU, however, is developed based on ESP8266, which means it has built-in WiFi which allows it to connect to the internet without much effort. If Arduino is to be used then additional components must be added to enable it to connect to the internet. Furthermore, These two devices are cheaper and less complex as compared to Rasberry Pi. Apart from that, this project also adapting the serial communication process between Arduino UNO and NodeMCU.

In the modern vehicle system, the sensor will be connected to the Engine Control Unit (ECU). The sensor will send the sensor reading before being process by the ECU [9].

In this project, The Arduino board is used to replicate the ECU, where its main function is to obtained data from the sensors. The NodeMCU on the other hand will process the data gathered from the sensor by the Arduino.

Few sensors will be used in this project. The previous research by [9] discussed a few sensor modules that can be used in the vehicle maintenance system. Based on the research paper, the sensor modules such as the engine temperature module, speed control module, and accident alert module are being discussed. Apart from that, the researcher also explained another common sensor that can be found inside the vehicle such as the crankshaft sensor, lubricant level sensor, and coolant level sensor. In our project, two types of the sensor will be used which are DHT11 to measure the engine temperature and pressure transducer sensor to measure coolant level and lubricant level.

III. METHODOLOGY

The project block diagram was divided into two parts, namely the hardware and software components. Fig. 1 shows the block diagram of the hardware part of the system, while Fig. 2 shows the block diagram of the software part.

The hardware block diagram is replicating the inside vehicle system and the vehicle dashboard. Arduino UNO will be the central processor that will process the sensor reading from the three sensors. The lubricant level and coolant level will be measured using a pressure transducer sensor. The engine temperature will be measured using the DHT11 sensor. The sensor reading will be processed by the Arduino UNO and will be flushed into LCD, NodeMCU, and LEDs.

Fig.1: Hardware block diagram

The hardware block diagram is replicating the inside vehicle system and the vehicle dashboard. Arduino UNO will be the central processor that will process the sensor reading from the three sensors. The lubricant level and coolant level will be measured using a pressure transducer sensor. The engine temperature will be measured using the DHT11 sensor. The sensor reading will be processed by the Arduino UNO and will be flushed into LCD, NodeMCU, and LEDs.

Fig. 2 shows the software block diagram of the system.

The data received by the NodeMCU will be sent to the server and will be stored in the MySQL database. Based on the picture, the laptop will act as the server and install with Xampp software. The Xampp application will be used to enable the Apache and MySQL services. Once both services have been enabled, both NodeMCU and the laptop are required to be connected in the same local area network since this project is using an edge computing database. The data from the NodeMCU will be stored inside the MySQL database through the PHP script.

Fig.2: Software block diagram

There will be two ways of displaying the data. The first approach is through a private webpage. The data from the webpage will be pulled out by using the PHP script that contains HTML code. The PHP script will display all data that had been pulled out from the MySQL database. The second approach is the data will be visualized through the Grafana dashboard. Grafana is an open visualization tool that

(3)

will visualize the data into multiple forms such as graphs and gauges. From the Grafana, a notification channel will be created. A notification channel will notify the service manager through email if any sensor reading hits the alert state. Alert state is the minimum or maximum reading that has been assigned to each parameter to indicate the failure of the parameter. In this project, Grafana will be connected to the Gmail server.

Fig. 3 shows the schematic diagram of the system. Few components are connected to the Arduino UNO as the central processor. Both pressure transducer sensors and the DHT11 will be connected to Arduino UNO. Transducer pressure sensors are categorized as analog sensors. It will be connected to the port A0 and A1 or Arduino UNO. The DHT11 will be connected to port D7 of Arduino UNO since it is a digital sensor. The crucial part of the system is the serial communication between Arduino UNO and Node MCU as here, the process of exchanging data occurred. Both Arduino UNO and NodeMCU will be connected to create a serial communication tunnel between each other. Pin D7 and D6 of NodeMCU will be assigned as the transceiver and receiver port respectively. For the serial communication link, the pin receiver (D0) of Arduino UNO will be connected to the pin D7 (transceiver) of NodeMCU, and the pin transceiver (D1) of Arduino UNO will be connected to the pin D6 (receiver) of NodeMCU. Both grounds will be connected.

Fig.3: Schematic diagram of the Development of IoT Based Logistic Vehicle Maintenance System

Next, the Liquid Crystal Display (LCD) will be used to display the sensor reading. The I2C LCD will be connected to the Arduino port which is SDA will be connected to A4 of Arduino and SCL will be connected to the A5 of Arduino.

From the schematic diagram, there will be four light-emitting diodes (LED). Three LEDs will be connected to the Arduino UNO that acts as the alert indicator. If the alert state was triggered, the LED will be light up. Another LED will be connected to the NodeMCU as the Wi-Fi indicator. Once the system is connected to Wi-Fi, this LED will light up.

The system operates as follows. Once the system obtains the supply, the LCD will start to initialize and display

“Hello Everyone Konichiwa” as the welcome message.

Then, the prototype will try to get connected to the internet (Wi-Fi). Once connected, the green LED will light up and Arduino UNO will start to receive and process the sensor readings and will flush out the system outputs.

If the internet connection fails to be established, the LCD will freeze at the welcome message. The first output flushed by the system is the three-parameter readings, which will be displayed on the LCD, and the LED indicators, which will be light up if the alert state was triggered. The alert state is when the coolant level is below 6.5 kPa, the lubricant level is below 20 kPa, and when the engine temperature is higher than 30°C.

The second output is the Grafana dashboard, where the data will be visualized in the form of a graph and gauge.

Another alert rule will be defined inside the Grafana. An alert rule similar to the above will also be defined in the Grafana. The Grafana will be connected with the Gmail server and an email will be sent if an alert is triggered. The third output is the sending of the sensor reading to the NodeMCU to be stored inside the MySQL database. The laptop will act as a server, running both Apache and MySQL services. The data from the MySQL database will be pulled out into two outputs which are a private webpage that acts as the data log and Grafana. A PHP script that contains HTML code will pull out the data from the MySQL database and displayed it on the webpage.

IV. RESULTSANDDISCUSSION A. Project Prototype

Fig. 4 shows the prototype of the Development of IoT Based Logistic Vehicle Maintenance System. The prototype is replicating the engine system and the vehicle dashboard.

Both transducer pressure sensors were located inside the coolant tank and lubricant tank respectively. The DHT11 sensor was located next to the coolant tank. On the dashboard side, both microcontrollers (Arduino UNO and NodeMCU) were located there together with LCD and LEDs.

Fig. 4: Prototype Development of IoT Based Logistic Vehicle Maintenance System.

The following subsections (subsection B-K), will show the result obtained by the system to demonstrate that the system function as expected.

B. Serial Monitor

The serial communication allows the Arduino UNO to send the data to the NodeMCU upon request. Fig. 5 and Fig.

6 show the serial monitor of both microcontrollers. The data send at the Arduino UNO will be the same as the NodeMCU.

(4)

Fig.5: Arduino UNO serial monitor

Fig.6: NodeMCU serial monitor

C. Wi-Fi Connection

The system is required to be connected with the same local area network (LAN) as the server. If one is not connected with the same network, the system will not work.

Fig.7 shows the serial monitor of the NodeMCU after both client and server are connected with the same network. The HTTP response code will prompt the ‘200’ code that indicates that both server and client have connected to the same LAN. Apart from that, the IP address of the prototype also will be shown. Fig.8 shows the LED indicator that will be light up once the system has successfully connected to the same LAN with the server.

Fig. 7: NodeMCU Serial Monitor

Fig. 8: Wi-Fi indicator.

D. LCD Readings and LED indicator

Fig. 9 shows an example of a parameter reading being displayed on the LCD and its corresponding LED indicator.

For this illustration, we show the coolant reading on the LCD and the coolant indicator. Based on the figure the coolant reading status is 0.16 kPa. The minimum level for the coolant level is 6.5kPa. Based on the figure the LED indicator was light up because the reading is below 6.5kPa.

Fig.9: Coolant indicator and LCD reading

E. MySQL Database

Fig. 10 shows the MySQL database of the project. The data that is stored inside the database are parameters reading, reading time, and vehicle information. On the left side, the database name and the table name that stored the data also can also be seen. In this project, the data was stored inside the “proton_maintenance_system” database under table

“sensordata”. This data will be pulled out into two outputs which are a private webpage and Grafana.

Fig.10: The database of the project.

F. Webpage (Data log)

The first method of displaying the data is through the web page. The webpage will act as the data logs file that displays all information obtained from the database. As shown in Fig. 11, there are seven columns inside the web page which are ID, two columns for vehicle information, coolant level reading, lubricant level reading, engine temperature reading, and the timestamp. The data log is very useful for reference to the service manager such as for warranty claims and insurance.

(5)

Fig.11: Data logs from the database

G. Grafana GUI

The data from the MySQL database will be visualized by using Grafana. By visualizing the data, the service manager can monitor the condition of the logistic vehicle easily. Fig.

12 shows the Grafana GUI for the whole system. Few widgets can be seen through the Grafana dashboard such as graph, gauge, alert list, and clock widget. These widgets are used to visualize the data that has been pulled out from the MySQL database.

Fig.12: Grafana GUI

H. Grafana Graph Widget

The first widget that is used to visualize the data is the Grafana graph. The Grafana graph has the functionality to allow the user to create an alert state to monitor the sensor reading. Fig. 13 shows the GUI for the Grafana graph displaying the lubricant level. From the figure, there are few elements of the graph that has been observed. First, the alert state line. Alert state line is the minimum or maximum reading that has been assigned to trigger the alert through the notification channel if the reading surpasses the maximum or minimum value of the readings. Second, Grafana's observation. Once the reading has surpassed the alert state line, the Grafana will start to observe the consistency of the reading for 5 minutes. It will trigger the alert state from ‘OK’

to ‘Pending’. After 5 minutes of observing, if the reading still surpasses the alert state, it will change the state from

‘Pending’ to ‘Alerting’. The third element is the heart indicator. The heart indicator is changing depending on the alert situation, green for ‘OK’, yellow for ‘Pending’, red for

‘Alerting’, and grey for No Data. From the figure, the color of the heart indicator is yellow indicating that it is in a

‘Pending’ state.

Fig.13: Grafana graph

I. Gauge Widget

The second widget is a Gauge widget. Fig.14 shows the Gauge widget of the coolant level, the lubricant level, and the engine temperature. The gauge widget is the indicator that will move within the range that had been set. For this project, the average reading was set in percentage form. The reading displayed in the gauge widget is the current reading of the sensors.

Fig.14: Gauge widget

J. Alert List Widget

The third widget used in this project is the alert list widget as shown in Fig. 17. This widget has the functionality to show the status of the parameters. This widget is the extended function from the Grafana graph. The lifecycle of alert lists are OK, Pending, Alerting, and No Data. After the alert state is changing from Pending to Alerting, it will send an email notification through the notification channel that has been created.

Fig.15: Alert list widget

K. Email Notification

The final output of the project is the service manager receives the email notification once the alert state is changing from Pending to Alerting. Fig. 18 shows a sample of the email notification received by the service manager from Grafana. Inside the email notification, it will include the graph of the current situation as well as the average reading. The average reading that appears on the email is the average reading that had been calculated by the Grafana observation.

(6)

Fig. 16: A sample of email notification informing the service manager on coolant level status.

V. CONCLUSION

The need for changing the maintenance routine from periodic maintenance to predictive maintenance is necessary since there are a lot of drawbacks that arise from the periodic maintenance routine. However, to do predictive maintenance is quite challenging in an industry that has a large number of vehicles. This paper develops a prototype system that can help the service manager to monitor the current situation of each vehicle. Apart from that, this paper also proposes a system that can help the service manager to make an efficient schedule for the vehicle to undergo maintenance.

The project prototype of the maintenance system was successfully developed. The sensor reading was successfully processed by both microcontrollers and the data was successfully saved inside the local MySQL database. Every output from this project has been fully analyzed. The private webpage that acts as the data log can be the reference to a service manager if the vehicle is having a problem. Apart from that, the data log also can be used in the future as a reference to claim warranty and insurance. With the record, the company can prevent from being manipulated by the service center. The data also will be displayed in an interactive mode. Through the Grafana dashboard, the newly hired service manager can easily understand either the technical part of the system or the maintenance system itself. Apart from that, this project also features the capabilities to notify the service manager if any part of the vehicle starts to show signs of a problem. Thus, the possibility of vehicle a breakdown in the middle of the road can be minimized.

Some recommendations can be added to further improve the functionality of the system. For example add a function to track and record the driver’s behavior. A few sensors such as an alcohol sensor to detect drunken drivers and GPS to detect the speed of the vehicle can be used to identify the driver’s behavior. Another improvement is developing an android application for the system. This way, the service manager or the driver can monitor the vehicle through their smartphone. In this era, the use of smartphone application is very crucial since most people have a smartphone for their daily tasks. In the current development, the sensor reading from the vehicle is being sent to edge computing. For future development, it is recommended the system to able send the data from the local database to the cloud-hosted database. Through the cloud-hosted database, the company can easily access the system through an internet connection with a different network. Thus, it will make the project more enhanced and useful.

REFERENCES

[1] R. Dhall and V. K. Solanki, “An IoT Based Predictive Connected Car Maintenance Approach,” Int. J. Interact. Multimed. Artif. Intell., vol.

4, no. 3, p. 16, 2017, doi: 10.9781/ijimai.2017.433.

[2] V. Kirthika and A. K. Vecraraghavatr, “Design and Development of Flexible On-Board Diagnostics and Mobile Communication for Internet of Vehicles,” 2nd Int. Conf. Comput. Commun. Signal Process. Spec. Focus Technol. Innov. Smart Environ. ICCCSP 2018, no. Icccsp, 2018, doi: 10.1109/ICCCSP.2018.8452826.

[3] M. Arif Fahmi Abdul Wahab and I. Abdul Hamid, “Automotive Consumerism in Malaysia with Regard to Car Maintenance Automotive Ecosystem Study-Malaysia View project Psychosocial Supportive Mobility-Malaysia View project,” 2017. [Online].

Available: https://www.researchgate.net/publication/318283971.

[4] R. Haider et al., “Development of optimized maintenance system for vehicle Fleet,” J. Eng. Appl. Sci., vol. 34, no. 2, pp. 21–27, 2015.

[5] S. Vijaya Shetty, H. Sarojadevi, K. S. Akshay, D. Bhat, and M. N.

Thippeswamy, “Iot based automated car maintenance assist,” 2017 Int. Conf. Adv. Comput. Commun. Informatics, ICACCI 2017, vol.

2017-Janua, pp. 501–508, 2017, doi: 10.1109/ICACCI.2017.8125889.

[6] P. Killeen, B. Ding, I. Kiringa, and T. Yeap, “IoT-based predictive maintenance for fleet management,” Procedia Comput. Sci., vol. 151, no. 2018, pp. 607–613, 2019, doi: 10.1016/j.procs.2019.04.184.

[7] E. Borcoci, M. Vochin, S. G. Obreja, and S. Obreja, “Mobile Edge Computing versus Fog Computing in Internet of Vehicles SICIAD View project Intelligent System for Vehicle Navigation Assistance View project Mobile Edge Computing versus Fog Computing in Internet of Vehicles,” no. October, pp. 1–20, 2018, [Online].

Available: https://www.researchgate.net/publication/328413265.

[8] S. Shah, P. Abhishek, D. Shrivastava, and A. S. Ponraj, “Vehicle Service Management and Live Monitoring with Predictive Maintenance System,” Proc. - Int. Conf. Vis. Towar. Emerg. Trends Commun. Networking, ViTECoN 2019, pp. 1–8, 2019, doi:

10.1109/ViTECoN.2019.8899668.

[9] C. Ananth, C. Sudalai, N. E. Jebadurai, S. S. Saranya, and T.

Archana, “Intelligent Sensor Network for Vehicle Maintenance System,” SSRN Electron. J., 2018, doi: 10.2139/ssrn.3019173.

Referensi

Dokumen terkait

The use of ultrasonic sensor, GPS and GSM Module on the garbage can aims to provide the data on the garbage and send it to the real time database, in which the data will