roboin.in@gmail.com
(91) 9830068336

Obstacle Avoiding Robotic Car

Obstacle Avoiding Robotic Car

In this project we will explain how to design and develop obstacle avoiding Robotic car using Arduino uno Adafruit Motor Shield and Ultrasonic sensor , DC Motor and Servo Motor. Obstacle Avoiding Robot is an intelligent device which can automatically sense the obstacle in front of it and avoid them by turning itself 1st backward and then left or right according to the clear path.

  • This Robot can navigate in unknown environment by avoiding collisions
  • Ultrasonic sensor is used to sense the obstacles between robot & obstacle
  • No Manual intervention is required and Robot can move at its own
  • Motor Shield used has inbuilt motor driver for DC and Servo motor
  • Two types of Motors DC and Servo motor used in same application

Obstacle avoidance is one of the most important aspects of Robotic car and this has show in this project.

img

Obstacle Avoiding Robotic Car

Hardware Requirement

  • Microcontroller: Arduino Uno board, USB Cable
  • Motor driver: Adafruit Motor Shield
  • Motor: DC 3-6v BO Gear Motor & Servo Motor
  • Sensor: HC-SR04 Ultrasonic Sensor
  • Receiver: HC-05 Bluetooth module
  • External Power: Battery - 9V
  • Robot Chassis
  • img

    Hardware component

    Software Requirement

  • Arduino IDE
  • Hardware Specification

    Arduino Uno

    The Arduino Uno is a micro controller board which is based on the ATmega328. Arduino Uno have 14 digital input or output pins(where 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz ceramic resonator, a USB connection, a power jack, an ICSP header and a reset button. It have everything needed to support the microcontroller, you need to simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.

    img

    Arduino UNO

    Features

  • Easy application programming using open source IDE
  • Easy to learn Microcontroller using Arduino boards
  • 256k Flash
  • Easy application programming using open source IDE
  • Ready Library for most of sensors and application modules
  • Specification

  • ATmega328 Controller
  • Digital IO 13
  • PWM Channel 6
  • Working Freq. 16MHz
  • DC current / IO 40mA
  • DC current / IO 50mA (3.3V)
  • Input Voltage 6V to 20V DC
  • Flash 32Kb
  • SRAM 2Kb
  • EEPROM 1Kb
  • Adafruit Motor Shield

    The Adafruit Motor Shield is a great and quick way to control DC motors, servos or even stepper motors. It has the capability of controlling up to 2 stepper motors, 4 DCmotors. and 2 servos.

    img

    Adafruit Motor Shield

    Specification

  • 2 connections for 5V 'hobby' servos connected to the Arduino's high-resolution dedicated timer - no jitter!
  • 4 H-Bridges: TB6612 chipset provides 1.2A per bridge (3A for brief 20ms peaks) with thermal shutdown protection, internal kickback protection diodes. Can run motors on 4.5VDC to 13.5VDC.
  • Up to 4 bi-directional DC motors with individual 8-bit speed selection (so, about 0.5% resolution)
  • Motors automatically disabled on power-up
  • Big terminal block connectors to easily hook up wires (18-26AWG) and power
  • Arduino reset button brought up top
  • Polarity protected 2-pin terminal block and jumper to connect external power, for separate logic/motor supplies
  • Tested compatible with Arduino UNO, Leonardo, ADK/Mega R3, Diecimila & Duemilanove. Works with Due with 3.3v logic jumper. Works with Mega/ADK R2 and earlier with 2 wire jumpers.
  • 5v or 3.3v compatible logic levels - jumper configurable
  • DC 3-6v BO Gear Motor with Plastic Tire Wheel

    A DC Geared DC motor is a simple DC motor with gear box attached to it

    img

    DC 3-6v BO Gear Motor with Plastic Tire Wheel

    Features

  • Center hole: 5.3MM x 3.66MM
  • Wheel size: 65 x 26mm
  • Specification

  • Voltage: DC 3V-6V
  • Current: 100 MA-120MA
  • Reduction rate: 48: 1
  • RPM (With tire): 100-240
  • Tire Diameter: 65mm
  • Car Speed(M/minute): 20-48
  • Motor Weight (g): 29/each
  • Motor Size: 70mm X 22mm X 18mm
  • Noise: <65dB
  • Servo motor

    A servo motor is an electrical device which can push or rotate an object with great precision. If you want to rotate and object at some specific angles or distance, then you use servo motor. It is just made up of simple motor which run through servo mechanism.

    img

    Servo Motor

    Hardware Features TowerPro SG-90

  • Operating Voltage is +5V typically
  • Torque: 2.5kg/cm
  • Operating speed is 0.1s/60°
  • Gear Type: Plastic
  • Rotation : 0°-180°
  • Weight of motor : 9gm
  • Package includes gear horns and screws/li>

    How to use a Servo Motor

    To make this motor rotate, we have to power the motor with +5V using the Red and Brown wire and send PWM signals to the Orange colour wire. Hence we need something that could generate PWM signals to make this motor work, this something could be anything like a 555 Timer or other Microcontroller platforms like Arduino, PIC, ARM or even a microprocessor like Raspberry Pie. Now, how to control the direction of the motor? To understand that let us look at the picture given in the datasheet.
  • img

    Direction Control

    From the picture we can understand that the PWM signal produced should have a frequency of 50Hz that is the PWM period should be 20ms. Out of which the On-Time can vary from 1ms to 2ms. So when the on-time is 1ms the motor will be in 0° and when 1.5ms the motor will be 90°, similarly when it is 2ms it will be 180°. So, by varying the on-time from 1ms to 2ms the motor can be controlled from 0° to 180°

    Application

  • Used as actuators in many robots like Biped Robot, Hexapod, robotic arm etc..
  • Commonly used for steering system in RC toys
  • Robots where position control is required without feedback
  • Less weight hence used in multi DOF robots like humanoid robots
  • Ultrasonic sensor

  • As the name indicates, ultrasonic sensors measure distance by using ultrasonic waves. The sensor head emits an ultrasonic wave and receives the wave reflected back from the target. Ultrasonic Sensors measure the distance to the target by measuring the time between the emission and reception.
  • img

    Ultrasonic sensor

  • An optical sensor has a transmitter and receiver, whereas an ultrasonic sensor uses a single ultrasonic element for both emission and reception. In a reflective model ultrasonic sensor, a single oscillator emits and receives ultrasonic waves alternately. This enables miniaturization of the sensor head.
  • The distance can be calculated with the following formula: Distance L = 1/2 × T × C
  • where L is the distance, T is the time between the emission and reception, and C is the sonic speed. (The value is multiplied by 1/2 because T is the time for go-and-return distance.) img

    Distance Calculation

    Robot Chassis

    You can use any Robot Chassis availble in the market to mount all the parts use in this project

    img

    Robot Chassis

    Circuit Diagram

    img

    Circuit Diagram Mobile Control Robotic Car

    Limitations

  • As the range of the Bluetooth Communication is limited (a maximum of 10 meters for class 2 devices for example) the control range of Bluetooth Controlled Robot is also limited.
  • Make sure that sufficient power is provided to all the modules, especially the Bluetooth Module. If the power is not sufficient, even though the Bluetooth Module powers on, it cannot transmit data or cannot be paired with other Bluetooth devices.
  • Application

  • Low range Mobile Surveillance Devices
  • Military Applications (no human intervention)
  • Assistive devices (like wheelchairs)
  • Home automation
  • Comment Section

    Please Comment about this project