1 / 39

Teaching Robotics and Computer Science with Pinball Machines

Teaching Robotics and Computer Science with Pinball Machines. Daniel Wong, Darren Earl, Fred Zyda, Sven Koenig University of Southern California. Overview. Games, Robotics, and Education Pinball Machines and Education Pinball Project @ USC Future Work Conclusion. Games and USC.

dusty
Télécharger la présentation

Teaching Robotics and Computer Science with Pinball Machines

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Teaching Robotics and Computer Science with Pinball Machines Daniel Wong, Darren Earl, Fred Zyda, Sven Koenig University of Southern California

  2. Overview • Games, Robotics, and Education • Pinball Machines and Education • Pinball Project @ USC • Future Work • Conclusion

  3. Games and USC • Bachelor’s program in CS (Games) • Master’s program in CS (Game Development)

  4. Games and Education • Computer Architecture • Algorithms and Data Structures • Networking • Human-Computer Interaction • Artificial Intelligence • Path Planning • Machine Learning

  5. Games and Education • Technical skills • Programming skills • Software engineering skills • Creativity • Design skills • Artistic skills • Problem-solving skills • Teamwork skills

  6. Games and USC

  7. Games and USC

  8. Games and USC • Gamepipe Demo Day • Attendees have included Electronic Arts, Activision, Blizzard, Sony Computer Entertainment, Sony Online Entertainment, Digital Domain, Disney (Interactive, Feature Animation, Internet Group), LucasArts, Microsoft, Google, Akamai, 2K Sports, THQ, CNET Networks, Qualcomm, Tactical Language, Seven Studios, iSportGames, Emsense, Creative Artists Agency, Applied Minds, Big Stage, Konami, Pandemic, Insomniac Games, Naughtydog, Northrup Grumman, Steamboat Ventures, TnGames, Sun Microsystems, Motorola Research Laboratories, Humana Innovation Center, Sandia National Laboratories, and Westside Transmedia.

  9. Games and USC • Increased number of application to Bachelor’s program in Computer Science • 223 in Fall ‘06 to 383 in Fall ’07 • Equal number of CS and CS (Games) • Successful internship placement • EA, Disney, Blizzard, Activision

  10. Games and Robotics • Robotics education place emphasis on high-level software • Use games as motivation to teach robotics

  11. Games and Robotics • Communication protocol • Serial, I2C, SPI • Signal generation • PWM • Interface • To hardware: motors, servos • To sensors: switches, optical sensors

  12. Games and Robotics Goal • Teach hardware interface • Using games as motivation • Hardware+Games+Robotics=Pinball Machines!

  13. Outline • Games, Robotics, and Education • Pinball Machines and Education • Pinball Project @ USC • Future Work • Conclusion

  14. Pinball and Education • Pinball Machines can be used as a novel platform for teaching CS and Robotic Concepts

  15. Pinball Machines • Coin-operated arcade game • Backbox • Playfield • DMD

  16. Pinball Machine

  17. Pinball Machine • Actuators • Sensors • Visual outputs • Pinball Machine isa simple robot!

  18. Pinball Machine • DC motor • Electro-magnets • Upkicker • Solenoids

  19. Previous Work • In Research • Hybrid system control (Lichtenberg and Neidig, 2003), Machine Learning • In Teaching • CS160 “Intro. To Embedded and Real-Time Programming”, Brown University • ME218a “Smart Product Design Laboratory”, Stanford University • EE476 “Designing with Microcontrollers”, Cornell University • ENEE 488Q “Special Topics in Elec. Eng: Pinball Machine Project”, University of Maryland, College Park

  20. Pinball and Education • Teach game design • What makes pinball games fun? • Teach robotics concept

  21. Pinball and Education • Easy to maintain • Robust • Simple Low-Level Control

  22. Outline • Games, Robotics, and Education • Pinball Machines and Education • Pinball Project @ USC • Future Work • Conclusion

  23. Pinball Project • Modify an existing pinball machine • Custom games • Flexible hardware control • Simple API

  24. Pinball Project • Started Summer ‘08 • 2 generations of interface hardware • 1 Pinball game design class • Diverse development team

  25. Timeline • Summer ‘08: 1st generation interface • Fall ’08: Used in CS499 • Spring-Summer ’09: 2nd generation interface

  26. Implementation

  27. Interface Requirements • Inexpensive • Meet soft real-time need • Portable • Not Permanent

  28. Implementation • ~$100

  29. Implementation

  30. Implementation • Event-driven software • Friendly API installDedicatedSwitchEventHandler(leftFlipper, "Left Flipper Button", kSwitchRising); void leftFlipper(int switchId, std::string description, tSwitchEvent event) { if (event == kSwitchRising) setSolenoid("Left Flipper", 1); else setSolenoid("Left Flipper", 0); }

  31. Pinhorse • Fall 08 CS499: “Designing and Implementing Games on Pinball Machines” • 2 students • 1 semester

  32. Pinhorse • Lack of multiplayer gameplay • No time restriction • No direct influence • Goal: • Players influence each other • Limited Time

  33. Pinhorse • Modeled after Horse in basketball • Player 1 makes shot • Player 2 tries to replicate shot • 1 minute turns

  34. Pinhorse

  35. Outline • Games, Robotics, and Education • Pinball Machines and Education • Pinball Project @ USC • Future Work • Conclusion

  36. Future Work • Formal evaluation • Ball tracking • Complex, engaging game • Explore other pinball machines • Hybrid pinball game

  37. Future Work • New collaboration withUniversity of Alberta • Implement ScriptEase module • ScriptEase: Model for AI scripting • Implement high-performance player

  38. Conclusion • Games can motivate CS curriculum • Robotics education focus on high-level • Pinball Machines can be used as a novel platform for teaching CS and Robotics

  39. Resources • Web: idm-lab.org/pinball • Sven Koenig, skoenig@usc.edu • Daniel Wong, wongdani@usc.edu Thank you! The pinball project was supported in part by a grant from the USC Fund for Innovative Undergraduate Teaching and the National Science Foundation under Grant No. 0113881. Daniel Wong was supported by the USC Undergraduate Merit Research Program and the Rose Hills Foundation.

More Related