From Trammell Hudson's Projects
Inspired by the success of the cable-driven air hockey system, I applied a similar design to build a janky two stepper polargraph with spare parts found around NYCR. It uses a tinyg to drive the steppers and a hack of a perl script to parse the vectors out of an HPGL file.
The design was put together over two hours with junk parts, so it is not very robust. The steppers are NEMA17 with brackets held to the whiteboard via c-clamps. I roughly measured the distance between them and it was close enough to work. The pulleys are 24mm in diameter, about 75mm in circumference, so the tinyg was configured with:
$1tr 75 $2tr 75
The pen holder is just two zip-ties on a servo horn that secure a whiteboard marker at a jaunty angle. Originally I planned to use the servo to lift the pen, but integrating the servo action with the g-code controller would be tricky. As a result the traces between the elements are visible in the NYCR logo. The lack of any sort of carriage also means that the angle of the pen can't be controlled, so it drags at different speeds and angles. This makes some parts of the circle very wobbly, for instance, as the pen gouges into the whiteboard.
If you pick your art piece well, such as a space filling Peano-Steinhaus curve (or the Gosper curve at the top of the page), the lack of a pen-up command doesn't matter. The jitter adds an organic element to the art, sort of an interesting glitch effect in place of the mathematical rigor of these fractals.
Source code and sample images: github/osresearch/polargraph
UPDATE (2016-03-18) I've improved the control law and g-code converter quite a bit. The pen holder is now a light weight two part 3D printed piece that maintains a much more consistent angle. The results are significantly better.