Obstacle Avoiding Robot (Arduino)

61,373

42

55

Introduction: Obstacle Avoiding Robot (Arduino)

About: Student at University of Colombo

Here i'm going to instruct you about making an Obstacle Avoiding Robot based on Arduino. I hope to do step by step guide on making this robot in very easy way. An obstacle avoiding robot is a fully autonomous robot which can be able to avoid any obstacle which it face when it move. Simply, when it met an obstacle while it moving forward, automatically stop moving forward and makes a step back. Then it looks it's two sides left & right and starts to move the best possible way; which means either in left direction if there is another obstacle in right or in right direction if there is another obstacle in left side. The obstacle avoiding robot is very helpful and it is the base of many large projects such as Automatic cars, robots used in Manufacturing factories, even in robots used in spacecrafts.

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: What You Need in This Project:

  1. Arduino UNO - https://www.ebay.com/p/Arduino-UNO-R3-Board-With-...
  2. Smart robot car chassis with 2 x toy car wheels and 1 x Universal wheel (or ball casters) - https://www.ebay.com/itm/Motor-New-Smart-Robot-Ca...
  3. Two DC motors - https://www.ebay.com/itm/Arduino-Smart-Car-Robot-...
  4. L298n motor driver - https://www.ebay.com/itm/New-L298N-DC-Stepper-Moto...
  5. HC-SR04 Ultrasonic Sonar sensor - https://www.ebay.com/itm/Ultrasonic-HC-SR04-HC-SR0...
  6. TowerPro micro servo 9g - https://www.ebay.com/itm/6X-TowerPro-SG90-Mini-Gea...
  7. 7.4V 1300mah Lipo battery - https://www.ebay.com/itm/VOK-Lipo-Battery-for-RC-H...
  8. Jumper wires (male-to-male, male-to-female)
  9. Mini breadboard

  10. Ultrasonic sonar sensor mounting bracket

  11. Screws and nuts
  12. Screwdriver
  13. Soldering iron
  14. Double sided tape(optional)
  15. Hot glue gun(optional)

Step 2: Assembling the Chassis

Solder two wires to each DC motor. Then fix two motors to the chassis using the screws. If you need any clarification, please watch this youtube video https://www.google.lk/url?sa=t&rct=j&q=&esrc=s&sou... and it will show you how to assemble the Smart 2WD Robot car chassis. Finally attach the Universal wheel (or ball caster wheel)

Step 3: Mount the Components

Mount the Arduino UNO, L298n motor driver and TowerPro servo motor on the chassis. Note: when mounting the arduino board, leave enough space to plug the USB cable, since later you have to program the arduino board by connecting the it to the PC via a USB cable.

Step 4: Preparing the Ultrasonic Sensor

Plug four jumper wires to the Ultrasonic sensor and mount it on the mounting bracket. Then mount the bracket on the TowerPro micro servo which has already installed on the chassis.

Step 5: Wiring Components

L298n motor driver:

+12V → Lipo battery (+)

GND → Lipo battery (- ) important: connect the GND to lipo battery (-) and to arduino board any GND pin

+5V → arduino Vin

In1 → arduino digital pin 7

In2 → arduino digital pin 6

In3 → arduino digital pin 5

In4 → arduino digital pin 4

OUT1 → Motor 1

OUT2 → Motor 1

OUT3 → Motor 2

OUT4 → Motor 2

Breadboard:

Connect two jumper wires to arduino board 5V and GND pins, then connect both wires to breadboard. now you can use this as +5V supply.

HC-SR04 Ultrasonic Sonar sensor:

VCC → breadboard +5V

Trig → arduino analog pin 1

Echo → arduino analog pin 2

GND → breadboard GND

TowerPro micro servo 9g:

orange wire → arduino digital pin 10

red wire → breadboard +5V

brown wire → breadboard GND


Step 6: Programming Arduino UNO

  1. Download and Install the Arduino Desktop IDE
  2. Download and paste NewPing library (Ultrasonic sensor function library) file to the Arduino libraries folder.
  3. Download and open obstacle_avoiding.ino
  4. Upload the code to the arduino board via a USB cable

Step 7: Power the Robot

Connect the Lipo battery to the L298n motor driver as follows:

Lipo battery (+) → +12V

Lipo battery (- ) → GND

Step 8: Great !!!

Now your robot is ready to avoid any obstacle....

I would be happy to answer any questions you have

email me: dnayantha88@gmail.com

search me on facebook and linkedin for more projects - Danusha nayantha

Thank You

Remote Control Contest 2017

Participated in the
Remote Control Contest 2017

Wheels Contest 2017

Participated in the
Wheels Contest 2017

Arduino Contest 2017

Participated in the
Arduino Contest 2017

2 People Made This Project!

Recommendations

  • LED Strip Speed Challenge

    LED Strip Speed Challenge
  • Sculpting Challenge

    Sculpting Challenge
  • Clocks Contest

    Clocks Contest

55 Discussions

0
Nayantha KGD
Nayantha KGD

Reply 12 days ago

Yes Sure!

1
stream8989S
stream8989S

3 months ago

hi. i'm new to arduino
i've already followed all the steps up there.
but when i tried to compile to coding. it say

Arduino: 1.8.10 (Windows 8.1), Board: "Arduino/Genuino Uno"
obstacle_avoiding:4:10: error: NewPing.h: No such file or directory
Multiple libraries were found for "Servo.h"
#include <NewPing.h> //Ultrasonic sensor function library. You must install this library
Used: C:\Program
^~~~~~~~~~~
compilation terminated.
exit status 1
NewPing.h: No such file or directory
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.


can you help me?
i've already download the NewPingLibrary and pu it in folder
C:/ProgramFiles/Arduino?libraries

thanks

0
sivaramalingam705
sivaramalingam705

Reply 12 days ago

Hi do you know how can we solve the problems

0
Balto
Balto

Question 3 months ago

Do you think it's possible to do it on a real car?

0
Nayantha KGD
Nayantha KGD

Answer 3 months ago

Not with this Ultrasonic sensor.

0
Balto
Balto

Reply 3 months ago

So, what components I could use in a real car?

0
KaziR6
KaziR6

Question 4 months ago

How do the project?

0
tharindun4
tharindun4

Question 4 months ago

i built this but sensor only moving left and right.wheels are not rotating ?

0
Nayantha KGD
Nayantha KGD

Answer 4 months ago

Check the motor driver connections again. It must be properly grounded (GND).

0
tharindun4
tharindun4

Reply 4 months ago

Im using following motor driver little bit different than yours. There are some jumpers on ot.do it have to d something with that.by the way gnd properly grounded

950181483-754186938.jpg
0
tharindun4
tharindun4

Reply 4 months ago

Module

950181483-754186938.jpg
0
yashekhanse
yashekhanse

Question 4 months ago

How is the Arduino board powered?

0
Nayantha KGD
Nayantha KGD

Answer 4 months ago

You can use separate battery to power the arduino but should be less than 12V
Connect + to arduino Vin and - to any GND.

Or if you have single battery (9-12V), connect it to motor driver 12V and GND pins. Then connect its 5v pin (here the motor driver 5v acts as an output) to arduino Vin and again motor driver GND to any arduino GND.

0
yashekhanse
yashekhanse

Question 4 months ago

what if the robot goes backward insted of forward? I mean, is there any way to identify the +ve and -ve terminals on the motors?

1
Nayantha KGD
Nayantha KGD

Answer 4 months ago

There is no +/- in motor. If the robot move backward instead of forward, just interchange the two wires of the motor.

0
dhanunjai miriyala
dhanunjai miriyala

Question 6 months ago on Introduction

i need code to stop the vehicle when the object is at a certain distance

0
Star Robatics
Star Robatics

Answer 6 months ago

Just get the distance via Ultrasonic sensor and by using if (distance == 20 ) { make all four digitalWrites to LOW}
Here 20 is your certain distance. Since im travelling, Sorry I can't write a code. But its simple, give it a try!

0
Suraj r¹
Suraj r¹

Question 8 months ago

Pls tell me where is the code