Description:
It is just a simple RC Car with Motors and Control Board which will be controlled and moved by an Application known as Blynk through WiFi.
Circuit Diagram:
Components:
SR. NO. | COMPONENT | PINOUT DIAGRAM | BUY |
---|---|---|---|
1 | Arduino UNO (Other Arduinos can be used too) | Arduino UNO Pinout Diagram⇗ | |
2 | ESP8266 Wifi Module | ||
3 | L293D Motor Driver Module | ||
4 | 2 x Geared DC Motor (BO Type) | ||
5 | 9V Battery or Any battery ranging from 7V to 12V | ||
6 | 2 x Big Wheels | ||
7 | 1 x Slightly Small Wheel | ||
8 | Car Chassis | ||
9 | Blynk App |
Steps and Info:
Program Code:
#define BLYNK_PRINT Serial
#include <ESP8266_SoftSer.h>
#include <BlynkSimpleShieldEsp8266_SoftSer.h>
#include <SoftwareSerial.h>
SoftwareSerial EspSerial(2, 3);
ESP8266 wifi(EspSerial);
char auth[] = "auth key"; //Get from blynk
#define m4 4
#define m5 5
#define m6 6
#define m7 7
void forward()
{
digitalWrite(m4, HIGH);
digitalWrite(m5,LOW);
digitalWrite(m6,HIGH);
digitalWrite(m7,LOW);
}
void backward()
{
digitalWrite(m4, LOW);
digitalWrite(m5,HIGH);
digitalWrite(m6,LOW);
digitalWrite(m7,HIGH);
}
void right()
{
digitalWrite(m4, HIGH);
digitalWrite(m5,LOW);
digitalWrite(m6,LOW);
digitalWrite(m7,LOW);
}
void left()
{
digitalWrite(m4, LOW);
digitalWrite(m5,LOW);
digitalWrite(m6,HIGH);
digitalWrite(m7,LOW);
}
void Stop()
{
digitalWrite(m4, LOW);
digitalWrite(m5,LOW);
digitalWrite(m6,LOW);
digitalWrite(m7,LOW);
}
void setup()
{
// Keep console baud rate 9600
Serial.begin(9600);
delay(10);
// Keep ESP8266 baud rate 9600
EspSerial.begin(9600);
delay(10);
Blynk.begin(auth, wifi, "username", "password"); // Add wifi username and password, if no password then keep blank
pinMode(m4, OUTPUT);
pinMode(m5, OUTPUT);
pinMode(m6, OUTPUT);
pinMode(m7, OUTPUT);
}
BLYNK_WRITE(V1)
{
int x = param[0].asInt();
int y = param[1].asInt();
/* Serial.print("X = ");
Serial.print(x);
Serial.print("; Y = ");
Serial.println(y);*/
if(y>220)
forward();
else if(y<35)
backward();
else if(x>220)
right();
else if(x<35)
left();