Blog  |   Puzzles  |   Books  |   About

Cycloid Drawing Machine Simulation

Last April, a friend who knows me too well told me about this new KickStarter for a Cycloid Drawing Machine. I looked at this intriguing adult spyrograph with great wonder, but then moved onto other things. But the machine continued to pique my interest, and every few days I would look at it again, trying to rationalize practical uses for it so I could justify buying one. Finally, in early May, I threw caution to the wind and ordered one.

Immediately, without having received the physical object, I grew concerned that I would run out of, or waste the paper that it uses. So I decided to create a “virtual” software version of the Cycloid Drawing Machine that I could use to experiment with, and figure out ideal settings for the machine.

I looked carefully at the photographs & videos of the existing device, and made a Processing sketch (a computer program in the Processing language) that simulated a particular drawing depicted on Joe’s Kickstarter page.

After a day or so, I was able to get my simulation within the ballpark, but I had a few issues.

Firstly, since I had eyeballed the measurements of the machine based on photographs and videos, I knew they weren’t quite close enough to the real thing — I wanted to get more accurate measurements. Secondly, I was worried that if I were to publish this code, as I do with many of my projects, I might be cannibalizing sales of the physical device.

Both problems could be addressed by contacting Joe Freedman, the inventor, so I sent him the above picture, told him about my project, and asked for his input, somewhat worried that he might have a very negative reaction to this development.

I was relieved that Joe was actually quite thrilled. “I’d love to have you do the interactive simulation,” Joe wrote. He not only sent me the vector illustrations of his parts that I asked for, but also an actual working Cycloid Drawing Machine, months ahead of his planned delivery date, not to mention a few other awesome toys that he makes in his workshop.

The plans and the machine itself were a revelation, and I was able to significantly improve my Cycloid Drawing Machine Simulator (CDMS), which you may now play with in your web browser. Here it is!

[ Warning: If you are reading this on a phone or tablet, I suggest you use a desktop computer for playing with the CDMS – it’s too big for phones, and many tablets are either too small, or too slow to handle it.

I should also warn you that its not hard to create configurations on the CDMS which are impractical on the real device. I’ve stumbled into designs that are difficult to crank because of inadequate torque, a non-issue on the CDMS. These issues are best discovered by using the real thing. ]

As Joe and I worked together over the following days, we were able to help each other immensely — Joe gave me lots of insider knowledge about how to use the machine effectively; and as an early beta-tester for Joe, I was able to provide some feedback about what new users of the machine would struggle with. Spurred on by the project, Joe made a series of helpful instructional videos, which he shared.

While Joe seemed delighted with the simulation, he did eventually show some worry about what effect it might have on his existing customers. “I’m uncertain about how people will respond to the appearance of a free digital version,” he wrote. “It is a different thing and a different experience but you’ve done such a brilliant job of recreating the analog that I worry. I still like to crank the gears but its been great to explore potential setups with the digital cdm.” This was a worry that I shared, initially. It would be a shame if my virtual machine were to deprive folks from experiencing the very valuable tactile experience of the real machine.

At the same time, I saw that my simulation was proving to be a valuable educational tool for both Joe and myself. We were able to quickly discover new drawings, and to intuit better the mathematical underpinnings of the machine. One particularly interesting question I managed to answer was “given a particular configuration of the machine, how many times do you need to crank it to finish a drawing?” and the related question “is it possible to create a drawing that never finishes?”. Having solved these to my own satisfaction, I will let you discover the answers in your own time.

In addition, Joe and I were able to create movies that showed the effect of the changing parameters (such as pen arm position) on the finished drawings. These proved to be hugely instructive.

[ By the way, the web version of the CDMS can’t make movies easily, but I have also published my code for the stand-alone Processing version, which can. ]

While I started out being worried that my virtual machine might hurt the sales of the real machine, those fears began to evaporate as Joe and I continued to work together.

I realized that the combination of the physical and the virtual machine creates a kind of virtuous feedback loop that improves both immensely. I believe that the virtual machine may certainly dissuade some folks from buying the real thing, but I believe it will also encourage other folks to buy, in equal or greater numbers (for the same reason that using a flight simulator doesn’t dissuade me from flying).

The virtual machine is cool and easier to use, but it lacks much of the charm of the physical device. Moreover, the output of the real CDM is inevitably different than the CDMS, not only because my measurements are still slightly off, but because its real. Different pens have different radii. Pens don’t output perfect strokes. Wooden gears don’t create perfect circles, and human hands don’t produce constant force. All of this combines to create output which is much less perfect, and much more human. The drawings I am choosing to frame are the ones that have these imperfections.

You’ll find my Cycloid Drawing Machine Simulation (CDMS) here.

http://wheelof.com/sketch/

Source code for the web version (Processing-JS) is here, and for the stand-alone version (Processing-Java) is here.

You can purchase the physical machine at Joe’s online shop.

Have fun with them both!

One Response to “Cycloid Drawing Machine Simulation”

  1. Digitaler Nachbau einer Zeichenmaschine | TUBALU Says:

    […] Processing, gestaltete eine vernünftige Benutzeroberfläche dafür und stellt das Ergebnis nun zum Rumexperimentieren im Browserfenster […]