Must be able to successfully
naviagte the course and complete
the extention task
Detection
Should be able to use the
sensors given, in order to
successfully complete the
task.
The code
The code must function efficiently enough to allow
for successful completion of the course.
Solution
Solution 2
Solution 2 works in a very similar manner to Solution 1. This
solution uses the color sensor too, including the ultrasonic
sensor (refer to Diagram ‘A’). Just like in Solution 1, the color
sensor has the same task of following the black line (Line
following). This solution only has one method of solving any
object obstructions problems. Using the ultrasonic sensor, the
robot can obtain an understanding of anything around it. It
does this by sending out ultrasonic waves and reading their
rebound time from the object to the robot, in order to measure
object distance. The method will involve the ultrasonic sensor
to constantly detect if there are objects in its way, and when it
detects one, it will execute a series of commands. If the object
is ‘x’ centimetres away, then the robot must reverse, then scale
the width of the object and then scale the length of the object.
After that the robot will resume its course on the track.
Much less adaptable and unique as compared to Solution 1.
Solution 1
Solution 1 incorporates a highly efficient method that
can help the robot follow the path incorporated in the
task and also dodge obstacles in two different ways.
The solution to the problem allows for the use of the
EV3 robot’s touch sensor and color sensor (refer to
Diagram ‘A’). The color sensor will enable the robot to
detect the grounds PCT value, and thus will be
programmed to follow the black line’s PCT value. The
touch sensor enables the robot respond to physical
touch and will be programmed to avoid obstacles in
two different ways. The first method of avoidance is
that if the sensor is depressed then, the robot must
reverse and then scale the width and length of the
object. Then the robot will return back to its path
using its color sensor. The second method works if the
object in obstruction is light enough to be pushed by
the robot. This will mean that the if the robot’s touch
sensor is not depressed, then it will just continue the
line following algorithm.
Is long and cumbersome to make code for.
Chosen Solution: Solution 1
Solution 1 was chosen as the best fitting option for the solving of the task. This was selected because
the solution was much more diverse in the problem solving sense, as to solution 2. This refines to the
fact that solution 1 had two ways to get around an object obstruction, proving it more effect and faster
than solution 2. Solution 2 has only one way of solving the problem, because it uses the ultrasonic
sensor. The ultrasonic sensor can only act via virtual imaging (i.e., detecting objects via ultrasonic
emissions); this means that solution 2 cannot detect the force of an object, making it less effective in
the sense that it has to move around the obstruction no matter how heavy the object in front of it is.
This will make the task completion slow because the robot will complete this cycle for all object
obstructions. However, the chosen solution can detect if an object is light weight (because the touch
sensor won’t be depressed) and a wasted of time.
Evaluation: Thus, an overall evaluation on the digital solution to the task posed. Although it might
not have solved the main task at hand, the code only needs minor adjustments in order for it to
work the way it was designed to.
Reccomendations: To solve the main task, the line
following code must be modified a little further. A good
recommendation would be that there can be more right
and left turns made. Along with that the pace that the
robot is going in, can be greatly reduced, to allow for the
color sensor to read values correctly. These two
improvements can allow for a properly functioning line
following algorithm, which will in turn prove an effective
solution to the main task posed. In terms of revision for
this part of solution, the line following algorithm took
many tests to tweak up the level of accuracy the turns
needed. Due to little time though, this was not properly
achieved. As mentioned in the success criteria, the plan
was changed to have a physical entity to touch a button on
the robot in order to start the celebratory dance. This was
due to low time constriants, which could have been
rectified by changing the color sensor detection sytem to
hazy ambience.
EV3
Parts
Sensors
Color Sensor
Digital sensor that can detect the
color or light intensity of light that is
read through the face of the sensor. It
comes in three different modes -
"color mode, reflected light intensity
mode, ambient light intensity mode."
This function helps in reading the
different surfaces the robot interacts
with, and then responding
accordingly.
Gyro Sensor
Digital sensor that detects
the rotational motion on a
single axis. This aids in
understanding the different
angles of movement the
robot ommits (or even the
different angles that a part
of the robot operates).
Touch Sensor
An analog sensor that can
detect when the button is
depressed and when it is
released. This means that
the robot can be
programmed to respond to
anything or object that it
touches.
Ultrasonic Sensor
Digital sensor that can judge
the distance of an object or
physical entity in front of it.
This is achieved by sending
out high frequency sound
waves and measuring how
long it takes to reflect onto
the sensor.This function
allows for the detection of
anything in front of the
robot, thus allowing for one
to code the robot to avoid
it, etc.
Motors
Medium Motor
Includes a built in rotatoion sensor,
but is smaller and lighter than the
Large motor. This motor can be
programmed.
Large Motor
A powerfull "smart" motor with
built in Rotation Sensor. This
sensor is mainly optimised to be
the driving base for the robot.
This can be achived by using and
move commands in the EV3
software.
Other
Brick
The brick contains all the
ports incuding necessary
connections required for
the robot to perform its
tasks. The brick also has a
screen with navigation
buttons, to allow for
physical user interactions
with the robot.
Ports and
Connections
There are 4 ports on the back (1,2,3,4)
and 4 ports on the front (A,B,C,D). These
ports allow for the individual connection
of motors and sensors. There is also an
addtional port on the front which is a
direct connection port to allow the user
to transfer commands from a device to
the robot.
Constaints
Algorithmic
The code must comply with the
features that are built in with the
robot. The algorithmic conditions state
that the course has to be completed in
the order required (i.e: Line following,
Object detection, etc.) and will fail if
the conditions are not met.
There can only be one final solution for the task at
hand
Functional
The function of the robot must follow the basic task/requirements, including the extention task.
The problem
The task implies that the robot must
have an efficient code that is able to
navigate the course given, and
successfully make it to the other
side. The robot must also be able to
move any object in its path, out of
the way; the robot could also
determine if the object is too heavy
and thus must be navigated around
accordingly, without losing the
objective of the task.
The extention objective also encompasses
that the robot, after navigating the course,
must notify the researchers using a sound
and lights display.
Physical
A major constraint is that the robot cannot be
modified in anyway (sticking to the budget).
In this manner, the course also cannot be
modified in anyway.
Criteria
Self Determined
SCD1
This criterion outlines the specific actions that
appear during the celebratory display. This includes
visual, auditory, and physical traits. Visual traits
include any onboard screen displays; auditory traits
include any sound outputs for the robot to perform;
physical traits include any movement the robot does
to attract attention (e.g: dance).
Prescribed
PC1
PC1 represents the fact that the
robot must be able to follow the
given line/path and complete it
successfully. This elaborates on the
main objective of the mission and
solely focuses on ‘Line following’
code.
PC2
PC2 describes that the robot must be
able to navigate around an object
that obstructs its path. This is the
second part of the task which states
that “the robot either needs to move
objects off the path or navigate
around them and return to path as
quickly possible. This will Prescribed
criteria will also determine the two
possible solutions to the task posed.
PC3
PC3 states that there must be a celebratory
display for successful completion of task.
This criterion outlines the extension task,
which will be assumed prescribed for this
project. The extension task includes –
performing a signature movement with
accompanied lights and sounds, in order to
grasp the researcher’s attention of the
successful completion of the task.