A VANET based Cooperative Collision Avoidance ...

1 downloads 0 Views 647KB Size Report
protocols, and security which increase the need for research in this field. ... Each of these units will utilize GPS to obtain location and the vehicle's onboard ...
A VANET based Cooperative Collision Avoidance System for a 4-Lane Highway Tanwee Kausar1, Priyanka Gupta1, Deepesh Arora2, Rishabh Kumar2 1 Department of Computer Engineering, Zakir Hussain College of Engineering & Technology Aligarh-202001, UP, India [email protected], [email protected] 2 Department of Electronics Engineering, Zakir Hussain College of Engineering & Technology Aligarh-202001, UP, India [email protected], [email protected]

Abstract: Road accidents are a leading cause of casualties nowadays, and they result in huge economic loss as well. Visual obstructions and recklessness of the drivers are the potential causes of accidents that we intend to prevent. Vehicular Ad-hoc network (VANET) is basically a car-to-car and car-to-infrastructure wireless communication network where vehicles are treated as ‘smart objects’. It aims towards safer and more efficient transportation system by providing timely and reliable information to drivers and concerned authorities. This paper is concerned with only car-to-car communication that reduces the need for roadside units by allowing the vehicles to communicate critical information directly with one another, thereby warding off the risk of likely collisions. In this paper, we have introduced a reliable model that can be integrated in a car-to-car communication system to give an effective and high end transport solution.

1

Introduction

In the today’s world, number of on-road vehicles is increasing at a tremendous pace thereby elevating the burden on the transit system. One of the possible solutions for managing the traffic, warding off the risks of accidents and for securing the transport system is to incorporate an intelligent system. In the last couple of years communication between vehicles has attracted the interest of many researchers around the world[7], [8] and Vehicular Ad-hoc networks (VANETs) have emerged as a key underlying technology in the realization of Intelligent Transport Systems (which aim at modernizing the transportation system by improving safety, entertainment and efficiency). VANETs enable many new services for vehicles and create numerous opportunities for safety improvements. They can be used to realize driver support and active safety services like collision warning, up-to-date traffic and weather information or active navigation systems. In principle, the ad hoc networking provides a spontaneous and direct communication of a car with other cars or with fixed road-side access points in its vicinity. For communication beyond the transmission range of the wireless technology, the network nodes cooperate and relay data on behalf of other nodes. This multi-hop communication enables the distribution of data in a geographical region and also the forwarding of data towards the geographical position of a single destination node for unicast communication. However, besides enabling new services VANETs pose many challenges on technology, protocols, and security which increase the need for research in this field. Due to the high mobility of nodes, network topology changes occur frequently. All nodes share the same channel leading to congestion in very dense networks. The decentralized nature of VANETs has lead to the need for the introduction of an efficient and reliable system as well as new information dissemination protocols.

2

Overview

Car-to-car communication systems aim at increasing safety and eliminating the excessive cost of traffic collisions. In this paper, we have introduced a system where each car transmits information about itself to the other cars around it and side by side, receiving the statistics of the other cars within a certain range. This information including GPS and velocity readings, can allow the software implementation of collision detection or accident avoidance systems by giving an audible warning tone, when a vehicle is on a collision course. Since ‘prioritized’ and ‘timely’ delivery of warning messages for safety applications in VANETs is crucial to prevent fatal accidents and warn the drivers beforehand, therefore, an algorithm is presented which is based on Priority Queue using Linked List for quick and efficient handling of safety messages. The algorithm takes advantage of the various parameters of VANETs such as relative distance, relative velocity to assign a priority to the various incoming messages for avoiding any ambiguity in decision-making by the system. However, the messages of only certified vehicles (vehicles with a CIN assigned during the system’s installation) are taken into consideration and the rest are discarded. Also, the system is compatible with every brand of any vehicle and is designed such that even a layman can also use it. 2.1

Problem Statement

A small vehicular ad-hoc network is created where each vehicle will transmit and receive data relating to speed, location, and acceleration. This information will be obtained through the on-board unit of each vehicle. Each of these units will utilize GPS to obtain location and the vehicle’s onboard diagnostics (OBDII) to find speed. A transceiver in these units will transmit this information to nearby vehicles and also obtain data from surrounding vehicles, all at sufficient rates to be useful for increasing driver safety. The IEEE 802.11p protocol is used to get the efficient high speed communication. 2.2

The Scenario

The designed system will solve several of the situations on a 4-lane highway but first here is some general information describing the overall system. There are six cars driving on either side of the 4-lane highway. These cars are several car-lengths apart and are travelling with speeds varying between 60-120kmph. The situation is such that the car in front of the host car breaks hard meaning there is a considerable amount of deceleration. The cars following the front car will be warned that there is a possibility of an accident. The other cars will receive the broadcasted data that accounts for the breaking car, but only the car in danger of colliding (i.e. the host car or car no. 1) will receive a signal to warn the driver of an accident. The driver of the car in front of the braking car will not be warned to brake because it is safe, but the front car (i.e. car no. 2) will be warned in case the host car decides to overtake it by changing the lane in order to avoid the accident. The algorithm used will be precise, but our system has to be flexible because there are sources of error. A major source of error is the accuracy of the data received by the Global Positioning System. There are atmospheric conditions that increase error in GPS but the system accuracy will not be greatly affected because the other GPS will be experiencing the same conditions. In our current model, we define the lane size to have a width of 6 meters to take into account the error in GPS data. The information being collected includes location and speed that will be consolidated into packets to be sent broadband-wirelessly. Since the introduction of security is of great importance in VANETs, so we have covered the problem of wirelessly security theoretically while checking the authenticity of the incoming messages.

Fig 1. The Scenario

3

Requirements

1) Transceiver: Each transceiver will be used to transmit data from its respective GPS and OBD-II and accept data from surrounding vehicles. The transceiver must be DSRC compatible as it is the protocol for automotive use. Each car unit will be able to communicate with cars up to 120 meters away. 2) GPS: The GPS on each vehicle must find its location and send this data to the transceiver. Accuracy of measurements will be at least three meters. 3) OBD-II: The OBD-II must obtain the vehicles speed continuously and send this data to the transceiver. 4) User Friendly Interface: In order for this system to be useful to people, it must be easy and intuitive to use. There will be an audio warning that the driver must perceive. Refresh rate of information sent and received will be at least once per second.

4

Design

The Car to Car Communication interface requires complete integration between the GPS, OBD-II, and transceiver on each vehicular module. We use a microcontroller to fit these all together. 1) Power Supply: The power supply we are using draws on the 12 volt supply from the car battery, accessible through the dashboard. This design choice was obvious because all vehicles have them and it frees up the need to make use of external battery sources. The choice however limits our system to components that require 12V or less. Linear regulators will be used to regulate the voltage to lower levels as necessary for each component. 2) Transceiver: Dedicated Short Range Communication (DSRC) is a requirement for our transceiver as that is the protocol for automotive use. DSRC offers one or two way communication wireless communication in the 5.8 GHz band. Our use of the microcontroller will need to translate the correct data from the GPS and OBD-II to something useable by the transceiver. 3) GPS: The GPS is used to determine the location of the respective vehicle. The GPS on each vehicle must find its location and send this data to the transceiver. When the GPS satellites broadcast information, the GPS receiver can determine the distance away from each GPS satellite based on the

broadcasted information. The GPS receiver does this by using the time a signal takes to travel from the GPS satellite to the GPS receiver based on the broadcasted information and the propagation velocity. d = Vp / δt The GPS uses a method called trilateration in determining the location of the GPS. A GPS receiver does not know its direction from a GPS satellite if only one is in view. To determine the location of the GPS receiver, the receiver needs more information. It gets the information it needs to determine the location from the other GPS satellite.

Fig 2. One GPS satellite

In Fig 4, the centre of this circle is the GPS satellite. The radius of the circle is the distance between the GPS receiver and the satellite. The possible locations of the GPS receiver are located on the perimeter of this circle because they agree with the information that is learned from the GPS satellite. By utilizing the information learned from the other GPS satellites, the location of the GPS receiver can be determined by performing the intersection of the circles for all of the satellites that are in the range of the receiver as shown in Fig 4 with two satellites in range.

Fig 3. Two Satellites

However, there is a problem with two satellites. The result for the location is nondeterministic because there are two intersections as shown in Figure 3. It is not possible to determine which intersection is the location of the GPS receiver without given any further information. With three receivers, it is possible to determine the location of the receiver without any ambiguity. Therefore, a minimum of three satellites are needed for the GPS to operate. 4) OBD-II: On Board Diagnostics are a vehicle’s self-diagnostic and reporting ability. Every car has a port within 1 meter of the driver’s seat. Our design utilizes the OBD-II to find the speed and then the acceleration of a vehicle. The signal coming from the OBD-II must be sent to the microcontroller unit.

Fig 4. Block Level Diagram

5) Microcontroller: The microcontroller will serve as the interface between all the other components on each vehicular module. Signals coming from both the GPS and OBD-II go through the microcontroller to be sent on to the transceiver. Signals coming from other vehicles will go through the transceiver to the microcontroller for processing.

5 5.1

Algorithms Involved Collision Avoidance Algorithm

|Srel|= Relative distance between the two cars ΔV= Vhost – Vother Here, car 2 is the host car.

Srel 3

Srel 5

Fig 5. A rough sketch of the 2 lanes on one side of a 4-lane highway

Sign conventions taken: 1. If the car is in front of the host car (in either of the 2 lanes), it will have -ve Srel 2. If the car is behind the host car (in either of the 2 lanes), it will have +ve Srel 3. If the other car has a greater speed as compared to the host car, then ΔV will be –ve 4. If the other car has a lower speed than the host car, then ΔV is –ve.



Assumptions: 1. 2.

Refreshing of messages in the priority table will occur at a particular known frequency. The range of transceiver has been assumed to be circular and messages of only the cars in range are considered.

In this collision avoidance algorithm, the messages that have been arranged in the priority queue according to their priority (discussed in section 5.2) will be processed one by one. After receiving the message signal, the relative distance (Srel) is computed and if it is found to be negative, the message is discarded without further processing. It is to be noted that the host car will have to deal only with the cars in front of it in either of the lanes (in our case car1 and car4). It has not to bother about the cars behind it, because we are working on a valid assumption that the probability of collision of the host car is maximum with the nearest cars in the front and intentional collisions from behind are not taken into consideration. When car 3 will be host car its decision to avoid accidents will depend on the parameters of car 2 and car 5 and so on. This forms a chain where each host car decision will depend on the parameters of the nearest front car of each lane. After checking for the relative distance, the relative velocity (ΔV) is looked for as shown in the algorithm and here the driver has the option of braking down and simultaneously warn the cars behind it, but if ΔV is found to be positive, the comparison of relative distance to a safe relative distance is carried out to check whether the car is in danger zone or not. If it is not in danger zone, it can brake hard and disseminate a warning alert side by side. On the other hand, if it is in the danger zone, the relative distance have been compared again to a critical distance signifying the extreme danger of a collision where a critical lane change or the warning to the other car can only save the host car. Critical lane change refers to the changing of the lane by the host car and then coming back to its own lane thereby overtaking the car in front of it, to prevent collision.

Fig 6. Collision Avoidance Algorithm

5.2

Message Handling Algorithm (PRI, Message)

To arrange the messages reaching to the system we have defined a function named ‘priority-function’. Various messages will be arranged on the basis of max value of the priority function, PRI

PRI= – (Srel*ΔV) As the message packet arrives, priority-function is called that saves it in a linked list according to its priority. Node start points to the starting node of the list. If start points to null it means the queue is empty and it saves the message packet as the first node. Now if our system receives another message packet within a threshold time interval, the priority-function will be called again and that message packet is saved in the list by comparing its priority with that of existing message packet node. Likewise other message packets arriving within the threshold time will be saved. Now after each threshold time, the system will call the function ‘execution’. This function will take the starting node of the linked list as parameter and send the message packets in prioritized order for processing. By processing means the message will be checked for the condition of collision and warning alarm will ring accordingly. PRI-It stores the priority of a particular message i.e. calculated using the parameters-relative distance and relative velocity between the two cars. Message-It stores the message/data i.e. velocity and coordinates of other car. Step 1: Create node P

PRI

Message

Next

Step 2: start, temp, prev are variable pointers to node and initialized to null. Step 3: if(start == null) then start = p Step 4:

else if( startPRI > pPRI) then pnext=start, start=p; else then temp = start--> next, prev=start

Step 5:

Step 6: if (tempPRI > pPRI) then go to step 9 Step 7: prev=temp, temp=tempnext Step 8: if (temp next! = null) then go to step 6 Step 9: pnext=prevnext and prevnext=P 5.2.1

Program Code

#include #include #include //def of global variables struct node{ int PRI;

//PRI stores the priority derived from the formula mentioned

float Msg_Vel;

//saves the relative velocity

int Msg_Pos;

//saves the relative distance

struct node *next; }

//next points to the next node in the linked list

struct node *start,*temp,*prev,*P;

//start is a global variable which points to Starting node of queue

void Priority_Function(struct node* start,int PRI,int S_rel,float del_V)

//this function arranges the

messages arriving within a threshold time according to their priorities

{

int size=sizeof(struct node); P=(struct node*)malloc(size); P->PRI=PRI; P->Msg_Vel=del_V; P->Msg_Pos=S_rel; P->next=NULL; //--------------------created node and entered the message packet into node P----------------if(start==NULL) start=P;

//insert at the beginning irrespective of PRI

else {

//check if queue is empty

//if some messages are there in the queue if(start->PRI>P->PRI) P->next=start; start=P;

else {

//insert in middle or last

temp=start->next; prev=start; while(temp->next!=NULL)

//find position where to insert

{ if(temp->PRI>P->PRI) break; prev=temp; temp=temp->next; } P->next=prev->next;

//inserting message packet at appropriate position

prev->next=P; }

}}

void Execution(struct node* start) { node *p; while(start!=NULL) {

p=start;

Message_Process(p); avoidance chance;

// messages processing begins and directs microcontroller to activate alarm if there is collision

start=p->next; }} void PRI_Cal(float Msg_Vel,float Host_Vel,float S_rel) //calculating PRI for a particular message packet {

//S_rel is the relative distance between the two cars int PRI; float del_V; del_V= Host_Vel - Msg_Vel; PRI= (-1) *(S_rel*del_V);}

5.3

Computation

After the activation of the system module comprising of the OBD-II, microcontroller and the GPS receiver, the system begins to perform its task. The current location of the car is obtained via GPS and the refresh rate of the data is 1Hz, so this clearly implies that all the calculations are to be performed in a time interval ≤ 1s. Simultaneously, the car’s speed is fetched from the OBD-II. These statistics of the car are broadcasted wirelessly to other cars in the range via the transceiver and alongside the transceiver gathers various messages/data (consisting of GPS and OBD-II data of the respective car) disseminated by the cars in the vicinity. But as far as security is concerned, each of the incoming messages has to be checked whether it is secure or is suspicious. Here, CIN stands for car identification number. Every car is assigned a unique CIN so that whenever a message is received, it is checked for its authenticity. The CIN will be verified by a server incorporated in the car’s system. If it is authorized, message will be further processed else it will be discarded. After a vehicle receives the speed and location information messages from other cars, calculations are computed, a priority is assigned to each of these messages on the basis of priority function and as a result they are arranged in a queue for further processing. This is followed by the checking of collisions with the various cars in vicinity. The microcontroller either sends a signal to the buzzer, warning the host driver that it is too close or disseminates a warning alert to the other drivers in danger, or doesn’t send a warning message. In this way, all the ‘N’ vehicles in the vicinity are investigated for the chance of a probable collision or accident, where ‘N’ denotes the no. of authorized vehicles/nodes in the vicinity of the host car. When all the calculations for a given GPS and OBD data have been done, the co-ordinates of the new location are fetched via GPS, the speed information is obtained through OBD and the entire procedure is repeated again.

Fig 7. Flow level diagram of the entire model

6

Conclusions

A basic and effective design of a ‘Collision Avoidance Car-to-Car communication system’ for a complex scenario of 4-lane highway, which is based on VANETs, has been presented and described in the paper. A message handling algorithm based on priority queue using Linked List and a priority function that takes advantage of the parameters-relative distance and relative velocity has also been proposed. Our car communication system demonstrates that with enough resources, a much larger scale car to car communication system with an indefinite amount of cars may be possible in the future.

7

Future Work

There are many improvements that have been considered for this system but have yet to be implemented. While we realize that GPS has its advantage in terms of navigation, it also has its disadvantages in a safety critical system. The major problem with GPS in this system, other than accuracy, is latency. GPS only updates at a rate of 1Hz; a rate that is quite slow when complex calculations of deceleration and current location are taking place in order to save lives. However, we could build our system to real world specifications by using a more accurate GPS, say Differential GPS. Other implementations can be continued in the future including adding programming that considers cases like head on traffic collisions, 4-way intersections, etc. Additional uses of the OBD-II can also be explored. In our model, we needed only speed data from the OBD-II, which only touches the surface of the information that the OBD-II is capable of supplying. For example, a more complicated system could tell drivers not to finish making a turn that they are about to make from gathering steering wheel data. We also wish to extend our model by making arrangements for the communication between vehicles and roadside units which can also increase safety. Traffic lights or road signs could be equipped with a communication device to actively inform vehicles in the vicinity. Hence, drivers can receive information on traffic flow, road conditions or construction sites directly from the respective road-side unit, thereby enhancing the effectiveness of VANETs.

References [1] Christopher Comack, Simon Tang, Joseph Tochka, and Madison Wang, “Car to Car Communication for Accident Avoidance”, University of Massachusetts, Amherst, Amherst, MA, December 2008. [2] Mr. Hussain Fidvi from Terna Engineering College, Navi Mumbai: “Car to Car Communication System”, 2011. [3] Stephan Eichler, Christoph Schroth and Jörg Eberspächer, “Car-to-Car Communication”, Institute of Communication Networks, Technische Universität München, München, Germany, Institute of Media and Communication Management, SAP Research CEC, University of St. Gallen, Switzerland. [4] K. Matheus, R. Morich, wheels.de/documents.html

and

A.

Lübke,

"Economic

Background

of

Car-to-Car

Communication,"

www.network-on-

[5] Dr. Andreas Festag, Roberto Baldessari, Dr. Wenhui Zhang, Dr. Long Le, Amardeo Sarma and Masatoshi Fukukawa, “CAR-2-X Communication for Safety and Infotainment in Europe”, Nec Technical Journal Vol.3 No.1/2008 [6] Car 2 Car Communication Consortium (2010, May) Car-2-Car Communication Consortium Website, http://www.car-to-car.org [7] D. W. Franz, “Car-to-car Communication – Anwendungen und aktuelle Forschungsprogramme in Europa, USA und Japan”, in Kongressband zum VDE-Kongress 2004 – Innovationen für Menschen, VDE, October 2004 [8] A. Lübke, “Car-to-car Communication – Technologische Herausforderungen”, in Kongressband zum VDE-Kongress 2004 – Innovationen für Menschen, VDE, October 2004