Autonomous Self-Driving Car using Raspberry Pi Model

DOI : 10.17577/IJERTCONV7IS08081

Download Full-Text PDF Cite this Publication

Text Only Version

Autonomous Self-Driving Car using Raspberry Pi Model

Mr. Nihal A Shetty Department of Computer Science and Engineering

Srinivas Institute of technology, valachil

Mr. Mohan k

Department of Computer Science and Engineering

Srinivas Institute of technology, valachil

Mr. Kaushik k

Department of Computer Science and Engineering

Srinivas Institute of technology, valachil

Abstract: Currently, self-driving cars are already being implemented in foreign countries however these cannot be implemented in India. Reason being these existing approaches uses GPS, Sensors. The problem with GPS is that these display roads on the map that might or might not exist and also these roads in India might not be a concrete road. Our idea is to implement a self-driving vehicle which uses a pattern matching technique to overcome the problem. In our project, we planned of using a special pattern which will be deployed on the road. These patterns are a special pattern that is used for detection of the pathway and it detects the type of road. Hence using this technology, we can implement a self-driving car in India. Our prototype would use a modelled car which has a Raspberry pie to process the captured images from the camera and send it remotely on remote computer process it and send back. Similarly, we have various sensors around the car to detect the surrounding obstacles. The camera will be able to capture specific pattern on the road. The pattern is like a pathway for the modelled car, that makes it easier to drive on roads in India. Our prototype uses a hybrid combination of the existing technology as well as the newly implemented methodology of detecting special pattern marked on the road for providing better results.


    A self-driving car (also known as an autonomous car or a driverless car) has no human input and can sense surrounding without any human interactions. Variety of sensors are combined and are used to identify the pathway, obstacles, pedestrians etc. from the surrounding. Benefit of having a driverless car is having reduced costs due to less wastage of fuel, increased safety, increased mobility, increased customer satisfaction etc.

    Safety benefits means we will be having reduced traffic collisions, lower accident rate reducing injuries and related costs such as, insurance. Automated cars could increase traffic flow by having proper routine mobility from source and destination, providing mobility for children, the elderly, disabled, and the poor who cannot operate the non-autonomous vehicles. Travelers could relieve their stress from driving and navigation issues when they go to a unknown city, reduce needs for parking space, lower fuel consumption, reduce crime and facilitate transportation as service like convert existing vehicles such as taxi, train buses to fully automated for the people. Between manually driven vehicles which are referred to as (SAE Level 0) and fully autonomous vehicles referred to as (SAE Level 5) we have wide range of vehicles that are classified in these SAE range. These are known as semi-automated vehicles. These were developed before fully automation could come in exitance. These were iterative

    approach done for semi automating a car for example some parts get automated. These semi-automated vehicles could take some properties of fully automated vehicles, while still keeping driver in charge of the vehicle they operate. Since the cars rely on a preprogrammed code primarily. The traffic light, sudden pedestrians contact on road, is secondary data they need to process. Hence, they tend travelling slower for processing these extra scenarios. The vehicle sometime might have difficulty when determining certain objects such as light debris, trash, when humans such as police officers are signaling the vehicle to stop, spotting potholes on the road is also sometimes difficult hence avoiding them becomes not possible. Advantages could include higher speed limits with smoother rides since these have better control of vehicle and can view larger distance then a human high and can increase the roadway capacity and minimized(reduce) traffic congestion caused due to decreased need for safety gaps between vehicles travelling at higher speeds.

    Currently on highways drivers usually keep between 40 to 50 m (130 to 160 ft) distance away from the car in front of their pathway. These increases in highway capacity sometime are one of the main significant reason for impact in traffic congestion, particularly in the urban areas and more affected in highway congestion in some places. For the authorities to manage the traffic flow usually leads to increase the traffic congestion, with the extra data and predicting the driving behavior of people, we can combine these two details for reducing the traffic congestion the road with less need for traffic police on the roads and even for the road signage. Manually driven vehicles on online surveys are reported to be used only 45% time, while being parked and unused for the remaining 9596% of the time. Autonomous vehicles, on the other hand, be continuously used even after it has travelled from some source to some destination for a given person. This could lead to reduce the need for parking space.

      1. Problem Statement

        Non-autonomous vehicles have been around several years, and based on online survey we have found that ratio of accident happening due to human error is quite high and reason being

        • Human beings are not well-suited to travel at high speed. As speed increases, our time and distance perception degrade.

        • Fuel wastage caused by human error is quite high.

        • Due to human error, traffic congestion is found to increase.

      2. Existing System

        The existing system are being manufactured in foreign countries due to which implementing these systems in our country becomes difficult, problem being

        • In some foreign countries, driving takes place on the different lane, while we use left-lane driving.

        • The traffic flow in India is much more congested compared to other developed countries, hence current systems might find it difficult to run on these roads.

      3. Proposed System

        The current proposed system uses pattern matching technique, where we use cameras to detect a special pattern that will be printed on the roads. The camera will capture this pattern and process it using a raspberry pi and instruct the car to move on specified direction. The camera will also capture surrounding Images, to determine different obstacles next to it, if the obstacles get too close or about to make contact with the vehicle then the vehicle will stop until the obstacle near it moves. Special patterns will be deployed beside the road to detect what kind of road is present ahead.

      4. Objective

        The objective of Self driving car is to create a fully functional automated car that is able to reduce human effort, reduce the accident rate, provide better fuel consumption and better traffic flow. Self-driving car created for providing benefits to our society we live in, such as providing transportation for those people who are not able to drive because of age or physical impairment.


    Many technical advances that enable self-driving cars are of course due to software and algorithmic innovation. There have been incredible advances in machine learning that improve the ability to perceive the world, new tracking and planning algorithms allow for safer and smoother driving, and the software infrastructure to simulate ad analyze large amounts of data in data centers have all been key contributors towards making self-driving cars. The rapid development of self-driving capabilities, Googles self-driving car project began in 2009 and transitioned to its own business entity Waymo within Googles parent company (Alphabet) in 2016. Waymos self-driving cars [1] contain a broad set of technologies that enable our cars to sense the vehicle surroundings, perceive and understand what is happening in the vehicle vicinity, and determine the safe and efficient actions that the vehicle should take. From a hardware perspective, we can divide Waymos self-driving technology into three key areas: sensing, compute, and embedded control. Our sensors capture information about the vehicle surroundings, position, and environment. The sensors send their information to a high-performance computer. The computer fuses, processes, and interprets the sensor data, ultimately generating trajectories that the vehicle must follow. The computer passes these trajectories to embedded control systems, which in turn communicate with the vehicle actuators to manipulate steering, braking, and throttle.

    Self-Driving Car requires several concepts that needed to be known in order to have it getting implemented they are Computer Vision, Sensor Fusion, Deep Learning, Path Planning, Actuator [2]. Computer vision allows us to understand how computers can be made for gaining information from digital images or videos. From engineering perspective, it is used to automate tasks that the human visualize how system can do it. Sensor fusion combine variety of sensory data or data derived from various sources so that the resulting information has less uncertainty in them rather than how it would be when these sources were used individually.

    Deep learning [3] is one part of machine learning that is based on learning data representations, such as opposing to task-specific algorithms used. Path-planning is for autonomous mobile robots etc. that lets robots find the shortest or the optimal path between

    two points. Otherwise optimal paths could be paths that reduce the amount of turning, the amount of braking or whatever a specific application requires. An actuator is responsible for moving system.

    Transportation of people and goods underpins our modern industrialized society [4]. As Ruth Schwartz Cowan reminds us, You cannot consume frozen TV dinners or acrylic knit sweaters or aspirin or a pediatricians services unless you can get to them, or unless someone is willing to deliver them to your door. Currently the technologies are moving towards self-driving vehicle (SDV) that are made to utilize sensors, computational algorithms and communication devices to automatically travel in the environment without human interaction human drivers. SDVs provides increased safety, speed and convenience for the people, as well as reduced energy consumption. SDV technologies bring a new set of challenges at the vehicle and system levels. These include impacts on urban infrastructure, limitations on a vehicles driving range, equipment reliability, data privacy assurances, as well as concerns over infrastructure investment, and ethical implications for safety.


    The purpose of the design phase is to plan a solution of the problem specified by the requirement document. The design and quality of the system plays very much important in the later phases which include testing and maintenance. The output of this phase is the design document.

    Here we have the pie camera that streams video live and send it to the raspberry pie as shown in fig 1. then we have the raspberry pie that processes the data and sends the data to be processed in a remote system placed someplace. The data that is processed then transmitted to the Arduino that further sends the information for the modeled car so it can operate based on the condition.

    Fig 1: Block Design of working of a modeled car

    The car once placed on the road starts moving unless and until it detects an obstacle in front or it reaches end of pattern. The car captures the pattern present on road and follows that particular pattern. If it has to take a particular path from source to destination and further the current path isnt available for some reason then it can let user choose a new path to travel. If it comes in contact with a scenario where current path has two pathways ahead then it lets the user decide on which path to take.


    Our prototype model shows some work on both the application that we have discussed in this paper. The following set of figures shows the prototype Mobile Robot (Vehicle) used in the construction of the model. Our main focus was on Following Vehicle, which detects and avoids obstacles, coordinate with environment, get route and follow the route.

    Fig 2 Camera and Raspberry connection side view

    Other application includes, checking vehicles around and automatically moves slowly behind the trafc until it gets out of trafc jam situation. Here we initially implemented sensors on the modeled car so that it was able to detect the surrounding obstacles and other vehicles in the surrounding

    Fig 3 Camera and Raspberry connection top view

    . We connected required components needed for the Arduino and then there after we connected the output of the Arduino to the moto driver, which would be used to output specify power to modeled car to control its speed. Once the sensors were implemented in the model, the camera which was going capture the video footage, to detect the pattern was connected to the Raspberry pie. The processing of the image was done remotely on the external system. Hence using the radio waves, we send the data from the raspberry pie to the system, process the data and then send the required output back to the raspberry pie. The system will process on determining what obstacles are detected and what it should when it detects an obstacle in the environment. The obstacle could be another vehicle or pedestrians crossing the road. The remote system can also

    determine what speed the modeled car should travel, what direction it should travel following the specific pattern(pathway) provided for the modeled car on the road.


    The project has verified and tested at our college, Srinivas institute of technology, Valachil. The above pictures taken show the working of the model where it is able to detect the special pattern provided and also is able to detect the obstacles in the surrounding. The model is thereby able to do all required task which as we stated above.


We addressed the problem of non-autonomous vehicles with the proposed system which reduces the human work of operating the vehicle. Furthermore, we also notice that the given system performance is much better than an average user. Since the performance is better and always consistence, we hereby come to a conclusion that the proposed system can solve the basic human error that occurs

Future work that can be added to this project may be the development of a web app. Here the user can operate when the vehicle encounters two pathways to reach common destination the user can interact though a web app. Also, the user can get suggestion of nearby places to visit also though this app.


      1. Daniel L. Rosenband. Inside Waymos Self-Driving Car: My Favorite Transistors, Symposium on VLSI Circuits Digest of Technical Paper 2017.

      2. Mochamad Vicky Ghani Aziz, Hilwadi Hindersah, Ary Setijadi Prihatmanto. Implementation of Vehicle Detection Algorithm for Self-Driving Car on Toll Road Cipularang using Python Language, 4th international conference on Electric Vehicular Technology 2017.

      3. Qing Rao, Jelena Frtunikj. Deep Learning for Self-Driving Cars: Chances and Challenges. Proceedings SEFAIS18 Proceedings of the 1st International workshop on software engineering for AI in autonomous Systems.

      4. Pacale-L. Blyth, Milos N. Mladenovic, Bonnie A. Nardi, Norman M. Su, Hamid R. Ekbia Driving the Self-Driving Vehicle.IEEE 1 International Symposium on Technology in Society (ISTAS) Proceedings 2015.

Leave a Reply