Space Science and Mars Curriculum

Home/Resources/Programming a Rover

Programming a Rover

Digital Technology Computer Science Science

Learn to determine the most effective set of commands to program a Rover to move autonomously across terrain to collect scientific data.


Learning Objectives

  • Learn Space Science vocabulary.
  • Learn Computer Science vocabulary.
  • Learn about creating interactive worlds using a 3D programming environment.
  • Learn about robotics and different landforms on the surface of Mars.
  • Learn to create algorithms using code.


Student Activities

Step 1 Engage: A Rover Explores the Surface of Mars
Students will view w a picture of a rover on Mars and discuss relevant vocabulary. Students are expected to elicit prior knowledge of other robotic vehicles and asked to name other robotic vehicles, such as robotic drones used in surveillance or robotic submarine probes used to explore the deep ocean floor. Students will be introduced to a puzzle to determine how Rover drivers on Earth can plan the rover’s path, making sure it doesn’t get into trouble. Students will brainstorm how a robotic vehicle like a Mars rover might be controlled when no human is there to drive it.
Subjects:Science, Computer Science, Engineering, 21st Century Learning

Step 2 Explore: Rocks Have Different Scientific Significance in the Search for Habitats on Mars
Students will collaborate with a partner, and the two will share a single computer, utilizing a method called pair programming. One student will act as the “driver.” The driver is the only person to touch the keyboard and mouse or controller. The other student is the “navigator.” The navigator gives advice, instructs, and evaluates the pair’s progress. The two students should switch roles every 5 to 10 minutes throughout the class period to allow both of them to perform the different roles. Students should explore and run the Kodu World: “Programming a Rover”. Explain to the students that scientists and engineers want to make as many discoveries as possible as they explore the surface of Mars. They command the rover to move to places that are scientifically interesting so that they can study those places. Explain that rocks are important to scientific discovery because they hold clues to the environment in which they formed.
Subjects:Science, Computer Science, Engineering, 21st Century Learning

Step 3 Explain: Goal, Criteria, and Constraints
Explain to the students that the goal of the game is to determine the best path to program the rover to search and inspect the rocks to collect the most Scientific Discovery Points. Real rovers have a limited supply of power. The better the path the rover follows, the higher the score. Students will examine the rover’s code to determine how many points each action awards and how much power each action uses. Students will learn the constraints of mission teams on Mars.
Subjects:Science, Computer Science, Engineering, 21st Century Learning

Step 4 Elaborate: Program the Rover to Move Along a Path
Students will learn that rather than being commanded in real-time due to the delay it takes for a command to reach Mars, rovers are controlled through a series of instructions in a program. Students will learn that the series of instructions, also known as an algorithm, controls all of the actions that the rover performs. Students will design a path for their rover on Mars. Have students refer to the (A) How to Use the Kodu Path Tool worksheet. Students will program the rover to follow the path by referencing the (B) Kodu When Do Statements worksheet. Students will experiment with the rover’s path and code. Students should observe how the score is calculated and the significance of the different rocks. Students will Students will edit the path and run the world to score the most Scientific Discovery Points with the limited power supply. When the power supply gets too low, the rover is preprogrammed to take pictures of its surroundings for further planning.
Subjects:Science, Computer Science, Engineering, 21st Century Learning

Performance Expectations

Step 5 Evaluate: Reflect using the Programming a Rover Evaluation worksheet
Use Sway or PowerPoint to demonstrate learning, students collaborative to present their work to the rest of the class. It is suggested that a central projector or monitor be used to present their Kodu worlds. Students will have the (C) Programming a Rover Evaluation worksheet. Students will list the criteria and constraints of the game that impacted the design and execution of your commands. Students will describe their algorithm for exploring the terrain and searching for rocks and explain how these steps met the constraints of the game. Students will present how they balanced the rover’s movement and actions with its limited power supply in order to maximize the game score. Students will present why sedimentary rocks are of more scientific value than the volcanic rocks in the search for habitats on Mars.


Character, Citizenship, Collaboration, Communication, Creativity, Critical Thinking, Project Based Learning