Obstacle Avoidance Robot Using Arduino

DOI : 10.17577/IJERTCONV6IS13197

Download Full-Text PDF Cite this Publication

Text Only Version

Obstacle Avoidance Robot Using Arduino

Pavithra A C

Dept. of ECE

ATMECE, Mysuru, Karnataka, India

Subramanya Goutham V

Dept. of ECE ATMECE, Mysuru, Karnataka, India

AbstractThe project is design to build an obstacle avoidance robotic vehicle using ultrasonic sensors for its movement. A microcontroller (ATmega328) is used to achieve the desired operation. A robot is a machine that can perform task automatically or with guidance. The project proposes robotic vehicle that has an intelligence built in it such that it directs itself whenever an obstacle comes in its path. This robotic vehicle is built, using a micro-controller of AT mega 328 family. An ultrasonic sensor is used to detect any obstacle ahead of it and sends a command to the micro-controller. Depending on the input signal received, the micro-controller redirects the robot to move in an alternate direction by actuating the motors which are interfaced to it through a motor driver. Some of the project is built with the IR sensors has its own application so in our project those application is not compactable so we are using ultrasonic sensor.

Key words Arduino UNO, motor shield L293d, ultrasonic sensor HC-SR04, DC Motor, servo motor


    Obstacle avoidance Robot is designed in order to navigate the robot in unknown environment by avoiding collisions. Obstacle avoiding robot senses obstacles in the path, avoid it and resumes its running. There are some very popular methods for robot navigation like wall-following, edge detection, line following and many more. A more general and commonly employed method for obstacle avoidance is based on edge detection. A disadvantage with obstacle avoidance based on edge detecting is the need of the robot to stop in front of an obstacle in order to provide a more accurate measurement. All mobile robots feature some kind of collision avoidance, ranging from primitive algorithms that detect an obstacle and stop the robot in order to avoid a collision, using some sophisticated algorithms that enable the robot to detour obstacles. The latter algorithms are more complex, since they involve detection of an obstacle as well as some kind of quantitative measurements concerning the obstacle's dimensions.

    Once these have been determined, the obstacle avoidance algorithm needs to steer the robot around the obstacle and resume motion toward the original target. The steering algorithm ensures that the robot does not have to stop in front of an obstacle during its navigation. An ultrasonic sensor is used to detect any obstacle ahead of it and sends a command to the micro-controller [10] Hence the robots may overcome some of the problems during navigation, which are discussed above and it can navigate smoothly during its operation avoiding the collisions. if we were use the IR sensor Infrared sensors detect the object's distance with infrared radiation. When the beam detects an object, the light beam returns to the receiver with an angle after reflection there is a limitations in sensor those limitations are Performance of IR

    sensors has been limited by their poor tolerance to light reflections such as ambient light or bright object colors.

    No object recognition at the dead zone area, for example Sharp GP2D12 IR distance sensor dead zone between 0 to 4 cm. IR sensors also give inaccurate detection result with transparent or bright color materials. Detection results also depend on the weather conditions and the sensing reliability of IR sensors decreases with moisture and humidity. Furthermore, IR sensors can sense IR radiation from the sunlight, which can cause correctable or non-correctable errors at output. Besides that, if analogue IR sensor is used, signal losses will occur at the amplifier circuit. Meanwhile, PIR motion sensor needs a long calibration time and is sensitive to thermal radiation. Besides that, PIR sensor is insensitive to very slow motions or to objects in standing mode [2].


    line follower and obstacle avoidance bot using arduino has been designed and developed by Aamir attar, Aadilansari, Abhishekdesai, Shahid khan, Dipashrisonawale to create an autonomous robot which intelligently detects the obstacle in its path and navigates according to the actions that user set for it. So this system provides an alternate way to the existing system by replacing skilled labor with robotic machinery, which in turn can handle more patients in less time with better accuracy and a lower per capita cost [1].

    Obstacle-avoiding robot with IR and PIR motion Sensors has been designed and developed by Aniket D. Adhvaryu et al has proposed that developed robot platform was not designed for specific task but as a general wheeled autonomous platform. It can therefore be used for educational, research or industrial implementation. Students can use it to learn the microcontroller programming using C++, Arduino Uno 1.6.5 compiler, IR and PIR sensors characteristics, motor driving circuit and signal condition circuit design. Research on obstacle avoidance robot at the polytechnic level can help students to develop communication, technical skills and teamwork. The design of such robot is very flexible and various methods can be adapted for another implementation. It shows that PIR sensors are more sensitive compared to IR sensors while detecting human being [2].

    Obstacle Avoidance Robotic Vehicle Using Ultrasonic Sensor, Android and Bluetooth for Obstacle Detection has been designed and developed by Vaghela et.al has mentioned that enormous amount of work has been done on wireless gesture controlling of robots. Various methodologies have been analyzed and reviewed with their merits and demerits under various operational and functional strategies. Thus, it can be concluded that features like user friendly interface,

    light weight and portability of android OS based smart phone has overtaken the sophistication of technologies like programmable glove, static cameras etc., making them obsolete. Although recent researches in this field have made wireless gesture controlling a ubiquitous phenomenon, it needs to acquire more focus in relevant areas of applications like home appliances, wheelchairs, artificial nurses, table top screens etc. in a collaborative manner [3].

    Obstacle Avoidance Robot has been designed and developed by Paul Kinsky,Quan Zhou mentioned that robot with a few mechanical components to add two more functions to the main body, namely the laptop holder and the camera holder. AT89S52 development board is designed, developed and tested in a large scale, which was used to control the motors smoothly. the cameras with relatively low cost are fixed and adjusted on the camera holder for good calibration of the computer vision.Users establish the serial communication method between the upper laptop and the lower development board with USB port. The laptop will send out a signal of the motor condition to the development board [4]. obstacle avoidance car has been designed and developed by FaizaTabassum, et.al has mentioned that Obstacle Avoidance Car successfully detects and avoids obstacles. Simple algorithms used to steer and reducing the turning radius, successfully navigated the vehicle. In conclusion, the group successfully interfaced every component that was originally planned. Timer interrupts for IR pulse generation. Obstacle detection using IR transceiver. Servo mechanism using PWM. Steering system using Lego and Servo. [5].


    The basic block diagram for the implementation of the project is as shown in figure1.

    Fig. 1. Block Diagram o the system

    The sonar system is used in HC-SR04 ultrasonic sensor to determine distance to an object like bats do. It offers excellent non-contact range detection from about 2 cm to 400 cm or 1feet to 13 feet. Its operation is not affected by sunlight or black material. The ultrasonic sensor emits the short and high frequency signal. If they detect any object, then they reflect back echo signal which is taken as input to the sensor through Echo pin .Firstly user initialize Trigger and Echo pin as low and push the robot in forward direction. When obstacle is detected Echo pin will give input as high to

    microcontroller. Pulse In function is used for calculating the time of distance from the obstacle. Every time the function waits for pin to go high and starts timing, then timing will be stopped when pin go to low. It returns the pulse length in microseconds or when complete pulse was not received within the timeout it returns. The timing has been determined means it gives length of the pulse and will show errors in shorter pulses. Pulses from 10microseconds to 3 minutes in length are taken into consideration.

    After determining the time, it converts into a distance. If the distance of object is moderate then speed of robot get reduced and will take left turn, If obstacle is present in left side then it will take right turn.

    If the distance of object is short then speed of robot get reduced and will turn in backward direction and then can go in left or right direction. This robot was built with an Arduino development board on which microcontroller is placed.





    Pin 12

    Pin 13





















    Arduino board is connected with DC Motor through Motor driver board (pin10, pin11, pin12, pin13) which provides power to the actuators. Actuators are used to move robot in Forward, Backward, Left and Right directions. The brief description of inputs pins for movement of robot is given in below in table. The movement of robot will be stop whenever there is an obstacle is present on its path which can be detected by ultrasonic sensors. Ultrasonic sensors give time in length to the microcontroller as an input for further actions.

    1. Sensors For Obstacle Avoidance

      Varieties of sensors are available which can be used for the detection of obstacles some of the very popular sensors are: Infrared sensors (IR), Ultrasonic sensors, Cameras, which can be used as a part of Computer Vision, Sonar. It can measure the distance in its field of view of about thousands to hundreds points In the design of robot, we are using ultrasonic sensors for obstacle detection and avoidance The ultrasonic sensors continuously emits the frequency signals, when obstacle is detected this signals are reflected back which then considered as input to the sensor.

      Fig. 2. Ultrasonic Sensor

      The ultrasonic sensor consists of a multi vibrator, which fixed at its base. The multi vibrator is combination of a resonator and vibrator the ultrasonic waves generated by the vibration are delivers to the resonator. Ultrasonic sensor actually consists of two parts: the emitter which produces a 40 kHz sound wave and detector which detects 40 kHz sound wave and sends electrical signal back to the microcontroller. HC-SR04 ultrasonic sensors are used which consist of 4 pins VCC, Trigger, Echo and GND

      Features of Ultrasonic Sensor:

      • Compact and light weight

      • High sensitivity and high pressure

      • High reliability

      • Power consumption of 20mA

      • Pulse in/out communication

      • Narrow acceptance angle

      • Provides exact, non-contact separation estimations within 2cm to 3m

      • The explosion point LED shows estimations in advancement

      • 3-pin header makes it simple to connect utilizing a servo development link


    1. Used in mobile robot navigation systems

    2. Used for household work like automatic vacuum cleaning

    3. Used in dangerous environments, where human penetration could be fatal.

    4. Automatic change overs of traffic signals

    5. Intruder alarm system

    6. Counting instruments access switches parking meters

    7. Back sonar of automobiles


    Figure 4 shows the Flow Chart of the working of the obstacle avoidance robot. Initially it checks obstacle within 30cm.If there is an obstacle it stops moving and turns towards left and checks if there is an object closer than 30 cm . The check has two possible outcomes, yes or no. Yes, meaning that there is indeed some object closer than 30 cm. No, meaning that there is no objects detected within 30cm. If there is nothing within 30 cm the robot can simply move forward as the path is clear. If there is something closer than 30 cm the robot must perform obstacle avoidance .The first stage of obstacle avoidance is to stop the robot! If you don't stop the robot immediately it will crash! After the robot has stopped it needs to see what way it should go. It does this by looking both directions, much like you should when you cross the road. First the robot turns left, takes a reading, turns right, and takes a reading. Another check occurs to see what direction is the best way to go. If left is the way to go it has to turn back to the left and then go forward. If right is the way to go the robot simply moves forward as it is already facing in the right direction.

    Fig. 3. Flow chart of obstacle avoidance robot


    The result is obtained for obstacle avoidance robot using Arduino, if the robot moves forward if any obstacle detect it check for other directions and moves where there is no obstacles it moves in forward direction, to sense the obstacle ultrasonic sensor is used. We used servo motor to rotate the ultrasonic sensor

    Fig. 4. Result of the project


This project developed an obstacle avoiding robot to detect and avoid obstacles in its path. The robot is built on the Arduino platform for data processing and its software counterpart helped to communicate with the robot to send parameters for guiding movement. For obstacle detection,

three ultrasonic distance sensors were used that provided a wider field of detection. The robot is fully autonomous and after the initial loading of the code, it requires no user intervention during its operation. When placed in unknown environment with obstacles, it moved while avoiding all obstacles with considerable accuracy. In order to optimize the movement of the robot, we have many considerations for improvement. However, most of these ideas will cost more money and time as well. In future cameras can be used to detect the obstacle however, it is better to get CCD or industrial use ones to get clear and fast pictures. Even the ones we mentioned in the camera holder part will be better because of the special software.


  1. Amir attar, aadilansari, abhishek desai, shahid khan, dip ashrisonawale line follower and obstacle avoidance bot using arduino International Journal of Advanced Computational Engineering and Networking, vol. 2, pp. 740-741, August 1987.

  2. Aniket D. Adhvaryu et al Obstacle-avoiding robot with IR and PIR motionSensors IOP Conference Series: Materials Science and Engineering, vol. A247, pp. 529-551, April 2005.

  3. Vaghela Ankit1, Patel Jigar2, Vaghela Savan3 Obstacle Aoidance Robotic Vehicle Using Ultrasonic Sensor, Android And Bluetooth For Obstacle Detection International Research Journal of Engineering and Technology (IRJET), vol. A247, pp. 29-32, 2005.

  4. Paul Kinsky,Quan Zhou Obstacle Avoidance Robot Worcester polytechnic institute.

  5. FaizaTabassum, SusmitaLopa, Muhammad MasudTarek& Dr. Bilkis Jamal Ferdosi obstacle avoidance carGlobal Journal of Researches in Engineering: HRobotics & Nano-Tech.

  6. Bhagya shree S R , Manoj kollam Zigbee Wireless Sensor Network For Better Interactive Industrial Automation , proc.of IEEE ICoAC- 2011,pp 304-308,2011.

  7. Ming Chang, Descriptive Geometry and Engineering Graphics 3 ed. Huazhong University of Science and Technology press, 2004.

  8. Shiquan Zhou, Fundamentals for Mechanical Manufacturing Process in Huazhong University of Science and Technology press, 2005

  9. Jiao Ni, Guoqing Li, Qin Qian, Mechanical of Materials,Huazhong University of Science and Technology press, 2006

  10. Prajwalasimha S N, Design And Development Of Real Time Self Navigation Robot For Agricultural ActivitiesIJAREEIE,Vol 5 issue 5 may 2016

  11. Kirti Bhagat, Sayali Deshmukh, Shraddha Dhonde, Sneha Ghag, Obstacle Avoidance Robot, Bachelor of computer engineering, IJSETR, volume 5, issue 2, February 2016.

  12. Jitihsha Agrawal, Solar Operated low cost Obstacle avoidance Robot, Department of extc, YMCA university of science and technology (state government university) Faridabad, IJSRD, volume 3, issue 7 2015 ISSN 2321-0613.

One thought on “Obstacle Avoidance Robot Using Arduino

Leave a Reply