Post on 16-Dec-2015
1
ORTOP Workshop 3 - Robot DesignORTOP Workshop 3 - Robot Design
Robot Design, Navigation & MissionsRobot Design, Navigation & Missions
2
Workshop 3 Goals
Move your team up the ladder in navigational skills, and to increase their understanding and use of sensors
• Provide tools to help give feedback to team members and guide their instruction
• Questions from Workshops 1 or 2?
3
IntroductionWorkshop 3 Methodology
• Explore a problemRun a hands-on experiment
Get kids’ heads wrapped around a problem
Explain how it worksShow important aspects of the problem
Add background information and knowledge
Apply knowledge Solve a more complex problem with what you now know
To help clarify concepts - DiscussionConvince yourself
Convince a friend
Convince a skeptic
4
AgendaGoing StraightMaking predictable moves
Moves - lab experiment
Background information on inaccuracies
Compensation for errors - attachments!
TurningMaking predictable turns
Turns - lab experiment
Gyro turns - lab experiment
Color and light sensorReading values from the color / light sensor
Detecting color areas & inaccuracies
Buoy mission - putting it all togetherMission planning
Using dead reckoning
Using sensors
5
Going Straight
How do we make the robot go straight?
What if your were driving your car and it wobbled from side to side down the road?
What if your car always pulled to the right or to the left?
6
Going Straight
Experiment: move 2ft, stop, run 4-5xProgram the robot to move 2 feet and stop
Tape 2 pieces of paper about 2 feet apart
Start the robot at exactly the same location for each run using front axles and rear ball as markers
Indicate where the robot stops by marking the two front forks and rear ball
Run 4-5 times at speeds of 20, 50, & 100 recording data for each run
Notice if the robot wobbles
Draw a box around the stopping points to show X and Y position error zones
Notice if speed affects where the robot stops
Go! 15 min.
7
S curve inaccuracy & wobble
Motor rotation sensorsInside each motor is a rotation sensor, similar to a speedometer / odometer in a car. The sensor provides wheel rotation and speed feedback to the Move Steering software in the EV3.
• If one wheel slows, the Move Steering block senses the change and slows the other wheel, causing the robot to wobble and veer left or right.
• The robot may stop or coast depending on selection of check or X
Going Straight
8
Going Straight
Team discussion:Does the robot stop at different X (side-side) and Y (front-back) points?
How does speed affect the X and Y position?
What might happen if the robot stops on a black line, at different speeds?
Be careful about speeding up runs and changing Y endpoints!
9
Compensation for navigational errors
Angled corners (back into a corner)
Wall follower wheels
Back against a wall
Width of attachment! (e.g. buoy fork)
Going Straight
10
Going Straight
Use a starting block from base
11
Navigation
Going straight variablesWhat are the variables that affect going straight?
1. software that senses wheel rotation
2.
3.
4.
12
Going Straight
Variables that affect going straight
Starting box position, affect on X and Y stopping points
Speed, affect on stopping point
Battery charge, affect on speed
Tire size and axle flex and mounting
Motor friction, gear backlash (Google these terms)
EV3 software tries to keep both wheels moving at same speed - S curve inaccuracy
What is distinct about the last two variables?
Any questions about going straight?
13
2 wheel “spin” turnon for degrees
steering slider all the way right or left
speed medium
wheel rotation 180 degrees to turn the robot ~ 90 degrees (depends on wheel size)
brake when finished
Accuracy of a 90 deg spin turn:
tends toward a normal distribution,
SD 1.9 to 3.5 degrees
Lab: discuss in your team
& program spin turn
Turning
14
1 wheel turnon for rotations
medium speed
wheel rotation 360 degrees to turn the robot ~ 90 degrees (depends on wheel size)
brake when finished
Turning
15
Gyro sensor spin turnreset Gyro sensor
Move Steering block - B&C on for rotations
steering slider all the way right
medium speed
Wait - Gyro sensor compare angle >= 78 degrees
brake B&C when finished
Turning
16
Gyro sensor spin turnRun the following program in a loop
Change the => to = and observe results
Why turn 78 degrees?
Accuracy of a 90 deg Gyro turn:
Gyro reading average ~ 91 deg,
turn angle distributed greater than the programmed angle,
SD is 1.5 to 2 degrees
Lab: Discuss in your team & program a Gyro turn
Any final questions on turning?
Turning
17
Programming Help
Programming Help
Help tab at top
Show Context Help - highlight a program block, then click Context Help
Show EV3 Help - takes you to top level EV3 help - help files are on your computer
18
Memory
Memory Management
Open Memory Browser
Shows projects & memory allocation
19
Buoy Mission
Buoy Mission - no sensors
Move N from base to black line, turn CW,
Move E to black line and pick up the buoy
Move S, place the buoy between the black lines
Go: 15 min.
20
Now that we know how to move and turn with some precision, lets take a look at sensors
Sensors we can use in FLL:
touch, light, rotation, distance, gyro
Teams sometimes give up on sensors because they seem complex and don’t seem to work in a predictable manner
Most teams feel comfortable with the built-in rotation sensors in the motors to determine the number of rotations/degrees
In this segment we’ll explore the light/color sensor in more detail to help us navigate on the playing field
Sensors
21
Threshold Value CalculationFrom Workshop 1 Lab:
Light Sensor returns value of RED reflected light
e.g. white = 62
Threshold Value (less than) <
(white - black) / 2 + black
black = 31
Example: (62 - 31) / 2 + 31 = ?
Take a minute to visualize the threshold value, and discuss in your teams. Does your answer make sense?
Sensors
22
Light sensor variables• Sensor-to-mat distance - let’s record some data:
• Elevate the robot rear ball so the sensor is about 1/8” from the mat
• Record black, green, & white values: - using EV3 VIEW function - also verify values on computer screen
• Level the robot so the sensor to 3/8” from the mat, record values
• As the robot moves it bounces, which distance do you think would work best, and why? Discuss with your team
Sensors
Black Green White
1/8” from mat
3/8” from mat
23
• Color sensor variables• Incorrect color sensing - let’s record some data:
• Using the color cube, record values for blue, green, red, yellow - hold the sensor about 3/8 inch from the cube
• Record black, red, green, blue, white values from the white board
• Team discussion: what does this tell us about color sensor performance with various shades of color?
Sensors
Black Red Green Blue Yellow White
color cube
mat values
24
• Setting up the color sensor• Wait for Color Sensor• Compare• Color• Then select color(s) you want to
detect• The colored dot indicated selected colors
Sensors
25
• Detecting a black line with the color sensor• Block by block, what does this program do? (Convince yourself,
convince a teammate...)
1.
2.
3.
4.
5.
• Any final questions on the color sensor?
Sensors
26
Information• Mission planning
27
Buoy Mission
• Buoy Mission - color sensor
• Move N from base, detect black line, turn CW
• Move E, detect black line, pick up the buoy
• Move S, place the buoy between the black lines
28
• Extra credit: Line Following - is really edge following• Steer to black, wait for _____
• Steer to white, - wait for _____
• Follows left edge of black line
• Loop
Line Follow
B CGo ahead and write a program to do this
29
• Line following - breaking out of the loop• Time
• (# of loops)
• (Sensor input)
• workshop 4 covers loops more thoroughly
• Discuss line following in your team• Help all team members to understand line following
• Judges will ask “Explain how this works, andWhat happens if...”
Line Follow
B C
30
• simple line follower with left sensor stop on blue• robot steers to blue line, then away• note speed, zigzag & approach angle
Information
31
Review
• Help your teams focus on moves, turns and repeatability• By breaking missions down to basic moves and turns
• By identifying error zones
• By compensating for errors with attachments, positioning and sensors
• By encouraging your team to make evidence based decisions
• Help your team learn about robot behavior• Ask a simple question to focus their attention on a problem
• Let them experiment with the problem - hands-on
• Provide technical background information such as how to run an experiment or program a loop
• Get the team to use what they know to solve a complex problem
• Review what they have learned, quiz them to make sure they understand the problem and their solution - next slide has more on questions...
32
Quiz
• How does the EV3 software know when to stop the robot?1. With an internal GPS
2. By counting wheel rotations
3. By measuring light values
• What causes the side-to-side wobble?1. Move block software
2. Changes in light sensor values
3. The weight of the light sensor on one side
• Ask quiz questions at the end of a segment or team meeting to help you understand the team’s overall knowledge
33
Project
• Using Scientific Inquiry in your team FLL Project:• Forming a Question or Hypothesis
• What are the robot move and turn accuracies?
• Learn to ask questions that can be investigated
• Designing an Investigation• Run 2ft straight move, then turn 90 deg
• Run test 5x @ 50% speed
• Collecting and Presenting Data• Use pen & ruler to mark where robot lands
• Analyzing and Interpreting Results• Be able to defend your conclusions
• Ref: Oregon Department of Education - 2009 science standards
34
Take Home Message
• Help your team discover and use scientific processes to understand robot moves and behavior
• Ask formative assessment questions to help you as coach assess where your team is, and what is needed to move them forward
• Resources:• Scientific Inquiry: Oregon Department of Education ~ Inquiry
• http://forums.usfirst.org/forumdisplay.php?24-FIRST-LEGO-League
• join the FIRST Forum, search forum for help, e.g. color sensor
• Winning Design!: LEGO Mindstorms NXT by James J. Trobaugh