INTRODUCTION
The rapid advancement of technology has led to the increasing use of automation in
various fields, including transportation, manufacturing, and robotics. One of the
most promising applications of automation is the development of autonomous vehicles
machines that can operate independently, without direct human control. In this project,
a remote-controlled (RC) car is transformed into a smart car with obstacle
avoidance, showcasing how basic robotics can be used to simulate advanced
autonomous systems.
This project is part of the Science Immersion Program (SIP) or Science
Ambassador Program, aiming to explore and implement practical solutions through
scientific inquiry and technological innovation. The smart car is designed to navigate
autonomously, using sensors and a programmed microcontroller to detect and avoid
obstacles in its path.
At the heart of the system is the Arduino Uno, an open-source microcontroller that
processes input from an ultrasonic sensor. This sensor detects objects in the car’s
environment, while the motor driver shield controls the car’s movements allowing it
to steer away from obstacles and continue on a clear path. The entire setup is powered
by 18650 Li-on batteries, ensuring sufficient power for the car's operation.
The goal of this project is to simulate the basic functions of autonomous vehicles,
providing insight into how obstacle avoidance systems work. The project
demonstrates not only the capabilities of sensor-based navigation but also the
importance of automation in modern technology. With potential real-world
applications in self-driving cars, robotic assistance, and other areas, this smart car
project represents a significant step toward understanding and applying cutting-edge
technology in everyday life.
PROJECT: SMART CAR OBSTACLE AVOIDANCE
PROJECT NAME: PATHFINDER
COMPONENTS OF CREATING SMARTCAR
(OBSTACLE AVOIDING VARIATION)
Arduino Uno: This is the brain of your car. It controls all the sensors and motors,
processing input from the ultrasonic sensor to avoid obstacles.
Motor Driver Shield: This is crucial for controlling the DC motors. It allows the
Arduino to direct the motors to move forward, backward, or turn when an obstacle is
detected.
Wheels (4x): These will be attached to the motors, providing the physical
movement for your car.
TT Gear Motor (4x): These DC motors will drive the wheels, making your car
move. The geared motors give it enough torque to handle the weight of the car.
Servo Motor: You can use the servo motor to control the direction of the
ultrasonic sensor, allowing it to rotate and scan for obstacles in front of the car.
Ultrasonic Sensor: This is the car’s “eyes.” It detects how far objects are in front
of it by sending out sound waves and measuring their reflection.
18650 Li-on Battery (2x): These rechargeable batteries will power your car.
They're lightweight and offer a good amount of power for small projects like this.
18650 Battery Holder: Used to securely hold the batteries in place and connect
them to your circuit.
Male and Female Jumper Wires: These are used for connecting all the
components on your breadboard or motor shield to the Arduino.
Acrylic Sheet: You’ll need this as the base or chassis of the car to mount all your
components like the motors, Arduino, and sensors.
DC Power Switch: This can be added to easily turn your car on and off without
disconnecting the battery.
PROCEDURE:
Connect the TT Gear Motors: Begin by
connecting the wires to the four TT gear
motors.
Prepare the Chassis: Obtain an acrylic sheet measuring approximately 9 cm in
length and 14 cm in width. Securely attach the TT gear motors to the acrylic sheet
using a hot glue gun or an adhesive of
your choice.
Attach the Wheels: Next, attach the wheels to the motor shafts.
Mount the Arduino Uno:
Position the Arduino Uno in the
center of the chassis to ensure
balanced weight distribution.
Install the Motor Driver Shield: Place the motor driver shield on top of the Arduino
Uno, ensuring all pins are aligned and connected properly.
Connect Wires to the Motor Driver Shield: Attach the necessary wires from the TT
gear motors to the corresponding terminals on the motor driver shield.
Attach the Servo Motor:
Connect the servo motor and
securely attach it to the chassis
using screws.
Mount the Sensor Holder: Attach the sensor
holder at the top of the servo motor, allowing it to pivot as the servo moves.
Wire the
Ultrasonic Sensor:
Wire the
ultrasonic sensor and attach it to the sensor holder. Ensure it is positioned to face
forward.
Connect the Servo to the Motor Driver Shield: Connect the servo motor wire to the
appropriate port on the motor driver shield to enable control from the Arduino.
Connect the Sensor to the Motor Driver
Shield: Connect the wires from the ultrasonic sensor to the motor driver shield as
follows:
Gray wire (Positive) to +5V
Green wire (GND) to GND
Dark Pink wire (TRIG) to A0
Royal Blue wire (ECHO) to A1
Install the Battery Holder: Place the battery holder at the back of the motor driver
shield. Ensure it is securely mounted.
Connect the Battery: Insert the battery into the holder, making sure it is correctly
attached. Then, connect the battery wires to the motor driver shield to provide power.
REFERENCE:
https://youtu.be/1n_KjpMfVT0?
si=guc7Ulu42Hz9nthw
Youtube channel: DIY BUILDER
RESULTS AND DISCUSSIONS
PATHFINDER works by transferring the script into Arduino and switching the
DC power on after transferring, causing it to activate
A. Results, Discussions and Hypothesis
B. Behaviour of the scipt
Hypothesis
The smart robot car, equipped with an Arduino, ultrasonic sensor, and motor shield,
will successfully navigate through an environment by detecting and avoiding
obstacles. By using the ultrasonic sensor to measure distance, the car will alter its
course to avoid collisions, ensuring smooth and continuous movement without human
intervention.
Results
Obstacle Detection: The ultrasonic sensor successfully detected obstacles within a
range of 15-20 cm. The car responded promptly by stopping and changing direction.
In most tests, the car avoided objects effectively and maintained movement without
collision.
Motor Performance: The motors, powered by the motor shield, operated
efficiently. The car moved forward, turned left and right, and stopped when necessary.
However, at higher speeds, the car struggled slightly with making sharp turns,
especially when obstacles were too close.
Battery Life: The car was powered by two 18650 Li-on batteries and operated for
approximately 2 hours before needing a recharge. The performance remained stable
throughout the battery life, though the response time slightly decreased as the battery
drained.
Environmental Conditions: On smooth surfaces like tile or wood, the car
performed well, maintaining steady speed and direction. On rougher surfaces
such as carpet, the car’s movement slowed down, and it had difficulty making
precise turns.
Discussion:
1.Effectiveness of Obstacle Avoidance: The smart robot car successfully met the
expectations outlined in the hypothesis. The ultrasonic sensor, in combination with
the motor control system, was effective at detecting obstacles and altering the car's
course. There were only a few instances where the car came too close to an object
before responding, particularly with smaller objects that were harder to detect.
2.Challenges Encountered: One limitation observed was the car's performance at
higher speeds. The faster the car moved, the wider its turns became, which
sometimes resulted in near collisions. This could be addressed by adjusting the
speed based on proximity to obstacles—slowing down when an object is detected
close by.
3.Power Efficiency: The 18650 batteries provided sufficient power for the project,
though larger battery packs or more efficient motors could extend the car's operating
time. Optimizing power usage in the code could also help maintain performance over
longer periods.
4.Improvements and Future Work: Future versions of this project could include
multiple sensors to enhance obstacle detection. For example, adding infrared or
additional ultrasonic sensors on the sides and rear of the car would provide a more
comprehensive detection range. Another area for improvement would be making the
turns smoother and more precise, especially in confined spaces.
5.Comparative Performance: Compared to other similar DIY robotic car projects,
this design achieved reliable obstacle avoidance. However, fine-tuning the motor
response and sensor positioning could further improve the car's ability to navigate
through complex environments with obstacles of varying sizes.