IJCRT2207414 Mini Project Reasearch Paper
IJCRT2207414 Mini Project Reasearch Paper
org © 2022 IJCRT | Volume 10, Issue 7 July 2022 | ISSN: 2320-2882
Abstract: Arduino car contains Arduino microcontroller with basic mobility features. The Program contains instructions between
android controller car and microcontroller (ATmega328). Android mobile Controller uses different mobile sensors to supervise
motions. An appropriate program is compiled into Arduino microprocessor by a software known as Arduino (IDE) 1.0 to interact
with the android controller. The obstacle avoiding car uses ultrasonic sensors to locate walls using echo Locations. The 4 DC motors
are powered by a 3.7V battery and are driven by a motor drive which is instructed by Arduino uno. The car moves forward until it
sees a wall less than 35cm (about 1.15 ft) away. If this Condition is met the car backs up and the servo motor rotates 90 degrees to
the Left for the sensor to scan how far away the left wall is. The servo motor then Rotates 180 degree to the right to scan the distance
of the right wall.in Bluetooth controlled we use an app that has similar buttons or instructions as that of a remote by pressing each
of the buttons the car can be controlled. This app contains an accelerometer that can control the speed of the car. Bluetooth after
giving instructions to Arduino for various actions through interface via Bluetooth module
Index Terms –Arduino uno, Ultrasonic sensor, Bluetooth, Obstacle, Arduino, App, Avoidance, Android.
I. INTRODUCTION
Robots are more efficient as they can perform many autonomous functions in many fields. This project is built using ultrasonic
sensors for its movement. This performs tasks according to human guidance as specified. The Arduino obstacle avoiding car uses
“HC-SR04 ultra sonic sensor module” that is mounted on top of a 9gm servo motor to locate any objects that are present in front
of the car. the 4 DC motor are powered by l293d motor drive. the car moves forward until it sees any obstacle that is less than 35cm
away. thus, if any obstacle is detected the servo rotates to 90degrees to the left to locate any obstacle by sending ultra-sonic waves.
if the obstacle is detected the servo rotates to 180degrees right to scan any obstacle if present. If the distance of the object i.e.,
obstacle that is in left is greater than right the car turns 90 degrees to the left or vice versa. the ultra-sonic sensor sends sound waves
for every 10 microseconds. if any obstruction is present the sensor receives the echo therefore the distance between sensor and
object is calculated. therefore, the car creates its own path avoiding all the objects that are appearing in front of it. this project is
designed to navigate in unknown conditions where human interaction with the environment can be dangerous.
In Bluetooth controlled car we use “HC-05 BLUETOOTH MODULE”, we already know that Bluetooth is used for wireless
communication between two devices. at first, we pair Bluetooth module with android through an app called “BLUETOOTH RC
CONTROL.” Now while doing different operation such as when we are pressing any keys it sends the data value to the Bluetooth
module. We code in such a way that certain conditions for the car to go in certain direction as given by the code hence the car will
perform the given functions as specified in the code. This module is important as it is used for communication between two devices.
This is controlled by an android app instead of a traditional remote control.
MOTOR DRIVE- the l293d motor drive is designed in such way that it fits into Arduino uno r3. This particularly
used to drive the DC motors, Leds etc. This is a shield usually used to drive 2 to 6 dc motors, a wire stepper motor,
and a set of two pins to drive the servo.it is integrated to adopt high voltage and high current at four channel motor
drive to accept load such as relay solenoid, DC motors and four wire stepper motor and switching power transistor.
this is suitable for switching application's up to 50hz.the motor driver shield is placed on uno board through which all
the sensors and motors are connected. The supply for the motor drive is usually given in between 5v to 36v.
ULTRA SONIC – the ultra-sonic sensor HC-SR04 uses SONAR (sound navigation and ranging)
technology. To determine distance of the object. The device measures the distance of an object by
emitting ultra-sonic waves and converts the reflected wave into electrical signal. the ultra-sonic
sensor travels more than the speed of sound human can hear. The ultra-sonic sensors have two main
components first one is a transmitter that emits sound using piezoelectric crystals and second one is
receiver which encounters sound waves after the reflection from the object.
BLUETOOTH MODULE –Bluetooth module is used for wireless communication. This was designed to
replace wire cables. This uses serial communication with electronics. This module is usually used to
connect small devices. to be operated within 4-6v of power supply. It supports 9600, 19200, 34800,
57600 baud rates. This can be operated in master-slave mode which means it will neither send nor
receive external data.
SERVO MOTOR- this servo motor is tiny and lightweight with high output power. It rotates 180
degrees, 90 degrees to the right and 90 degrees to the left. This servo is designed to work with
control systems. It provides good torque, holding power and faster updates with response to
external force. However, these are dead cheap and serve the purpose.
GEAR MOTOR -gear motor is a component that adjusts to the speed mechanism of the motor,
thus leading them to operate at a certain speed. These motors deliver high torque at low speeds,
as gear head functions as a torque multiplier and can allow small motors to generate higher speeds.
This has a combination of gear box and electric motor.
ROBO WHEELS-these are used to navigate in unknown environmental conditions that are paired with
gear motors.
JUMPER WIRES- jumper is an electric cable with connector end. This is normally used to connect
the components on bread board, test circuits, and connecting the components on embedded chip.
Each end is fitted according to the requirements. By using them we can avoid soldering as these
come with several types of endings and colors.
ARDUINO - Arduino is an open-source software that makes it easy to write code and upload it to
the board. This software can be used with any Arduino boards. We write the codes using Arduino
software and these are next compiled into the Arduino boards. This ide software is applicable
to windows, Linux, mac, os x. The programming languages that are used are c and c++. After
writing the code the upload button is used to compile the code into the Arduino board using an
usb cable that is connected to your computer and Arduino board. This has many ranges of
programmable printed circuit boards(pcb’s). These boards can read both analog and digital
input signals. The board that we use can be controlled by sending a set of requirements of
instructions to the microcontroller on the board via Arduino software
BLUETOOTH CONTROL-this application is designed to be used with a modified car. This app allows
you to control a microcontroller and Bluetooth that is fitted with your Rc car. We control the Rc
car with either virtual buttons or phones accelerometer. The slider in the app allows us to
control the speed of the car.
Step2-place motor drive l293d over Arduino uno and glue it on the chassis. Attach the dc motors to m1, m2, m3, m4 of the motor
drive.
Step3- place the ultra-sonic sensor above servo motor with the help of ultrasonic holder. Place the ultrasonic sensor vcc to vcc of
motor drive, trig to A1, echo to A0, and gnd(ground) to gnd of motor drive by using jumper wires. Now connect the servo motor to
ser1 of the drive by using jumper wires.
Step4- solder RXD, TXD pin of Bluetooth module to pin number 1,0 (Aref pin) of drive. Gnd, vcc of Bluetooth to gnd, vcc of driver
shield.
Step5-now attach battery with switch to Ext power of the motor, a supply of 3.7 volts to 9 volts.
Step6-connect board and your computer by a cable, select board and board and then remove rx,tx pins of the Bluetooth, compile
the given code to Arduino uno board.
Step6-for obstacle avoidance remove the function comment (// before obstacle () )
Step7-for Bluetooth control remove the function comment (// before Bluetooth () ). again, remove rx,tx pins of Bluetooth now
compile the code once again from your laptop to Arduino board. Connect Bluetooth of your android to car and control by using
Bluetooth Rc control app. If not, you can pair another Arduino uno to avoid reuploading the program.
The code for the project (note- install library servo.h from GitHub)
#include <AFMotor.h>
#define Trig A1
#define motor 10
IJCRT2207414 International Journal of Creative Research Thoughts (IJCRT) www.ijcrt.org d157
www.ijcrt.org © 2022 IJCRT | Volume 10, Issue 7 July 2022 | ISSN: 2320-2882
#define Speed 170
int distance;
int Left;
int Right;
int L = 0;
int R = 0;
int L1 = 0;
int R1 = 0;
Servo servo; //objects are created for servo library and AFmotor library
AF_DCMotor M1(1);
AF_DCMotor M2(2);
AF_DCMotor M3(3);
AF_DCMotor M4(4);
void setup() { //ultra-sonic pins are set to input and output. Gear motors have been included.
Serial.begin(9600);
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
servo.attach(motor);
M1.setSpeed(Speed);
M2.setSpeed(Speed);
M3.setSpeed(Speed);
M4.setSpeed(Speed);
void loop() { //in the loop functions, the three main functions are included. We can run functions one by one
//voicecontrol();
if (Serial.available() > 0) {
value = Serial.read();
Serial.println(value);
}
IJCRT2207414 International Journal of Creative Research Thoughts (IJCRT) www.ijcrt.org d158
www.ijcrt.org © 2022 IJCRT | Volume 10, Issue 7 July 2022 | ISSN: 2320-2882
if (value == 'F') {
forward();
backward();
left();
right();
Stop();
distance = ultrasonic();
Stop();
backward();
delay(100);
Stop();
L = leftsee();
servo.write(spoint);
delay(800);
R = rightsee();
servo.write(spoint);
if (L < R) {
right();
delay(500);
Stop();
delay(200);
} else if (L > R) {
left();
delay(500);
Stop();
delay(200);
}
IJCRT2207414 International Journal of Creative Research Thoughts (IJCRT) www.ijcrt.org d159
www.ijcrt.org © 2022 IJCRT | Volume 10, Issue 7 July 2022 | ISSN: 2320-2882
} else {
forward();
void voicecontrol() {
if (Serial.available() > 0) {
value = Serial.read();
Serial.println(value);
if (value == '^') {
forward();
backward();
L = leftsee();
servo.write(spoint);
if (L >= 10 ) {
left();
delay(500);
Stop();
Stop();
R = rightsee();
servo.write(spoint);
if (R >= 10 ) {
right();
delay(500);
Stop();
Stop();
Stop(); } } }
digitalWrite(Trig, LOW);
delayMicroseconds(4);
digitalWrite(Trig, HIGH);
delayMicroseconds(10);
digitalWrite(Trig, LOW);
return cm;
void forward() {
M1.run(FORWARD);
M2.run(FORWARD);
M3.run(FORWARD);
M4.run(FORWARD);
void backward() {
M1.run(BACKWARD);
M2.run(BACKWARD);
M3.run(BACKWARD);
M4.run(BACKWARD);
void right() {
M1.run(BACKWARD);
M2.run(BACKWARD);
M3.run(FORWARD);
M4.run (FORWARD);
void left() {
M1.run(FORWARD);
M2.run(FORWARD);
M3.run(BACKWARD);
M4.run(BACKWARD);
M1.run(RELEASE);
M2.run(RELEASE);
M3.run(RELEASE);
M4.run(RELEASE);
int rightsee() {
servo.write(20);
delay(800);
Left = ultrasonic();
return Left;
int leftsee() {
servo.write(180);
delay(800);
Right = ultrasonic();
return Right;
Working
The robot in this project detects obstacles with the help of ultra-sonic sensors. This measures the distance of the surrounding object
with the help of ultra-sonic sensors to achieve desired movements. The motors are connected through motor driver IC to Arduino.
This robot is designed to detect objects within a specified distance. The object that is found in front of car is termed as an obstacle,
after detecting any of those obstacles the robot changes its direction. The sensor is placed above the servo motor facing in front.
thus, if any object detected the signal is sent to the uno board. Further Arduino instructs servo motor for the change of direction.
Servo changes the direction as per the instruction given by Arduino. The driver will rotate the motors m3 and m4 in forward
direction and m1, m2 in reverse direction. The ultra-sonic sensors send ultra-sonic waves at 300 meter (about 984.25 ft) per second.
These waves travel in the air, hit the object, and return to the receiver of the ultra-sonic sensor. The distance between object and
sensor is calculated. To calculate the distance between object and sensor, the sensor measures the time it takes between emission of
waves by the transmitter to its contact with receiver. The formula for calculation of distance is given by D=1\2 T*C (where D is
distance, T is time, and C is speed of sound I.e., 343 meter per second). Similarly, every time whenever the object is found to be in
the path it will detect and move in the direction toward the left or right side.
After the code for Bluetooth is compiled. Connect the Bluetooth of your android to HC-05 and open the app. The android phone
gets paired with the app. Once Bluetooth gets connected, the app screen opens on your phone. The button which you press, the car
follows the same direction. The program is designed in such a manner that when you press the button front and right it moves
diagonally towards the right side, similarly when you press the button back and front it moves diagonally opposite direction to the
right side. We have paired with another Arduino uno board to avoid re-uploading the program. The RXD pin of Bluetooth receives
commands from android and sends to Arduino and sends signal through the TXD pin for transmitting the information.
2.within no time the distance between the obstacle is found, change in direction takes place to create its own path.
4.make use of Bluetooth connectivity and to understand the different modes of operation and communication with different micro
controller board
Advantages
2.this technology can be used for many household purposes like vacuum cleaners, in vehicle technology for back sonar.
5.no fear in losing the remote control, as we use download remote from play store.
Conclusion
With the combination of ultra-sonic sensor and Bluetooth module the car is designed to have two features. This technology can be
used for many other applications. By using the Arduino, we convert digital signals into physical work. No worries of code getting
erased once the code compiled into boards. This project is built on Arduino platform for data processing to communicate with the
robot and guiding the robot. When a robot is placed in an unknown environmental condition the robot moves freely creating its own
path. And the robot is controlled using Bluetooth within a 50 ft radius.
Result
The result is obtained for both obstacle avoidance and Bluetooth control. The robot moves forward if any obstacle detected the
robot turns 90 degrees left or right, when there Is no obstacle, the robot moves forward direction. The robot follows the instructions
as given by the Bluetooth module and goes to the given direction provided by the instructor.
Reference
https://issuu.com/irjet/docs/irjet-v3i257
https://www.slideshare.net/shubhamthakur614/final-report-obstacle-avoiding-roboat
https://veteranlarligi.org/kdyo.aspx?cname=bluetooth+controlled+robot+using+android+mobile+project+report&cid=26
https://pt.slideshare.net/irjetjournal/irjet-multifeatured-android-controlled-smart-car