0% found this document useful (0 votes)
14 views9 pages

Self Driving Car

The document details the development of an intelligent maze-solving robot that utilizes the A* algorithm and image processing techniques to efficiently navigate through mazes. The robot captures a top-view image of the maze via a smartphone, processes it to create a grid map, and then calculates the shortest path to the destination. It demonstrates applications in various fields such as warehouse automation, search and rescue operations, and autonomous delivery.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views9 pages

Self Driving Car

The document details the development of an intelligent maze-solving robot that utilizes the A* algorithm and image processing techniques to efficiently navigate through mazes. The robot captures a top-view image of the maze via a smartphone, processes it to create a grid map, and then calculates the shortest path to the destination. It demonstrates applications in various fields such as warehouse automation, search and rescue operations, and autonomous delivery.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Report : Intelligent Maze Solving Robot Using A* Algorithm and Image

Processing

Group No. 2

Submitted in partial fulfillment of the course


Computer Organization & Microcontrollers

Submitted by:

1. Rachit Saini (20235061)

2. Raj Kumar (20235062)

3. Rajeev Nayan Singh (20235064)

4. Prince Yadav (20235060)

5. Shayan Anwar (20235075)

DATE : 23 April 2025


Maze solving Robot Based on Image Processing and A* graph
algorithm

In this project, we have developed an intelligent maze-solving robot that uses


the A* algorithm to find the shortest and most efficient path. Instead of using a
live camera feed, we capture an image of the maze via smartphone and send it
via Wi-Fi for processing. By combining image processing techniques with graph
theory, the system avoids the slow trial-and-error methods and helps the robot
navigate quickly and accurately—even through complex and tricky mazes.

Working Principle
The intelligent maze-solving robot works by capturing a top-view image of the
maze, which is then sent via Wi-Fi to a computer for analysis. Using image
processing techniques, the maze is converted into a grid map. The A* algorithm
is then applied to this grid to calculate the shortest and most efficient path from
the starting point to the destination. Once the path is generated, the robot
receives step-by-step instructions and follows them to navigate through the
maze accurately and efficiently, avoiding traditional trial-and-error navigation.
Maze Image Capture
▫ A top-view image of the maze is captured using a camera or
smartphone.
▫ This image is then sent to the processing system via Wi-Fi for further
analysis.

Image Processing & Grid Formation


▫ The received image is processed using OpenCV to detect maze
boundaries, paths, and obstacles.
▫ The maze is converted into a grid-based map, where each cell
represents a node for pathfinding.

Path Calculation using A* Algorithm


▫ The system applies the A algorithm* to the grid to find the shortest
path from start to goal.
▫ A* combines actual distance with estimated cost, ensuring a fast and
accurate solution.
.
Arduino Communication & Execution

The communication between the PC and Arduino UNO WiFi is


established over a common WiFi network. The PC sends the path as a
string (e.g., "FRFLF") through an HTTP GET request like:
http:///move?path=FRFLF The Arduino board acts as a simple web
server. It receives this string, parses each character, and executes the
corresponding motor command using the L298N motor driver. Each
character represents:-
'F' = Move Forward
'L' = Turn Left
'R' = Turn Right

Path Transmission to Robot


▫ The calculated path is converted into a series of movement commands.
▫ These commands are sent to the robot wirelessly, guiding it through the
maze.

Real-time Navigation
▫ The robot follows the received instructions step-by-step using its
onboard motors and sensors.
▫ It accurately navigates even complex mazes, avoiding unnecessary
moves or dead ends.

Components Required
Component Description
Arduino UNO R4 wifi Main controller board with WiFi functionality
L298N Motor Driver Used to control the direction and speed of
Module motors
DC Motors with Wheels Provides movement to the robot
Robot Chassis Holds all hardware components

Power Supply Battery pack or USB power source

Jumper Wires & Electrical connections and prototyping


Breadboard
Smartphone Used for capturing the maze image

Components Specification
Arduino UNO R4 Wi-fi
The Arduino Uno R4 Wi-Fi is an advanced microcontroller board that combines
the classic Uno form factor with modern features. It is powered by a 32-bit
RA4M1 microcontroller based on the Arm® Cortex®-M4, offering higher speed
and more memory than previous Uno models. A key feature is its built-in ESP32-
S3 Wi-Fi module, enabling wireless connectivity for IoT and smart devices.

Servo Motors + Motor Driver (L298N)

The servo motors provide accurate rotational control to the robot’s wheels or
joints. The L298N driver receives control signals from the Arduino and delivers
sufficient power to drive the motors.

Laptop/PC with OpenCV & Python

The main processing happens here. The received image is analyzed using
OpenCV to detect the maze layout, and the A* algorithm is applied to find the
shortest path. The path is then translated into commands and sent back to the
Arduino.

Camera Module

A basic USB or mobile phone camera is used to capture a static top-view image
of the maze. This image serves as the input for the maze-solving algorithm. The
captured photo is then sent over Wi-Fi to the computer.
Circuit Diagram

Libraries Used in Code

<SPI.h> Enables SPI (Serial Peripheral


Interface) communication

<L298N.h> If using motor driver shields.

<WiFiS3.h > Wi-Fi communication using


Arduino Uno R4 WiFi.

opencv-python (cv2) For capturing and processing maze


images.
Results-
-The robot was tested on multiple 5x5 maze layouts and successfully
reached the goal
.- A* provided an optimal path with minimal computational time.
- The off-device processing model worked reliably, reducing the load on
the robot's hardware.

Conclusion

This project showcases how combining simple hardware with


powerful external computation can result in an efficient autonomous
system. By using a phone for capturing images and Python for
processing, we drastically reduce the cost and complexity of the robot
while maintaining performance.

Applications of Intelligent Maze Solving Robot

1. Warehouse Automation (e.g., Amazon, Flipkart):


Robots can autonomously navigate warehouse aisles to pick and
place products, optimizing routes using A* for speed and
efficiency.
2. Search and Rescue Operations:
In disaster zones or collapsed buildings, such robots can map
unknown environments and find safe paths to locate and rescue
trapped individuals.
3. Autonomous Delivery Robots:
Used in offices, hospitals, or campuses to deliver items efficiently
while avoiding obstacles and finding the shortest path.
4. Smart Surveillance Systems:
Robots can patrol buildings or restricted areas, dynamically
planning routes using image input and A* to ensure maximum
coverage.
5. Agricultural Field Navigation:
Used in precision farming to autonomously move through crop
rows for tasks like inspection, spraying, or harvesting, especially in
GPS-denied environments.

You might also like