1 of 34

Daisy/Brownie Robotics Workshop

Seattle, WA

March 7, 2019

2 of 34

Welcome

What will we do today?

Learn about robots and their applications

Explore sensors and learn how robots use them

Develop code to program a robot

Test our code with a real robot

3 of 34

What is a “Robot”?

4 of 34

Robotics Application: Mars Exploration

2004: Spirit and Opportunity rovers

Hint: Check out https://mars.nasa.gov/ for more information

5 of 34

Robotics Application: Mars Exploration

2012: Mars Science Laboratory Curiosity rover

6 of 34

Robotics Application: Mars Exploration

2018: Insight lander

7 of 34

Planetary Scientist: Abigail Fraeman

8 of 34

Curiosity Team Profiles

9 of 34

Programming Turns Machines Into Robots

10 of 34

You Are The Programmers

Challenge: Create a program that moves the rover to the exit of the puzzle...

… using these commands:

Move forward 1 space

Pivot left 90 degrees

Pivot right 90 degrees

11 of 34

Commands and Program: Scratch

12 of 34

Programming Team Challenge

  1. Use BLANK puzzle sheet (inside plastic page protector). Programmer provides starting location

  1. Execute the commands from the Programmer (draw on top of page protector with washable marker to mark your path)

  1. Team: Insert MASTER puzzle sheet into page protector to check how well you did

Robot:

  1. Look at the MASTER puzzle sheet - don’t let partner (Robot) see it:

  1. Create sequence of commands to solve puzzle:

Programmer:

13 of 34

Let’s Try This On A Real Robot

14 of 34

Sensors Enable Autonomy

What are sensors?

15 of 34

Sensors Enable Autonomy

16 of 34

Making Decisions Based on Sensors: IF Block

Do these commands if an obstacle is detected ahead

Do these commands if an obstacle is not detected ahead

17 of 34

Making Decisions Based on Sensors: IF Block

An example: taking a shower…

IF water is too hot:

turn hot water down

turn hot water up

18 of 34

Repeating Commands: Loops

Consider a weird puzzle like this - goal is to go around and around:

. . .

We could write a program like this:

But we can instead use a LOOP to repeat the command(s) inside the loop:

19 of 34

An Algorithm For Solving The Puzzle

Work together with your partner to create an algorithm to guide the rover across the puzzle using the movement commands, obstacle sensor, IF block, and LOOP

20 of 34

An Algorithm For Solving The Puzzle

21 of 34

Extra Slides And Additional Videos

22 of 34

How Rovers Drive on Mars

23 of 34

Curiosity Video

24 of 34

Spacecraft Engineer: Farah Alibay

25 of 34

Flight Dynamics Engineer: Carlie Zumwalt

26 of 34

Mechanical Engineer: Abbie Hutty

27 of 34

JPL Systems Engineer: Julie Wertz

28 of 34

Testbed Engineer: Marleen Martinez

29 of 34

Rover Driver: Hallie Gengl

30 of 34

Rover Engineer: Mallory Lefland

31 of 34

Mechanical Engineer: Amanda Steffy

32 of 34

Rover Planner: Erisa Hines

33 of 34

Systems Engineer: Jamie Catchen

34 of 34

Fault Protection Engineer: Mallory Lefland