Team Members:
17BEC0051 - NITHIN THOTA
          17BEC0063 - K.V.S. GOURANGA
          17BEC0204 - S. VIKAS REDDY
          17BEC0257 - G. YASWANTH
             Report submitted for the
             Final Project Review of:
OBSTACLE AVOIDANCE VOICE CONTROLLED
          ROBOTIC VEHICLE
    Course Code: ECE 2010 – CONTROL SYSTEMS
                  Slot: F1+TF1
              Professor: RAJESH R
                        1
Table of contents:
S.no. Title                                        Page no.
1     Abstract                                     3
2     Introduction                                 3
      2.1. Our work                                4
3     System model
      3.1. Circuit diagram in proteus and          5
      hardware
      3.2. Hardware Components                     6
      3.3. Description of the components           7
4     Methodology                                  10
      4.1. Commands description                    11
5      Results and description                     11
      5.1. Hardware implementation                 11
      5.2. Hardware connections                    12
      5.3. Snapshots with figure description and   14
      inference
6     Conclusion                                   18
7     References                                   18
                              2
Abstract:
      This work is mainly based on Arduino, Motor driver and Bluetooth
module. Arduino is an open- source prototyping platform which is based
on easy-to-use hardware and software. Arduino makes use of an
ATmega328 microcontroller. Robotics has become a major part in our day
to day life and also it plays a vital role in the development of new
technology in the engineering field. This is a simple type of remote control
car, where the ordinary micro-controller has been replaced by Arduino
and the IR sensors have been replaced by the Bluetooth module. The
remote device to control this device can be any android or IOS mobile
phone. And in this we have also included the ultrasonic sensor which
detects any obstacle is present in front, if any it stops the car. This project
can be made use on a large scale for real time vehicles.
2.INTRODUCTION:
      Voice controlled robotic system is very beneficial in areas where
there is high risk for humans to enter. Voice controlled robotic system is
controlled through voice commands received via android device. The
integration of control unit with Bluetooth device is achieved using a
Bluetooth module to capture and read the voice commands. The robotic
vehicle operates as per the command received via android device, for this
Arduino is integrated in the system. The controlling device may be any
smart phone having an Android OS. The transmitter uses an android
application required for transmitting the data. The receiver end reads these
commands and interprets them into controlling the robotic vehicle. The
android device sends commands to move the vehicle in forward,
backward, right and left directions. After receiving the commands,
Arduino operates the motors in order to move the vehicle in four
directions. The communication between android device and receiver is
sent as serial communication data. Arduino program is designed to move
                                       3
the motor through a motor driver circuit as per the commands sent by
android device
2.1. OUR WORK:
      This project is controlling car not by using sensor or transmitter but
by using Bluetooth which is a very simple medium of communication in
the present day. The remote device which controls in this project is an
android device which has an inbuilt Bluetooth module. Through
Bluetooth we can connect two devices. Here we have inserted a Bluetooth
module which gets connected to the phone‘s Bluetooth, that allows us to
communicate and allows to take control over it. The main control of the
car is played by the Arduino UNO which is the micro-controller
ATMEGA32. Arduino has played a major role in the robotic section and
it had made it easier to convert digital and analog signal to physical
movements. This project is Bluetooth based because it gives us wider
range of control and more efficiency. It also gives us the advantage of
changing the remote anytime, so that we can use any android devices
including phones, tablets, computers. Physical barriers like walls, doors
does not effect in controlling the car. We have also included the ultrasonic
sensor which helps the bot to stop automatically when any obstacle is
present before it. An obstacle detector is added to protect the system from
obstacles on the way by using an ultrasonic sensor which is mounted on
the servo motor.
                                     4
3.1. Circuit Diagram: PROTEUS
              Fig1: circuit diagram in proteus without the ultrasonic sensor
Circuit in Hardware:
     Fig2: hardware implementation of the circuit diagram including ultrasonic sensor
                                            5
3.2. Hardware components:
•    Arduino UNO
•    Motor shield
•    Ultrasonic Sensor
•    Bluetooth Module (HC-05)
•    Servo Motor
•    Jumper Wires
•    Bo Motor 300 rpm
•    Car Kit
WHY ARDUINO?
•We have used Arduino because it is an open source device that can be
programmed through the operating system like Windows, Mac, Linux,
etc.
•The language used is understandable and easy.
•Arduino can be used by beginner in robotics to professionals.
•Modification of the program is easy.
                                    6
3.3. Description of the components:
  • Power Supply: A power supply component is an electronic
    component that supplies electric energy to an electrical load. The
    primary function of a power supply is to convert electrical energy to
    another form and due to this, power supplies are sometimes referred
    to as electric power converters.
  • Bluetooth module: It is wireless serial communication module
    which can be connected with a Micro-Controller to receive and send
    data when connected with other Bluetooth devices.
  • Arduino-UNO: Arduino is an open-source prototyping platform
    based on hardware and software. Arduino consists of both a physical
    programmable circuit board and software, IDE (Integrated
    Development Environment) that runs on your computer, used to
    write and upload computer code to the physical board. It has 14
    digital input/output pins (6 of which can be used as PWM outputs),
    6 as analog inputs, a 16 MHz quartz crystal, a USB connection, a
    power jack, an ICSP header and a reset button
                                   7
• Motor driver: It is a small circuit that drives the motor driving IC,
  and can control two motors at the same time. It controls the motor
  speed by pulse width modulation (PMW). Once the device is all set
  up the Android Device require an application called ―CAR
  BLUETOOTH RC which sends the control command to the
  Bluetooth Module connected with the Arduino. The Arduino
  receives these commands and transfers them to the Motor Driver
  from the digital input-output pins of the Arduino. The motor driver
  has two DC motor connected to the output terminals and it runs the
  two motor according to the control commands sent by the Arduino.
  The motor driver can run a single motor or both the motor at the
  same time in same or different direction which gives the user an
  advantage to run the motor in any direction.
        Motor driver is a double H bridge drive chip - L298N with
  voltage range of 5V-35V and current range of 0-36mA. Maximum
  power consumption is 25W, a built-in 5v power supply, when the
  driving voltage is 7v-35v
                                 8
• Ultrasonic Sensor: Ultrasonic sensors “are based on the
  measurement of the properties of acoustic waves with frequencies
  above the human audible range,” often at roughly 40kHz. They
  typically operate by generating a high-frequency pulse of sound, and
  then receiving and evaluating the properties of the echo pulse.
  Sensors calculate the time interval between sending the signal and
  receiving the echo to determine the distance to an object.
        The Ultrasonic sensor is mounted on servomotor which
  provides desired rotation to sensor to increase range of sensor
  which is connected to Arduino UNO board
• Servo Motor: A servomotor is a rotary actuator or linear actuator
  that allows for precise control of angular or linear position, velocity
  and acceleration. It consists of a suitable motor coupled to a sensor
  for position feedback. It also requires a relatively sophisticated
  controller, often a dedicated module designed specifically for use
  with servomotors.
                                  9
4.Methodology:
      As show in the diagram, two rechargeable batteries as the power
supply is used that is connected to motor driver and Arduino respectively.
When the circuit is energized, first we will have to pair the android phone
with the Bluetooth module through the mobile’s Bluetooth setting the
default password of the Bluetooth module will be ‘1234’. Once the phone
gets paired open the application ‘CAR BLUETOOTH RC’ which we can
download from Google play store. After opening the application there will
be set of control displayed on the screen. If the device has not been
connected the control will be locked meaning the control buttons cannot
be pressed. When the car is at its initial position the application
automatically sends the command S meaning stop. The stop command is
put in a loop that keeps on repeating throughout the execution of the
program. As the user presses any control buttons the stop command will
be interrupted by the move forward, backward, right, left, depending on
the user and the car moves like wise. The program is designed in such a
manner that we can also give multiple commands at the same time i.e.
move front and turn right or left and same with the backward motion. The
Arduino also stores the program in its memory so it does not require re-
uploading of Program.
      The IN1, IN2, IN3 and IN4 are the inputs for the motor driver that
receives command from the Arduino for the two motors respectively. The
motor driver should be grounded with the Arduino ground pin (GND).
The motor driver will require minimum of 6v and above to run, any
voltage below 6v the motor remains off. The RXD pin of the Bluetooth
module is for receiving commands from the Android devices and sends to
Arduino through this pin and the TXD is for transmitting or sending dates
or information. It is supplied with a 5v dc source from the Arduino 5v pin.
The main part of the above circuit diagram is Arduino UNO. The power
supply section is very important. It should provide constant voltage to the
devices for successful working of the project.
                                    10
4.1. Commands description:
5. Results and description:
5.1. Hardware Implementation:
     Fig3: hardware implementation of the circuit diagram including ultrasonic sensor
                                           11
5.2. Hardware connections:
H bridge module connection to Arduino:
Gnd to Gnd
5v to 5v pin on Arduino
Left Motor + to Arduino 6 pin
Left Motor - to Arduino 5 pin
Right Motor + to Arduino 10 pin
Right Motor - to Arduino 9 pin
Bluetooth module to Arduino:
Vcc to 5v
Gnd to Gnd
Tx to Rx
Rx to Tx
State to A0 pin
Servo Connection:
Vcc to Arduino 5v pin
Gnd to Gnd
Signal Pin to Arduino 7 pin
                                  12
Ultrasonic Sensor Connection :
Vcc to 5v
Gnd to Gnd
Tring to Arduino 3 pin
Echo to Arduino 2 pin
5.3. Snapshots with figure description and inference:
Case 1:
            Fig4: Snapshot in proteus after sending command F to move car forward
INFERENCE: When we send the command F in our phone app or virtual
terminal after pairing our phone with the Bluetooth module, then the motor driver
receives command from the Arduino for the two motors to move in forward direction
                                             13
Case 2:
          Fig5: Snapshot in proteus after sending command B to move car Backward
INFERENCE: When we send the command B in our phone app or
virtual terminal after pairing our phone with the Bluetooth module, then
the motor driver receives the command from the Arduino for the two
motors to move in Backward direction
                                           14
Case 3:
          Fig6: Snapshot in proteus after sending command L to move car Left
INFERENCE: When we send the command L in our phone app or
virtual terminal after pairing our phone with the Bluetooth module, then
the motor driver receives the command from the Arduino for the right
motor to move in forward direction and left motor to move in backward
direction.
                                         15
Case 4:
          Fig7: Snapshot in proteus after sending command R to move car right
INFERENCE: When we send the command R in our phone app or
virtual terminal after pairing our phone with the Bluetooth module, then
the motor driver receives the command from the Arduino for the right
motor to move in Backward direction and left motor to move in Forward
direction.
                                          16
Case 5:
            Fig5: Snapshot in proteus after sending command S to stop car
INFERENCE: When we send the command B in our phone app or
virtual terminal after pairing our phone with the Bluetooth module, then
the motor driver receives command from the Arduino for the two motors
to stop.
ARDUINO CODE:
https://drive.google.com/open?id=1DfJUpiXE1sAbOjvIzn1E18shdN98
DdXJ
                                         17
6. CONCLUSION:
      The voice controlling commands are successfully transmitted via
Bluetooth technology and on reception; the desired operations
successfully take place. This project reduces human efforts at places or
situations where human interventions are difficult. Such systems can be
brought into use at places such as industries, military and defense,
research purposes, etc.
7.REFERENCES
[1] International Journal of New Technology and Research (IJNTR)
ISSN: 2454-4116, Volume-3, Issue-4, April 2017 Pages 92-94
[2] https://www.instructables.com/id/Voice-Control-Obstacle-
Avoidance-Arduino-Robot-Car/
[3] https://electronicsforu.com/electronics-projects/voice-controlled-
robotic-car
[4] http://www.amazon.in/Campus-Component-Bluetooth-Chip-HC/
[5] https://www.google.co.in/motordriverL298N/
[6] https://www.google.co.in/ultrasonicsensor/
[7] https://www.google.co.in/servomotor/
[8] https://www.instructables.com/id/Autonomous-controlled car/
[9] https://www.google.co.in/arduinouno/
                                    18