Home / 3d scanner for 3d printing / 3D Scanner MRD Project Report - UMass

3D Scanner MRD Project Report - UMass - 3d scanner for 3d printing

3D Scanner MRD Project Report - UMass-3d scanner for 3d printing

Team 8 Midway Design Review Report 1
3D Scanner MRD Project Report
Vangjel F. Author, CSE, Siyan L. Author, EE, Chenkai Z. Author, EE
are to be printed need to be exact (nuts and bolts), which takes
Abstract--As we look throughout history, the wealthy time and effort. The time it takes to learn how to use the tool,
and privileged have had access to useful technologies, and the time it takes to implement your knowledge every time
before the masses. When cars, televisions, and even you want to print something, is a thing of the past. With 3D
computers first entered the market, they were scanners you can save time and just place the object in the
revolutionary but overpriced. This discouraged people scanner and let the computer do the work for you [2].
from acquiring them. These technologies are not necessities 3D scanners can be used to scan parts, building supplies,
to life, but they play big roles in making life more props for movies, digital animation, and much more. The
convenient. 3D scanners are relatively new technologies usefulness of 3D scanners is wide and vast; however, it seems to
that have many useful applications, but yet very few people be more of a nuisance, due to the cost of owning one.
own them, mostly due to the expense of the product. We will In order to provide a solution, we designed a 3D scanner that
talk about a way to create a cheap standalone 3D scanning can be made for under $250 dollars. In addition to this, this
system, which through the use of processing information scanner will be able to perform scans by being plugged into a
taken by a camera and line lasers, can create digitized 3D wall, without the need of another device to run. Because of
models. These models can be used in digital animation or necessary precision, the scans must be accurate to within 1mm
printed with 3D printers for a wide verity of applications. of the actual object size. The scanner will have a length of 12
inches a width of 10 inches and a height of 8 inches, making it a
convenient size relative to most scanners. We also are
I. INTRODUCTION designing the scanner to perform the scans in under 15minutes.
The world is advancing technologically faster and faster Scanning something should not be a time consuming processes
every year. However, the more revolutionary technologies tend that makes scanning an object a hassle for the end consumer.
to be too expensive for the average consumer. One of these Especially since people using scanners in the business world are
technologies is a 3D scanner. These scanners have a starting usually busy people and time is a commodity of the essence.
price of $400. This is a high price for an item that can be useful, TABLE I
but not necessary to have, "Generally, most 3D scanners are too SPECIFICATIONS
large and expensive to be used by consumers. That's at odds Specification Value
with the culture of 3D printing right now, considering most of Weight 20cm
Most of the 3D scanners out there are more than $1,000..." [1]. Length >40cm
Besides the cost of just the scanner, there are other issues. Width ~20cm
Scanners that exist have another flaw as well, which is that
they are not standalone systems. This means that they do not run
unless there is an external device that is necessary to control the
scanner. In most cases, this external device is a desktop or a Design
laptop. With the advancement of technology there are A. Overview
appliances with applications that can control the scanner such as There are very inexpensive ways to create a 3D scanner.
smart phones and tablets. Scanners are expensive enough, and
consumers shouldn't have to purchase another device, which is Essentially, you need to capture the image of an object, then
also hundreds or even thousands of dollars, to use their scanner. once you have that data, you need to capture another image of
Before 3D scanning had a huge role in 3D printing, people that object at a different angle. Repeat this process until you
used Computer Aided Design (CAD) tools in order to create the have images for the entire 360-degree view of the object. The
object for 3D printing (they would design the object on a data is then processed together through an algorithm in order
computer digitally). Although the use of CAD tools is still a to create a 3D model of that object in a STereo Lithography
very viable option, it has its own set of issues. The use of these file (STL files are the files containing information about the
tools is a skill; A skill that most people do not have. Not to 3D model that a 3D printer can take in as input to create a 3D
mention that for a lot of practical uses, sizing of the objects that object). In order to provide the 360-degree view, we are going
to use a turn table to rotate the object that we are trying to
scan. This turn table is driven by a stepper motor, which will
receive .35A of current to take a step. It is controlled to do so
Team 8 Midway Design Review Report 2
by A9488 chip, which takes instructions for our computing
In order to run the algorithm and do the computing, we
will be using a Raspberry Pi 2 (RP2). We decided to go with
the RP2 because of its convenient size, it is compatible with a
small camera that fits our purposes for the data collection.
We will be using both a camera (the RP2 camera) and lasers
retrieve information about the dimensions of the object that
we are scanning.
Fig. 2. This is a representation of how the lasers should be in
relation to the camera. It would be placed in the direct path of
the camera lens and the laser lights would be adjusted to shine
though the center
There were a few alternatives that we considered when
developing our design. We considered using only a camera for
the data collection. This method of 3D scanning is called
photogrammetry. This requires taking multiple pictures, but
you also need to take the images at different angles. This
would make the design much more difficult to implement, due
Fig. 1. This is a block diagram of our overall design. The arrows are numbered to the necessity of having more than one camera, each at a
in the flow of how to run a scan, starting from when a user interacts with the different angle. This is problematic because it drives up cost if
GUI to start. we need more than one camera. The RP2 also only has one slot
for a camera input. With the laser component, we can get the
Also, in order to create the standalone system, we need to be
information we need, which we will go over later.
able to have a user interface to communicate with the system.
The RP2 is compatible with LCD screens. This component is
relatively inexpensive, considering the alternatives mention A. Hardware design
earlier cost hundreds. Lasers
The overall design consists of the camera being fixed at a Two red LED line laser were selected to be the transmitter
certain location. Everything else is in relation to the camera. which its light will projected onto the target sample and is
The lasers are each located at an arbitrary distance to the left monitored by the camera. The distance between the camera and
and to the right of the camera, however, both lasers must be laser diode is fixed and known. A picture of the object is taken
the same distance away from the camera. The turn table is without any lasers being turn on. One laser is switched on and
placed so that the center of the table aligns perfectly with the another picture is taken. Since the laser is by far the brightest
camera, and it can be any distance away. Each laser must shine element in the image, the line it makes on an object is easily
their light directly through the center point of the turn table distinguishable from the rest of the image. [4] Our software will
(refer to Figure 2). be computing the difference between the two images, a laser
The distances between the camera and the lasers, as well as trace is obtained. We chose red LED since it consumes the least
the camera and the center of the table must be known in order amount of power in comparison with other LED's of different
to properly take a scan. Knowing how far the center of the colors.
table is from the camera provides a reference z- coordinate in We realized some of the irregular shapes are unable to scan,
3D space. Knowing the height of the camera provides a for example a wine glass due to its concave part. We found out
reference y- coordinate, and having the table centered that when you scan an irregularly shaped object, there are areas
provides an origin for the x-coordinate. Then by having the that one laser can't see, but the other laser does. Using two
lasers some fixed known distance from the camera, and having lasers does increase the quality because it reduces the number of
them cross the center of the table, we can calculate the "gaps" in the model due to concave areas on the part.
hypotenuse when the light hits an object.
Team 8 Midway Design Review Report 3
To test this component, I also wrote a short python code to
drive the stepper motor. It took the number of steps as a
parameter, as well as the direction (clockwise or
counterclockwise) to turn. After my success, I wrote yet another
short python code to control the lasers and motor at the same
time, to ensure that we had enough current to drive both at the
same time.
We ended up using the raspberry pi camera module. It is 5MP
camera module is capable of 1080p video and still images and it
Fig 3. Object scanned with one laser
can be connecting directly to the raspberry Pi. Here is some data
we get from the software of how long it takes to scan when we
run a scanner on different resolution of the camera. The size of
file is about 2MB-100MB depends on the resolution the user
Resolution time
5 Megapixel( 2592 X 1944) 55mins
1.9Megapixel( 1600 X 1200) 10 mins
1.2Megapixel ( 1280 X 960 ) 8 mins
1.2Megapixel ( 1280 X 960 ) 4 mins
The RP2 has a command to test whether the camera is correctly
Fig 4. Same object scanned with 2 lasers functioning.
In the figures above, we scanned an object in the shape of a Power
bridge. In figure 3, the object was scanned with one laser. In the The raspberry pi requires high performance to run the Freelss
image there is a gap of space in which no data was gathered. software which required a lot power. As a result, we are not
This was due to the sharp corners of the object. Although the building a portable 3D scanner. Instead using battery, we
laser was hitting this part of the image, the corner prevented the decided to use a dual power supply which can power the 5V
camera from taking a picture of line laser on the object. Since raspberry pi and 12V stopper motor at the same time. The
there was no red line, no points of data were added to the STL 12V/5V AC to DC power adapter takes 100-240VAC as input
file. However in figure 4, when we scanned it with both lasers, voltage and output 12V and 5V. The output current will be 2A.
the gap was filled in. This is because the other laser hit the area The maximum power is 34W and it is calculated below.
where the gap was, however this time it hit the object in the view 12V*2A=24W, 5V*2A=10W, 24W+10W=34W. The
of the camera, which allowed the camera to capture the line raspberry pi takes 5V and 1.8A as input source, 50mA to draw
laser, and map the points accordingly. the GPIO pins and roughly 250mA to drive the keyboard and
After wiring the LED's to the bread board, I connected them mouse. As a result, the power consumption roughly is 1.8A*5V
to a GPIO pin on the RP2. I wrote a python code that would turn (raspberry pi2) +1A*12V (table) +250mA*5V (Camera)
that particular pin to HIGH, which supplied enough voltage to =22.25W. Our dual power supply should good enough to handle
turn the laser on (3.3V). The python code would enter a for loop the power consumption.
that toggled the laser on an off. As a parameter it took in how
many times to blink and how long to say on before turning off. B. Software
This was important because we need the lasers to turn on and off
again. I used what I learned in electronics lab and computer The software block (the purple block in Figure 1) is the block
systems lab to accomplish these tasks, as well as learning a little that will control the hardware components, use these hardware
bit of python on my own. components to control the hardware to gather data, and process
the data being gathered to produce the output STL file. These
Stepper Motor processes are being controlled by the RP2.
Our scanner able to do a 360-degree scans thought the The RP2 uses the Rasbian OS which is downloaded onto the
implantation of a rotation table platform. Due to the high SD card. With this OS, the RP2 is able to run open source
precision of control, we decided to use a stepper motors for our software on GitHub known as freelss. Working with the
rotation motor. We choose NEMA-17 stepper motor; it is terminal required some knowledge from software intensive
4-wire bipolar stepper motor has 200 steps per revolution which engineering. The RP2 is driven on 5V, which will be supplied
is 1.8 degree per steps [5]. It has a maximum current of 350mA from a dual power supply that outputs 12V as well as 5V (the
and therefore it required a stepper motor driver which driven 12V are required to drive the stepper motor).
with 2 full H-bridge.

What is 3D scanning and printing? 3D scanning is a fast, efficient process that’s used to collect 3D point cloud data to create three dimensional models. Using specialist software, the 3D data is then quickly processed into a triangle mesh or STL file. We can then use this for a range of applications, including comparison to CAD and 3D printing.