You are on page 1of 20

Wi-Fi Control Car

A PROJECT REPORT

Submitted by

Dhruv Gor, Karan Mehta & Aditya Dave

In fulfillment for the award of the degree

of

BACHELOR OF ENGINEERING
in

Electronics Engineering Department

Birla Vishwakarma Mahavidyalaya


(BVM), Anand, Gujarat

Gujarat Technological University, Ahmedabad

December 2011

1
Birla Vishwakarma Mahavidyalaya (BVM)
Electronics Department
2011

CERTIFICATE
Date:

This is to certify that Mr. DHRUV GOR_ID No. 20EL100, KARAN MEHTA  ID No
20EL098 and ADITYA DAVE_ID No. 20EL099 of B.Tech. (Electronics Engineering)
SEM-IV has satisfactorily completed the term work of the subject Mini Project (2EL31)
prescribed by BVM an Autonomous Institution during the Academic Year 2022-2023.

Guide: Prof. Mahendra Prajapati

Head of the Department Lab Teacher


ABSTRACT

 When this WIFI-controlled car is powered on, the Nodemcu board


connects to the Blynk cloud via a WiFi connection. Then, when you press
the Commands (Forward, Backward, Left, Right) buttons on the interface
created in the Blynk app, those values will be sent to the Nodemcu board
via the Blynk cloud.

 Then, the gear motors rotate according to those values. The L298 Motor
driver board is used for this. Also, the speed of these motors can be
controlled by the slider created in the Blynk app.
OBJECTIVES

 To make a Wifi Control Car using Nodemcu ESP8266 board with


Blynk App.
INDEX

1. Introduction

2. Components Required

3. Procedure and Working

4. Circuit Diagram

5. Component Description

6. Blynk Arduino Source Code

7. Advantages

8. Disadvantages

9. Application

10. Future Scope & Conclusion

11. References
INTRODUCTION

 ESP8266 Car Control using Android App and WiFi and this is a very
interesting project, in which we will see how to make a robot car
controlled by a Smartphone. This Robot car can pair up with any
smartphone that will be used as a transmitter or few call it remote.

 This Car is equipped with 4 gear motors that provide this mini beast the
required torque.

We will look at the highlighting features of this car:

 This is Controlled by Wi-Fi hence this device is functional with any


smartphone or computer with Wi-Fi capability
 As this uses lithium-ion battery it has the capacity of 4000mah which is
sufficient for long time working
 Speed of Motors can be changed as per the requirements
COMPONENTS REQUIRED

1. Nodemcu ESP8266

2. Lithium-ion/ DC 9V batteries

3. Battery case

4. L298N Motor driver

5. BO motors(4 pieces)

6. Rubber wheels(4 pieces)

7. Jumper wires

8. Small wooden pieces for building frame (10x20cm)


PROCEDURE AND WORKING:

 Place BO motors on the corners of wooden board and couple them with gel
type super glue, I would recommend using this as it does not leave any
sticky mess between the surfaces.

 I do not recommend using hot glue as it weakens the plastic body and the
adhesive strength is not too high.

 Once we have the motor ready we can start to make connections.

 The logic here is very simple 2 motors run on same connections as we are
making an 4WD car.

 If you are not sure of exact terminals as in most of the cases motors + and
– are not given because they matter only in the direction of rotation you
can change them accordingly.

 You can attach a wheel and connect battery so that you can mark the
directions before soldering the wires.

 Once the circuit is complete we can add wheels to the motor shaft.

 Now, Open the blynk app , let’s set up these buttons. First, click the up
button and enter the button name as you like. After, change the PIN value
to “virtual V0”. Change the edge type to “PILL” mode.
 Second, click the down button and enter the button name as you like.
After, change the PIN value to “virtual V7”. Change the edge type to
“PILL” mode.

 Third, click the left button and enter the button name as you like. After,
change the PIN value to “virtual V8”. Change the edge type to “PILL”
mode.

 Last, click the right button and enter the button name as you like. After,
change the PIN value to “virtual V9”. Change the edge type to “PILL”
mode
CIRCUIT DIAGRAM
COMPONENTS DESCRIPTION

L298 Motor Driver

 L298N motor driver is necessary to drive any motors via external power
supply.

 This is because power from the Microcontroller board is not sufficient


enough to driver 4 motors while with the drivers you can easily connect
such motors.

 What we are using is a DUAL H bridge driver, it requires 12v dc supply


and provides 5v supply that runs control board and motors.

 It has 4 pins for signal input from the board that gives directions for motor.

 Add jumper wires between Motor driver and breadboard, Just follow this
Circuit connection.
 D1 ->Input 1
 D2 ->Input 2
 D3 -> Input 3
 D4 ->Input 4
 This completes circuit, Don’t power this until you add some codes.
Nodemcu ESP8266

 The NodeMCU (node Microcontroller unit) is an open-source software


and hardware development environment built around an inexpensive
System-on-a-Chip (SoC) called the ESP8266. The ESP8266, designed and
manufactured by Espressif Systems, contains the crucial elements of a
computer: CPU, RAM, networking (WiFi), and even a modern operating
system and SDK. That makes it an excellent choice for Internet of Things
(IoT) projects of all kinds.

 The Arduino project created an open-source hardware design and software


SDK for their versatile IoT controller. Similar to NodeMCU, the Arduino
hardware is a microcontroller board with a USB connector, LED lights,
and standard data pins. It also defines standard interfaces to interact with
sensors or other boards. But unlike NodeMCU, the Arduino board can
have different types of CPU chips (typically an ARM or Intel x86 chip)
with memory chips, and a variety of programming environments. There is
an Arduino reference design for the ESP8266 chip as well. However, the
flexibility of Arduino also means significant variations across different
vendors. For example, most Arduino boards do not have WiFi capabilities,
and some even have a serial data port instead of a USB port.
BLYNK ARDUINO CODE FOR WIFI CAR

#define BLYNK_PRINT Serial


#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

#define IN1 D1
#define IN2 D2
#define IN3 D3
#define IN4 D4
// Go to the Project Settings (nut icon).
char auth[] = "t8gFgu9bJIoSJbeepIbItnksb9gUmQeW";

// Your WiFi credentials.


// Set password to "" for open networks.
char ssid[] = "123456789";
char pass[] = "123456789";

void setup()
{

Serial.begin(115200);

Blynk.begin(auth, ssid, pass);


pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);

Blynk.begin(auth, ssid, pass);

void loop()
{
// waits 15ms for the servo to reach the position
Blynk.run();
}
//Robot starts
BLYNK_WRITE(V7)
{
int pinValue7 = param.asInt(); // assigning incoming value from pin V1 to
a variable
Serial.println(pinValue7);

if(pinValue7==HIGH)
{
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
Serial.println("Forward");
}
else
{

digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
Serial.println("Stop");

}
}

BLYNK_WRITE(V8)
{
int pinValue8 = param.asInt(); // assigning incoming value from pin V2 to
a variable
Serial.println(pinValue8);
if(pinValue8==HIGH)
{
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
Serial.println("Backward");

}
else
{
digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
Serial.println("Stop");

}
}
BLYNK_WRITE(V9)
{
int pinValue9 = param.asInt(); // assigning incoming value from pin V3 to
a variable
Serial.println(pinValue9);
if(pinValue9==HIGH)
{
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
Serial.println("Right");

}
else
{

digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
Serial.println("Stop");

}
}
BLYNK_WRITE(V0)
{
int pinValue0 = param.asInt(); // assigning incoming value from pin V4 to
a variable
Serial.println(pinValue0);
if(pinValue0==HIGH)
{
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
Serial.println("Left");

}
else
{

digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
Serial.println("Stop");
}

}
ADVANTAGES

 It can easily control through smartphone via Blynk app.


 It is faster and easier than Bluetooth module.
 Only 2 DC batteries or 1 Li-ion battery would be enough for running 4
motors.
 ESP8266 has high sensitivity and connectivity.
 By using a motor driver we easily use 4 motors at one time.

DISADVANTAGES
 As it is Wifi connected so it needs a faster and more stable connection for
running a car
 It consumes high battery so it drain very fast.
APPLICATIONS

 Used for low-level surveillance applications.

 Used in transportation of small things like equipments in the campus


area of the industry or a company.

CONCLUSION

 The Internet of Things (IoT) is consisting of physical devices which can be


given an IP address and can be uniquely identified. It can be defined on the
basis of three types. In this paper IoT is used to control electric vehicle for
parameters like acceleration, brake, and steering, and also for this Wi-Fi
enabled microcontroller is used to provide GPS coordinates for updated
position of vehicle after an interval of every 5000 milliseconds and display
images and live stream of video.

REFERENCES

 https://www.ijsr.net

 https://srituhobby.com/how-to-make-a-wifi-controlled-car-using-
nodemcu-and-blynk-app-step-by-step-instructions

You might also like