Exercise: Reactive Marble Run Tile¶
In this exercise we will design a new marble run tile incorporating both a hobby servo actuator and a photoreflective interrupter to sense a moving marble. This is similar to the Exercise: Actuated Marble Run Tile and could be treated as an iteration of a previous design with added sensing.
The main objective of this exercise is implementing a system blending the passive physics of a marble track, sensor input feedback, and actuated mechanism. The connection between input and output will be made via a computational process on a Pico.
Please choose design goals commensurate with your mechanical design experience and CAD skills. But please consider how to make the device versatile enough to allow different system behaviors to be implemented via software revisions.
For this exercise we will primarily use laser-cut plywood. If you wish to use 3D printing for one or more parts, please consult with the instructor.
Objectives¶
The overall objective of this exercise is to design and fabricate a small marble run track which incorporates both a hobby servo actuator and a reflective photointerrupter. This may be a standalone run or include inputs and outputs so it may be assembled on a sloped table with other active or passive tiles.
The goals of this exercise are that you should be able to:
Conceive and sketch a simple mechanism including ball pathways, sensor placement, moving elements, actuator mounting, and motion transmission.
Create 3D parts from 2D CAD sketches:
that use parametric constraints and dimensions to capture design intent
that support iterative design modification
compatible with the limits of the laser-cutting process
Fabricate, assemble, and test a mechanism combining laser-cut plywood, standard parts, hobby servo, and sensor wiring.
Program a reactive behavior in CircuitPython.
Sample Parts¶
The sample files for this exercise can be browsed on the course site:
Or as a single zip file:
Sample files are provided on the assumption that students will go farther given a stronger foundation, so these are provided for you to examine and use as starting points. But if you use one as a template, please be mindful that you add meaningful development, not just tweak it trivially.
Material and Tool Constraints¶
Most of the material and tool constraints are the same as for Exercise: Actuated Marble Run Tile.
Please fabricate all parts from laser-cut 6 mm plywood, unless you get instructor permission to fabricate 3D printed parts.
The tile should fit into a 120 mm square. Entry/exit ports should be located at the midpoint of one or more edges. The sample design places the playfield surface 42 mm above the ground plane.
We will use 3/8 inch steel marbles. A 11 mm track width is recommended for generous clearance.
Please use a linkage or other indirect drive to move the mechanism. The servo horn is not intended for collisions or heavy masses.
Sample Circuit¶
More details on the photointerrupter circuit: Lite-On LTH-1550 Reflective Photointerrupter.
Sample Code¶
Sample code for reading a digital input: Digital Input/Output Examples - Raspberry Pi Pico.
Sample code for driving a servo output: Hobby Servo Examples - Raspberry Pi Pico.
Deliverables¶
Live in-class demo of your device.
A short report posted to Canvas including:
a zip of your SolidWorks files
a photo and/or brief video
a short text statement reviewing your intent and outcomes
Challenges¶
If you would like to explore more, please consider the following optional challenge question:
How much information can be gleaned from a single sensor? It may only be a single bit, but it changes in a pattern over time, and the semantics of that pattern depend heavily on the placement within the marble pathways.