3D-printed 3D-scanner
by TankMeister in Workshop > 3D Printing
28564 Views, 349 Favorites, 0 Comments
3D-printed 3D-scanner
About a year ago I bought my first 3d-printer and became addicted to 3d-printing and manufacturing my own designs and products with it. Since then I have printed/build my own CNC milling machine with my 3d-printer (https://www.instructables.com/DIY-3D-Printed-Dremel-CNC/) and love the fact that I can print new ways of manufacturing myself. About 2 months ago I saw a video of someone who designed his own 3d-scanner which made 3d-models from photos and I decided that it would be a fun project to, for the first time, design and program a 3d-scanner myself.
After about 2 weeks of modeling, 3d printing, soldering, programming and testing I finished building my 3d-scanner and must say that I'm pretty happy with the result. In this instructable I will walk you trough the process of building your very own 3d-scanner yourself.
The way this 3D-scanner works is as follows: When the 3D-scanner is turned on, the display will show a menu with the options for 'rotate' or '3D-scan'.
When the 'rotate' option is chosen, the user is shown a second menu screen with the option for 'free rotate', where the user can rotate the disk with the joystick (which for example is useful when taking pictures of an object from different angels). The second option is 'Auto rotate', where the disk will slowly rotate 1 time (which is useful for when the user wants to make an 360 rotating video of an object).
When the '3D-scan' option is chosen, the user can select the amount of pictures where the 3D-scan will be made from (the more pictures, the better the quality of the created 3D-model)
Item List
The following items are needed when making your very own 3d-scanner:
Materials:
- PLA filament (about 250 grams)
- Acrylic plate (4mm thick and at least 150x150mm in dimensions)
- M3 x 8mm screw (14x)
- M4 x 12mm screw (2x)
- Hot glue
- Super glue
- Tyraps (20x)
Electrical:
- Arduino Uno (1x)
- S28BYJ-48 5v stepper motor (1x)
- ULN2003 driver board (1x)
- SG90 9G Mini Micro Servo (1x)
- Arduino LCD Screen (1x)
- Arduino joystick module (1x)
- PCB breadboard (1x)
- Bluetooth camera remote (1x) (https://nl.aliexpress.com/item/1005001431282608.html)
- Dupont wires (20x)
- Arduino upload/power cable
Software:
- Arduino Software (for uploading the code)
- Autodesk Photo Recap (for creating the 3D-model from the scanned model)
Tool List
The following tools are needed for manufacturing this project:
- 3D-printer
- Laser cutter (part can also be produced with the 3D-printer)
- Soldering iron (for soldering the power and ground cables to the PCB)
3D-printing
3D-printing plays an very important part in producing the 3D-scanner, that's why I will go into further detail about the print settings, time, etc. The following parts need to be 3d-printed:
- Body
- layer height: 0.3mm
- line count: 4
- infill: 20%
- bottom and top count: 4
- Speed: 80mm/s
- Support: everywhere
- Support overhang angle: 30 degrees
- print time: +/- 11 hours
- Steppergear
- layer height: 0.3mm
- line count: 4
- infill: 20%
- bottom and top count: 4
- Speed: 50mm/s
- print time: +/- 0.5 hours
- Cover
- layer height: 0.3mm
- line count: 4
- infill: 20%
- bottom and top count: 4
- Speed: 50mm/s
- print time: +/- 1 hours
- Circle-gear
- layer height: 0.3mm
- line count: 4
- infill: 20%
- bottom and top count: 4
- Speed: 50mm/s
- print time: +/- 4 hours
- Phone-holder:
- layer height: 0.3mm
- line count: 4
- infill: 20%
- bottom and top count: 4
- Speed: 70mm/s
- print time: +/- 1.5 hours
Laser Cutting
I made the rotating disk of the 3D-scanner by laser cutting the STL file out of an 4mm thick acrylic plate. Laser cutting is the preferred way of manufacturing since when using laser cut colored acrylic it will reflect less light then a 3d-printed part which is beneficial because your phone will take better pictures which results in a better 3D-scan. However, this part could also be made with a 3D-printer, since it fits most 3D-printers with it's diameter of 150mm.
Use the manufacturers given values for speed and laser power when laser cutting the acrylic.
Downloads
Assembly
When you have gathered all the needed items, you can assemble the 3D-scanner. I started with placing the stepper, driver board and arduino and screwing these onto the body. Then I took the bluetooth remote and placed it in it's designated place, after which I screwed the servo onto the body. Finally I screwed the LCD screen and joystick-module onto the body.
After all the components had been placed, I wired all the electric components and soldered the power and ground wires onto the PCB. After soldering the wires onto the PCB I made sure they didn't short (incase I accidentally soldered a connection between power and ground), and then applied a cover of hot glue over the soldered wires. For further information about the wiring, continue to Step 6: Electrical Wiring and Code.
After all the components were installed, wired and the software had been uploaded onto the Arduino, I pressed the stepper gear onto the stepper shaft. I attached the big circle gear onto the disk with super glue, be cautious that you place the gear exactly right so the disk spins circular and not like an oval.
Electrical Wiring and Code
Wiring the electrical components might seem very hard, but it is really quite easy as long as you take your time follow the electrical 'scheme' I made:
- Joystick:
- SW --> D2
- VRY --> A1
- VRX --> A0
- 5V --> PCB power
- GND --> PCB ground
- Lcd screen:
- SCL --> A5
- SDA --> A4
- VCC --> PCB power
- GND --> PCB ground
- Stepper motor driver card
- IN1 --> D8
- IN2 --> D9
- IN3 --> D10
- IN4 --> D11
- 5V --> PCB power
- GND --> PCB ground
- Servo
- Yellow wire --> D3
- Red wire --> PCB power
- Brown wire --> PCB ground
- PCB
- Power --> 5V Arduino
- Ground --> GND Arduino
After you have wired all the above standing components I advise using tyraps to bind the wires together and organize them and to use hot glue to make sure the wires that are plugged into the Arduino stay in.
By now you should be ready to upload the code onto the Arduino. I have written all the code myself and must say that I am pretty happy with how it works, although there are still some minor bugs that I will perhaps in the future solve, so be sure to check for software updates on this instructable in the future. Uploading code to an Arduino is pretty easy, just install the Arduino code editor software on your pc, open my, underneath standing, included code, connect the Arduino and press upload in the Arduino software and wait till it's done uploading.
Downloads
Finished Product
In the photo's above you can see the finished 3D-scanner. The tests that I have done thus far have been pretty good, but to get a good 3D-scan I advise turning up the photo counter all the way up to maximum when doing a scan for the best result. If you are thinking about doing this project and you have a question, feel free to hit me up by sending me a message.
Success with making your very own 3D-scanner!