Audio Animatronics 26-Oct-2010 4:05 PM
Edit FancyEdit New New Blog Upload All Recent Home Logout

Table Of Contents
Animatronic diagram


1. Overview

In the mid 1960s, Walt Disney Imagineering invented a system that could control robots and keep them in sync with an audio playback track.

Their implementation consisted of a multitrack audio tape that provided the audio for the attraction in one track, along with a series of tones in other audio tracks. The tones would vibrate resonant reeds relays, which would then activate air-pneumatics, moving small mechanisms in the various puppets in the attraction.


2. The obvious solution

The obvious way to reproduce this with modern means is to use a micro of some kind that reads commands from a storage card of some kind, along with the audio tracks to play back. This could easily be accomplished with:

Then of course, the additional drivers (if necessary) to drive lighting, servos for puppet animation, etc.

The concept here would be to store MP3 audio files on the SD card, along with the sync and control information. The micro would read the song and control data from the SD card, stream the MP3 data to the MP3 shield for audio playback, while controlling the servos and such directly.

But seriously... what's the fun in that?


3. My Solution

Instead of going the completely modern route, I instead propose taking a kind of retro-modern approach, using surplus, obsolete, outdated technology. Using some modern control bits, but relying on the traditional means where possible.

This method, shown in the diagram above, works as follows.

The audio cassette mirrors the audio tape used by Disney. It is a standard stereo audio cassete and standard stereo playback device. The left channel will contain the puppet's audio to be amplified and played back to the audience. The right channel contains a pre-recorded MODEM transmission.

The right channel output will be sent directly into an obsolete modem unit. The modem's RS232 connection is connected to a micro running a very simple program, which controls servos, lighting, etc. based on the simple ascii commands being sent over serial. The command protocol will be explored later in this document.

This retro approach eliminates the need for the costly microSD interface board, the MP3 interface board, and greatly simplifies the firmware running on the micro.


4. Example protocol

The protocol is based on plaintext, printable ASCII characters; not a binary format. This will greatly simplify debugging and such. The protocol structure is:

Protocol packets can immediately be followed by the next protocol packet, or any number of garbage characters, which are ignored. (up until the next AA is sent)


4.1. Command string examples


4.2. Command list


5. Possible challenges

There are a few unknowns that I'll have to research and/or try out to overcome (if they are issues, of course)

Am I overthinking this? Perhaps I just need to hook up one modem to another directly, set one "ATA", the other "ATD", tap off of the sender's TX line (green) and record it. Then in the puppet, set it's modem to ATA on startup, and just listen to the prerecorded audio stream.


6. References

NOTE: "Disney", "Imagineers" etc are all registered trademarks of the Walt Disney Company (DIS). This page, project, and ideas are not sanctioned or approved by DIS.