Difference between revisions of "Product Evaluation and Quality Improvement"

From EG1004 Lab Manual
Jump to: navigation, search
(1003 --> 1004)
 
(30 intermediate revisions by the same user not shown)
Line 1: Line 1:
<big>'''This page is currently under construction.'''</big>
= Objectives =
The objectives of this lab are to use product evaluation to determine if a robot design meets minimum standards for accuracy and precision, to use a quality improvement process to modify the robot design, to evaluate the modified robot design, and to use the data from the product evaluation of both robots to determine if the original robot or the modified robot should go into production.


== 1 OBJECTIVES ==
= Overview =
A specified robot design will be assembled using an NXT robotics kit. That design will be evaluated for its accuracy and precision in a distance test and an angle of deviation test. The results of that testing will be compared to a standard that will be set prior to testing. Using reverse engineering, the robot will be disassembled, analyzed, and quality improvements will be made to the design. The modified design will undergo the distance test and angle of deviation test. The data from the product evaluation of both robots will be used to determine if the original robot or the modified robot should go into production.


The experimental goal of this lab is for
== Product Evaluation ==
your team to evaluate a robot design and see if it meets minimum standards for
Product evaluation is a common task for an engineer and for companies. Sometimes the product evaluated will be a company's product, and sometimes companies will be evaluating a competitor's design. In either case, this evaluation will use a '''''standard''''' (an accepted value), determine an '''''average''''', and calculate '''''accuracy''''' and '''''precision'''''.<ref name="one">Oakes, W.C., L.L. Leone, and C.G. Gunn, ''Engineering Your Future'', MI: Great Lakes Press, 2002.</ref>
accuracy and precision and to make quality improvements to the design.         Lastly,
you will determine the robot’s function. To do this your team will build and
program a robot, and test it against the provided EG1004 standard. Next, make
improvements on the design, then take apart the robot, measure the gear and
velocity ratios, and describe the gear train and overall improvements that were
made


The concepts of Product Evaluation and Quality
Professional engineers must be sure of standards. For the purpose of this lab, the EG1004 Standard will be 80% precision and accuracy. This means that the product has to achieve a percent accuracy and percent precision of 80 percent and it has to pass 80 percent of the tests that it undergoes.<ref name="one"></ref>
Improvement will be defined. The importance of accurate measurements will be
demonstrated and show how they relate to both precision and accuracy. From the
data collected, a detailed analysis will be made of the design and improvements
will be implemented and tested. A final analysis will be made upon disassembly.
 
== 2 OVERVIEW ==
 
Your team has been hired by an
engineering firm to evaluate a robot design and make improvements.  A model
will be assembled using a NXT robotics kit. The firm has specified the robot
design they would like you to build and test. You will also make quality
improvements on the robot design. Disassemble the robot and analyze the
component parts. Your assignment is to build and test the design. Record the
data on a spreadsheet. Make design changes and retest the robot with the design
changes and record the data. Finally, disassemble the robot and evaluate for
optimal design.
 
=== Design Analysis ===
 
Product evaluation is a common task for
an engineer. Sometimes the product you evaluate will be one your team built,
and sometimes you will be analyzing a competitor's design. In either case, you
will need to decide on a '''''standard''''' (an accepted value), determine
an '''''average''''', and calculate '''''accuracy''''' and '''''precision'''''.<sup>1</sup>
 
Professional engineers must be sure of
standards. For the purpose of this lab, the EG1004 Standard that you will be
testing to is 80% precision and accuracy. This means that the product you will
be testing has to pass 80% of the tests that it undergoes. It is up to you to
verify that your solutions are accurate based on the standard for your design
project. <sup>1</sup>


When taking measurements, the first step is to determine an average.
When taking measurements, the first step is to determine an average.
Line 49: Line 14:
<math>Average\left(A_p\right) = \frac{P_1+P_2+P_3+...+P_n}{N}\,</math>
<math>Average\left(A_p\right) = \frac{P_1+P_2+P_3+...+P_n}{N}\,</math>


In this equation, <math>A_p\,</math>
In this equation, ''A<sub>p</sub>'' is the average, ''P<sub>1</sub>'', ''P<sub>2</sub>'', ''P<sub>3</sub>'', ''...'', ''P<sub>n</sub>'' are the results of the tests and ''N'' is the total number of tests performed.
is the average, <math>P_1\,</math>, <math>P_2\,</math>, <math>P_3\,</math>, ..., <math>P_n\,</math> are the results of the tests and <math>N\,</math> is the total number of tests to be
performed.


The '''''average''''' is then
The '''''average''''' is compared to the '''''standard'''''. Accuracy is a variable the must always be considered. The degree of accuracy required will allow the results to be verified. Engineers often work on projects that affect people's safety; it is critical that the solutions to the problems solved by technical professionals are '''''accurate'''''.
compared to the '''''standard'''''. Accuracy is a variable you must always
consider. The degree of accuracy required will allow you to verify your
results. Engineers often work on projects that affect people's safety.
Therefore, it is critical that the solutions to the problems you will solve as
technical professionals are '''''accurate'''''.


The comparison of the average to the
The comparison of the average to the standard is called accuracy, defined as ''Acc'' in the following equation:
standard is called accuracy, defined as <math>Acc\,</math> in the following equation:


<math>Acc = \left|P_s - A_p\right|\,</math>
<math>Acc = \left|P_s - A_p\right|\,</math>


In this equation, <math>P_s\,</math> is the
In this equation, ''P<sub>s</sub>'' is the standard value, and ''A<sub>p</sub>'' is the value measured. Accuracy is always a positive number, so use the absolute value in case ''P<sub>s</sub>'' is less than ''A<sub>p</sub>''.
standard value, and <math>A_p\,</math> is the value you measured. Accuracy is always
a positive number, so we take the absolute value in case <math>P_s\,</math> is less
than <math>A_p\,</math>.


Precision is the repeatability of a
Precision is the repeatability of a result, or how close the results are to each other, defined as ''Prec'' in the following equation:
result, or how close the results are to each other, defined as ''Prec'' in
the following equation:


<math>Prec = \left|P_{high} - P_{low}\right|\,</math>
<math>Prec = \left|P_{high} - P_{low}\right|\,</math>


In this equation, <math>Prec\,</math> is
In this equation, ''Prec'' is precision, ''P<sub>high</sub>'' is the highest data value and ''P<sub>low</sub>'' is the lowest data value. Like accuracy, precision is always a positive number, so use an absolute value here as well.
Precision, <math>P_{high}\,</math> is the highest data value and <math>P_{low}\,</math>
is the lowest data value. Like accuracy, precision is always a positive number,
so we use an absolute value here as well.


A product test can be accurate but
A product test can be accurate but imprecise, or precise but inaccurate (Figure 1). The goal is always the combination of accuracy and precision. In order for engineers to make a recommendation based on experimental test data, it is important to determine how a product compares to a standard. Engineers need these benchmarks to determine the quality of a product.
imprecise, or precise but inaccurate. The goal is always the combination of
accuracy and precision. In order for engineers to make a recommendation based
on experimental test data, it is important to determine how a device measures
against a standard. Engineers need these benchmarks to determine the quality of
a product.


[[Image:Lab hardsyn 12.gif]]
[[Image:Lab hardsyn 12.gif|frame|center|Figure 1: Accuracy and precision.]]


By determining the percent accuracy of
By determining the percent accuracy of an experiment, and comparing this percentage to a standard, it can be determined, based on experimental evidence, if the product has passed or failed. The equation for percent accuracy is:
an experiment, and comparing this percentage to a standard, you can determine,
based on experimental evidence, whether the prototype has passed or failed. The
equation for percent accuracy is:


<math>%Acc = \left ( 1 - \frac{ \left | P_s - A_p \right | }{P_s} \right ) \times 100%\,</math>
<math>%Acc = \left ( 1 - \frac{ \left | P_s - A_p \right | }{P_s} \right ) \times 100%\,</math>


In this equation, <math>%Acc\,</math> is the
In this equation, ''%Acc'' is the percent accuracy, ''P<sub>s</sub>'' is the standard value, and ''A<sub>p</sub>'' is the value measured.
percent accuracy, <math>P_s\,</math> is the standard value, and <math>A_p\,</math>
is the value you measured.


Percent accuracy allows an engineer to
Percent accuracy shows how precise a product is compared to the standard. The equation for percent precision is:
determine how precise a device is compared to the standard. The equation for
percent precision is:


<math>%Prec = 100e^{-BP}\,</math>
<math>%Prec = 100e^{-BP}\,</math>


In this equation, <math>%Prec\,</math> is the
In this equation, ''%Prec'' is the percent precision, ''B'' is the exponential decay factor, and ''P'' is the precision measured. Each individual test requires the use of a different exponential decay factor (''B''):
percent precision, <math>B\,</math> is the exponential decay factor, and <math>P\,</math>
: Distance Test: ''B'' = 0.0972
precision you measured.
: Angle of Deviation Test: ''B'' = 0.0323
 
Calculating percent accuracy and percent
precision and then comparing your results to a standard will allow you to
determine the quality of your prototype.
 
Adapted from http://www.whatis.com.<sup>1</sup>


=== Quality Improvement ===
Calculating percent accuracy and percent precision and then comparing those results to a standard determines the quality of the product.


Quality Improvement is a process of
== Quality Improvement ==
analyzing a design and testing it either through physical modeling,
Quality improvement is a process of analyzing a design and testing it either through physical modeling, computer simulation, or mathematical modeling. Quality improvement ensures that a product will perform as expected and allows improvements to be made to the design.
computer simulation or mathematical modeling. Quality improvement ensures that a product will perform as expected and allows us to improve upon the design.


For this lab, you are given a design that will be using a model.
When deciding how to improve the design in this lab, keep these questions in mind:
When deciding how to improve the design, keep these questions in mind:
* Does the robot perform to standard?
* Does the robot perform to standard?
** If no, what can be done to improve its functionality?
** If no, what can be done to improve its functionality? (Drive train, maneuverability, power output, programming, traction)
** If yes, what can be done to improve its performance beyond the standard?
** If yes, what can be done to improve its performance beyond the standard?


Your changes will be implemented after testing the initial design.
Changes will be implemented after testing the initial design.


=== Reverse Engineering ===
== Reverse Engineering ==
Reverse engineering software involves reversing a program's machine code to obtain the original source code or determine the file structures the program uses. This needs to be done when source code is lost or is not available. For example, when a project is reactivated after being dormant for years to add new features to a product, the original design documentation may have disappeared. Also, when companies are writing a program that must interface to a second company's software, the second company may not have any incentive to cooperate by describing how the data in the files they use are organized, forcing the first company to deduce it on their own. Sometimes, this process is also under­taken as a way to improve the performance of a program, to fix a bug, or to find a virus. When the source code is obtained in this way for any of these reasons it is legal and necessary. Reverse engineering software in order to copy it constitutes a copy­right violation and is illegal.<ref name="two">''What Is ''website. TechTarget Network. Retrieved July 29th, 2003.</ref>


Reverse engineering software involves
Hardware reverse engineering involves taking apart a device to see how it works. If a processor manufacturer wants to see how a competitor's processor works, the company can purchase the processor, disassemble it, and then make a new processor similar to it. In some countries, this process is illegal. Hardware reverse engineering is quite expensive and requires an expert in the field.<ref name="two"></ref>
reversing a program's machine code to obtain the original source code or
determine the file structures the program uses. This needs to be done when
source code is lost or is not available. For example, when a project is
reactivated after being dormant for years to add new features to a product, the
original design documentation may have disappeared. Also, when companies are
writing a program that must interface to a second company's software, the
second company may not have any incentive to cooperate by describing how the
data in the files they use are organized, forcing the first company to deduce
it on their own. Sometimes, this process is also under­taken as a way to
improve the performance of a program, to fix a bug, or to find a virus. When
the source code is obtained in this way for any of these reasons it is legal
and necessary. Reverse engineering software in order to copy it constitutes a
copy­right violation and is illegal.


Hardware reverse engineering involves
When beginning the process of reverse engineering the robot, identifying the gear trains and the individual gears used in the original design and in the final design is critical to understanding the robot's operation.
taking apart a device to see how it works. If a processor manufacturer wants to
see how a competitor's processor works, the company can purchase the processor,
disassemble it, and then make a new processor similar to it. In some countries,
this process is illegal. Hardware reverse engineering is quite expensive and
requires an expert in the field.


When you begin the process of reverse
There are two types of gear trains: simple (Figure 2) and compound (Figure 3). A simple gear train has its gears arranged in a line (see Figure 1).
engineering your robot, identifying the gear trains and the individual gears
used in the original design and in the final design is critical to your
understanding of the robot's operation.


There are two types of gear trains:
[[Image:Lab reveng 1.jpg|frame|center|Figure 2: Simple gear train.]]
simple and compound. A simple gear train has its gears arranged in a line (see
Figure 1).


[[Image:Lab reveng 1.jpg|frame|none|Figure 1: Simple gear train]]
Compound gear trains use axles to connect the component gears (see Figure 3).


Compound gear trains use axles to connect the component gears (see Figure 2).
[[Image:Lab reveng 2.jpg|frame|center|Figure 3: Compound gear train.]]


[[Image:Lab reveng 2.jpg|frame|none|Figure 2: Compound gear train]]
Gear trains have measurable characteristics known as gear ratio and velocity ratio. These characteristics are inversely proportional. Gear ratio equals output over input, while velocity ratio equals input over output. If multiple gears are being used, the gear ratio and velocity ratio are the product of these ratios for each individual gear. To determine input and output values, engineers count the number of teeth on each gear or by measuring each gear's radius.


Gear trains have measurable
For example, to compute the gear ratio of the gear trains in Figures 2 and 3, these formulas (Figure 4) are used, where the values are the radii of the gears in the gear train:
characteristics known as gear ratio and gear velocity. These characteristics
are inversely proportional. Gear ratio equals output over input, while velocity
ratio equals input over output. If multiple gears are being used, the overall
gear ratio and velocity ratio is the product of these ratios for each
individual gear. To determine input and output values, engineers would count
the number of teeth on each gear. However, we can get an acceptably accurate
value by measuring each gear's radius instead.


For example, to compute the gear ratio
{| class="wikitable" style="text-align: center; margin: 0px auto;"
of the gear trains above, use these formulas, where the values are the radii of
|+ style="caption-side: bottom;" | Figure 4: Gear ratio.
the gears in the gear train:
 
{| border="1" style="text-align: center"
|<math>Gear Ratio = \frac{2}{1} \times \frac{4}{2} = 4\,</math><br />Simple gear train
|<math>Gear Ratio = \frac{2}{1} \times \frac{4}{2} = 4\,</math><br />Simple gear train
|<math>Gear Ratio = \frac{N_2}{N_1} \times \frac{N_4}{N_3} \times \frac{N_6}{N_5} \times \frac{N_8}{N_7}\,</math><br />Compound gear train
|<math>Gear Ratio = \frac{N_2}{N_1} \times \frac{N_4}{N_3} \times \frac{N_6}{N_5} \times \frac{N_8}{N_7}\,</math><br />Compound gear train
|}
|}


For example, to compute the velocity ratio of the gear trains above, use these formulas:
For example, to compute the velocity ratio of the gear trains above, these formulas (Figure 5) are used:


{| border="1" style="text-align: center"
{| class="wikitable" style="text-align: center; margin: 0px auto;"
|+ style="caption-side: bottom;" | Figure 5: Velocity ratio.
|<math>Velocity Ratio = \frac{1}{2} \times \frac{2}{4} = \frac{1}{4}\,</math><br />Simple gear train
|<math>Velocity Ratio = \frac{1}{2} \times \frac{2}{4} = \frac{1}{4}\,</math><br />Simple gear train
|<math>Velocity Ratio = \frac{N_1}{N_2} \times \frac{N_3}{N_4} \times \frac{N_5}{N_6} \times \frac{N_7}{N_8}\,</math><br />Compound gear train
|<math>Velocity Ratio = \frac{N_1}{N_2} \times \frac{N_3}{N_4} \times \frac{N_5}{N_6} \times \frac{N_7}{N_8}\,</math><br />Compound gear train
|}
|}


It is important to note that the input
It is important to note that the input is the source of rotation in a system, like a motor, and the output is the final gear of rotation in a system, like a wheel.
is the source of rotation in a system, like a motor, and the output is the
final gear of rotation in a system, like a wheel.


{| border="1"
{| class="wikitable" style="text-align: center; margin: 0px auto;"
|+ align="bottom" | Figure 3: Types of Gears<br />Figures 3a-d courtesy of http://www.howthingswork.com<br />Figure 3f courtesy of Honda Motor Company, Inc.
|+ style="caption-side: bottom;" | Figure 6: Types of Gears<br />Figures 6a-d courtesy of http://www.howthingswork.com<br />Figure 6f courtesy of Honda Motor Company, Inc.
|[[Image:Lab reveng 7.jpg|frame|center|'''Figure 3a: Rack gear.''' Its purpose is to change rotation into linear motion.]]
|[[Image:Lab reveng 7.jpg|frame|center|'''Figure 6a: Rack gear.''' Its purpose is to change rotation into linear motion.]]
|[[Image:Lab reveng 8.jpg|frame|center|'''Figure 3b: Crown gear.''' Its purpose is to change the direction of rotation perpendicularly.]]
|[[Image:Lab reveng 8.jpg|frame|center|'''Figure 6b: Crown gear.''' Its purpose is to change the direction of rotation perpendicularly.]]
|-
|-
|[[Image:Lab reveng 9.jpg|frame|center|'''Figure 3c: Spur gear.''' Its purpose is to transmit torque through the gear train.]]
|[[Image:Lab reveng 9.jpg|frame|center|'''Figure 6c: Spur gear.''' Its purpose is to transmit torque through the gear train.]]
|[[Image:Lab reveng 10.jpg|frame|center|'''Figure 3d: Worm gear.''' Its purpose is to change the direction of rotation perpendicularly.]]
|[[Image:Lab reveng 10.jpg|frame|center|'''Figure 6d: Worm gear.''' Its purpose is to change the direction of rotation perpendicularly.]]
|-
|-
|[[Image:Lab reveng 11.jpg|frame|center|'''Figure 3e: Idler gear.''' Its purpose is to transfer force while not affecting the gear or velocity ratios.]]
|[[Image:Lab reveng 11.jpg|frame|center|'''Figure 6e: Idler gear.''' Its purpose is to transfer force while not affecting the gear or velocity ratios.]]
|[[Image:Lab reveng 12.jpg|frame|center|'''Figure 3f: Pulley gear.''' Its purpose is to transmit rotation from one point to one or more other points.]]
|[[Image:Lab reveng 12.jpg|frame|center|'''Figure 6f: Pulley gear.''' Its purpose is to transmit rotation from one point to one or more other points.]]
|}
|}


Your objective as you reverse engineer
The objective of reverse engineering the robot is to understand how it works and to calculate the gear and velocity ratios for its drive train (remember the wheels are part of the drive train). Remember that engineers reverse engineer products to reproduce or improve them. As the robot is disassembled, improvements to the robot's design should be considered.
your robot is to understand how it works and to calculate the gear and velocity
ratios for its drive train (remember the wheels are part of the drive train).
Remember that engineers reverse engineer products to reproduce or improve them.
As you disassemble your device, consider how you would improve your robot's
design.


== 3 YOUR ASSIGNMENT ==
'''Note''': Using gear and velocity ratios have proven to be extremely helpful when building robots for your EG1004 Semester-Long Design Project.


=== Individual Lab Report ===
= Design Considerations =
Carefully consider the desired results and what needs to be done to achieve it:
* What made or will make the results inconsistent?
* If the robot failed a test, why did it fail?


Follow the lab report guidelines laid out in the page called [[Specifications for Writing Your Lab Reports]] in the ''Technical Communication'' section of this manual. As you write, the following discussion points should be addressed in the appropriate section of your lab report:
= Materials and Equipment =
* Mindstorms kit
* Computer with Mindstorms software
* Protractor and ruler
* Graph paper


* Discuss product evaluation and the need for it.
= Procedure =
* Discuss Quality Improvement and its importance.
* Explain why reverse engineering is important.
* Discuss standard, average, accuracy, and precision.
* Discuss the NXT kit and software used.
* Assess the techniques used in the testing process.
* Discuss better testing methods for the robot design.
* Describe how the components fit together and how the device was constructed.
* Describe and show how you calculated the gear and velocity ratios, and discuss their importance in the overall robot design as well.
* Analyze the original robot design and the final design then make a decision which design to go with. Remember to substantiate your decision with the data and facts collected.
* Make a final evaluation of the product: should it go into production? Describe its accuracy and precision.
* Discuss the importance of <math>%Prec\,</math> and <math>%Acc\,</math> in determining product quality.
* Recommend if any design improvements should be made.


=== Team PowerPoint Presentation ===
== Problem Statement ==
Evaluate a robot design by building a specified robot design. Test the robot design, make improvements on the design, and retest it. While taking it apart, analyze the drive train.


Follow the presentation guidelines laid out in the page called [[EG1004 Lab Presentation
# Build a robot according to the design assigned by the TA.
Format]] in the ''Introduction to Technical Presentations'' section of this manual.
# Start the Mindstorms Program. On the welcome screen, type in a name for the program and press Go.
When you are preparing your presentation, consider the following points:
#: [[Image:Lab hardsyn 2.jpg|thumb|center|640px]]
 
# Click on Complete Palette to see all the programming icons. Turn off Robot Educator by clicking the small X.
* Based on the test results, what is your determination for the product's marketability?
#: [[Image:Lab hardsyn 3.jpg|thumb|center|640px]]
* If determinations were negative, what improvements could be made?
# The screen should look like this. Write a program.
* Why is product evaluation important to you?
#: [[Image:Lab hardsyn 4.jpg|thumb|center|640px]]
* Discuss why Quality Improvement is important.
# Click on Actions, then on the Motor icon to select it.
* Discuss the importance of gear and velocity ratios.
#: [[Image:Lab hardsyn 5.jpg|thumb|center|640px]]
 
# Place the Motor icon on to the Start square.
== 4 MATERIALS AND EQUIPMENT ==
#: [[Image:Lab hardsyn 6.jpg|thumb|center|640px]]
 
# Click the Motor icon to see its properties. Define exactly how the motor should spin and when to stop.
* Mindstorms Kit
#: [[Image:Lab hardsyn 7.jpg|thumb|center|640px]]
* Computer with Mindstorms Software
# Continue writing the program by placing icons after each other. The execution of the program will run from left to right. In the sample program below, Motor A will spin forward for five seconds, stop, wait five seconds, and then spin backward for another five seconds.
* Protractor and Ruler
#: [[Image:Lab hardsyn 8.jpg|thumb|center|640px]]
* Graph Paper
# For this lab, use the Move icon to easily instruct the robot to move.
 
#: [[Image:Lab hardsyn 9.jpg|thumb|center|640px]]
'''''Remember:'''You are required to take notes. Experimental details are easily forgotten unless written down. EG Standard Note Paper can be downloaded and printed from here: https://eg.poly.edu/downloads/Note_paper.zip. Use your lab notes to write the Procedure section of your lab report. At the end of each lab your TA will scan your lab notes and upload them to http://eg.poly.edu. You must attach your lab notes at the end of your lab report (use the &quot;Insert Object&quot; command in MS Word after your Conclusion). Keeping careful notes is an essential component of all scientific practice.''
# When needed to, use Robot Educator to quickly learn how to program in Lego Mindstorms.
 
#: [[Image:Lab hardsyn 10.jpg|thumb|center|640px]]
== 5 PROCEDURE ==


=== Problem Statement ===
Program and test the robot for each test specified. To do this, make a list of the tests. Brainstorm what the robot should do in each test. Then, write the program. Record the standard, average, accuracy, and precision. If the robot does not operate correctly, troubleshoot the problem. The TA must initial the original data.


You have been hired by an engineering
'''Note:''' The initial program cannot be used for the following tests.
firm to build and evaluate a robot design by building a specified robot design.
You have been asked to test the robot design, make improvements on the design
and retest it. While taking it apart, analyze the drive train.
 
# Build a robot according to the lab handout provided by your TA.
# Start the Mindstorms Program. On the welcome screen type in a name for your program and press Go.
#: [[Image:Lab hardsyn 2.jpg|thumb|none|640px]]
# Click on Complete Pallete to see all the programming icons. Turn off Robot Educator by clicking the small X.
#: [[Image:Lab hardsyn 3.jpg|thumb|none|640px]]
# Your screen should look like this. You are now ready to write a program.
#: [[Image:Lab hardsyn 4.jpg|thumb|none|640px]]
# Click on Actions, then on the Motor icon to select it.
#: [[Image:Lab hardsyn 5.jpg|thumb|none|640px]]
# Place the motor icon on to the "start" square.
#: [[Image:Lab hardsyn 6.jpg|thumb|none|640px]]
# Click the motor icon to see its properties. Here you can define exactly how you want the motor to spin and when to stop.
#: [[Image:Lab hardsyn 7.jpg|thumb|none|640px]]
# Continue writing your program by placing icons after each other. The execution of your program will run from left to right. In the sample program below, motor A will spin forward for 5 seconds, Stop, Wait 5 seconds, and then spin backwards for another 5 seconds.
#: [[Image:Lab hardsyn 8.jpg|thumb|none|640px]]
# For this lab you can use the Move icon to easily instruct your robot to move.
#: [[Image:Lab hardsyn 9.jpg|thumb|none|640px]]
# Whenever you need to, you can use Robot Educator to quickly learn how to program in Lego Mindstorms.
#: [[Image:Lab hardsyn 10.jpg|thumb|none|640px]]


'''Note:''' Program and test your robot for each test specified. To do this, make a list of the tests in your lab notebook. Brainstorm what you want the robot to do in each test. Then, use your notes to write your program. Record the standard, average, accuracy, and precision. If your robot does not operate correctly, troubleshoot the problem. Your TA must initial your original data.
== Distance Test ==
'''Note:''' Use centimeters for this test.''


=== Distance Test ===
In this test, the robot will go forward a set distance in a specified time. Test the robot's accuracy and precision for this distance. Before testing begins, the standard must be found. To find the standard, program the robot to go forward for five seconds and measure the distance it travels. Divide the result by five, and then multiply by four. This number is the standard.


'''''Note:''' Use the Metric system for this test.''
<math>P_s = \frac{distance\ traveled\ in\ 5\ seconds}{5} \times 4\,</math>


In this test, the robot will go forward
Once the standard has been obtained, the testing can begin.
a set distance in a specified time. You are to test the robot's accuracy and
precision for this distance. Before testing begins the standard must be found.
To find the standard, program the robot to go forward for 5 seconds and measure
the distance it travels. Divide your result by 5, and then multiply by 4. This
number is your standard. Once the standard has been obtained, the testing can
begin.


'''Warning: Read the section on the Angle of Deviation Test before performing this test.'''
[[Image:ProdEval1.png|thumb|480px|right|Figure 4: Sample drawing paper with data. The green line represents the five-second standard measurement. The blue lines represent the five four-second trials.]]
'''Warning:''' Read the section on the [[#Angle of Deviation Test|Angle of Deviation Test]] before performing this test.


# Upload a program that will set the robot to travel for 4 seconds.
# Upload a program that will prompt the robot to travel for 4 seconds.
# Measure the distance traveled.
# Measure the distance traveled.
# Repeat this test 5 times.
# Repeat this test five times.


=== Angle of Deviation Test ===
== Angle of Deviation Test ==
'''Note:''' This test is performed at the same time as the Distance Test. Since the robot is expected to travel in a straight line, the standard is 360&deg;.


<p class=MsoNormal style='line-height:normal'>'''''<span style='font-size:
<math>P_s = 360^\circ\,</math>
12.0pt;font-family:"Times New Roman","serif"'>Note:</span>'''''''<span
style='font-size:12.0pt;font-family:"Times New Roman","serif"'> This test can
be performed at the same time as the Distance Test. Since the robot is expected
to travel in a straight line, the standard is 360°.</span>''</p>


<p class=MsoNormal style='line-height:normal'>''<span style='font-size:12.0pt;
In this test, the robot will move forward for four seconds and the angle of deviation will be recorded. The angle of deviation is the angle between a straight line and a line drawn from the starting point to where the robot finishes.
font-family:"Times New Roman","serif"'>In this test, the robot will move
forward for 4 seconds and the angle of deviation will be recorded. The angle of
deviation is the angle between a straight line and a line drawn from the
starting point to where the robot finishes.</span>''</p>


<ol start=1 type=1>
# Use a protractor to draw a 0&deg; line from the start point.
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
# Mark the start point and place the robot there. Identify a reference point on the robot.
    font-family:"Times New Roman","serif"'>Use a protractor to draw a line
# Run the Distance Test.
    from the start point.</span></li>
# Make a mark at the point where the robot finished, and draw a line from the start point to this mark.
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
# Measure the positive angle of deviation.
    font-family:"Times New Roman","serif"'>Mark the start point and place your
# Repeat this procedure five times.
    robot there. Identify a reference point on the robot.</span></li>
<br style="clear: both;" />
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Run the Distance Test.</span></li>
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Make a mark at the point where the
    robot finished, and draw a line from the start point to this mark.</span></li>
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Measure the positive angle of
    deviation.</span></li>
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Repeat this procedure 5 times. </span></li>
</ol>


=== Quality Improvement ===
== Quality Improvement ==
# Assess the robot design from data collected and from observations.
# Make necessary adjustments.
# Retest the robot and collect data.
# Take pictures of both the original design and the modified design.


<p class=MsoListParagraphCxSpFirst style='margin-left:38.25pt;text-indent:-.25in;
== Reverse Engineering ==
line-height:normal'>'''<span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>1.)<span
# Visually assess the robot's design. Consider how it works.
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span>''''''<span
# Sketch the front, top, and most detailed side of the robot. Be sure to include dimensions in the sketch.
style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Assess Robot
# Also sketch the most detailed view of the gear train.
design from data collected and from observations</span>'''</p>
# Before disassembling the robot, ask the TA to take a picture of it.
# Disassemble the robot. Analyze its inner workings and sketch the gear train(s). Note: All sketches in EG1004 must be done in pencil.
# Have all sketches and original data signed by the TA.


<p class=MsoListParagraphCxSpMiddle style='margin-left:38.25pt;text-indent:
With measurements for both tests performed and an analysis of the drive train of the robot, data analysis must begin. Calculate the average, accuracy, and precision for each test. Compare the results to the standard in order to determine if the robot is accurate and precise. Label all major components and describe their functions. Calculate percent accuracy and percent precision. Calculate the gear and velocity ratios.  
-.25in;line-height:normal'>'''<span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>2.)<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span>''''''<span
style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Make necessary
adjustments</span>'''</p>


<p class=MsoListParagraphCxSpMiddle style='margin-left:38.25pt;text-indent:
:'''Examples'''
-.25in;line-height:normal'>'''<span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>3.)<span
:* If ''P<sub>s</sub>'' was 5cm and ''A<sub>p</sub>'' was 7cm, then the percent accuracy (''%Acc'') is 60%. This test does not pass the 80% criterion.
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span>''''''<span
:* If ''P<sub>s</sub>'' was 5cm and ''A<sub>p</sub>'' was 25cm, then the result of the percent accuracy equation is -300%. Since a negative percentage has no meaning in engineering, it can be said that the product has a percent accuracy of zero. Any percent accuracy less than zero is equal to zero.
style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Retest robot and
:* If ''P<sub>s</sub>'' was 10cm and ''A<sub>p</sub>'' was 8cm, then the percent accuracy is exactly 80%, which is a passing result.
collect data</span>'''</p>
:* For the Distance Test, if the precision (''P'') was 0.5cm, the percent precision (''%Prec'') is 95.3%. This robot passes the 80% criterion for this test.
:* For the Angle of Deviation Test, if the precision (''P'') was 10.25°, the percent precision (''$Prec'') is 71.8%. This robot does not pass the 80% criterion.


<p class=MsoListParagraphCxSpLast style='margin-left:38.25pt;text-indent:-.25in;
== Tabulation of Results ==
line-height:normal'>'''<span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>4.)<span
To decide if the product is ready to manufacture, arrange the data in a table designed to calculate its precision and accuracy. Remember it must pass all the tests at a rate of at least 80%.
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span>''''''<span
style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Take pictures of
both original design and finalized design</span>'''</p>


<p class=MsoNormal style='line-height:normal'>'''<span style='font-size:12.0pt;
{| class="wikitable" style="text-align: center; margin: 0px auto;"
font-family:"Times New Roman","serif"'>&nbsp;</span>'''</p>
! Original Design !! Accuracy !! ''%Acc'' !! Pass/Fail !! Precision !! ''%Prec'' !! Pass/Fail
|-
! Distance Test || || || || || ||
|-
! Angle of Deviation Test || || || || || ||
|}


=== Reverse Engineering ===
Retest with new design using the same table, record the data.


<ol start=1 type=1>
{| class="wikitable" style="text-align: center; margin: 0px auto;"
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
! New Design !! Accuracy !! ''%Acc'' !! Pass/Fail !! Precision !! ''%Prec'' !! Pass/Fail
    font-family:"Times New Roman","serif"'>Visually assess the robot's design.
|-
    Consider how it works. </span></li>
! Distance Test || || || || || ||
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
|-
    font-family:"Times New Roman","serif"'>Sketch the front, top, and most
! Angle of Deviation Test || || || || || ||
    detailed side of the robot. Be sure to include dimensions in your sketch.</span></li>
|}
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Also sketch the most detailed view
    of the gear train.</span></li>
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Before disassembling your robot,
    ask your TA to take a picture of it.</span></li>
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Disassemble the robot. Analyze its
    inner workings and sketch the gear train(s). Note: All sketches in EG1004
    must be done in pencil.</span></li>
<li class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
    font-family:"Times New Roman","serif"'>Have all sketches and original data
    signed by your TA.</span></li>
</ol>


<p class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
The lab work is now complete. Please clean up the workstation. Return all unused materials to the TA. Refer to the [[#Assignment|Assignment]] section for the instructions needed to prepare the lab report.
font-family:"Times New Roman","serif"'>You now have measurements for both tests
you have performed and an analysis of the drive train of your robot. You must
analyze this data. Calculate the average, accuracy, and precision for each
test. Compare your results to the standard in order to determine if your robot
is accurate and precise. Label all major components and describe their
functions. Calculate the gear and velocity ratios. You must also calculate
percent accuracy and percent precision. Use this formula to calculate percent
accuracy:</span></p>


<p class=MsoNormal align=center style='text-align:center;line-height:normal'><img
= Assignment =
border=0 width=196 height=59 id="Picture 141" src="Quality_files/image003.gif"
alt="Image:Lab hardsyn 13.gif"></p>


<p class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
== Individual Lab Report ==
font-family:"Times New Roman","serif"'>In this equation, ''%Acc'' is the
percent accuracy, ''P<sub>S</sub>'' is the standard value, and ''A<sub>P</sub>''
is the value you measured.</span></p>


=== Tabulation of Results ===
Follow the lab report guidelines laid out in the page called [[Specifications for Writing Your Lab Reports]] in the ''Technical Communication'' section of this manual. The following discussion points should be addressed in the appropriate section of the lab report:


<p class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
* Discuss product evaluation and the need for it.
font-family:"Times New Roman","serif"'>To decide if the product is ready to
* Discuss quality improvement and its importance.
manufacture, arrange your data in a table designed to calculate its precision
* Explain why reverse engineering is important.
and accuracy. Remember it must pass all the tests at a rate of at least 80%.</span></p>
* Discuss a standard, an average, accuracy, and precision.
* Discuss the NXT kit and software used.
* Assess the techniques used in the testing process.
* Discuss better testing methods for the robot design.
* Describe how the components fit together and how the device was constructed.
* Describe and show how the gear and velocity ratios were calculated, and discuss their importance in the overall robot design as well.
* Analyze the original robot design and the final design then make a decision which design is better. Remember to substantiate the decision with the data, observations, and facts collected.
* Make a final evaluation of the product: should it go into production? Describe its accuracy and precision.
* Discuss the importance of ''%Prec'' and ''%Acc'' in determining product quality.
* Recommend if any design improvements should be made.


<div align=center>
{{Lab notes}}


<table class=MsoNormalTable border=1 cellspacing=0 cellpadding=0>
== Team PowerPoint Presentation ==
<tr>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Accuracy</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>%Acc</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Pass/Fail</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Precision</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>%Prec</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Pass/Fail</span></p>
  </td>
</tr>
<tr>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Distance
  Test</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
</tr>
<tr>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Angle
  of Deviation Test</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
</tr>
<tr>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>Rotational
  Test</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
  <td style='padding:.75pt .75pt .75pt .75pt'>
  <p class=MsoNormal style='margin-bottom:0in;margin-bottom:.0001pt;line-height:
  normal'><span style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>
  </td>
</tr>
</table>


</div>
Follow the presentation guidelines laid out in the page called [[EG1004 Lab Presentation Format]] in the ''Introduction to Technical Presentations'' section of this manual. When preparing the presentation, consider the following points:


<p class=MsoNormal style='line-height:normal'><span style='font-size:12.0pt;
* Based on the test results, what is the product's marketability?
font-family:"Times New Roman","serif"'> Retest with new design using the same
* If determinations were negative, what improvements could be made?
table, record your data. Your lab work is now complete. Please clean up your
* Why is product evaluation important?
workstation. Return all unused materials to your TA. Refer to section '''''3
* Discuss why quality improvement is important.
Your Assignment''''' for the instructions you need to prepare your lab
* Discuss the importance of gear and velocity ratios.
report.</span></p>
 
== Footnotes ==
 
<p class=MsoNormal style='line-height:normal'><sup><span style='font-size:12.0pt;
font-family:"Times New Roman","serif"'>1</span></sup><span style='font-size:
12.0pt;font-family:"Times New Roman","serif"'> Oakes, W.C., L.L. Leone, and
C.G. Gunn, ''Engineering Your Future'' w:st=&quot;on&quot;&gt;MI: Great
Lakes Press, 2002</span></p>
 
<p class=MsoNormal style='line-height:normal'><sup><span style='font-size:12.0pt;
font-family:"Times New Roman","serif"'>1</span></sup><span style='font-size:
12.0pt;font-family:"Times New Roman","serif"'> ''What Is ''website.
TechTarget Network. Retrieved July 29th, 2003.</span></p>
 
<p class=MsoNormal style='margin-left:.5in;line-height:normal'><span
style='font-size:12.0pt;font-family:"Times New Roman","serif"'>&nbsp;</span></p>


<p class=MsoNormal><span style='font-size:14.0pt;line-height:115%'>&nbsp;</span></p>
= Footnotes =
{{Reflist}}


</div>
{{Laboratory Experiments}}

Latest revision as of 02:27, 31 August 2022

Objectives

The objectives of this lab are to use product evaluation to determine if a robot design meets minimum standards for accuracy and precision, to use a quality improvement process to modify the robot design, to evaluate the modified robot design, and to use the data from the product evaluation of both robots to determine if the original robot or the modified robot should go into production.

Overview

A specified robot design will be assembled using an NXT robotics kit. That design will be evaluated for its accuracy and precision in a distance test and an angle of deviation test. The results of that testing will be compared to a standard that will be set prior to testing. Using reverse engineering, the robot will be disassembled, analyzed, and quality improvements will be made to the design. The modified design will undergo the distance test and angle of deviation test. The data from the product evaluation of both robots will be used to determine if the original robot or the modified robot should go into production.

Product Evaluation

Product evaluation is a common task for an engineer and for companies. Sometimes the product evaluated will be a company's product, and sometimes companies will be evaluating a competitor's design. In either case, this evaluation will use a standard (an accepted value), determine an average, and calculate accuracy and precision.[1]

Professional engineers must be sure of standards. For the purpose of this lab, the EG1004 Standard will be 80% precision and accuracy. This means that the product has to achieve a percent accuracy and percent precision of 80 percent and it has to pass 80 percent of the tests that it undergoes.[1]

When taking measurements, the first step is to determine an average.

In this equation, Ap is the average, P1, P2, P3, ..., Pn are the results of the tests and N is the total number of tests performed.

The average is compared to the standard. Accuracy is a variable the must always be considered. The degree of accuracy required will allow the results to be verified. Engineers often work on projects that affect people's safety; it is critical that the solutions to the problems solved by technical professionals are accurate.

The comparison of the average to the standard is called accuracy, defined as Acc in the following equation:

In this equation, Ps is the standard value, and Ap is the value measured. Accuracy is always a positive number, so use the absolute value in case Ps is less than Ap.

Precision is the repeatability of a result, or how close the results are to each other, defined as Prec in the following equation:

In this equation, Prec is precision, Phigh is the highest data value and Plow is the lowest data value. Like accuracy, precision is always a positive number, so use an absolute value here as well.

A product test can be accurate but imprecise, or precise but inaccurate (Figure 1). The goal is always the combination of accuracy and precision. In order for engineers to make a recommendation based on experimental test data, it is important to determine how a product compares to a standard. Engineers need these benchmarks to determine the quality of a product.

Figure 1: Accuracy and precision.

By determining the percent accuracy of an experiment, and comparing this percentage to a standard, it can be determined, based on experimental evidence, if the product has passed or failed. The equation for percent accuracy is:

In this equation, %Acc is the percent accuracy, Ps is the standard value, and Ap is the value measured.

Percent accuracy shows how precise a product is compared to the standard. The equation for percent precision is:

In this equation, %Prec is the percent precision, B is the exponential decay factor, and P is the precision measured. Each individual test requires the use of a different exponential decay factor (B):

Distance Test: B = 0.0972
Angle of Deviation Test: B = 0.0323

Calculating percent accuracy and percent precision and then comparing those results to a standard determines the quality of the product.

Quality Improvement

Quality improvement is a process of analyzing a design and testing it either through physical modeling, computer simulation, or mathematical modeling. Quality improvement ensures that a product will perform as expected and allows improvements to be made to the design.

When deciding how to improve the design in this lab, keep these questions in mind:

  • Does the robot perform to standard?
    • If no, what can be done to improve its functionality? (Drive train, maneuverability, power output, programming, traction)
    • If yes, what can be done to improve its performance beyond the standard?

Changes will be implemented after testing the initial design.

Reverse Engineering

Reverse engineering software involves reversing a program's machine code to obtain the original source code or determine the file structures the program uses. This needs to be done when source code is lost or is not available. For example, when a project is reactivated after being dormant for years to add new features to a product, the original design documentation may have disappeared. Also, when companies are writing a program that must interface to a second company's software, the second company may not have any incentive to cooperate by describing how the data in the files they use are organized, forcing the first company to deduce it on their own. Sometimes, this process is also under­taken as a way to improve the performance of a program, to fix a bug, or to find a virus. When the source code is obtained in this way for any of these reasons it is legal and necessary. Reverse engineering software in order to copy it constitutes a copy­right violation and is illegal.[2]

Hardware reverse engineering involves taking apart a device to see how it works. If a processor manufacturer wants to see how a competitor's processor works, the company can purchase the processor, disassemble it, and then make a new processor similar to it. In some countries, this process is illegal. Hardware reverse engineering is quite expensive and requires an expert in the field.[2]

When beginning the process of reverse engineering the robot, identifying the gear trains and the individual gears used in the original design and in the final design is critical to understanding the robot's operation.

There are two types of gear trains: simple (Figure 2) and compound (Figure 3). A simple gear train has its gears arranged in a line (see Figure 1).

Figure 2: Simple gear train.

Compound gear trains use axles to connect the component gears (see Figure 3).

Figure 3: Compound gear train.

Gear trains have measurable characteristics known as gear ratio and velocity ratio. These characteristics are inversely proportional. Gear ratio equals output over input, while velocity ratio equals input over output. If multiple gears are being used, the gear ratio and velocity ratio are the product of these ratios for each individual gear. To determine input and output values, engineers count the number of teeth on each gear or by measuring each gear's radius.

For example, to compute the gear ratio of the gear trains in Figures 2 and 3, these formulas (Figure 4) are used, where the values are the radii of the gears in the gear train:

Figure 4: Gear ratio.

Simple gear train

Compound gear train

For example, to compute the velocity ratio of the gear trains above, these formulas (Figure 5) are used:

Figure 5: Velocity ratio.

Simple gear train

Compound gear train

It is important to note that the input is the source of rotation in a system, like a motor, and the output is the final gear of rotation in a system, like a wheel.

Figure 6: Types of Gears
Figures 6a-d courtesy of http://www.howthingswork.com
Figure 6f courtesy of Honda Motor Company, Inc.
Figure 6a: Rack gear. Its purpose is to change rotation into linear motion.
Figure 6b: Crown gear. Its purpose is to change the direction of rotation perpendicularly.
Figure 6c: Spur gear. Its purpose is to transmit torque through the gear train.
Figure 6d: Worm gear. Its purpose is to change the direction of rotation perpendicularly.
Figure 6e: Idler gear. Its purpose is to transfer force while not affecting the gear or velocity ratios.
Figure 6f: Pulley gear. Its purpose is to transmit rotation from one point to one or more other points.

The objective of reverse engineering the robot is to understand how it works and to calculate the gear and velocity ratios for its drive train (remember the wheels are part of the drive train). Remember that engineers reverse engineer products to reproduce or improve them. As the robot is disassembled, improvements to the robot's design should be considered.

Note: Using gear and velocity ratios have proven to be extremely helpful when building robots for your EG1004 Semester-Long Design Project.

Design Considerations

Carefully consider the desired results and what needs to be done to achieve it:

  • What made or will make the results inconsistent?
  • If the robot failed a test, why did it fail?

Materials and Equipment

  • Mindstorms kit
  • Computer with Mindstorms software
  • Protractor and ruler
  • Graph paper

Procedure

Problem Statement

Evaluate a robot design by building a specified robot design. Test the robot design, make improvements on the design, and retest it. While taking it apart, analyze the drive train.

  1. Build a robot according to the design assigned by the TA.
  2. Start the Mindstorms Program. On the welcome screen, type in a name for the program and press Go.
    Lab hardsyn 2.jpg
  3. Click on Complete Palette to see all the programming icons. Turn off Robot Educator by clicking the small X.
    Lab hardsyn 3.jpg
  4. The screen should look like this. Write a program.
    Lab hardsyn 4.jpg
  5. Click on Actions, then on the Motor icon to select it.
    Lab hardsyn 5.jpg
  6. Place the Motor icon on to the Start square.
    Lab hardsyn 6.jpg
  7. Click the Motor icon to see its properties. Define exactly how the motor should spin and when to stop.
    Lab hardsyn 7.jpg
  8. Continue writing the program by placing icons after each other. The execution of the program will run from left to right. In the sample program below, Motor A will spin forward for five seconds, stop, wait five seconds, and then spin backward for another five seconds.
    Lab hardsyn 8.jpg
  9. For this lab, use the Move icon to easily instruct the robot to move.
    Lab hardsyn 9.jpg
  10. When needed to, use Robot Educator to quickly learn how to program in Lego Mindstorms.
    Lab hardsyn 10.jpg

Program and test the robot for each test specified. To do this, make a list of the tests. Brainstorm what the robot should do in each test. Then, write the program. Record the standard, average, accuracy, and precision. If the robot does not operate correctly, troubleshoot the problem. The TA must initial the original data.

Note: The initial program cannot be used for the following tests.

Distance Test

Note: Use centimeters for this test.

In this test, the robot will go forward a set distance in a specified time. Test the robot's accuracy and precision for this distance. Before testing begins, the standard must be found. To find the standard, program the robot to go forward for five seconds and measure the distance it travels. Divide the result by five, and then multiply by four. This number is the standard.

Once the standard has been obtained, the testing can begin.

Figure 4: Sample drawing paper with data. The green line represents the five-second standard measurement. The blue lines represent the five four-second trials.

Warning: Read the section on the Angle of Deviation Test before performing this test.

  1. Upload a program that will prompt the robot to travel for 4 seconds.
  2. Measure the distance traveled.
  3. Repeat this test five times.

Angle of Deviation Test

Note: This test is performed at the same time as the Distance Test. Since the robot is expected to travel in a straight line, the standard is 360°.

In this test, the robot will move forward for four seconds and the angle of deviation will be recorded. The angle of deviation is the angle between a straight line and a line drawn from the starting point to where the robot finishes.

  1. Use a protractor to draw a 0° line from the start point.
  2. Mark the start point and place the robot there. Identify a reference point on the robot.
  3. Run the Distance Test.
  4. Make a mark at the point where the robot finished, and draw a line from the start point to this mark.
  5. Measure the positive angle of deviation.
  6. Repeat this procedure five times.


Quality Improvement

  1. Assess the robot design from data collected and from observations.
  2. Make necessary adjustments.
  3. Retest the robot and collect data.
  4. Take pictures of both the original design and the modified design.

Reverse Engineering

  1. Visually assess the robot's design. Consider how it works.
  2. Sketch the front, top, and most detailed side of the robot. Be sure to include dimensions in the sketch.
  3. Also sketch the most detailed view of the gear train.
  4. Before disassembling the robot, ask the TA to take a picture of it.
  5. Disassemble the robot. Analyze its inner workings and sketch the gear train(s). Note: All sketches in EG1004 must be done in pencil.
  6. Have all sketches and original data signed by the TA.

With measurements for both tests performed and an analysis of the drive train of the robot, data analysis must begin. Calculate the average, accuracy, and precision for each test. Compare the results to the standard in order to determine if the robot is accurate and precise. Label all major components and describe their functions. Calculate percent accuracy and percent precision. Calculate the gear and velocity ratios.

Examples
  • If Ps was 5cm and Ap was 7cm, then the percent accuracy (%Acc) is 60%. This test does not pass the 80% criterion.
  • If Ps was 5cm and Ap was 25cm, then the result of the percent accuracy equation is -300%. Since a negative percentage has no meaning in engineering, it can be said that the product has a percent accuracy of zero. Any percent accuracy less than zero is equal to zero.
  • If Ps was 10cm and Ap was 8cm, then the percent accuracy is exactly 80%, which is a passing result.
  • For the Distance Test, if the precision (P) was 0.5cm, the percent precision (%Prec) is 95.3%. This robot passes the 80% criterion for this test.
  • For the Angle of Deviation Test, if the precision (P) was 10.25°, the percent precision ($Prec) is 71.8%. This robot does not pass the 80% criterion.

Tabulation of Results

To decide if the product is ready to manufacture, arrange the data in a table designed to calculate its precision and accuracy. Remember it must pass all the tests at a rate of at least 80%.

Original Design Accuracy %Acc Pass/Fail Precision %Prec Pass/Fail
Distance Test
Angle of Deviation Test

Retest with new design using the same table, record the data.

New Design Accuracy %Acc Pass/Fail Precision %Prec Pass/Fail
Distance Test
Angle of Deviation Test

The lab work is now complete. Please clean up the workstation. Return all unused materials to the TA. Refer to the Assignment section for the instructions needed to prepare the lab report.

Assignment

Individual Lab Report

Follow the lab report guidelines laid out in the page called Specifications for Writing Your Lab Reports in the Technical Communication section of this manual. The following discussion points should be addressed in the appropriate section of the lab report:

  • Discuss product evaluation and the need for it.
  • Discuss quality improvement and its importance.
  • Explain why reverse engineering is important.
  • Discuss a standard, an average, accuracy, and precision.
  • Discuss the NXT kit and software used.
  • Assess the techniques used in the testing process.
  • Discuss better testing methods for the robot design.
  • Describe how the components fit together and how the device was constructed.
  • Describe and show how the gear and velocity ratios were calculated, and discuss their importance in the overall robot design as well.
  • Analyze the original robot design and the final design then make a decision which design is better. Remember to substantiate the decision with the data, observations, and facts collected.
  • Make a final evaluation of the product: should it go into production? Describe its accuracy and precision.
  • Discuss the importance of %Prec and %Acc in determining product quality.
  • Recommend if any design improvements should be made.

Remember: Lab notes must be taken. Experimental details are easily forgotten unless written down. EG1004 Lab Notes Paper can be downloaded and printed from the EG1004 Website. Use the lab notes to write the Procedure section of the lab report. At the end of each lab, a TA will scan the lab notes and upload them to the Lab Documents section of the EG1004 Website. One point of extra credit is awarded if the lab notes are attached at the end of the lab report. Keeping careful notes is an essential component of all scientific practice.

Team PowerPoint Presentation

Follow the presentation guidelines laid out in the page called EG1004 Lab Presentation Format in the Introduction to Technical Presentations section of this manual. When preparing the presentation, consider the following points:

  • Based on the test results, what is the product's marketability?
  • If determinations were negative, what improvements could be made?
  • Why is product evaluation important?
  • Discuss why quality improvement is important.
  • Discuss the importance of gear and velocity ratios.

Footnotes

  1. ^ a b Oakes, W.C., L.L. Leone, and C.G. Gunn, Engineering Your Future, MI: Great Lakes Press, 2002.
  2. ^ a b What Is website. TechTarget Network. Retrieved July 29th, 2003.