Hands-on Activity: Robot Soccer Challenge

Contributed by: GK-12 Program, Computational Neurobiology Center, College of Engineering, University of Missouri

A photograph shows a girl kicking a soccer ball into a net goal as she is pursued by three other players.
Can you program robots to play soccer?
copyright
Copyright © 2004 Microsoft Corporation, One Microsoft Way, Redmond, WA 98052-6399 USA. All rights reserved. http://office.microsoft.com/en-us/images/results.aspx?qu=soccer&ex=1#ai:MP900422624|

Summary

Students learn how two LEGO® MINDSTORMS® NXT intelligent bricks can be programmed so that one can remotely control the other. They learn about the components and functionality in the (provided) controller and receiver programs. When its buttons are pressed, the NXT brick assigned as the remote control device uses the controller program to send Bluetooth® messages. When the NXT taskbot/brick assigned as the receiver receives certain Bluetooth messages, it moves, as specified by the receiver program. Students examine how the programs and devices work in tandem, gaining skills as they play "robot soccer." As the concluding activity in this unit, this activity provides a deeper dimension of understanding programming logic compared to previous activities in this unit and introduces the relatively new and growing concept of wireless communication. A PowerPoint® presentation, pre/post quizzes and a worksheet are provided.

Engineering Connection

Programming two robots to send and receive messages from each other and act accordingly is a fairly involved task. Engineers designed Bluetooth Smart technology—a wireless communication system that supports this type of messaging—to perform tasks such as sending your heart rate stats to your smartphone. Before Bluetooth technology, engineers developed other means of remote communication using radio waves to control remote devices, such as radio-controlled vehicles. The Mars Rover is one example of how advanced remote communication technology and robots have become. Software engineers play a key role in developing programs that enable remote communication to control the Mars Rover. Understanding how these programs works challenges students to think carefully about the logic used in a remote control program and strengthens their abilities to confront difficult tasks systematically.

Pre-Req Knowledge

Complete the previous units (1-4) and the earlier lessons and activities of unit 5 prior to this activity.

Learning Objectives

After this activity, students should be able to:

  • Explain how two robots can be individually programmed to use Bluetooth technology to interact with each other.

More Curriculum Like This

Curiosity Killed the App

Students gain experience with the software/system design process, closely related to the engineering design process, to solve a problem. First, they learn about the Mars Curiosity rover and its mission, including the difficulties that engineers must consider and overcome to operate a rover remotely....

Middle School Lesson
What Is Bluetooth?

Students learn about electrical connections, how they work and their pervasiveness in our world. They learn the Morse code rules and translate a few phrases into Morse code. Specifically, they learn about a wireless connection type known as Bluetooth that can be used to control LEGO robots remotely ...

Elementary Lesson
What Is a Computer Program?

Through four lesson and four activities, students are introduced to the logic behind programming. Starting with very basic commands, they develop programming skills while they create and test programs using LEGO® MINDSTORMS® robots. The unit is designed to be motivational for student learning, so th...

Elementary Unit
What Is a Program?

Using a few blindfolds and a simple taped floor maze exercise, students come to understand that computers rely completely upon instructions given in programs and thus programs must be comprehensive and thorough. Students create and test basic programs, first using just the LEGO intelligent brick, an...

Elementary Lesson

Educational Standards

Each TeachEngineering lesson or activity is correlated to one or more K-12 science, technology, engineering or math (STEM) educational standards.

All 100,000+ K-12 STEM standards covered in TeachEngineering are collected, maintained and packaged by the Achievement Standards Network (ASN), a project of D2L (www.achievementstandards.org).

In the ASN, standards are hierarchically structured: first by source; e.g., by state; within source by type; e.g., science or mathematics; within type by subtype, then by grade, etc.

  • Define a simple design problem reflecting a need or a want that includes specified criteria for success and constraints on materials, time, or cost. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • Generate and compare multiple possible solutions to a problem based on how well each is likely to meet the criteria and constraints of the problem. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • Plan and carry out fair tests in which variables are controlled and failure points are considered to identify aspects of a model or prototype that can be improved. (Grades 3 - 5) Details... View more aligned curriculum... Do you agree with this alignment?
  • Define the criteria and constraints of a design problem with sufficient precision to ensure a successful solution, taking into account relevant scientific principles and potential impacts on people and the natural environment that may limit possible solutions. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Evaluate competing design solutions using a systematic process to determine how well they meet the criteria and constraints of the problem. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Analyze data from tests to determine similarities and differences among several design solutions to identify the best characteristics of each that can be combined into a new solution to better meet the criteria for success. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Develop a model to generate data for iterative testing and modification of a proposed object, tool, or process such that an optimal design can be achieved. (Grades 6 - 8) Details... View more aligned curriculum... Do you agree with this alignment?
  • Students will develop an understanding of the characteristics and scope of technology. (Grades K - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Students will develop an understanding of the relationships among technologies and the connections between technology and other fields of study. (Grades K - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Students will develop an understanding of the attributes of design. (Grades K - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Students will develop abilities to apply the design process. (Grades K - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Students will develop an understanding of and be able to select and use information and communication technologies. (Grades K - 12) Details... View more aligned curriculum... Do you agree with this alignment?
  • Designed objects are used to do things better or more easily and to do some things that could not otherwise be done at all (Grades K - 5) Details... View more aligned curriculum... Do you agree with this alignment?
Suggest an alignment not listed above

Materials List

Each group needs:

To share with the entire class:

  • Robot Soccer Challenge Presentation, Microsoft® PowerPoint® file
  • computer with Internet connection and projector, to show the presentation and a short online video
  • measuring tape or ruler, to measure for miniature soccer fields
  • black electrical tape, to create miniature soccer playing field(s) on the floor
  • 2-3 small balls to use to play "robot soccer," such as 1- to 2-in diameter rubber "bouncy" balls or ping pong balls; recommended quantity: 1 ball for every 4 student groups

Introduction/Motivation

Have you ever sent a text to a friend using a cell phone? Texting has become so commonplace that you might think it's funny that I even asked! When you text someone, you are essentially using a "program" on your cell phone that enables you to text. This program uses communications between cell phones to pass that message to your friend's cell phone. Engineers have designed this method of communication for you!

Do you think that you can communicate with a robot in this way? Is it possible for you to control a robot by using a remote electronic device? Engineers have designed a technology called "Bluetooth" to help you communicate with robots. Today, you will learn how engineers have designed Bluetooth to be programmed so that you can communicate between two NXT robots!

Vocabulary/Definitions

Bluetooth technology: A type of wireless electrical connection used for communication between two devices. Bluetooth is a standard developed by electronics manufacturers that allows any sort of electronic equipment—from computers and cell phones to keyboards and headphones—to make their own connections, without wires, cables or any direct action from a user. Bluetooth® is a registered trademark of Bluetooth SIG, Inc.

electrical connection: The link or bond that passes electricity between two or more things.

Procedure

Before the Activity

  • Gather materials and make copies of the Robot Soccer Challenge Pre-Quiz, Robot Soccer Challenge Worksheet and Robot Soccer Challenge Post-Quiz, one each per student. The quizzes and their answers are also embedded in the presentation, so they can be presented to the class as a whole, if desired.
  • Assemble the LEGO MINDSTORMS NXT taskbots by following instructions in the base set or at http://www.nxtprograms.com/five_minute_bot/steps.html. Each group needs an NXT brick to serve as the "controller" (the remote control device) and an assembled taskbot with its NXT brick to serve as the "receiver."
  • Find a clear space on a smooth floor where one or more small-scale soccer fields can be set up for the NXT robots. Either prepare the fields and goals in advance of the class, or have students create them as part of the activity. Use black tape to create the field boundaries and end goals (see a diagram of a typical soccer field on slide 24). The game is just for fun, so no specific dimensions exist for field or goal size or scoring.
  • Use the Robot Soccer Challenge Presentation, a PowerPoint® file, to teach and conduct the activity. Set up a computer/projector to show the presentation to the class.
  • Arrange for enough computers so you have one for each student group. Make sure each computer has the LEGO software and the Controller.rbt and Receiver.rbt programs loaded. No programming is necessary for this challenge

With the Students: Robot Soccer Challenge

  1. Administer the pre-quiz (also on slide 2 with answers on slides 3-4) and discuss the answers as a class after students have filled out the sheets.
  2. Use slides 5-6 to introduce the activity challenge: To program two NXT robots (a "controller" and a "receiver") so that one can be used to remotely control the other via a wireless Bluetooth connection. Review the challenge objectives and answer any questions. Show students a 1:58-minute "LEGO NXT Battle Tank (Remote Controlled)" YouTube video of a boy using one NXT brick (the "controller") to remotely control an NXT taskbot (the "receiver") (link on slide 6 and in the Additional Multimedia Support section).
  3. Divide the class into groups of three student each, and distribute the worksheets.
  4. Go through Part 1: Understanding the Programs (slides 7-13), which outlines how the two programs work, providing details about how they are written to enable two NXTs to interact so that one remotely controls the other. Have students complete the worksheet during this time. Slides 8-9 provide a review of the concepts of electrical connections and Bluetooth with the NXT. Slide 10 provides an overview: Two NXTs are needed—one serving as the controller and the other as the receiver. In response to certain buttons being pushed, the controller sends messages via Bluetooth. The receiver gets those messages via Bluetooth, and responds by some movement, as determined by its programming. Then present the details about what the controller program needs to do (slide 11) and how the receiver program needs to respond (slide 12), which are summarized on slide 13.
  5. Present Part 2: Running the Programs! (slides 14-21), which explains how to download and run the programs. First go through the instructions for how to change the receiving NXTs' names to something unique so that they are easily recognizable and do not cause confusion when they are all using Bluetooth at the same time (slides 15-18). Then direct students to download the controller and receiver programs onto their computers; these programs are provided for the students so no programming is necessary for this challenge. The controller program (Controller.rbt) goes on the NXT to be used as a remote control, while the receiver program (Receiver.rbt) goes on an NXT on a taskbot that can move. Make sure that students follow the downloading instructions (slides 19-21) carefully and in the order presented.
  6. Give students some time to test out the controller/receiver programs and practice remotely controlling their taskbots.
  7. Once four groups have had practice using their remote controlled taskbots, challenge them to work together to play "robot soccer," which means trying to remotely control their robots in order to push a small ball into a goal. If not already prepared by the teacher, have students use black tape on an open floor area to create the boundaries of a miniature soccer field with goals. Remind students that the game is for fun, so no specific rules exist for field and goal size and the score of the game does not matter! As additional groups becomes ready, have them work together to play robot soccer, too.
  8. As a class, discuss the activity, giving students the opportunity to share what they learned and any observations, problems or questions. What would happen if we didn't tell the program what to do for a certain button or what to do if no buttons were pushed? What would happen if you changed the program so when the receiver receives "3," it turns the robot left instead of right? (So pushing the right arrow button causes the robot to turn left!) How do programming decisions like this affect the user experience with the "game?" What other decisions like this must software programmers think about carefully? What ideas do you have for how you might change the programming to accomplish different tasks using two NXT bricks?
  9. Administer the post-quiz (also on slide 22 with answers on slide 23) and review the answers as a class. Slide 24 presents vocabulary words and definitions, as well as a diagram of a typical soccer field.

Attachments

Assessment

Pre-Activity Assessment

Pre-Quiz: Before starting the activity, administer the two-question Robot Soccer Challenge Pre-Quiz by handing out paper copies (also on slide 2). Review students' answers to gauge their base knowledge of Bluetooth using wireless electrical connections with NXT robots. The answers are provided on the Robot Soccer Challenge Pre-Quiz Answer Key (and slides 3-4).

Activity Embedded Assessment

Worksheet: As students work through the activity, have them answer the questions provided on the Robot Soccer Challenge Worksheet. Observe students to make sure they are engaged and completing their worksheets. Collect the worksheets at activity end and review students' observations and answers to gauge their depth of comprehension. The answers are provided on the Robot Soccer Challenge Worksheet Answer Key.

Robot Soccer: Expect students to be able to explain conceptually how the program works. In addition, expect them be able to correctly control the robot. Assess each group's performance in the activity using the following rubric (maximum 30 points).

  • When asked how the program broadly works, students explain that the NXT "controller" sends messages via Bluetooth that are received and then interpreted by the NXT "receiver" taskbot. They can also explain the numerical message that is sent based on what button is being pressed. (15 points maximum)
  • Students demonstrate that they are able to use the NXT "controller" to deliberately move the "receiver" taskbot forward, left and right, as directed. (15 points maximum)

Post-Activity Assessment

Concluding Discussion: At activity end, lead a class discussion so students can share their observations, difficulties, questions and conclusions. Use this opportunity to gauge student comprehension.

Post-Quiz: At activity end, administer the three-question Robot Soccer Challenge Post-Quiz by handing out paper copies (also slide 22). Review students' answers to assess their individual understanding of the program logic. The answers are provided on the Robot Soccer Challenge Post-Quiz Answer Key (and slide 23).

Additional Multimedia Support

During the presentation, show students the 1:58-minute "LEGO NXT Battle Tank (Remote Controlled)" YouTube video of a boy using one NXT brick (the "controller") to remotely control an NXT taskbot (the "receiver") at https://www.youtube.com/watch?v=zohDeKxXUPo&feature=youtu.be&t=1m

NXT robots and sensors: http://mindstorms.lego.com/eng/Overview/default.aspx

Instructions to assemble the LEGO "Five Minute Bot" at http://www.nxtprograms.com/five_minute_bot/steps.html

Contributors

Riaz Helfer, Sachin Nair, Pranit Samarth, Satish S. Nair

Copyright

© 2014 by Regents of the University of Colorado; original © 2013 Curators of the University of Missouri

Supporting Program

GK-12 Program, Computational Neurobiology Center, College of Engineering, University of Missouri

Acknowledgements

This curriculum was developed under National Science Foundation GK-12 grant no. DGE 0440524. However, these contents do not necessarily represent the policies of the National Science Foundation, and you should not assume endorsement by the federal government.

Last modified: April 29, 2016

Comments