Hello, for burning man I want to make a portable photo booth that takes and prints photos by focusing sunlight through a magnifying glass onto a given medium for solar engraving. that way I can take selfies with new friends and give them a meaningful gift to keep.
I'm imagining a way to take a photo on-location and use that data to control a magnifying glass whose position is moved using a 2 axis stepper-motor/threaded rod setup (like on a laser cutter). Basically, I will program it to say the darker the pixel, the longer the magnifying glass burns at a certain coordinate before moving on.
I think I will need to be able to track the sun to ensure a pinpoint focus of light. Also, be able make on-the-fly global timing adjustments to account for sunlight and material composition. Also a shutter could be useful.
I'm sure I can figure out how to do all that with existing tutorials. However...
My main question is: beyond Arduino, what cross-platform languages/skills will I need to acquire to make something like this work? For instance, would this require a raspberry pi (and learning python) in order to handle the data processing?
as far as this project goes, success is as much defined by what I can learn along the way as it is by arriving at the finished product, so I don't mind building my skills to do somethinga bit better even if it's less practical in the name of the project itself.
Any thoughts that come to mind are much appreciated!
Or a RPi. BTW, The lense is not ideal, so tracking sunposition will help in orienting the "photo" perpendicular to the sun, but it will not give an absolute focal point.
Okay I was thinking a pi might do the trick! I was thinking of building the whole thing to orient toward the sun, and then fixing everything else to that angle as a reference point for all other motion. the lens on that platform points toward a fixed focal point where I would place my medium. Then the platform supporting the print medium would move underneath the fixed lens.
I suspect that printing an image would be very slow - but it would not be difficult for you to have stronger sunshine than is usual in the UK.
I wonder if it would be better to separate the motion of the lens from the motion of the sun by using a moveable mirror to ensure that the sunlight always fall on the lens.
That's an interesting idea... Might allow for a more stable platform for the moving print bed. The math is already hurting my head!
I think this calls for a multi-processor approach. A rare occurrence.
An RPi to do the heavy lifting: taking the photo and figuring out a path for the lens (I assume a line drawing is the way to go - maybe on thermal paper to do it faster?).
One Arduino to position the lens: look at 3D printers, how they control the print head.
Another to handle the direction to the sun; this may be completely independent of the others using its own compass, time, and other sensors (maybe some light sensors to find the brightest spot in the sky).
Think simpler. Mount the lens fixed. Find the focal point. place a small XY-table there. move the table (p the object you want to engrave) with 2 steppers + grbl.
That's what I meant with the 3D printer as basis... whether you move the table or the head is not the most important. Getting the focal point where you actually want it is the real problem, considering the sun is a moving target!
Visit some CAD CAM CNC forumns.
Photo to vector or pixel software exists
Post processor software to optimize the tool path already Exists
That will turn the tool path to gerbil
For the arduino
The real Arduino project is the sun tracker.
Maybe have a secondary lens parallel to the main lens that allows for tracking. You could take advantage of focus and layer directional sensors and then have a thermocouple at the focal point to measure intensity.
The sun tracks east to west so regularly that in the 1930's people used clockwork to follow it. The elevation does not change appreciably during day, the rate it changes is 46 degrees in 183 days.
A cylinder pointing straight into sunlight will have no shadow. Put a lip around the top and it has an even shadow. Put light detectors at the base of the cylinder all just inside the shadow and possibly others just outside the shadow (make sure there is sunlight) and you can detect even small deviations in the pointing just by relative differences in detected light.
If a bitmap (.bmp file) image is kept on SD card, Arduino can read that.
The longer you hold heat on one spot, the wider the hole will end up.