I have been working on my first transport.
To follow the steps of Sasquatch… and great name for scanners by @friolator, I will affectionally call this project Snailscan… it is a very slow moving animal, with no feet… analogy for a slow moving scanner without sprockets.
My first scanner used projector parts. Adding to the challenge was/is to build a transport without any projector parts.
The goal: to design a low-cost scanner for 8mm and 16mm, with the quality and shutter limitations of the Raspberry Pi HQ camera, using the most off-the-shelf components, no projector parts, and make the proof of concept repeatable.
Having a camera with a rolling shutter = stop-motion transport.
For my first project, I was able to have great control of a stepper, and decided to try to direct-drive a supply and take-up stepper. To do so, it was necessary to sense how much film is in each reel, since the number of steps to move each/both reels -the corresponding amount of one frame- will vary with the diameter of the spool.
How to sense the size of the spools in a novel way? I was puzzled by the prospect of the Time-of-Flight sensors (ToF), which are known for accurate short range distance measurements. The one used was the ST Microelectronics VL6180X, for convenience, the Pololu Sensor Carrier VL6180X. A similar is available from Adafruit.
To manage the steppers and the sensors, the transport would be controlled by a Raspberry Pico.
I think it is important to use the forums to share our successes, but equally important is to share failures to collectively learn and adapt.
There are libraries for the VL6180X by Adafruit, Pololu, and STMicroelectronics. But for simplicity and flexibility, decided to write couple of functions (init and single shot range function). The sensors worked well measuring distance to many materials, and to a flat piece of film, but when measuring inside the reel, the measurements became unreliable. Even in the best conditions, these sensors are not very precise. This video elaborates. Tried a Kalman filter with some improvement, but the measurements under the conditions were inaccurate.
ToF sensors have interesting potential, but the results for measuring the size of the spool with ToF were not very reliable. That’s the initial failure to share.
Surprisingly though, the geared stepper motor was a great success. Even when used open-loop without any sensors, for a short segment with a fix measured diameter of the spools, these were able to move fairly accurately close to a frame.
Here is a quick video of the movement, supply spool full and take-up spool almost empty.
The next step for SnailScan is to figure the best use these. There is a lot of good ideas in Denis Carl’s Gugusse Roller project, which uses roller board wheel driven by stepper as a capstan, great project.
Not yet giving up on the direct driving the reels… still thinking on the best approach for the next iteration.
Here is how the SnailScanner V0.1 looks.
In summary, what worked and what didn’t
- First time using the Pico, and I am trilled. Having that speed for five bucks is unbeatable. Building a transport controlled by the Pico driven by the Raspberry Pi (for HQ cameras) or by any other computer (for other cameras) is definitely the SnailScan way forward.
- Gear steppers worked great, specially when using the TM2208 and applying linear acceleration, both which I used on the first scanner, and reused with the SnailScan tests.
- Vinyl cutter rollers work well. And with some caveats, so did the Lego cones that are used as posts (check the video). Although the later are a bit tricky to setup.
- ToF sensors did not yield the results expected when measuring the spool inside the reel, and these were 16mm. For 8mm it would be worst.
- Learning a lot was the best part. Now switched to FreeCad, Pico, I2C, all of which will be used forward in the project.
- A scanner found a new purpose. Concurrently with the work in this project, I came across the Develocorder. It was a film based seismology recorder used from the 60s to the 80s and… you guest it, it uses 16mm film to record continuous earthquake data. This 16mm film type in particular has no perforations! so the approach by something like Snailscan would be a great fit for these.
Love to hear any ideas to explore this project forward, feel free to share your successes (and also failures). Of particular interest are sensing tension for stop-motion scanners, and holding tensions for stepper driven scanners.