This instructable will guide you to build a 3D scanner for less than $30, or even $12 if you already have a USB webcam.
Seeing the price tag and limitations of commercial scanners I decided to challenge myself to build my own. It had to be cheaper and easy for anybody to build one using a 3D printer.
The "Sardauscan" is a laser scanner, comparable to other professional laser scanners but for less than 20-30 times the price, and it has twice the number of lasers.
My design principles were:
· Keep it simple
· Keep it low cost
· Make it evolutive
· Provide a complete solution
The scanner is completely open source and open hardware:
· The "Sardauscan" software is written in C# - the full source code is available.
· You can write plugins for your own hardware or for your tasks.
The software allows you to scan, smooth, build meshes and export to various formats.
How does it work?
The principle of a 3D laser scanner is simple.
· A picture of the object is taken without any lasers firing
· One laser is switched on and another picture is taken
· Computing the difference between the two images, a laser trace (profile of the object) is obtained
· By knowing the positions of the camera and laser you can derive the 3D coordinates of all the points on the profile
· You do the same for all the lasers, turn the table and repeat the process until the table has made a full revolution
And there you go, you have a complete point cloud representing your object.
Here is the list of all the parts you need to build the scanner:
· A bunch of M3 (16 and 20 mm)
· A bunch of M4 (12 and 20 mm)
· 1x Arduino nano (Chinese copy, $4) http://www.befr.ebay.be/itm/NEW-Nano-V3-0-ATmega32...
· 1x Chinese Stepper Motor (28BYJ-48) and controller (ULN2003) (5$) http://www.befr.ebay.be/itm/Uln2003-Stepper-Motor...
· 1-4x Line laser 5v ($2.5$ piece) http://www.befr.ebay.be/itm/251688838898?ssPageNa...
· 1x Hercule HD Twist ($15) http://www.befr.ebay.be/itm/Hercules-HD-Twist-5-0...
· 20x20 profile (can be printed : there are plenty of STLs on the net)
· optional 3x 4mm roller ($0.3 piece) (624 bearings
Total: from $26.5 (1 laser) to $35 (4 lasers)
About the 2020 lengths: this is not really important. The only constraint is to have the camera seeing the whole table.
For example, here are the lengths I used for my build:
· 2 x 140mm
· 1 x 120mm
· 1 x 250mm
What to print
All the STL files can be found on Thingiverse:
· 1 x arm_left.stl
· 1x box.stl
· 1x box_door.stl
· 1x box_arduino_clamp.stl
· 1x arm_right.stl
· 1x CORNER.stl
· 1x MOTOR_MOUNT.stl
· 1 to 4 x laser_holder.stl
· 1X Camera_HOLDER_LOWER_PART.stl
· 1x Camera_HOLDER_UPPER_PART.stl
· 1x center_axe_MINIMAL.stl OR 1x table_AXLE.stl (OPTIONAL)
· 3x roller_baseV2.stl
· you can print 12x M4_tslot_nut.stl if you use a 20x20 profile and you don't have any
· The 2020 profiles are just here for ease of use. You can use whatever you have: wood, metal, …
· If you want to use another camera, you will need to adapt “Camera_HOLDER_UPPER_PART” to match it
· The bearing are optional. They are only necessary if you want to scan heavy objects or don't have a perfectly flat table
· The build is simple, just look at the pictures. You can't do it wrong
· Put the motor at the center, place the 3 profiles around and screw them. Place the corner, screw, put the arms, screw, …
· There is a hole for each screw, you can’t get it wrong.
· For the wiring, please refer to the diagram.