Introduction: Sardauscan Sub-30$ Opensource 3d Laser Scanner

Sardauscan is a open source Sub 30$ 3D laser scanner that you can easely print yourself.

Even 12$ if you already have a hercule HD twist.

Basicaly you just need a arduino nano, 1 to 4 line laser and a micro geared stepper (28BYJ-48).

no external power needed. just 2 free usb port on your pc : one for the webcam the other for the rest.

no complex assembly. just screw where there are holes ;)

no complex electronic. : just plug the 28BYJ controler to your arduino, plug 1 to 4+ lasers, edit the firmware configuration.h to set the pins you have used.

that's all

Bill of material:

Bunch of M3 (16 and 20 mm)
Bunch of M4 (12 ans 20 mm)

1x chinese Arduino nano (chinese copy, 4$)

1x chinese Stepper Motor and controler (5$)

1-4x Line laser (2.5$ piece)

1x Hercule HD twist (15$)

20x20 profile ( can be printed : for exemple http://www.thingiverse.com/thing:280318 , or you can use wood or whathever you want)

optional 3x 4mm roller (0.3$ piece)

total 26.5$ (1 laser) to 35$ (4 lasers)

2020 lengths of my build (but you can use whatever length you want, just make sure the camera can see all the scan area)

2x 140mm

1x 120mm

1x 250mm

The software Is written in C# and allow you to compose your Scan task by drag and drop.

For exemple the recommended Process (at this time of the code) for a scan

“Scan” => “IrQ filter” => “merge laser” (if you use more than one laser) => "surface smooth" => “(Build Mesh) by interpolation “ => “Save STL”.

But if you are not satisfied with the build-in processing task, or if you prefer use another heavy but powerful software to work with your point clouds like meslab or other,

you can just “Scan” => “Save Ply” and import them in your preferred application.

While the software come with a building support of the Sardauscan hardware, and usb camera.

but you can easely write your own Hardware proxy via plugins.

You can event build your own task to insert in your scan process (soon).

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

Source Code : https://github.com/Sardau/Sardauscan (still in developpement but it works)

Comments

author
duartemv (author)2017-04-10

Hello Sardau,

I'm going to build the scanner. The parts have just arrived, but I haven't printed the structure yet.

What is the minimum distance to the webcam and lasers for a scan?
If the center of the turn table is at 220mm from the webcam, one can scan objects up to 350mm in diameter without issues?

I'm planning to scan some helmets! :)

Thanks for this great project!!

Duarte

author
JasonT130 (author)2017-04-02

Hi Sardau,

I have built your 3d scanner and have gotten decent scans and calibrations but I'm having a problem with the scanned image looking like someone is grabbing the top of the model and pulling up, creating an almost cone shape of the scan plate and making the model have a kind of upward curve to it. I have tried playing with the numbers in the build dimensions but I can't seem to find the cause.

Any help would be great.

author
Sardau (author)JasonT1302017-04-02

I'm not sure to understand (do you have pictures ?).
make sure

you don't have blinking or natural light in the background: can cause errors.
your camera and your laser are perfectly straight, (no tilt,yaw,..)

author
Misia94 (author)2017-03-27

Hi Sardau,
I have 4-wire bipolar stepper motor and the stepstick A4988 (1 step wire, 1 direction wire). I have also 1/100 gear in my construction. I have problem with rotation ratio in program. My 1 turn of the table is 100 turns of the motor. What should I change and where to make it work with Your program? I tried to change HALFSTEP values, REVOLUTION STEPS and STEP_BY_MINMOVE values. And I cannot achieve proper functionallity (90 deg turning table in Sardauscan - 90 deg table turned). I tried to change REVOLUTION STEPS to value wich I assume in my case should be there - 200*100=20000, but it didnt work also. Do You have any ideas?

author
thecoolio2 (author)2017-02-08

Sardau, We are getting ready to build your scanner. Can you tell us if you printed the turntable or just bought it somewhere? Also, is the turntable supposed to be attached to the axle in some manner? Or did you leave it loose for any reason? Very excited to get started! Thank you for everything!

author
Sardau (author)thecoolio22017-02-08

Hello,

in my case the turn table is a round ikea mirror of 20cm diameter painted in balck mat.

the part "table_Axle.stl" (or "table_Axle_minimal.stl") is glued in the center of the mirror.

but you can find "all in one" table
http://www.thingiverse.com/thing:1764216
or
http://www.thingiverse.com/thing:1859020

author
thecoolio2 (author)Sardau2017-02-23

Sardau, we built the scanner and got everything working properly through the software. However I am having no luck at all calibrating the laser image. Can you offer some guidance on how to adjust the "Threshold", "Min. Width", and "Max Width" to get a constant line? I realize it is going to be different for every object and material. Are there environmental issues that need to be taken into account (i.e. background, lighting, etc.)?

author
MichałR23 (author)2017-02-21

Hi!

I have arduino UNO board and it doesnąt response on serial commands. After I open serial monitor and tzpe there "Sardauscan" it should response "yes", but it doesn't. Sketch is compiliing fine. Does anybody have same problem? It doesn't communicate with sarduscan application.

In compiling I have only this warning:

"

In file included from C:\Users\Misia\Desktop\STEPSTICK ARDUINO PROBA\2\Sardauscan-master\FirmWare\FirmWare.ino:1:0:

sketch\SerialCommand.h:51:2: warning: #warning "Warning: Building SerialCommand without SoftwareSerial Support" [-Wcpp]

#warning "Warning: Building SerialCommand without SoftwareSerial Support"

^

sketch\SerialCommand.h:60:0: warning: "SERIALCOMMAND_HARDWAREONLY" redefined

#define SERIALCOMMAND_HARDWAREONLY

^

sketch\SerialCommand.h:47:0: note: this is the location of the previous definition

#define SERIALCOMMAND_HARDWAREONLY 1

^

In file included from sketch\SerialCommand.cpp:26:0:

sketch\SerialCommand.h:51:2: warning: #warning "Warning: Building SerialCommand without SoftwareSerial Support" [-Wcpp]

#warning "Warning: Building SerialCommand without SoftwareSerial Support"

^

sketch\SerialCommand.h:60:0: warning: "SERIALCOMMAND_HARDWAREONLY" redefined

#define SERIALCOMMAND_HARDWAREONLY

^

sketch\SerialCommand.h:47:0: note: this is the location of the previous definition

#define SERIALCOMMAND_HARDWAREONLY 1"

author
flenst111 (author)2016-12-05

Thank you for these interesting project. I am an old linux fan and tried to install the windows software in an win10 vm. I 'm not able to register the dll's. There are alkways errors in the process. Perhaps anybody can give me some hints.

Thank you

author
Richardt131 (author)2016-09-03

hi, i do not have the merge lasers option, or is it replaced by 'laser' ?

author
Sardau (author)Richardt1312016-09-04

yes, since i've reduce the task name length to laser

author
NisifL (author)2016-07-11

Also be sure to see a red steady line in the tune laser tab, play with the laser delay. I find out that 20-30 is working pretty good. Sry for my english.

author
NisifL (author)2016-07-11

For those who cannot run the quick scan in the matrix, you have to increase the calibration precision in settings.

author
lumamat (author)2016-06-10

Hello and thanks for all the advice
I have a problem with the software
after all calibration steps (table, lasers and cam) that everything works correctly soft
not allow me to run the automantica scansion
run all the steps three times but does not allow me to run
thanks for your attention and I hope in a solution
Thank you

author
Sardau (author)lumamat2016-06-10

what do you mean by "not allow you" ?

did you top icons are all blue ( if one red, click on it to connect to the hardware)

did you drag the scan task (and others) to the right column and press the "play button" at the bottom ?

author
JonathanT109 (author)2016-06-06

Hi I cant get the turntable to move. I have connected as you advise ( pins 2,3,4,5) to the stepper controller but nothing, none of the leds flash, no movement. I tried the change in the configuration.h but no help there. I have tested the stepper with simple code and it works fine. Everything else works fine. Again if I try moving the turntable in the turntable section it says its working but nothing actually happens. Also I translated the french user guide to english using google if anyone needs it - thanks

author
Sardau (author)JonathanT1092016-06-07

read the last comments here.

author
Sardau (author)Sardau2016-06-07

with the link it is better ;)

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

author
lumamat (author)2016-01-27

Hey there
After solving the programming that I thank you advice
I have another problem
when I run the program three red icones go to the cam and blue lasers work
While the icon is blue engine does not work
if you can give me more information or a way to solve the problem prune
check wiring 3 times and replace the motor with its own controler the laimantacion is 5 v as Arduino
Thanks and sorry for the inconvenience

author
Sardau (author)lumamat2016-01-27

step3 of https://www.instructables.com/id/Build-a-30-laser/

"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)."

author
RobertF41 (author)2015-10-01

http://pages.ebay.com/link/?nav=item.view&id=391218493356&globalID=EBAY-AU&alt=web

Is it possible to use this cam instead? And also whats the most imortant when lining up another web cam?

author
Sardau (author)RobertF412015-10-01

it should as all directx webcam must work (except wide angle), but i don't know every single webcam ;)

go https://www.instructables.com/id/Build-a-30-laser/ there a plenty of response in the comments.

author
Deccal (author)2015-03-26

can we use any other web cam?

author
AliV1 (author)Deccal2015-04-12

I think ; yes.

Maybe its my system/drivers/settings but, I used :

TTC W302 : displays image

HY8131A ( Look 312P ) : No image

Trust Webcam : display image ( use different resolutions )

Phillips SP900NC : Fatal error

There is a newer version : https://www.instructables.com/id/Build-a-30-laser/

About This Instructable

12,211views

98favorites

License:

More by Sardau:Build a 30$ laser ScannerSardauscan sub-30$ Opensource 3d laser scanner
Add instructable to: