Intro: Homemade Scanner
In our project, we created a homemade scanner that we used to analyze assignments and other writing pieces so as to detect signs of depression. However, This scanner can be used to do more than just that! Your imagination is the only limit that you have! For example, you could use it to detect problems in art or even just to regularly scan documents. So lets Dive in!
Step 1: Getting the Materials
The materials that we used are readily available in the market. The hardest thing to acquire was a single pulley system which we managed in the end. The materials needed for this project are:
- Two 360 degree servos or one servo and one DC motor
- 3 drawer gliders
- A pulley system
- MDF Boards
- An Arduino Uno
- A Raspberry Pi
- A webcam or RPI camera module
- Jumper cables
- A BreadBoard
Step 2: Assembling the Hardware
- To assemble the hardware, bolt down two of the gliders parallel to each other with the gap of approximately the width of an A4 sheet on an MDF board.
- Next, Bolt the final glider on top of this setup so that it is perpendicular to the other two gliders and moves alongside them.
This initial setup is enough to start seeing how the setup will look like. The parallel gliders should move up and down and the one on top should allow left to right movement. To stabilize the setup, attach another MDF strip between the parallel gliders about 10 inches away from the perpendicular glider. This will help if you are using a DC motor instead of the second servo as well
Step 3: Setting Up the Motors
If you are using two servo motors, two pulley systems will be required.
- With two servo motors, attach one pulley wheel on top of each of these
- Setup one of these parallel to the parallel gliders and then attach another pulley wheel near the base of the glider.
- Using the pulley setup, attach this to one of the parallel gliders. When the pulley rotates, the two parallel gliders should move in conjunction.
- Repeat this setup for the perpendicular glider by attaching an MDF strip on top of the glider and setting up the pulley system there.
If you are using only one servo motor and one DC motor,
- Attach this servo motor as described above but only for the perpendicular part
- Attach the DC motor one A4 length plus 5 inches away from the base of the gliders. Make sure the DC motor is sideways as shown in the video below
- Attach a pulley cable strip from this motor to the second MDF strip that was attached in the previous step
PS ENSURE ALL COMPONENTS ARE SECURE OTHERWISE IT WILL FALL APART IN THE FOLLOWING STEPS.
Step 4: Setting Up the Camera
Attach the Camera to the perpendicular glider as in the video and the picture shown in this step. The Camera will be hoisted slightly higher and the setup should not come in the image. This will take some trial and error but will be easy to do. For a better resolution scan, Use a higher resolution camera!
Make sure the lens is parallel to the page to get the most unstretched image.
Step 5: Setting Up the Arduino
The Arduino will take some work to setup as all the motors will be connected to it. To do so, See a tutorial on how to set up an Arduino with stepper motors and with a DC motor. The functions to be associated with it are:
For the Perpendicular Glider:
- The Pulley system must move it to 3 or more different locations depending on the width of the picture achievable by the camera. The height of the camera can also be adjusted according to this so as to reduce the motor load.
- After the motor reaches the end of the page, It should revert back to its original position
For the Parallel glider:
With a Servo:
- Pulley system should work in conjunction with the motor as seen above. Every time a line is complete, the system should move down the page as per the height of the image that the camera is taking
With a DC Motor:
- The gliders should be pulled down the same length as the height of the image. Use a button system for this as DC Motors can reduce battery power over a period of time
Step 6: Setting Up the Raspberry Pi
Connect the camera to the Raspberry Pi. Look online to find out how to write a code that allows you to take images from the Raspberry Pi. This is simply a matter of looking at the Camera code from the terminal and writing an initiation loop.
Step 7: Connecting the Raspberry Pi and the Arduino
Connect a High/Low output pin of the Arduino Pin to the input pin of the Raspberry Pi.
Add this part to the picture loop and program the Arduino such that the pin sends a high signal only when the motor is not moving and the camera is positioned over the part of the page where the image should be taken. Ensure that all these images are sent to a computer or stored in the Raspberry Pi.
Step 8: Image Reconstruction
To ensure the image is reconstructed, Look at the PIL and the Numpy libraries in python. In conjunction, these can be used to reconstruct the image.
And now, the Scanner is Complete!
Step 9: Imagination
Now, use the scanner as you please! Traditionally or as something amazing! Have fun with it!