SPHERO ROBOTS:
DOG SLED RACING
DOG SLED RACING
Learning Goal(s)
Students will learn basic programming concepts and algorithms by programming Sphero robots to participate in a dog sled racing simulation.
Relevant Standards
Alaska Computer Science Standards
3.CS.D.01 Define how computer hardware and software work together as a system to accomplish tasks (e.g., input, output, processor, sensors, and storage).
5.CS.D.01 Define, discuss, and model how computer hardware and software work together as a system to accomplish tasks (e.g., input, output, processor, sensors, and storage).
7.CS.D.01 Review, analyze, and evaluate device(s) and how other users interact with devices and recommend improvements to design.
Alaska Standards for Culturally Responsive Schools
B. Culturally-knowledgeable students are able to build on the knowledge and skills of the local cultural community as a foundation from which to achieve personal and academic success throughout life.
2. make effective use of the knowledge, skills and ways of knowing from their own cultural traditions to learn about the larger world in which they live;
&
E. Culturally-knowledgeable students demonstrate an awareness and appreciation of the relationships and processes of interaction of all elements in the world around them.
4. determine how ideas and concepts from one knowledge system relate to those derived from other knowledge systems;
Materials / Software
Student laptops: Google Chromebook, Apple MacBook, or Windows PC
The Sphero Edu app
Sphero Bolt robot(s)
A whiteboard or large sheets of paper
Markers
Small cones or markers for creating the racing course
Setup / Safety Guidelines
A simulation race course will need to be created using any variety of materials. For instance, one could use small cones as track markers, wooden boards as guides, or even simply marker or crayon drawn on poster boards. Regardless of material used, the course should be designed for the class age range with complexity in line with student comprehension and skills. Two example race tracks are provided to the right: both a simple loop (oval) race track and a more complex race track with numerous curves and sharp turns.
Teacher understanding of Sphero block coding and controls will be required for demonstration purposes. This includes the basic programming concepts and algorithms that will be used in the simulation, such as loops, conditions, and functions.
Procedure
Lesson One (45 Minutes)
Opening Question: "How are decisions made? How are decisions made, specifically, when dog sled racing?"
Allow time for students to discuss possible answers to this question. Make a place-based connection student experiences watching and participating in dog sled races.
Show a video or slideshow about dog sledding in Alaska and discuss the importance of this tradition to Alaska Native culture. Explain how dog sled races work and the importance of timing and strategy in races.
Introduce the Sphero robots and explain how they can be programmed to participate in a dog sled racing simulation. This lesson can be modified for one of two modes. It is at the discretion of the teacher which option to choose.
OPTION ONE: the Sphero robots can be programmed to move through the race track via block programming, drawing, or text coding in the Sphero Edu app; or
OPTION TWO: the sphero robots can be manually controlled by the student through use of the Sphero Edu app and Bluetooth connection.
For Option One, provide a brief overview of the Sphero Edu app and how to use it to program the robots. Explain the basic programming concepts and algorithms that will be used in the simulation, such as loops, conditions, and functions.
Loops: A loop is a programming construct that repeats a set of instructions until a specific condition is met. In Sphero Edu app block coding, loops are represented by blocks with a "repeat" or "forever" command. For example, you can use a loop to make Sphero move in a circle 10 times.
Conditions: A condition is a programming construct that allows you to make decisions based on certain criteria. In Sphero Edu app block coding, conditions are represented by blocks with "if-else" or "wait until" commands. For example, you can use a condition to make Sphero change direction when it detects an obstacle.
Functions: A function is a programming construct that allows you to group a set of instructions into a single block that can be called multiple times throughout the program. In Sphero Edu app block coding, functions are represented by custom blocks that you can create and name yourself. For example, you can create a function called "moveForward" that makes Sphero move forward a certain distance.
In addition to these basic programming components, the Sphero Edu app also includes a range of other blocks and features that you can use to program Sphero robots. These include blocks for controlling the robot's movement, changing its colors and sounds, and using sensors to detect its environment.
For Option Two, demonstrate how to operate the Sphero robots to move in a straight line, change direction, and speed up and slow down, manually, using the keyboard keys.
Finish the first day's lesson by having students create accounts and login as shown in the next section.
To create a new program in the Sphero Edu app, select "Create Program" from the "My Programs" page.
An example of block coding that the Sphero Bolt robot will utilize.
To download the Sphero Edu app and create a student account, follow the subsequent steps:
Go to your device's app store (Google Play Store or Apple App Store) and search for "Sphero Edu" app.
Install the app on the device by following the on-screen instructions.
Once the app is installed, open it and tap on "Create Account" to create a new student account.
Enter the student email address, choose a username and password, and fill out the other required fields.
Agree to the terms and conditions, and tap on "Create Account" to finish creating the student account.
If you have a class code, students can enter it in the "Join Class" section of the app to connect with your the class. Alternatively, you can skip this step and use the app independently.
Lesson Two (Option One - 45 to 60 Minutes)
Provide each student partnership or group with a Sphero robot and have them work to create a program to participate in the dog sled racing simulation using the block code information from the previous lesson. To create a program, students should create an account as shown above. Once completed, students may choose "Create Program" from "My Programs". Sphero provides multiple ways of programming the robot. Students may either DRAW the path for the robot (beginner level), use BLOCK CODING as described above (intermediate level), or write the code as TEXT, similar to C++ (advanced level).
Provide assistance and guidance as needed to help students understand the programming concepts.
Lesson Three (45 to 60 Minutes)
Have each group test and refine their program to improve the performance of their Sphero Bolt robot in the simulation utilizing the race track developed. Ask the questions: "What needs to be modified in the program in order for the Sphero Bolt robot to successfully manuever through the course?"
Allow time for students to attempt multiple runs with modified code/programs.
Provide students with the opportunity to reflect on the design process by writing a short essay response to the following questions: "What worked with your program design? What modifications (changes) needed to be made? What would you correct going forward? How could you improve your code for better race results?"
Assessment
Observe students during the design process to assess for understanding.
Evaluate the performance of the Sphero robots in the dog race simulation to assess understanding of algorithms and logic.
Student responses in the essay prompt will provide insight into understanding of troubleshooting and basic programming components. Critical thinking capacity can also be observed through student responses.
Differentiation
As noted above, the Sphero Bolt can be controlled either via manual operation or through programming. Even then, when programming, students may "draw' their program, utilize block coding, or even develop a program through textual code/syntax.
If time permits, students can also be permitted to decorate their Sphero robots using plastic cups and even design small sleds out of popsicle sticks, cardstock, and other materials. Place the Sphero inside of a plastic cup and decorate the cup to look like a real sled dog.