Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Project Milestones

...

First fully operative
prototype

...

program actuates flippers dependent on ball recognition

logic only rudimentary - repeatedly trigger both flippers if ball is below threshold

(see video)

Overview

Children Display
alltrue
depth2

Components

This section is meant to collect the latest considerations for the system components.

Vision/Ball Detection

  • Flashing lights need to be masked or excluded by means of color to prevent misdetections
  • The pixel coordinates should be translated to a custom coordinate system, s.t. chnages in resolution or exact camera position can be abstracted from

Pinball Controller

Ball Physics Model

  • For now the physics model passes a single number, the time the ball is predicted to be in range, i.e. when to trigger the flippers.
    For the logic to be able to perform meaningful computation more information needs to be passed, e.g.:
    • Position the ball is predicted to be at at the corresponding time
    • Velocity vector of the ball
  • Gravity on inclined plane
  • Different ball behavior when rolling down the inlanes
  • Bounce back on collision, especially with the resting flippers (not all shot should be taken as a volley)

Main Program

...

The described system is an autopilot for the pinball machine "Mary Shelley's Frankenstein".
A Raspberry Pi with attached camera is mounted above the pinball machine and the computer is connected to the triggers of the pinball machine to allow for their actuation.

The different parts of the system interact in the following way. From the live camera footage a ball position is extracted in a series of image processing steps (see Image Processing/Ball Detection).
This pixel position is then transformed into a World Coordinate System for further processing and passed to the SCChart Controller, which is the main logic component of the system.
To allow for timely reactions the SCChart Controller calls the Ball Physics, which performs a ball trajectory prediction.

For a quick overview on how to build and run the system see Dependencies and Compilation.

Overview

Children Display
alltrue
depth2

Gameplay Footage

https://mega.nz/#!EF4TlZgB!3PzVmVmV3gVvEKSXyu5i_ZB1tX02m4dEaIi26us9kVk

Hardware

  • Sega Pinballmachine: Mary Shelley's Frankenstein
  • Raspberry Pi 3 B+
    • 4 CPU-Core
    • 1 GB RAM
    • 26 GPIO-Pins

...