IoT based car accident detection and notification algorithm for general road accidents

ABSTRACT


INTRODUCTION
Nowadays, there is an increase in the number of accidents that happen in the world. As the population is increasing, there is the number of cars increasing on the road that contributes to severe accidents that happen daily. Around 80 per cent of accidents contribute to the loss of many lives. Mostly, the growing countries are being targeted by the day to day road accidents. The major reason is the lack of infrastructure, lack of traffic control and accident management. Out of all the developing countries, India has been listed as the country with a higher number of accidents [1]. The most prominent reason for the loss of a life during an accident is the unavailability of immediate help that can save a person's life by a few seconds. The moment an accident has occurred, the life of all passengers travelling in the vehicle is at stake. It all depends on response time that can save their lives by a few minutes or seconds. According to the statistics, reducing accident delay time by even 1 minute can save 6 per cent of lives. Hence, this response time is very crucial, and it needs to be reduced or at least either improved to save their lives [2]. To contribute to our society and reduce the number of accidents happening in our day to day life, there are several techniques and mechanisms that can drop down the rate of accidents and can save lot lives. Living in a tech world that is growing day by day with new technologies, we can apply these techniques in our society and help them overcome such problems.
The Vision of the Internet of Things (IoT) has come out to reach unexpected bounds of today's computing world. It is a concept that not only can impact human's life but also how they function [3].
The heart of IOT is smart sensors without which it would not have existed. These sensors form a vast network for their communication. They capture minute details of their surroundings and pass this important information to each other. Based on the received information, relevant actions are performed accordingly. It is the latest communication model that imagines the proximate future, in which objects of day to day life will be incorporated with microcontrollers for digital communication with the help of appropriate protocol stacks that will make them capable of communication with one another. It is a technology that aims to impart intelligence to devices so that they can smartly connect and perform the necessary actions to eliminate human labour. It gives an image of the future where non-living objects will be communicating with each other and doing the needful work. In this way, human labour will be eliminated to an extent and the devices will be performing necessary actions.
The significance of accident detection and notification system is very prominent for our society. Imagine a situation where an accident happened, it is immediately notified to the emergency services. This will result in the rescue of injured people involved in the accident. As the Internet of Things has witnessed fast growth these days, it has the power to bridge these two situations [4]. For the IoT paradigm be effective, it should have the capability to track the location of the objects (i.e. cars in our case) which can serve to be useful for the ambulances to reach the location on time [5].

RELATED WORK
Car accidents that happen daily are the major social problems towards which serious action must be taken. One of the solutions for this domain is the Internet of Things which is the current trend in technology. For this purpose, many authors have worked in this domain by applying this technology.
Akriti et al., [6] found many tradeoffs while working with the accidental management system such as high cost, non-portability, false delivery etc. The system faced many shortcomings due to lack of resources. In their technique, they used severity scale to measure the impact of an accident. This reduced load on the cloud server by 30 per cent. Chatrapathi et al., [7] designed a framework that has two components. First one is accident detection and alerting system. The second one is traffic management for the ambulance. The efficient routing algorithm is used to route the ambulance. The technique is feasible for the road junctions with signals. However, it is not applicable to the segments without signals.
In paper [8], Raut and Sachdev proposed a call notification system that consists of XBee WiFi Module, XBee Shield, GPS Module and Seeeduino. The accident is detected using only crash sensors because of which it gives less accurate results. Ali and Alwan [9] proposed a system that consists of several cases to detect low speed and high-speed car accidents. In case of high speed, if the smartphone's acceleration > 4G, then there is an accident which is identified by the smartphone's application. However, it leads to triggering of false alarm in few cases since mobiles are the subject.
In paper [10], S. R et al. discussed the driver's behaviour by analyzing eye blinking with the help of IR sensors. The head movements of the driver are monitored by the accelerometer which is fixed onto the fore head to measure the angles made by the head. This technique is not feasible since it would be uncomfortable for the driver to attach an accelerometer to the forehead every time. Moreover, driver behaviour is the only factor that is considered for accident detection. Sandeep et al., [11] introduced a solution for the accidents that are majorly caused by drink and drive case. For this purpose, they used few sensors like touch sensor, heartbeat sensor, alcohol sensor interfaced with Raspberry Pi. In their work, they only considered the situation for the drink and drive cases.
In paper [12], Pratiksha R et al., developed a system which detects an accident, detects the condition of the car's engine about which user is informed if there is any flame or smoke is detected. The system effectively monitors the overall abnormalities that can be caused in a car. However, the system doesn't focus strongly on accident detection part. Khaliq et al., discussed techniques to detect the accident by using a few sensors and other hardware, they then verify the generated results. In their approach, they checked the severity of an accident [13]. Namrata H et al., detect the accident by a detection unit that is fitted in the car. The authors implemented this unit as a push on switches which senses any obstacles and triggers the microcontroller (AT8952) leading to immediately turn on the buzzer. However, this technique may not work every time because in a few situations the driver may not be able to turn on switch [14].
Yadav et al., [15] detect the accident and notify the cause to the registered number. In their work, they are reporting an accident to a specific number and not to an emergency service. However, the work is still unpolished due to lack of resources and implementation. In paper [16], Reddy and Rao developed a system which is used to detect calamities like fire in the car. The proposed methodology delivers good safety. It results in warnings that can be performed to trigger preventive measures in case of such incidents.
Kavya and Geetha suggested techniques to minimize the delay time caused by ambulance to reach the location of the accident and rather to provide a smooth flow of emergency vehicles using RF Technology. They have addressed an efficient routing algorithm to route vehicles [17]. Pallavi and K. Wagh focused on intelligently planning the transportation system based on RF technology to reduce overcrowding of vehicles in localities with smart control of signals and a proper path is planned with the help of an android application. Authors developed a real-time algorithm that makes use of VANET communication to avoid vehicles from traffic-related congestion. For some junctions, it is not feasible [18].
Poorani k et al., [19] discussed about the use of a jammer circuit which disables the keypad. It uses image processing techniques to detect driver behaviour and sensors to detect the accident. Kim and Jeong [20] proposed an algorithm for detecting crash using crash probabilities data. The proposed algorithm showed an improvement over Mote-Carlo simulation which gave effective results of their model.

PROPOSED METHOD
The significance of defining the research problem is to address the gaps in the literature. The purpose is to contribute to the existing work to enhance the quality of the overall framework so that it can benefit the end society in future. This can be achieved by adding more functionalities and features that can improve the working of the end system.
Dhanlakshmi and Leni [21] designed a system that monitors the condition of the car during its journey. The parameters that are addressed in their work are, gas leakage which is monitored by using an MQ2 gas sensor, vehicle speed which is recorded by hall-effect sensors, GPS and GSM modules for communication and tracking location of vehicles. However, for an accident detection case, only speed has been considered by making use of hall -effect sensors. Moreover, Pin and Wang [22] proposed a vehicle collision detection algorithm which works well for T-intersection road design. The parameters that are considered for the design of the algorithm are, curvature area of T-intersection junctions and the predicted time for the two cars to meet at the junction. We feel that the algorithm is effective for the specific case of T-intersection and not for general road accidents. Therefore, there is a need for modifying the existing work done by authors to support the general road accidents.
In our approach, we are addressing the gaps by adding an accelerometer, vibration sensor and most importantly heartrate sensor. These components contribute to the hardware setup of the system. Also, we would like to introduce an algorithm for general road accidents that is appropriate for this hardware setup. We have considered a few parameters which are helpful for accident detection and notification. These parameters are vehicle acceleration, retardation, crash impact, the value of heart rate sensor (embedded within the belt) and information of accident location which is tracked by GPS. It is then sent to emergency services/family members by GSM communication. We implemented the system by designing an IOT based car. The car is embedded in Arduino as a development board which is interfaced with different sensors as listed above. It is controlled via Bluetooth module HC05. Also, the car is tested for different conditions to seek results. For this setup, the algorithm operates on the data gathered by accelerometer ADXL345, vibration sensor, heartrate sensor, GPS and GSM module. These sensors have their configurations and threshold range. The accelerometer's input range can be 2g to 200g (negative and positive) and it can vary even more [23]. Whereas, the vibration sensor has only two states, low and high. It is low for normal cases. On experiencing a large impact force from the environment, it becomes high [24]. The heart rate sensor is the essential component since it keeps track of the driver's heart beats during the journey. Normally, the heart rate for a person is between 75-170 bpm for the group of people between 20 and 50 years [25]. Figure 1 is the block diagram for the system: The overall model includes the following components: a. Arduino: This is the core unit of the entire system as it controls the flow of information between sensors.
It is basically a development board which gives the flexibility of writing C programs for the sensors and later they can be deployed in the flash memory of Arduino to check the functioning o f sensors. b. Vibration Sensor: This sensor can recognize vibrations in a given area. It has two values as low and high.
Usually, it remains low for the scenarios where vibration impact is not that powerful. It attains high value on receiving high vibrations from the environment. c. Accelerometer: It is a type of sensor which is designed to measure acceleration accurately. It measures acceleration in three axis which are x-direction, and z-direction. The x-axis of the accelerometer gives the measure of positive acceleration, y-axis gives the measure of negative acceleration (retardation) and z-axis indicate the angle of turnover of the device in which it is installed. d. Heart rate sensor: The heart rate sensor is based on the principle of photoplethysmography. It is designed to measure the change in the volume of blood. It keeps a track of the person's heartbeat. e. Global Positioning System (GPS): A global positioning sensor is a receiver which gives position, speed and timing information of an object. On installation of this sensor, any device can be tracked to locate its position. f. GSM: It is a component which is used for mobile to mobile communication. It is responsible for sending SMS to the desired number or making a call whenever instructed. g. Central Server: Once an accident is detected, the central server is immediately informed about it. It is responsible for locating nearby ambulances that can reach the accident location.

Proposed algorithm
The main functioning behind the proposed system is the generalized accident detection and notification algorithm that takes different inputs into account and based on that it generates results that are helpful for determining the status of the proposed system. To generate intended results, the following are considered: -Deployment of the hardware components in every car.
-Algorithm works only for the area which has strong networks.
-It is only applicable to cars. -Highway junction is not considered -Only cases for possible crash are considered.
-Driver must wear seat belt each time to record the heartbeats since heartrate sensor is embedded in seatbelt.
Following are the cases that are considered for an accident and its chances: a. Case 1: Warning to Avoid Accident In this case, the driver is alerted for overspeeding b. Case 2: When the car is static This case depicts a scenario for a possible crash when the car is at rest. The driver inside the car could be injured based on the value given by the heart rate sensor. c. Case 3: When the car is static, and the driver is not inside This case depicts a situation when the car is at rest, but the driver is not inside. This is also a case for an accident, but for such cases, emergency services need not be informed. d. Case 4: When the car is moving It is the most common case when a moving car gets hit by another vehicle. For such situations, emergency services must be prompted for rescue. It is the most common case when a moving car gets hit by another vehicle. For such situations, emergency services must be prompted for rescue. Table 1  To design the algorithm, the peak values of accelerometer and heart rate sensor are kept in mind. According to the data sheets for sensor, the peak value for heart rate sensor is 170 bpm and above. The peak value of accelerometer is between -150 to -200 in case of retardation.

RESULTS AND ANALYSIS
The system is simulated using Arduino IDE as a tool to generate test results for each sensor by giving an input value to it. To use this tool, it is required to use a programmable circuit commonly known as a microcontroller which is the sole component for this tool. The code is written for sensors in C programming language in Arduino IDE and it is uploaded in the flash memory of the microcontroller to test the sensor. The data generated by the sensor can be analyzed in the output screen of the Arduino IDE.

Simulation for static car accident
In this case, there can be a possible crash when the car is at rest and driver is inside. The accelerometer will give values low value or mostly 0m/s^2. The vibration sensor will switch from low to high, the moment it experiences a crash with larger impact. Table 2 depicts the numerical values responsible for an accident. From the Figure 2, it can be inferred that heart rate sensor gives peak value for heart beats when the acceleration is 0. This means that driver is not in healthy condition. Also, when both the sensor gives 0 value then that means the driver is not inside the car and that is why the heart rate sensor is 0.

Simulation for moving car accident
This is a specific case depicted for a moving car. When the car meets with an accident the accelerometer will experience a certain amount of retardation (negative acceleration). At this moment, vibration sensor switches from low to high state. There are situations where the driver gets injured due to impact of crash because of which there will be a drastic change in the driver's heartbeat. Table 3 represents the above stated scenario.  Figure 3 represents the graph between accelerometer and heartrate sensor. According to the graph, when the car experiences high retardation due to crash, the driver's heart beats raise up drastically indicating the cause of an injury. This situation calls for an immediate help for an ambulance. Note that the values of heart rate sensor vary according to the age of a person and it has not been used for simulation. Only vibration sensor and accelerometer have been considered for testing. However, in the both the tables only those cases are depicted that requires the need for a warning to the driver or emergency call to an ambulance.

CONCLUSION
The main idea of this paper is to notify the concerned authorities about an accident only if the passengers are injured. The proposed framework is intended to solve the same by incorporating more features in the already existing work done by the authors. With the addition of above discussed functionalities, this system can resolve most of the accident scenarios by detecting accidents on time and triggering immediate help from emergency services without wasting any time. Moreover, the driver's health is being tracked by heart rate sensor (embedded in seatbelt) which serves as the added advantage. If implemented with proper planning and resources, this framework could serve to be a great help to the society. Hence, there is need of such systems that could save the lives involved with accidents.