0% found this document useful (0 votes)
12 views

Robotics Project Report Group 4

Uploaded by

ruvxii
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Robotics Project Report Group 4

Uploaded by

ruvxii
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

ARTI407 – ROBOTICS AND INTELLIGENT SYSTEM

Term 2 – 2023/2024
COLOR LANDMARK MAZE NAVIGATOR ROBOT

Final Project Report.


Group 2 team 4
# Name ID leader

1 Jumanah Ahmad Alshangiti 2210002200 ✓

2 Fatimah Hassan Albuainain 2210003284


3 Reem mohammed alomair 2210002698
4 Reem Fouad Albawardi 2200400082
5 Raghad Nasser Alhumaidan 2200002304
Instructor: Mrs. Zainab Mohammed

1
Contents
Introduction............................................................................4
Description of Our Robot.........................................................5
Implementation of the Robot...................................................5
Architectural Design................................................................6
Robot Specifications.....................................................................6
Main Components.........................................................................7
Building Parts...............................................................................9
Software Design....................................................................10
Micro Python Code......................................................................10
Conclusion............................................................................ 13
References............................................................................14

2
List of Figures
Figure 1 implementing the robot..............................................................5
Figure 2 large motor.................................................................................7
Figure 3 Color sensor................................................................................7
Figure 4 Ultrasonic sensors.......................................................................8
Figure 5 the maze....................................................................................8

List of Tables
Table 1 Robot Specifications.....................................................................6
Table 2 actions , destnatios and angels....................................................8

3
Introduction
Nowadays the robot's existence has revolutionized both modern industries and our personal
lives and it also has a significant effect on improving our lives. Robots are physical
machines that has the ability to interact with their environment and sensing also it has the
ability to perform calculations depending on its task and functions. in addition, robots have
the ability to simulate human behavior and intelligence, also the robots have many types,
size and component depend on it is aim that they made for. [1]
Accordingly, our team built a color landmark maze navigator robot EV3 Lego Mindstorm
Education Set and programmed it using the Pybrick package. Our robot has the capability
of navigating mazes by detecting floor colors and measuring distances to walls. Equipped
with a color sensor, ultrasonic sensor, and two motors for movement, the robot also features
an interactive interface displaying directional arrows and provides verbal updates on its
actions. This robot offers an engaging way to explore robotics and problem-solving.

4
Description of Our Robot
CLMN-robot collects the data using two kinds of sensors then send suitable command to
the motor depending on the situation, CLMN-robot taking input from ultrasonic and color
sensor, color sensor responsible of detecting the color to send it to the motor to move to the
right direction and angle .and ultrasonic sensor responsible of detecting the dead-end and
avoid it.
Keeping up and interacting with dynamic environments is a critical feature, so that's we
provide the robot with the ability to take suitable decisions based on situation and provide it
with four wheels so it can move easily on the maze and move with balance.
At first, the robot will be, by default, in sleep mode. Until we run it, then the robot will start
moving forward looking for the goal which is the path green color , while moving forward
in the maze the robot will face a dead ends and many colors in its path , when the robot
face yellow color in the path it will turn to the left, on the other hand if the robot face red
color on the path it will turn to the right , for the blue path it will select random
destination , but for the black it will consider it as a dead end then moving backward and
looking for other path , finally for the green color it will reach the goal and get out of the
maze .
CLMN-robot can be used in so many places, such as restaurants for delivering orders
depending on the table's colors, in addition it can be used on factories for arranging the
goods and equipment on the right places with avoiding any walls or obstacles can be faced.

Implementation of the Robot


The application of our CLMN robot and its architectural layout will be covered in more
detail in this part.
The project's goal is to build a robot that can navigate mazes by identifying wall lengths
and floor colors. The robot, which has two motors, an ultrasonic sensor, and a color sensor,
has an interactive interface with vocal updates and directional arrows that makes it an
interesting method to learn about robotics and problem-solving.

Figure 1 implementing the robot

5
Architectural Design
Robot Specifications
EV3 brick is the most important component in the robot because it's the responsible of
taking decisions and controlling most of the robot parts and send command to them such as
sensors Therefore, we utilized the EV3 brick to control our robot. The following table
shows the technical specifications of our robot. weight, height, and width measurements in
the following table were taken after our robot was fully built:

Controller EV3 Brick 300MHz ARM9


Operating System LINUX
Flash Memory 16 MB
RAM 64 MB
Brick Screen Resolution 178 x 128/Black & White
USB 2.0 Communication to Host Up to 12 Mbit/sec
PC
Micro SD card Supports SDHC, version 2.0, Max
32 GB
Connectors RJ12
Power 6 AA batteries
Weight 1.94 Kg
Height 14 cm / 5.5 in.
Width 18 cm / 7 in.
Table 1 Robot Specifications

6
Main Components
Large motor: Our project utilizes two large motors, robot. The Motor with a rotation
sensor for precise control, and the Move Tank for robotic driving, enabling simultaneous
action coordination. [2]

 Left motor connected to EV3 using port B.


 Right motor connected to EV3 using port C.

Figure 2 large motor

Color sensor: Three modes are available for the Color Sensor to detect light intensity:
Color Mode, Reflected Light Intensity Mode, and Ambient Light Intensity Mode. We use
color mode in color mode, it can identify five different colors and adjacent surfaces or
objects. This mode can be used to recognize markings on paper or LEGO pieces based on
characteristics like color. [3]
 Color sensor connected to EV3 using port 3.

Figure 3 Color sensor

7
Ultrasonic sensors: this sensor is used to measure the distance between the robot and the
object by sending high frequency sound waves and measuring the time it takes for the
sound to reflect to the sensor. [2]

Figure 4 Ultrasonic sensors

 ultrasonic sensor connected to EV3 using port 4.

The table below shows the actions, destinations and the angles for each color.
color action destination angle
red Turning right 230 97
Yellow Turning left 230 -97
blue Radom choice whether to left or right
Black Backward -230 0
green Forward then rotation 230 360
Table 2 actions , destnatios and angels

color landmark maze:

Figure 5 the maze

8
Building Parts

Figure 6 Building Parts

9
Software Design
A Python 3 implementation designed with microcontrollers and limited settings in mind is
called MicroPython. It is powered by a small electronic circuit board known as a
MicroPython pyboard and has sophisticated features like exception handling and
interactive prompts. It seeks to be compatible with standard Python for simple code
transfer, with 256k of code space and 16k of RAM. [4]

Micro Python Code


#!/usr/bin/env pybricks-micropython
from pybricks.hubs import EV3Brick
from pybricks.ev3devices import (Motor, TouchSensor, ColorSensor,
InfraredSensor, UltrasonicSensor,
GyroSensor)
from pybricks.parameters import Port, Stop, Direction, Button, Color
from pybricks.tools import wait, StopWatch, DataLog
from pybricks.robotics import DriveBase
from pybricks.media.ev3dev import SoundFile, ImageFile
import random
def rodrand(chooise):
ev3.screen.load_image(ImageFile.UP)

if chooise == 1:
ev3.screen.load_image(ImageFile.HURT)
robot.turn(98)
wait(50)
ev3.speaker.say("random distination turning right")
robot.drive(230, 0)

elif chooise == 2:
ev3.screen.load_image(ImageFile.HURT)
robot.turn(-99)
wait(50)
ev3.speaker.say("random distination turning left")
robot.drive(230, 0)

# This program requires LEGO EV3 MicroPython v2.0 or higher.


# Click "Open user guide" on the EV3 extension tab for more
information.

10
# Create your objects here.
ev3 = EV3Brick()

# Write your program here.


ev3.speaker.beep()
color_list =[Color.RED,Color.GREEN,Color.YELLOW ,Color.BLACK]
left_motor = Motor(Port.B)
right_motor = Motor(Port.C)
color_sensor = ColorSensor(Port.S3)
obstical_sensor = UltrasonicSensor(Port.S4)

robot = DriveBase(left_motor, right_motor, wheel_diameter=55.5,


axle_track=114)
goal = False
chooise = random.randint(1,2)
while goal == False:
robot.drive(230, 0)
ev3.screen.load_image(ImageFile.NEUTRAL)
Mcolor= color_sensor.color()
if obstical_sensor.distance() < 130:

if (Mcolor == Color.RED):

ev3.screen.load_image(ImageFile.UP)
robot.turn(97)
wait(1000)
ev3.speaker.say("red color turning right")
robot.drive(230, 0)
if Mcolor == Color.YELLOW:
ev3.screen.load_image(ImageFile.UP)
robot.turn(-97)
wait(1000)
ev3.speaker.say("yellow color turning left")
robot.drive(230, 0)
if Mcolor == Color.BLUE:

rodrand(chooise)
if color_sensor.color() == Color.BLACK:

ev3.screen.load_image(ImageFile.DIZZY)
robot.drive(-230, 0)

if color_sensor.color() == Color.BLUE:

11
robot.turn(97)
wait(1000)

wait(1000)
if chooise == 1:
chooise = 2
elif chooise == 2:
chooise = 1
rodrand(chooise)

elif 10 <=color_sensor.rgb()[0] <= 15 and 39 <=color_sensor.rgb()


[1] <= 50 and 24 <=color_sensor.rgb()[2] <= 44:
ev3.screen.load_image(ImageFile.LOVE)
ev3.screen.load_image(ImageFile.DIZZY)
ev3.screen.load_image(ImageFile.SLEEPING)
ev3.speaker.say("final distinsation the goal")
wait(1000)
robot.turn(360)
robot.turn(360)
robot.turn(360)

goal= True

12
Conclusion
Building a robot that can interact and take decisions in a dynamic environment and
avoiding obstacles can have numerous practical uses. To obtain such a robot multiple
sensors need to be incorporated, such as a color sensor, ultrasonic along with two types of
motors and equipped with four wheels for stability and maneuverability, the robot can
traverse through mazes with ease, ensuring smooth navigation towards its goal. all
controlled by the EV3 brick. After assembling our CLMN-robot using the EV3 Lego
Mindstorm Education 45544 Set, we programmed it with multiple libraries embedded in
the MicroPython’s Pybrick package like hubs, ev3devices, parameters, and tools to
showcase its abilities. The robot can gather data about its surroundings and make decisions
about its next moves. The color sensor detects various colors along the path, allowing the
robot to adjust its course accordingly, while the ultrasonic sensor helps it avoid dead ends
and obstacles.

13
References
[1] What Is a Robot? - ROBOTS: Your Guide to the World of Robotics. (n.d.). Retrieved
May 15, 2023, from https://robotsguide.com/learn/what-is-a-robot/

[2] EV3-Motors-Sensors-Explained. (n.d.).Retrieved May 28, 2023, from


https://counties.agrilife.org/gillespie/files/2015/04/EV3-Motors-Sensors-Explained.pdf
[3] LEGO Education. (n.d.). Using Sensors: Color. Retrieved from https://ev3-help-
online.api.education.lego.com/Education/en-us/page.html?Path=editor
%2FUsingSensors_Color.html
[4] MicroPython. (n.d.). Retrieved from https://micropython.org/

14

You might also like