Analog Laser Drawing v 0.1a
Analog Laser Drawing is a system using laser projection controlled by a leapmotion sensor that tracks hand possitions to control the drawing on a light reactive liquid "canvas".
produced by: Ivaylo Chichanov
Analog Laser Drawing came to mind from a very typical glow in the dark stars that most kids have in their bedroom ceiling, which react on light.
I did spent countless hours playing with those as a kid with my laser pointer and have always thought it will be great if somehow you can paint on a canvas the same way.
The plan was to create mirror system that will reflect the laser beam and draw on a double glazing like glass enclosure/tank that is filled with the light reactive liquid.
The mirror system is driven by two motors. I was considering using step motors but after some research I decided it will probably be to slow and not as responsive as I intended so I came across a video on youtube that is repurposing old computer hard drives motors to create the similar galvo system as in commercial lasers.
That gave me an idea to follow the same path and use HDD’s motors for the galvos controlled by sound. I also found a processing library called XYscope that converts processing’s basic shapes to audio signal that was the perfect solution for my project.
For the double glazing glass enclosure I had very specific requirements, since the light reactive liquid settles down after a while, in order to keep it consistent I needed to circulate the liquid.
A pump was required to circulate the liquid after a while to prevent settling.
Because of that I couldn't use normal glass for the enclosure so an acrylic glass that could easily manipulated was the best choice.
After several failed attempts of constructing it I developed a tube system that was rigid and did not leak the fluid, but it was down to “trial and error” design choices.
I also had to construct a cubic frame housing to hold the “canvas” glass enclosure and the electronics.
In the spirit of repurposing old electronics I stripped apart my old laser pointer and powered it by the arduino that also controls the pump.
To be able to control the laser and the pump I decided to use a mosfet switch for the laser since the laser requires 3v to be powered and could be powered by the arduino, but the pump requires 12V and had to use external power supply and I choose a high voltage relay controlled by the arduino by a signal voltage.
The interaction comes from the leap motion sensor that tracks XYZ position of the hand to control the XY coordinate of the laser to draw and Z position to trigger laser on/off when a hand is tracked in range.
Because I am using sound to control the hdd motors/galvos an amplifier was required to boost the voltage that comes from the standard sound card audio output.
No code was borrowed, but several libraries were used:
Leap Motion Processing - https://github.com/nok/leap-motion-processing
XYscope - http://teddavis.org/xyscope/
Laser galvos from HDD inspiration video - https://www.youtube.com/watch?v=FqjqEY8Zupk