RC CAR CIRCUIT USING L293D MOTOR DRIVER
Introduction
This project demonstrates how to build a 4-Wheel Drive (4WD) RC Car using the Arduino Uno and two L293D motor driver ICs.
Each L293D controls two DC gear motors, allowing independent control of:
-
Left Front (LF)
-
Left Rear (LR)
-
Right Front (RF)
-
Right Rear (RR)
The entire project can be simulated in Tinkercad and serves as the base for:
-
Bluetooth RC Car
-
Obstacle Avoiding Robot
-
Line Following Robot
-
IoT Smart Car
Project Objective
To design a 4WD robotic car chassis using Arduino that can:
-
Move Forward
-
Move Backward
-
Turn Left
-
Turn Right
-
Stop
Components Required (Tinkercad)
-
1 × Arduino UNO
-
2 × L293D Motor Driver IC
-
4 × DC Gear Motors
-
1 × Breadboard
-
External Power Supply (6–9V)
-
Jumper Wires
Circuit Description
L293D #1 (Left Side Motors)
-
OUT1 & OUT2 → Left Front Motor
-
OUT3 & OUT4 → Left Rear Motor
Control Pins:
-
IN1 → Arduino Pin 2
-
IN2 → Arduino Pin 3
-
IN3 → Arduino Pin 4
-
IN4 → Arduino Pin 5
-
EN1 & EN2 → 5V (or PWM for speed control)
🔹 L293D #2 (Right Side Motors)
-
OUT1 & OUT2 → Right Front Motor
-
OUT3 & OUT4 → Right Rear Motor
Control Pins:
-
IN1 → Arduino Pin 6
-
IN2 → Arduino Pin 7
-
IN3 → Arduino Pin 8
-
IN4 → Arduino Pin 9
-
EN1 & EN2 → 5V
Power Connections (Both ICs)
-
Vcc1 (Logic) → Arduino 5V
-
Vcc2 (Motor Supply) → External 6–9V
-
GND → Arduino GND (Common Ground Required)
Always ensure common ground between Arduino and motor supply.
How L293D Motor Driver Works
-
L293D is a dual H-Bridge motor driver IC.
-
It allows motors to rotate in both directions.
-
By changing input logic (HIGH/LOW), we control direction.
-
Enable pins allow speed control via PWM.
Arduino Code for Basic Movement
int LF1 = 2;int LF2 = 3;int LR1 = 4;int LR2 = 5;int RF1 = 6;int RF2 = 7;int RR1 = 8;int RR2 = 9;void setup() {pinMode(LF1, OUTPUT);pinMode(LF2, OUTPUT);pinMode(LR1, OUTPUT);pinMode(LR2, OUTPUT);pinMode(RF1, OUTPUT);pinMode(RF2, OUTPUT);pinMode(RR1, OUTPUT);pinMode(RR2, OUTPUT);}void forward() {digitalWrite(LF1, HIGH); digitalWrite(LF2, LOW);digitalWrite(LR1, HIGH); digitalWrite(LR2, LOW);digitalWrite(RF1, HIGH); digitalWrite(RF2, LOW);digitalWrite(RR1, HIGH); digitalWrite(RR2, LOW);}void backward() {digitalWrite(LF1, LOW); digitalWrite(LF2, HIGH);digitalWrite(LR1, LOW); digitalWrite(LR2, HIGH);digitalWrite(RF1, LOW); digitalWrite(RF2, HIGH);digitalWrite(RR1, LOW); digitalWrite(RR2, HIGH);}void left() {digitalWrite(LF1, LOW); digitalWrite(LF2, HIGH);digitalWrite(LR1, LOW); digitalWrite(LR2, HIGH);digitalWrite(RF1, HIGH); digitalWrite(RF2, LOW);digitalWrite(RR1, HIGH); digitalWrite(RR2, LOW);}void right() {digitalWrite(LF1, HIGH); digitalWrite(LF2, LOW);digitalWrite(LR1, HIGH); digitalWrite(LR2, LOW);digitalWrite(RF1, LOW); digitalWrite(RF2, HIGH);digitalWrite(RR1, LOW); digitalWrite(RR2, HIGH);}void stopCar() {digitalWrite(LF1, LOW); digitalWrite(LF2, LOW);digitalWrite(LR1, LOW); digitalWrite(LR2, LOW);digitalWrite(RF1, LOW); digitalWrite(RF2, LOW);digitalWrite(RR1, LOW); digitalWrite(RR2, LOW);}void loop() {forward();delay(3000);left();delay(2000);right();delay(2000);backward();delay(3000);stopCar();delay(2000);}
Movement Logic Summary
| Action | Left Motors | Right Motors |
|---|---|---|
| Forward | Forward | Forward |
| Backward | Reverse | Reverse |
| Left | Reverse | Forward |
| Right | Forward | Reverse |
| Stop | OFF | OFF |
Learning Outcomes
Students will understand:
-
H-Bridge motor control
-
Direction control logic
-
Multi-motor coordination
-
Robot chassis movement principles
-
Real-world robotics applications
BEGINNER PROJECTS (Foundation Skills)
- Ultrasonic Distance Measurement
- Traffic Light Simulation with 7-Segment Display
- 7-Segment Display Counter
- Kids Piano Circuit (8-Key Version)
- 16×2 LCD Display with Text Output
- LCD I2C to Arduino UNO
- Temperature Measurement using Arduino UNO
- LDR Controlled Street Light
INTERMEDIATE PROJECTS (Build Your Skills)
- Servo Motor Control Using Potentiometer
- DC Motor Speed Control
- Temperature Controlled Fan
- PIR Based Theft Alert System
- LPG Gas Leakage Detection System
- Automatic Door Locking System
- Soil Moisture Based Automatic Watering System
- Simple Digital Clock using Arduino UNO
- Automatic Voting Machine (EVM)
- Joystick Control using Arduino Uno
- RGB Lamp Control using Arduino Uno
ADVANCED PROJECTS (Master Level)
- Home Automation Using Arduino UNO
- Bluetooth RC Car using Arduino Uno
- Obstacle Avoiding Robot
- Line Follower Robot
- Radar System Using Arduino UNO
- Automatic Parking System
- Bi-Directional People Counter using Arduino Uno
- Automatic Plant Watering System
- NeoPixel LED Ring Control using Arduino Uno
- Smart Gloves for Bedridden People

Comments
Post a Comment