Hey - have a look at my new project HERE
In this project I built a 3D Scanner, that enables generating 3D models of physical objects.
The files can later be viewed in 3D software (GLC Player, Sketchup, Rhino, or sites such as http://3dfile.io)
and even manipulated into .STL file and 3D printed.
The software for this project is completely free, I am using Autodesk's 123D catch, Link:123D catch
The 123D Catch is a great software, it requires taking many photos of an object all around it, and uploading it into the software, and it returns a 3D file.
Since I really liked the solution but did not wanted to take the photos myself - I built an instrument that does that -
Please note that this document does not intend to explain how to use 123D catch (this can be found here)
A really nice scan can be seen interactively here:
Step 1: Operation principle (can be skipped)
(This part can be skipped, it explains the logics behind the structure, The scanner will wok without this part...)
The design of the scanner is quite simple, and consists of 3 main parts:
(**) The color stripes on the base are also in purpose to help the stitching algorithm - the help (colors, number of lines, orientation) to stitch.
Step 2: The chassis
The chassis is built from MicroRax (Link) profiles and parts, which is very easy to use and enables the arm to rotate almost 360 degreed around the object, it also host the rotation Servo (Full rotation servo - SpringRC SM4303)
It's base is approx rectangular 30x30 [cm]
Step 3: The scanning surface
Made of cardboard, round, placed on the top of the chassis and carries the scanned object, colored stripes are painted on the cardboard (see step 1) approximate
Step 4: The rotating arm
The role of the arms is to carry the camera and rotate it around the scanned object, it has 3 main components:
Step 5: Scanner assembly
This is quite straight forward, assemble the parts as seen in the pictures, ensure that the wires are long enuogh and will not get stuck during operation.
Step 6: Arduino controller
This Step will describe the Arduino setup:
int analogPin = 3;
int pos = 0;
pinMode(analogPin, OUTPUT); // sets the pin as output
for ( int i=1; i analogWrite(analogPin, 125); //rotate
delay(300); // rotation duration
analogWrite(analogPin, 0); // stop rotation
// Camera servo
delay(1500); //vibration stop
for(pos = 0; pos < 100; pos += 1)
delay(3000); //camera shooting time
delay(500); // delay for camera
analogWrite(analogPin, 200); // rotation back to start
analogWrite(analogPin, 0); // Moving Counter Clockwise
Step 7: Operation sequanceOK,
Now you have everything in place - make sure you have Autodesk 123D catch installed and a login ready.