Tutorial: Armature Automation

This tutorial will introduce techniques for attaching actuators to armatures to create an automated scene. It uses Max to control hobby servos in real-time. Max was originally developed for music but can be used to control motion. This tutorial will explore more techniques for applying Max to controlling automation. Movement control emphasizes different features than either note-based music (MIDI) or sound generation (MSP).

Objectives. At the end, you should be able to do the following:

  1. identify components from our automation kit: hobby servos, pushrods, servo horns, USB servo interface, extension leads, power supply.
  2. automate a two-DOF armature using pushrods in a parallel-drive structure
  3. compose a motion program for an armature with two or more degrees of freedom.

Deliverables: please finish setting up your scene and shoot a short video (e.g. 30 seconds) using one of the lab Sony a6000 cameras. The video should emphasize a visual choreography created using programmed motion of on-screen or off-screen mechanical armatures.

The video should be uploaded to Vimeo and embedded in a short blog post. Please assign all group members as authors on the post. This is due Monday at 5PM.

Please have your workstation cleaned up and all materials put away prior to the start of class next Tuesday.

Procedure

Armature

The first step is to build a simple two-axis armature to move using servos. You may follow the example of the in-class demonstration or try your own.

  1. Please keep it simple; the goal is just to explore creating a moving gesture of an object, filter, optical part, or the armature itself.
  2. Remember that the servos have at most 180 degrees of travel; they can’t directly control continuously rotating joints.
  3. The pushrod links can be used as simple transmissions. Attaching close to an armature pivot will amplify the range of movement and speed, but decrease available torque.
  4. Please use only hard-wire cutters to cut pushrods. The material is hard enough to damage normal wire cutters.

Servo Interface Setup

The next steps involve the routine setup of the hardware servo interface and loading an example patcher into Max.

  1. Set up a Mini-Maestro Servo Interface with two servos, a 5V power supply, and a USB connection to your computer, following the example of the in-class demonstration. Some notes:
    1. Please pay special attention to the polarity of the 5V power supply connection, getting this backwards can damage hardware.
    2. Please make sure the Mini Maestro is mounted on a laser-cut plate and attach the plate to your breadboard; this will help prevent shorting out the exposed connections.
  2. Download and unpack automation-tutorial.zip. You should now have a folder named automation-tutorial with several files.
  3. Load the automation-tutorial.maxpat patcher into Max.
  4. Select the correct serial port to connect to the Maestro. It may be helpful to click ‘Rescan ports’ and check the Max Console window to see which port is the Maestro command port.
  5. Use the slider interface to make sure that each servo can move properly.

Animation

  1. The lower part of the patcher includes a simple two-channel interface for creating a motion sequence. The keyframe graph uses a function object to specify a linear trajectory, which can then be smoothed or filtered to modulate the movement.
  2. Try creating a short expressive movement. We would like you to avoid over-emphasizing highly-detailed keyframing; please remember that the total visual effect comes from material physics and optics, tempo and rhythm, keyframe data, and algorithmic generation and transformations. Please try to use all of these together to quickly explore visual ideas.