For those of you that thought my first attempts at laser light graffiti was cool, I’ve made a few improvements. The first was replacing the laser that burned out – see this post for an explanation, the second, more interesting enhancement was making each pixel an “X” instead of a dot.
This might not seem like much fun, but as the dots are projected further away, they remain dots, but become more spread out. an “X,” however, since it’s made of lines, becomes larger as it moves further away. Dots get a little larger, but not to the same extent. Hopefully the illustration below will make this more clear.
The Swept-Laser Light Graffiti Technique:
This illustration shows a point of light and a swept line from the laser-servo mechanism. If you took the sweep distance at half the distance, the swept length would be cut in half. Not true with a point of light, in theory it stays the same as the projection surface moves away. So I basically just replaced each dot with an “X” by commanding the servos to move from corner to corner and turning on the laser appropriately. The pyMCU version I’m using is able to control both servos simultaneously, but doesn’t have the extreme precision I would need to fill in the gaps with smaller lines. It’s a trade-off, but the “X” design tells you quite nicely where the pixel center is supposed to be.
I’ve included the code here, and in the slideshow above is some more preliminary light-graffiti that I did using this current program in my garage. The logic is reversed where when the laser should come on, the signal goes low. I’m using a PNP transistor as described in this aforementioned post, because it goes dim if just powered by an output from the pyMCU. Honestly it works in reverse of what I expected, but apparently can be replaced by an NPN transistor for different results. As always, I have more to learn, but the results seem good for now.
The pictures were around 1 1/2 feet tall at roughly 3 feet away. This ratio should be able to be maintained until it gets too dim. I’m not sure what this limit would be. The ISO settings on the camera have a lot to do with this. Depending on how dark the room is, this can be adjusted somewhat to compensate for the amount of light the laser puts out.
In case you missed it, here’s a video of me doing some trials earlier. It’s painting dots instead of “X”s, but the physical setup is the same: