July 19th, 2021—
Light painting is a fun way to create digital images by using just a few points of light to “draw” across a camera with a long exposure time. This gives the illusion of a virtual streamer being dragged on the canvas and can produce amazing photos. Ted Kinsman wanted to build a light painting machine, which mimics the geometric chucks from the 1860s that used several spinning platters on a lathe that rotated at different speeds to carve ornate patterns into wood. His version has a series of three platters all stacked on top of each other and are driven by three stepper motors.
A single Arduino Uno runs the program for the geometric light painting machine, and it is responsible for controlling the stepper motors through its three attached TB6660 motor driver modules. The code works by first initializing each stepper as an AccelStepper object and then setting its max speed. The magic comes from this next part, and each motor gets assigned a constant speed value that determines what kind of pattern will be drawn. And finally, the motors are run at these speeds until the machine is stopped. The vast number of combinations from these variables means that even a small change to the motors’ speeds or where the LED is positioned on the top platter can generate wildly different results.
You can read more about Kinsman’s geometric light painting machine in his article on PetaPixel.