You are on page 1of 28

Let's Make ...

Featured Write an Instructable Login | Sign


Up

Classes Contests Community Teachers

advertisement

Build a 30$ Laser Scanner


By Sardau in 3D Printing 276,118 1,853 401 Featured

Download Favorite

By Sardau More by the author:


Follow

Introduction

This instructable will guide you to build a 3D scanner for less than $30, or even $12
if you already have a USB webcam.

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


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.

Result

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.

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


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.

 Add Tip V Ask Question | Comment Download

advertisement

Step 1: What Do You Need ?

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


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.
Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
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:

http://www.thingiverse.com/thing:702470

· 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
Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
· 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

Remarks:

· 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.

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


· For the wiring, please refer to the diagram.

laser_holder.stl

M4_tslot_nut.stl

MOTOR_MOUNT.stl

roller_baseV2.stl

table_AXLE.stl
View in 3D Download

arm_left.stl

View in 3D Download

arm_right.stl

View in 3D Download

box.stl

View in 3D Download

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


box_arduino_clamp.stl
Download

View in 3D Download
Camera_HOLDER_LOW…

View in 3D Download
Camera_HOLDER_UPP…

View in 3D Download
center_axe_MINIMAL.stl

View in 3D Download
CORNER.stl

box_door.stl
View in 3D Download

 Add Tip V Ask Question | Comment Download


View in 3D Download

Step 2: Firmware View in 3D Download

At this point all you need to complete the hardware part is to upload the firmware to
the Arduino. You will need the Arduino IDE or another sketch editor.
View in 3D Download

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


The firmware (a regular Arduino sketch) is available at:
https://github.com/Sardau/Sardauscan View in 3D Download

You will also need to install the AccelStepper library in order to compile it:
https://github.com/adafruit/AccelStepper

· Edit configuration.h to match your wiring.

· Upload it to your Arduino

Now that the hardware is ready, test it!

· Connect to your Arduino with your IDE

· Type “Sardauscan” – the Arduino should answer “yes”

· Try the stepper: type “T R 100” – your table should turn 100 steps

· Try the laser: type “L 0 1” for the first (0) laser to fire (1) – the first laser should light
up

If something doesn’t work, check your wiring and configuration.h – it should match.

 Add Tip V Ask Question | Comment Download

Step 3: Software and Calibration


Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
To install the Sardauscan software, go to github (see link above) and download the
latest binary version. Extract it and launch the executable.

In the main interface, you will see 3 red icons – one for the table, one for the lasers
and one for the camera. Click on them to connect to the hardware (right click to
disconnect).

If you use the standard Sardauscan firmware the table and the laser switches are
linked.

Now that the hardware is ready and the software connects to it, here comes the
tricky part: calibration.

The calibration takes 3 steps:

· A manual calibration

· The build dimension

· The "Adjust" correction

Be careful during the calibration: the result quality directly depends on it.

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


To calibrate:

· Click the target icon and the ‘Physical’ button.

· Move your camera so that the vertical in the preview window crosses the exact
center of the table.

· Click on the center of the table in the preview window. The lines will help you align
the calibration object.

· Place the calibration object (see STL on Thingiverse) on the table, flat area facing
the camera – use the horizontal line for help.

· Click on the first laser icon on top to light up the first laser. Align the laser line to the
vertical line in the preview window.

· Repeat for all your lasers.

Build dimension:

· Click on the “build dimension” button and enter your build dimension.

Adjust:

· As a perfect calibration is difficult to achieve, especially with a higher number of


lasers, the correction step will help you correct the previous errors.

· Place your calibration object on the center of the table and click “quick scan”.
Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
· When the scan is completed you will see a top view of it. Each color corresponds to
a different laser.

· The goal is to superimpose as best as possible the different laser scans: select a
laser in the combo box and rotate (left mouse button), scale (middle mouse button)
and pan (right mouse button) the scan.

Congratulations , your calibration is done!

calibration.stl

 Add Tip V Ask Question | Comment Download

Step 4: Dafuq Is This Interface ?

To be evolutive the software is designed around tasks and processes.


View in 3D Download

When you open the program you will see to the left a list of available tasks – you can
drag them to the process list on the right then press the ‘Play’ icon at the bottom.

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Here is a non-exhaustive list of the available tasks:

· Scan: scan an object

· Grab Pictures: take pictures of the object for use in a photogrammetry program

· Filter IQR: remove noise from the data with an interquartile range filter

· Filter median: remove noise from the data with a median filter

· Angle: merge laser scan by angle – smooth the scan and filter noise

· Bezier: smooth the data by fitting a Bezier curve

· Surface: smooth the data with a Laplace surface smooth

· Save ply: save a PLY file to use with MeshLab or any other point cloud software

· Save stl: save the STL file

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Sample_scan_kitty_at_…

 Add Tip V Ask Question | Comment Download

Step 5: Developer Corner : Evolution ? Own Hardware ? Plugins ?


As mentionned the software is not linked to the Sardauscan build – it is made to be
evolutive.
Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
You can do almost whatever you want with plugins.

You have a magical algorithm?


Download
Do a plugin for it !

You have a custom image acquisition hardware ?

Do a plugin !

You want to use your own hardware firmware for the table or the laser ?

Do a plugin !

You can look at the github repository, there are some plugins samples. It is really
simple to code.

To use the plugin, just copy then in the "plugin" subdirectory.

Happy scanning !

 Add Tip V Ask Question | Comment Download

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


advertisementadvertisement

Runner Up in the
Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
3D Printing Contest

View Contest

19 People Made This Project!

Did you make this project? Share it with us!

I Made It!

Recommendations

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Talking Washing Machine Interface for the Blind
AKA 'SOAP'
by Wingletang in Technology

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


3D Printer the C3Dt/bd (Big Delta)
by Core3D in 3d Printing

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


3D Printed Vacuum Cleaner for a CNC Machine
by Nikus in 3d Printing

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Wearable Electronics Class
11,380 Enrolled

401 Discussions

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Reply / Upvote
Sardau (author) 3 years ago

Hope it will helps : A French student named Hugo Benoit-Jannin have made a calibration tutorial, i hope it
will help.
https://github.com/Sardau/Sardauscan/blob/master/T...

Reply / Upvote
FB25 6 months ago

Hi
What are the "624ZZ" bears?

Could anybody send me a link to ebay, amazon,.... where I can buy the right rollers ?

Thanks

Reply / Upvote
MattiV 1 year ago

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


i has looking many scanner now and ciclope has poorest what have, this show little better, but i think many
have same proplem top of parts no scan, if cam have round bar and stepper motor move cam to up-down
can scan long parts and can move up and top to parts round bar can scan side+up+top parts, sorry my
english but i hope understand sguare section bar for camera and motor, then cam can move up and top too.
what this must make have possiple, i think then can scan better around on parts, i no understand code
making but if many hobby coder made then come better software fast, or simple version camera have
vertical rod and steppper move cam up and down, then maybe come better resolution all parts, i think best
size have 300mm long parts or maximum. 400-500mm and max printer table size 230 x230 230 have good
first scanner then can use all scan capatilies and printer max size. i think car motor parts, human
head,elektric tools, many different tools, scan and then made easy at tool holders,supports,and max size of
printer parts.

Reply / Upvote
MattiV 1 year ago

i think made this but i need want know first, can i scan etc, angle grinder body ? or drill machine body ? how
big part i can scan this ?
i need mechanical parts scanning and then can make printer to holders,etc, other additional parts to my
machines and tools. but i no sure how big parts can scan and how accurate scan have, come cloud better if
have 4 laser or 2 laser ?
and web cam, ? how good camera need be ?

Reply / Upvote
SeanB221 1 year ago

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


hi every one im trying to build this 3d laser scanner and it uses a Arduino nano but i dont have one them can
i use a Pro Mini Atmega328 5V 16M Arduino Compatible FT232RL USB To Serial Adapter , im grying to use
this diagram but having trouble trying to rearrange the wires to the pro , can it be done thanks all...ps im a
beginner with the arduino

Reply / Upvote
JacobP40 1 year ago

Hi there, could someone tell me where I could find these "20x20" profiles? I searched for them and couldn't
find them. Sorry if this is a stupid question!

Reply / Upvote
JohnK178 2 years ago

Hi. Can you tell me where to get the printable table top?
1 reply F

Reply / Upvote
KhalidT10 1 year ago

Is there a document describing the theory behind the calibration?


1 reply F

Reply / Upvote
Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf
brifek 1 year ago

hello can i use nema 17 stepper motor and maybe make 800steps on one revolution for more detailed look?

Reply / Upvote
maddog571998 1 year ago

Does it matter if the lasers are cross line and not line lasers?
4 replies F

Reply / Upvote
hoangde2610 1 year ago

Hi Ferretti, thanks for nice project.


Btw, do you have any idea to smooth top part of the result? Or i done something wrong?

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Reply / Upvote
Goodini 1 year ago

Hi Sardau!
This is a wonderful project. Thank you.
Now I'm doing it.
Please tell me, what is the accuracy of the scan? It is very important for me.
Thank you in advance.
1 reply F

Reply / Upvote
daveinhull 2 years ago

Hi,
Excellent project and I'm well on with my build. I have a quick question.
I have got the 20x20 extrusion as recommended, but the 120mm piece seems to be too long for holding the
camera/laser mechanism; the one in the picture seems to show the mechanism a lot closer than if I use
a120mm piece. Is the height critical and if so what would be the right length?
Many thanks

More Comments Post Comment

advertisement

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


advertisement

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf


Categories About Us Resources Find Us
Technology Food Who We Are Community
Workshop Play Why Publish? Sitemap
Craft Outside Jobs Help
Home Costumes Contact

© 2019 Autodesk, Inc. Terms of Service | Privacy Statement | Privacy settings | Legal Notices & Trademarks

Convertido de web en PDF a https://www.htmlapdf.com con el api html a pdf

You might also like