Real time video of the "woman yelling at cat" image:
Pictures of the internal assembly:
images brought to light through time
To make the experience fit your profile, pick a username and tell us what interests you.
We found and based on your interests.
Real time video of the "woman yelling at cat" image:
Pictures of the internal assembly:
just_in_time.inoThe Just:In.Time Arduino script that reads the pixel information that was generated by the Python script and commands the linear axis and LED strip.ino - 287.41 kB - 02/22/2020 at 20:57 |
|
|
get_led_pixel_data.pyPython script to extract pixel information and format it as an array that the Arduino script will read.py - 1.83 kB - 02/22/2020 at 20:57 |
|
|
just_in_time.STEP3D model of Just:In.Time assemblystep - 5.40 MB - 02/22/2020 at 17:54 |
|
|
just_in_time_laser_cut_sheet2.DXF12x24in, laser cut template sheet 2AutoCAD DXF - 97.67 kB - 02/22/2020 at 17:51 |
|
|
just_in_time_laser_cut_sheet1.DXF12x24in, laser cut template sheet 1AutoCAD DXF - 109.42 kB - 02/22/2020 at 17:51 |
|
The stealth chop stepper motor driver and addressable RGB LEDs were technologies of this project that I had never worked with before. I was really impressed by how silent the stepper motor ran using the stealth chop driver. In fact, the only noise during operation is the rubbing between the linear axis cable rail and and the enclosure wall; something that can be avoided by making the enclosure a little wider. The addressable LEDs were just ridiculously fun to control with an Arduino. I also enjoyed learning about LED gamma correction that is used to achieve better human perceptible color contrast.
The only things I would change if I was going to build this again are the 12V power supply AC wire routing and the mechanical connection between the LED strip cart and linear axis. At the moment the AC wires are routed directly over the Arduino Nano micro controller and stepper motor driver. I am a little surprised that this hasn't caused any signal noise issues. My best guess is that the AC currents are low enough to not be an issue. Also, with the current design it is not possible to move the LED strip across the full length of the linear axis in less than 15 seconds without significant oscillation of the LED strip. Stiffening the mechanical connection between the LED strip cart and the linear axis will reduce oscillations at higher speeds. Ideally, the LED strip would move across in less than 10 seconds to be more in line with the camera exposure capabilities of most smart phones.
Create an account to leave a comment. Already have an account? Log In.
Thanks Ahron. The resolution is currently limited by the maximum speed that the linear axis can move without oscillating the LED strip and the longest shutter speed of my digital camera. 15 seconds is my camera's longest configurable shutter speed. So the linear axis has to move fast enough to complete the entire image in that 15 second window. At 72x72 in 15 seconds, the LED strip is right on the edge. Any faster and it will likely oscillate and distort the image. A longer camera shutter speed is probably the easiest path to achieving higher resolution.
Have you heard about the CHDK project? Perhaps your Powershot is supported: https://chdk.fandom.com/wiki/CHDK
ohhh ... so you are moving the entire vertical string of 144 LED's along the horizontal axis? I was thinking that the strip was inside and used mirrors on the stepper drive or something to direct the light
Yup, 72 LEDs actually. The image is 72x72. It takes a little over 15 seconds to flash the entire image. Any faster and the LED strip starts to oscillate too much. Longest shutter speed on most smart phones is 10 seconds so you get about 75% of the image. The shutter speed on my cannon powershot camera goes up to 15 seconds so it is what I have been using to capture the images.
Become a member to follow this project and never miss any updates
This is really cool. Have you considered getting higher horizontal resolution by taking smaller steps and changing your brightness? I mean, I *think* this is possible :-)