Demo 1: Rocking and Rolling

Each Demo assignment is a micro-project to be developed outside class hours. These will develop and demonstrate your individual expertise in applying the skills learned in the course. The primary focus is on using the technology, but each will include an element of application to a human context.

The primary deliverable is a live in-class demo at the start of class on the due date along with a brief blog entry. Please note there is no formal proposal process for this demo; I simply expect you to build it and have it ready to go by the deadline. If you have questions about scope or feasibility, please ask.

Objectives

The simplest processes we can build involving both computing and actuators involve open-loop output in which a computational process generates signal patterns to actuate a mechanism without any sensing or feedback. In the absence of external inputs, the dynamic element of the process must be time.

For this demo, please:

  1. Construct a simple software and hardware system which creates a pattern of physical movement over time. The main parts should be laser-cut 6mm plywood.

  2. Post an entry on the 16-223 WordPress site including a brief video, a short paragraph describing the objectives and outcomes, and your code (properly formatted).

  3. Be prepared for a live in-class demo.

Prompts

../_images/rocker-isometric.PNG

A provided starting point is the sample design for a rocking toy driven by a single micro hobby servo. The idea is that physical dynamics extends the reach of a simple actuator: the actuator can either strike the table or move a mass and with some tuning, cause the toy to ‘walk’ in different directions. With a heavy ball on top, the dynamics change yet again. The rocker CAD files are in rocker-example.zip.

Please do not use the design exactly as provided, the whole point is for you to customize it in a meaningful way and add software to actuate it. The customization might modify the dynamics, create different movement potential, or add a prop to transform the narrative.

The choices you make raise many questions:

  1. How would it be different at either very short or very long timescales?

  2. How could the motion be smoother? More accentuated? More deliberate? More gestural?

  3. How can it become surprising?

  4. What would it mean to be non-repeating?

  5. How does it augment human perception of time or rhythm?

Criteria

  1. There must be both a computational and a physical process creating the outcome.

  2. Stick to exactly one hobby servo output.

  3. The physical movement must be visible to the eye, i.e., no purely audible results.

  4. Please focus your attention on the underlying dynamic processes more than fine fabrication.

  5. Be prepared to give a brief live demo without comment, followed by a succinct context statement. I will need to move fast during evaluation, no more than one minute per person.

  6. The device should actually work; no faking.

  7. Please clearly cite any sources. It’s fine to use libraries or modify code you find elsewhere as long as they are clearly credited.

  8. Please embed your video so it can be watched directly from the post. The easiest way to do this is to host it on a third-party site. Videos hosted directly on the course site should be .mp4 files and use the appropriate video shortcodes. N.B. hosted QuickTime .mov files cannot be embedded.

  9. Please make all links active. Just pasting in a URL does not necessarily make it clickable.

  10. If your Arduino sketch is a single file, please post your code inline, using a SyntaxHighlighter Code block with the Code Language set to “C/C++”, described on the site help page. If it includes multiple files, you may either post them inline or as a zip. Do not post your code as images, as they cannot be cut or searched.