Exercise: Automatic Puzzle

In this exercise we will design and build a 3D-printed puzzle which can play all by itself. The overall project objective is a simple autonomous performance which exhibits responsive behavior. The technical objectives are exploring the potential for 3D printing, designing a puzzle which can be solved using open-loop motions, and programming a solution.

The primary example for this exercise is a rotating marble labyrinth mounted on a gearmotor. As the motor turns back and forth, the marble moves through the labyrinth.

Some ideas for your puzzle:

  • follow a continuous path

  • randomize into one of several catch points

  • a maze with an endpoint

  • gentle triangular slopes with drops to ‘ratchet’ the movement

  • passively pivoting parts

  • using a puzzle principle other than a marble

Design Requirements

Please keep your the bounds of your device within a 120 mm square. It should be light enough to be safely supported by the gearmotor shaft.

Please design your 3D-printed part to be fabricated with no support material. This includes sufficient flat bottom for good adhesion, and no roofs shallower than a 45 degree slope.

Please remember to include a mounting pattern for a shaft flange so you have a reliable connection to the motor

Please mount the motor on a laser-cut plywood stand. You are welcome to borrow new of the example designs.

We will use 3/8 inch steel marbles (if marble-based). A 11 mm track width is recommended for generous clearance.

Deliverables

  1. Live in-class demo of your device performance.

  2. A short report posted to the shared drive including:

    1. a short text statement reviewing your intent and outcomes in about a paragraph

    2. a brief video (e.g no more than 60 seconds) of the machine performance showing the autonomous behavior

    3. your CircuitPython script (e.g. code.py file)

    4. your 3D-printing STL model file