26 March 2015
MEMORANDUM
To:
CC:
From:
Subject:
In response to your Engineering 111 assignment, we are submitting this report which
outlines the result of the Robo-Writer Robot as well as the components of the project.
The main purpose of this project was to construct a robot that writes
specific numbers of lines according to the color of the rectangles that it
scans it. The robot was programmed using the RobotC program. The NXT
that was connected to the robot received the commands from the code we
wrote. At the end a video was recorded of the final result of our robot.
The robots design was changed twice for accuracy and the final design
was tested several times to improve the effectiveness of the robot and in
order to fix the code for it to work on its best condition. We were satisfied
with the final results which proved how our robot was effective. The several
testing led to our team winning the first place in the competition which was
held on the 19th of March, 2015.
We hope that our results would please and satisfy you as well. We look
forward to your assessment of our report. We would be pleased to hear your feedback as well as
your comments on our report. In addition if you have any concerns or questions about our project
we are always here to answer them.
ii
Abstract:
The objective of this project was to build an automated robot that
writes lines by scanning the sequence of black and white rectangles. The
rectangles present binary values that our robot should be able to convert
these binary values into decimal number and write the number of lines that
present these rectangles. After scanning the rectangles the robot is supposed
to move forward then 90 degrees in order to write number of lines that
correspond to the rectangles on an A4 paper. There were different options
considered for the robots design.
Executive Summary:
In order to build a robot that is able to write a specific numbers of lines
according to the white and black rectangles that it scans, three different
robot structure options were considered. The different options were
considering the number of wheels to be used and how the wheels will be
used. The first option was to build the robot to do normal steering like the car
whether with two or four wheels. The second option was to build the robot
like the tank with four wheels. The last option that was considered is to build
the robot with only two wheel steering. The second option was found to be
the best option regarding the balance, since the four wheels kept the robot
balanced and also for the speed, while turning it was found that the four
wheels is the fastest while turning. The two forth along with the two
backward wheels were used for steering.
When our final design was constructed the robot was programmed to
move forward and turn 90 degrees as well as to scan the rectangles in order
to write. The programming was done through RobotC. At the end the robot
turned out to be successful after it performed all of the required tasks as
accurately as possible.
iii
Table of Contents
Transmittal Memo ..
. ii
Abstract and Executive Summary ....
iii
1.0 Introduction
. 1
2.0 Construction of the robot ...
. 1
2.1 Major Components of the Robots Design
. 1
2.2 Programming Movement and Writing.
. 2
2.3 Flowchart Explaining the Programming ...
. 2
3.0 Performance of the Robo-Writer
3
3.1 Competition Results
3
3.2 Performance in the Trials
3
3.3 How to Improve the Robots Performance
... 3
Conclusion
.... 3
Follow up form .
.. 4
1.0
Introduction:
2.0
The robots construction was divided into two stages first stage was
the construction of the robots design and the second stage was coding the
robot.
2.1
The NXT brick: The NXT brick is what makes the robot to run. Since it
has the program to give commands for the robot to perform. In other
words the NXT brick is what connects the robot to the RobotC program.
Motor A and B: Both motors A and B were connected to the wheels of
the robot. Motor A was connected to the two front wheels and motor B
to the two back wheels. These motors were used for movement and
rotation.
Motor C: Motor C was connected to the robots arm that was used for
writing. Motor C moved the arm up and down in order for the robot to
write and then later on stop writing.
Light Sensor: The light sensor is the only sensor thats been used. The
light sensor was used in order to scan the intensity of light of the
rectangles for the robot to detect the color of the rectangles according
to the threshold value, according to the color of the rectangles the
robot would know the number of lines it needs to write.
1
2.2
Programming movement and writing:
For the forward movement the function that was used is the motor
function, the motor function was also used for the rotation part. In order to
know the value of degrees for the robot to turn 90 testing was done until
the exact value was found. To turn right the angle in the code is supposed to
be 275 as to turn left the angle was found to be 255.
As for the threshold value of the light sensor it was calculated to be 52.
This value was found by calculating the average light sensor of the white and
black. The threshold is used to detect the color of the rectangle whether it is
black or white.
2.3
The robot is
programmed to turn
90 degrees to the
right then move
forward to reach the
A4 paper that the
robot needs to write
on
If the value of
light sensor is
greater than the
threshold value
then it was
concluded that
the rectangle is
white.
3.0
3.1
Competition Results:
3.2
Each team was given two trials to run the robot. In the first trial the
robot performed perfectly but as mentioned previously the robot didnt stop
accurately in the place it was supposed to stop and another issue that was
considered is the speed of the robot. Therefore we tried to improve the
speed and the accuracy of the stopping and tested it off track before the
second trial. It was found that if we put the motors at its maximum power
then the robot wouldnt perform the tasks well. When the robot was tried for
the second trial after returning the speed to normal, the perfect performed
well and was accurate at the end.
3.3
Although the robot performed well and the teams robot won the first
place in the competition but there might improvement that helped the robot
move faster. Considering other designs of the robot might have finished the
required task in a less duration of time.
Conclusion:
At the end of the competition our teams robot won which is due to the
several testing that was performed to improve the accuracy of the robot. The
robot moved forward to scan the colors of the rectangle in order to classify
the number of the lines that it wrote later. There were 3 motors used, 2 for
the wheels and one for writing.
3