The Art Of Motion Control

" Animanemone I"

First large working prototype from the stepper array challenge:

How can you control a thousand motors, and what can you make them do?

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 party:

video clips: (4M wmv, 48sec.) / (1.5M mov, 8sec)

Late October

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...

Early October

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 spindle thingies:

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):



September, 2003

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.

August, 2003

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 progress.

July, 2003

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 Invention Center:


June, 2003

Lots of ideas and experimentation:

a linear array of stylized cilia...

- an array of screw-driven telescoping pistons...

May, 2003

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 idea.

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.

April, 2003

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...