Make a Mini-Arcade

Version 2

    MiniArcade.png

    Created by Oliver Chen, Cheryl Daisin, Shammi Jayaraj, Dustin Byars, Sruti Chigullapalli, Luke Filose, Romanna Flores on August 30, 2014; last modified by Tom Seaman on September 25, 2015.

     

    Unit Summary

    In this hands-on unit, students create three video games using an Intel® Galileo board and the Processing Integrated Development Environment (IDE) running on a PC.  This unit is suitable for students with no previous experience with programming or with Galileo, but can also be enjoyed by those who know some programming or have some experience with Arduino or Galileo.

     

    At a Glance

    • Grade: 6-8, 9-12
    • Subjects:  Science, technology & engineering, visual arts
    • Topics:  Computers, electronics
    • Higher-order thinking skills:  Analysis, experimental Inquiry
    • Key Learnings:  Coding, making, design thinking, types and uses of electronic components
    • Content type:  Unit plan
    • Time needed:  3-4 hours, or 3-4 one-hour sessions
    • Prerequisites:  No prior knowledge or experience is necessary to complete the activities.  If students have some experience with Galileo and/or Arduino, the start-up steps will require about half the time.
    • License:  Creative Commons Attribution-ShareAlike (CC BY SA).  Read about the license and what you can do with this material here.

     

    Learning Outcomes

    • Students gain a hands-on understanding of some of the basic concepts of coding and computer hardware.
    • Students gain experience with scientific inquiry thought processes.
    • Students get a glimpse of the type of work engineers and computer scientists do.

     

    Things You Need

    We suggest students work in groups of 2-4. Each group will need the following:

    • The Intel® Galileo 2 board
    • The Galileo’s power cable
    • A USB cable
    • Breadboard
    • Jumper Wires
    • 8x8 LED Matrix
    • Push Buttons (qty 3)
    • Resistors – 10k-ohms (qty 3)
    • A PC (with the Galileo IDE)

    MiniArcadeFigure1.png

    Standards Alignment

    This unit is aligned to Common Core National and Next Generation Science Standards.

    • Engineering Design:  define design problem, generate solutions, carry out tests and analyze resulting data
      • 3-5-ETS1-1, 3-5-ETS1-2, 3-5-ETS1-3
      • MS-ETS1-1, MS-ETS1-2, MS-ETS1-3, MS-ETS1-4
    • ELA/Literacy:  conduct short research projects, build knowledge through investigation
      • W.5.7
      • WHST.6-8..7
    • Mathematics:  operations and algebraic thinking; reason abstractly and quantitatively
      • 3.0A
      • MP.2

     

    Inquiry Process

    An opening discussion about prior exposure to computers, electronics, and programming can be helpful in pacing the activities and grouping students who can provide leadership.  Short wrap-up discussions after each activity and after completing the entire unit are helpful to assess progress and revisit key learnings.

     

    Assessment Process

    An opening discussion about prior exposure to computers, electronics, and programming can be helpful in pacing the activities and grouping students who can provide leadership.  Short wrap-up discussions after each activity and after completing the entire unit are helpful to assess progress and revisit key learnings.

     

    Instructional Process

    Introduce the Key Concepts

    Introduce the Intel® Galileo board.  Explain to students that Galileo is a computer, but unlike a PC, it has no keyboard.  This computer is designed to have a wide range of things connected to it.  For example, you might connect some type of device to sense input.  This might be a microphone to sense sound.  It might be a button to sense a human decision, or a device that can sense motion or the amount of light in the room.

     

    You can also connect other types of devices to allow the computer to output something.  This might be a display to show information from the computer, or speaker to provide a sound from the computer.  It could be a simple light that the computer turns on and off based on something its doing, or a signal that tells a motor how fast to run.

     

    With so many options for connecting inputs, connecting outputs, and instructing the computer how to think and act, the possibilities for creating cool things are truly endless.

     

    Instruct students to inventory the components to ensure they have everything they will need to build the circuit.

     

    Explain that in the following activities, they’ll be connecting some inputs and outputs as well as running some programs to create a mini-arcade capable of playing several interactive games with humans.  They’ll be challenged to build the mini-arcade, and then use their ingenuity to change how it responds to human behavior.  In short, they’ll be doing the kinds of things that engineers who build the computers they use, and the smart-phone games they play.

     

    Set-up for the Activity

    Note about set-up:  You may elect to allow the students to connect up their Galileo boards, or you may elect to perform this set-up yourself prior to the start of class. The set-up involves connecting the Galileo to the PCs the students will be using, as well as pre-loading the Arduino (Galileo Gen 2 version) IDE onto the PCs.

     

    If the students will be performing the set-up themselves, allow for 15-20 minutes to the amount of time required for the first session.  In addition, make sure the students are responsible and take care to follow the instructions below very carefully as performing the steps in the wrong order can result in permanent damage to the Galileo board.

     

    Step-by-step instructions for connecting Galileo are found here:

    https://software.intel.com/en-us/iot/library/galileo-getting-started.

     

    Within the step-by-step instructions, when prompted to choose a development environment, choose Arduino.  Have the students proceed all the way through the getting started exercise to the point where they blink the LED on the Galileo board. This affirms the set-up was done correctly.  If they cannot blink the LED, have them start over and/or seek your help.

     

    Install the Sketches

    Instructions for Windows or Mac:

    1. Download to the PC’s or Mac’s desktop the file called IESC.zip.  (The file is attached to the bottom of this unit plan.)
    2. Unzip the file.  This will unpack the zip file and place all the relevant files in a folder called IESC it creates for you on the desktop.
    3. Remember to tell your students that the sketches they will need to run for the activities are located inside this IESC folder.

     

    Activity 1:  Mini Arcade – Stacker Game

    This activity allows students to build a circuit on a breadboard and upload a sketch to Galileo to create a stacker game.  The game is played on an LED grid with a push-button.

     

    Share with the class the steps and diagrams as laid out in the Smart Toy Teacher’s Presentation (attached) to help them build the circuit and load the sketch.

     

    Note:  Some students may struggle to figure out how to connect jumper wires to the LED matrix since the LED matrix covers up the breadboard holes needed to connect the jumpers.  The jumper wires need to be bent 90 degrees so they can lay flat on the breadboard and sneak out from under the side of the LED matrix.  This is shown in the photo in the Teacher’s Presentation.

     

    Have students play the Stacker Redemption game.  They will press the button connected to A0 to stack the bars to the top to win.

     

    For an additional challenge, see if the students can figure out how to modify the code to change the speed of the game to make it easier or more difficult to play.

     

    Activity 2:  Mini Arcade – Sprites

    This activity utilizes the same hardware set-up as the last activity, but a different sketch to allow students to build and play three simple games.

     

    Share with the class the steps and diagrams as laid out in the Smart Toy Teacher’s Presentation (attached) to help them ensure everything is connected properly and the sketch uploaded.

     

    Have students play the Sprites game.  At the “?” prompt, they will push the button for animation.  Pushing A0 yields a face, pushing Tx1 shows a Space Invaders character, Rx0 displays Pacman.

     

    For an additional challenge, have students try to create their own animation with the 8x8 Character Generator.  Follow instructions for this challenge in the Teacher’s Presentation.

     

    Activity 3:  Mini Arcade – Rock Paper Scissors

    This activity utilizes the same hardware set-up as the first two activities, but a different sketch to allow students to build and play the age-old game Rock-Paper-Scissors.

     

    Share with the class the steps and diagrams as laid out in the Smart Toy Teacher’s Presentation (attached) to help them ensure everything is connected properly and the sketch uploaded.

     

    Have students play the game. At the “?” prompt, they will push A0 button for 1 player.  After the countdown, they will choose their throw by pressing one of the three buttons:  A0 – Rock, Tx1 – Paper, Rx0 – Scissors.  The 8x8 LCD display then shows the player throw, computer throw, and winner.

     

    For an extra challenge, see if the students can change the code to implement best 3 out of 5.

     

    Conclude the Unit

    Lead the class in a discussion about the unit.  Several directions are possible:  using the Intel® Galileo board and the same set of sensors and output devices, what are some other types of smart toys you could create?  Can the class think of any interesting ideas for new wearable technology?  What kinds of careers are available to people who enjoy this kind of activities?

     

    Differential Instruction

    Resource Student

    • Allow more time as needed.
    • Skip the challenge sections and focus on building the toys and discussing how each works.

     

    Gifted Student

    • Give students additional challenges that force them to go deeper into modifying the sketches.
    • Have students the Arduino programming language and try writing their own sketches from scratch.

     

    English Language Learner

    • Pair the student with a peer in groups.
    • Allow more time on the visuals in the presentations.
    • Provide the student with Internet access and relevant sites in the student’s first language beforehand.

     

    Additional Resources

    For an introduction to the benefits of teaching making and coding, and tips for bringing hands-on activities to your classroom, see Gary Stager’s paper, “Guide to Creating and Inventing with Technology in the Classroom.”

    In this hands-on unit, students create three video games using an Intel® Galileo board and the Processing IDE.  No programming experience required.