" Animanemone I"
First large working prototype
from the stepper array challenge:
How can you control a thousand motors, and what can you make them
Alan's pages (more
pics and videos of the project's development)
November 9, 2003
Jeff and Alan combine their early software development in the wee hours,
to produce a captivating array of tentacle behavior. Animanemone I makes
its debut at the Science Museum of Minnesota's Playful Invention Center,
during the ASTC conference
video clips: (4M wmv, 48sec.) / (1.5M
The push is on-- we agree on a simplest-is-best approach to the structure.
I fabricate the 7 flower base structures from maple. After building
up a couple of 49-motor flowers, I realize that the structure is solid
enough to do without the black aluminum central supports. This makes
the structure much more open. Bill comes through with another laser-cut
sheet of acrylic petals. We (Jeff, Alan, and I) meet at Alan's and work
into the wee hours for several nights:
Fingers raw from tightening fasteners, we can finally stand
back and gaze upon our animanemone:
And now, on to the "anima" part...
I pick up the hardware at Alan's, and although I have a very short
time to observe 49 steppers moving under some algorithm that Alan has
written, I am transfixed as he demonstrates his "flower."
<Review: "Petal" = 6-around-1 motors. "Flower"
= 6-around-1 petals.> I can't readily understand the choreographic
algorithm as I watch, but (in my best Keanu Reeves)-- "whoa."
After tweaking Alan's Linux C code to run in DOS, and becoming familiar
with all the connectors and circuit board layout, I set off to find
stuff to build the structure with. I check out the 3M and Imation monthly
auctions (nada), hit St. Paul Axman, Global Machinery, Reynolds Machinery,
Garelick Steel, and eventually "the farm." In this last spot
I find something-- black anodized, milled aluminum cylindrical forms,
that have 6 equally spaced decent sized holes on the side. A place for
connector cables to traverse? I'm set up in my 3-season room:
Despite all the cute little plastic eyes, etc. at Axman, I found a
simpler, cheaper, and (more importantly) less cheesy option for the
My goal is to have a flower (7x7) fully done for the TCRG meeting on
the 16th. The design should be mature enough, so that after a rigorous
Applebee's discussion, the remaining 6 flowers can readily be constructed
and mounted to form the "animanemone" (my daughter's idea
for a name):
I am completely focused upon Sisyphus
III, and have very limited time to work on such "foolishness."
However, after Bill assures us that it makes little difference to him
whether the petal shape is simple or complex, and unable to resist a
chance to put Bill's CO2 laser cutting table through its paces, I generated
a few fractalish choices and we choose democratically. I send Bill the
toolpaths the night before I leave for Switzerland.
While in Europe I am able to get to an Internet cafe every 3 days or
so. When I check my email, I find progress reports from Alan and Jeff
that -- lets just say it was really nice to see their work evolve
from so far away.
Man, it's been a packed summer, and I haven't had much time to spend
on this. But, some of the folks in the TCRG have! Check
out Alan's pages for some very cool images and video clips of their
Bill, Alan, and I start thinking more seriously about the hexagonal
array. Bill offers to cut some clear acrylic with his CO2 laser table.
After some back and forth discussions, I generate a tool path:
Within an hour, Bill emails and says it's done! -- two plates to sandwich
7 motors for a small test of this strategy. We play around with various
configurations at Applebee's after the TCRG meeting, and Alan takes
it home. He comes up with a leaner fastener scheme, that will allow
replacing individual motors without removal of the entire back plate:
The various stages of our progress reside in the Science Museum's Playful
Lots of ideas and experimentation:
a linear array of stylized cilia...
an array of screw-driven telescoping pistons...
After the monthly TCRG meeting,
over beers at Applebee's, the central vs. distributed camps presented
their respective rationales. A number of application ideas were aired,
and motors were distributed to interested parties. Alan soon posted
results of his experimentation:
and this cool animation of an application
On the distributed side, Bob P. is pursuing a one-processor-per-motor
(using the Atmel Tiny26 and 4 transistors). The centralized group is
looking at the UCN5841
as a possible single chip solution.
While perusing the stepper motor offerings on eBay (April,2003 ), I
happened across an auction for a lot of 200 small steppers. Normally,
I would not be interested in these, as they are too "coarse"
(24 steps / rev) for my eggbot
course. But they were also incredibly cheap ($69 buy-it-now).
I got one lot (there were more available), and upon receiving them,
hooked four motors to my parallel port (using UCN5804 drivers) and gave
'em a spin:
Liking what I saw, I started to think about strategies for controlling
large numbers of these things. I came up with one solution, but there
were parts of it that I didn't like. So, I turned to the Twin
Cities Robotics Group for help. My initial query was taken up by
several of the group's members, and a variety of solutions were put
forward. Interestingly, they seemed to be divided into a "centralized"
approach (one control CPU, the way I had imagined doing it) vs. a "distributed"
approach (one processor for a group of steppers or even one for every
stepper, with communication between neighboring steppers). The flurry
of ideas, and offers of help led to my purchase of the remaining motors.
When they arrive via UPS, I will have a total of 1,080 motors, at a
cost of 37 cents each.
What we do with them, and how, are open questions. One of the TCRG
members provided this link to an amazing art piece entitled "The
Wooden Mirror," by Daniel Rozin. This is only one way in which
a motion controlled array might be used. Of course we'll have to build
our array to show others...