Arduino Laser Stuff
2012/03/12
I've been tinkering with Arduino stuff for a little while. It's my first go at electronics hacking and it's going rather nicely.
My first project involves lasers... for no particular practical purpose... it's just that lasers look cool.
So, the goal is to create a laser light show in my garage that adapts to whether cars are coming in or going out, or, if that's not happening, it responds to music within the garage.
On the software side, I created an HTML5-based keyframe authoring tool that generates keyframes as code that I can drop into my Arduino project. The keyframes control how the lasers operate for set sequences like car arrival, etc.
The project uses these laser line generators to get some pretty good coverage around the space. The lasers are driven by a software PWM routine that runs over SPI to a high-power shift register.
As a side effect of this work, I ended up with a little bit of reusable code that I've dropped at github. It's a little library to do PWM via Bresenham modulation. For my purposes, this has better output than a bit-angle modulation, especially at low update rates.