0% found this document useful (0 votes)
121 views16 pages

Introduction

The document discusses 3D scanners, including their functionality, technologies, and state of the art. 3D scanners capture geometric data on an object's shape and appearance through various contact and non-contact methods to create 3D digital models. While useful for many applications, 3D scanners can be costly and require an external device for control. The proposed design aims to create an affordable standalone 3D scanner using an infrared sensor, stepper motor, and microcontroller.

Uploaded by

suryash
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
121 views16 pages

Introduction

The document discusses 3D scanners, including their functionality, technologies, and state of the art. 3D scanners capture geometric data on an object's shape and appearance through various contact and non-contact methods to create 3D digital models. While useful for many applications, 3D scanners can be costly and require an external device for control. The proposed design aims to create an affordable standalone 3D scanner using an infrared sensor, stepper motor, and microcontroller.

Uploaded by

suryash
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 16

INTRODUCTION

A 3D scanner is a device that analyses a real-world object or environment to


collect data on its shape and possibly its appearance (e.g. colour). The
collected data can then be used to construct digital three-dimensional
models.
Many different technologies can be used to build these 3D-scanning devices;
each technology comes with its own limitations, advantages and costs. Many
limitations in the kind of objects that can be digitized are still present, for
example, optical technologies encounter many difficulties with shiny,
mirroring or transparent objects. For example, industrial computed
tomography scanning can be used to construct digital 3D models, applying
non-destructive testing.
Collected 3D data is useful for a wide variety of applications. These devices
are used extensively by the entertainment industry in the production of
movies and video games. Other common applications of this technology
include industrial design, orthotics and prosthetics, reverse engineering and
prototyping, quality control/inspection and documentation of cultural
artifacts.

FUNCTIONALITY
The purpose of a 3D scanner is usually to create a point cloud of geometric
samples on the surface of the subject. These points can then be used to
extrapolate the shape of the subject (a process called reconstruction). If color
information is collected at each point, then the colours on the surface of the
subject can also be determined.
3D scanners share several traits with cameras. Like most cameras, they have
a cone-like field of view, and like cameras, they can only collect information
about surfaces that are not obscured. While a camera collects colour
information about surfaces within its field of view, a 3D scanner collects
distance information about surfaces within its field of view. The "picture"
produced by a 3D scanner describes the distance to a surface at each point
in the picture. This allows the three dimensional position of each point in the
picture to be identified.
For most situations, a single scan will not produce a complete model of the subject.
Multiple scans, even hundreds, from many different directions are usually required
to obtain information about all sides of the subject. These scans have to be brought
into a common reference system, a process that is usually called alignment or
registration, and then merged to create a complete model. This whole process,

going from the single range map to the whole model, is usually known as the 3D
scanning pipeline.

TECHNOLOGY
There are a variety of technologies for digitally acquiring the shape of a 3D
object. A well-established classification divides them into two types: contact
and non-contact. Non-contact solutions can be further divided into two main
categories, active and passive. There are a variety of technologies that fall
under each of these categories.

CONTACT
Contact 3D scanners probe the subject through physical touch, while the
object is in contact with or resting on a precision flat surface plate, ground
and polished to a specific maximum of surface roughness. Where the object
to be scanned is not flat or cannot rest stably on a flat surface, it is
supported and held firmly in place by a fixture.
The scanner mechanism may have three different forms:
1. A carriage system with rigid arms held tightly in perpendicular
relationship and each axis gliding along a track. Such systems work best
with flat profile shapes or simple convex curved surfaces.
2. An articulated arm with rigid bones and high precision angular sensors.
The location of the end of the arm involves complex math calculating the
wrist rotation angle and hinge angle of each joint. This is ideal for probing
into crevasses and interior spaces with a small mouth opening.
3. A combination of both methods may be used, such as an articulated arm
suspended from a traveling carriage, for mapping large objects with
interior cavities or overlapping surfaces.

NON-CONTACT
Time of Flight
The time-of-flight 3D laser scanner is an active scanner that uses laser light
to probe the subject. At the heart of this type of scanner is a time-of-flight
laser range finder. The laser range finder finds the distance of a surface by
timing the round-trip time of a pulse of light. A laser is used to emit a pulse
of light and the amount of time before the reflected light is seen by a
detector is measured. Since the speed of light c is known, the round-trip time
determines the travel distance of the light, which is twice the distance
between the scanner and the surface. The laser range finder only detects the
distance of one point in its direction of view. Thus, the scanner scans its
entire field of view one point at a time by changing the range finder's
direction of view to scan different points. The view direction of the laser
range finder can be changed either by rotating the range finder itself, or by
using a system of rotating mirrors. The latter method is commonly used
because mirrors are much lighter and can thus be rotated much faster and
with greater accuracy. Typical time-of-flight 3D laser scanners can measure
the distance of 10,000-100,000 points every second.

Triangulation
Triangulation based 3D laser scanners are also active scanners that use laser
light to probe the environment. With respect to time-of-flight 3D laser
scanner the triangulation laser shines a laser on the subject and exploits a
camera to look for the location of the laser dot. Depending on how far away
the laser strikes a surface, the laser dot appears at different places in the
camera's field of view. This technique is called triangulation because the
laser dot, the camera and the laser emitter form a triangle. The length of one
side of the triangle, the distance between the camera and the laser emitter
is known. The angle of the laser emitter corner is also known. The angle of
the camera corner can be determined by looking at the location of the laser

dot in the camera's field of view. These three pieces of information fully
determine the shape and size of the triangle and give the location of the
laser dot corner of the triangle. In most cases a laser stripe, instead of a
single laser dot, is swept across the object to speed up the acquisition
process.

NON-CONTACT PASSIVE
Passive 3D imaging solutions do not emit any kind of radiation themselves,
but instead rely on detecting reflected ambient radiation. Most solutions of
this type detect visible light because it is a readily available ambient
radiation. Other types of radiation, such as infra-red could also be used.
Passive methods can be very cheap, because in most cases they do not need
particular hardware but simple digital cameras.
Stereoscopic systems usually employ two video cameras, slightly apart,
looking at the same scene. By analyzing the slight differences between the
images seen by each camera, it is possible to determine the distance at each
point in the images. This method is based on the same principles driving
human stereoscopic vision.
Photometric systems usually use a single camera, but take multiple images
under varying lighting conditions. These techniques attempt to invert the
image formation model in order to recover the surface orientation at each
pixel.
Silhouette techniques use outlines created from a sequence of photographs
around a three-dimensional object against a well contrasted background.
These silhouettes are extruded and intersected to form the visual hull
approximation of the object. With these approaches some concavities of an
object (like the interior of a bowl) cannot be detected.

State of the Art

The world is advancing technologically faster and faster every year.


However, the more revolutionary technologies tend to be too expensive for
the average consumer. One of these technologies is a 3D scanner. On an
average 3d scanners are very costly , That's at odds with the culture of 3D
printing right now, considering most of the developments are in desktop 3D
printers made for home use
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 laptop. With the advancement of
technology there are appliances with applications that can control the
scanner such as smart phones and tablets. Scanners are expensive enough,
and consumers shouldnt have to purchase another device, which is also
hundreds or even thousands of rupees, to use their scanner.
While the 3d printers can be operated by using a CAD software to design an
object and then using the CAD files to print that object. But it takes skill to
use the CAD software, and it cannot be expected for the general public to
learn this software every time they wish to 3d print an object. The 3d
scanner saves both time and effort to generate a 3d print and is therefore
more user friendly.
3D scanners can be used to scan parts, building supplies, props for movies,
digital animation, and much more. The usefulness of 3D scanners is wide and
vast; however, it seems to be more of a nuisance, due to the cost of owning
one.
The 3d scanner proposed is small in size and the rod which mounts the IR
sensor is about 10 cm in lengths.

Components
The following Components shall be utilized:
1.) IR sensor: Being a basicmodel, and due to limited funds, the sensor
used here to read the object is an Infra-Red sensor. It works on a
common principle where an Infra-Red transmitter and Receiver is
mounted on the sensor and is used to calculate the length at a certain
instant of time.
2.) Stepper Motor: The stepper motor will be required to move the
rotating plate. The function of the rotating plate is to provide the
required exposure of the object to the sensor. So it can take the
readings from each and every angle and also to constantly move the IR
sensor in the vertical direction.
3.) Microcontroller: A microcontroller will be required to control the the
functions such as reading data from the IR sensor, storing the data in
the memory card, controlling the movement of the stepper motors.
Apart from that a self-designed chassis to form the exo-skeleton of the
scanner will include
A chassis base
A carriage (for the IR sensor)
Couplingshafts to hold the rods and rotation movements.

Functional Architecture:
Functional Architecture Functional components of the system are listed
below:
Point Sampling: The system must be able to select certain points of
the object to be examined at a time, since it is infeasible to sample every
point composing the object at once.
Point Data Gathering: The system will need a way of taking a point or
points selected by the sampling component, and getting location and
color information for them.

Object Manipulation: There must be some way of moving the object


with respect to the data gathering and sampling components.
Point Aggregation: A subsystem must exist which aggregates point
data into a model, and preferably does some coalescing or smoothing of
the data as well.
Export: Point or model data must be exported from the device,
preferably into a documented format that other 3D model software can
interpret.

Comparison of Methodologies:
Time of Flight vs. Triangulation:
Time of flight sensing is one way to achieve distance calculations at points on an
object. The downside of time of flight measurement is that only one data point
can be gotten at a time. It also requires highly accurate laser/sonar range finders
which tend to be expensive. Triangulation allows for an entire line of points to be
collected. Triangulation requires image processing to determine the outline of
the object along the laser line. Triangulation requires fewer expensive parts and
results in quicker scans, so we chose triangulation using a laser line over time of
flight.

Structured Light vs. Line Scanning:


Structured light scanning involves projecting a pattern on the object being
scanned. The features of the pattern are distorted based on the surface of the
object, and a large number of points can be calculated from each scan. Line
scanning takes points only along a single line at a time. Structured light scanning
is much quicker to aggregate a large number of data points, but requires lots
more processing and results in a greater volume of 6 data. Line scanning is
simpler and less processing intensive, but takes a longer time to complete a
scan. For simplicity sake we decided to use line scanning. In this way we avoid
buying a projector, and we avoid potential issues of having too much data for
our system to handle.

Rotating Platter vs Rotating Sensors/Camera:


3D scanners mostly are based on rotation of the object being scanned. This can
be done easily in two ways. Some rotate the object being scanned and others
rotate the sensors and lasers doing the scanning. The advantage of rotating the
sensors and lasers is that the object being scanned is less likely to move during
the scan. The benefit of rotating the scanned object is simplicity and reduction in
number of moving parts. We decided that it is best for our design to rotate the
platter holding our object, since that will result in fewer moving parts.

Choice of Processor/Architecture:
When it comes to the embedded processor used to control our design and
process the data coming from our camera, there are many options which are
equally valid. We need to choose a platform which is powerful enough to stream
in video content and process it. There fore we decided to use Arduino micro .
This has been choosen to optimize the cost and the size of the scanner. While
other alternatives included Raspberry Pi and ARM processors. The Arduino micro
g=had sufficient amount of i/o pins and processing speed enough to work out
the functions.

Its technical specs are:

Microcontroller
Operating Voltage
Input Voltage (recommended)
Input Voltage (limit)
Digital I/O Pins
PWM Channels
Analog Input Channels
DC Current per I/O Pin
DC Current for 3.3V Pin
Flash Memory
SRAM
EEPROM
Clock Speed
LED_BUILTIN
Length
Width
Weight

ATmega32U4
5V
7-12V
6-20V
20
7
12
20 mA
50 mA
32 KB (ATmega32U4)
of which 4 KB used by bootloader
2.5 KB (ATmega32U4)
1 KB (ATmega32U4)
16 MHz
13
48 mm
18 mm
13 g

External Processing or Internal Processing:


When streaming and processing point data, there are two key options. First is to
stream raw data from our device out to a powerful computer and develop
software to do the processing on the computer. Alternatively, we could do all the
processing internally on our processor. The benefits of internal processing is
reduced volume of data to communicate, and the ease with which adjacent line
scans can be linked with polygons. (Each line can be scanned, and linked to the

previous line.) The benefit of external processing is that the computer has more
processing power, so it may be a faster option. We decided to do the processing
of data externally , as the processor used does not possess the required
capability and also use of external processor allows customization and results
generated by processor lacks the finishing and still may contain noise elements ,
which can be eradicated by a person through external operator.

System Description:
The object is placed on the rotating table. The time taken for the scan depends
upon the parameters used in the code such as angle of resolution, number of
samples per reading and the pause between each rotation of the turn table. Here
the object is being scanned at every 1 degree of the rotation of the turn table.
And up to 100 such samples are being collected in one reading. Also there is
about 200 milliseconds delay between the rotation of the turn table and time
taken by the IR sensor to take the reading.
These distances and readings measured by the IR sensor is being stored in and
Micro SD card. Which is then plugged in to the computer to be further processed.
It is done by a Matlabprogram which converts the text file to the point cloud of
the data. It then further reduces noise from the point cloud and then writes the
resulting cloud point in a STL (Stereo Lithography file).
This stl file is then changed to a slicing program. This program is used to scale
the data of the file and then create a g code to print the object. This g code can
be exported to the Micro SD card, inserted in a 3d printer and a print can be
obtained.

IR SENSOR FUNCTIONALITY

Working of IR Sensor

Detection of brightness

STEPPER MOTOR FUNCTIONALTY


Stepper motors are DC motors that move in discrete steps. They have
multiple coils that are organized in groups called "phases". By energizing
each phase in sequence, the motor will rotate, one step at a time .With a
computer controlled stepping you can achieve very precise positioning
and/or speed control. For this reason, stepper motors are the motor of choice
for many precision motion control applications.
DC brushed motors rotate continuously when DC voltage is applied to their
terminals. The stepper motor is known by its property to convert a train of
input pulses (typically square wave pulses) into a precisely defined
increment in the shaft position. Each pulse moves the shaft through a fixed
angle.
Stepper motors effectively have multiple "toothed" electromagnets arranged
around a central gear-shaped piece of iron. The electromagnets are
energized by an external driver circuit or a micro controller. To make the
motor shaft turn, first, one electromagnet is given power, which magnetically
attracts the gear's teeth. When the gear's teeth are aligned to the first
electromagnet, they are slightly offset from the next electromagnet. This
means that when the next electromagnet is turned on and the first is turned
off, the gear rotates slightly to align with the next one. From there the
process is repeated. Each of those rotations is called a "step", with an integer
number of steps making a full rotation. In that way, the motor can be turned
by a precise angle.

MATLAB
MATLAB (matrix laboratory) is a multi-paradigm numerical computing
environment and fourth-generation programming language. A proprietary
programming language developed by MathWorks, MATLAB allows matrix
manipulations, plotting of functions and data, implementation of algorithms,
creation of user interfaces, and interfacing with programs written in other
languages, including C, C++, C#, Java, Fortran and Python.
Although MATLAB is intended primarily for numerical computing, an optional
toolbox uses the MuPAD symbolic engine, allowing access to symbolic
computing abilities. An additional package, Simulink, adds graphical multi-

domain simulation and model-based design for dynamic and embedded


systems.

ARDUINO IDE

The Arduino project provides the Arduino integrated development


environment (IDE), which is a cross-platform application written in the
programming language Java. It originated from the IDE for the languages
Processing and Wiring. It was created for people with no profound knowledge
of electronics. It includes a code editor with features such as syntax
highlighting, brace matching, cutting/pasting text, searching/replacing text
and automatic indentation, and provides simple one-click mechanism to
compile and upload programs to an Arduino board. It also contains a
message area, a text console, a toolbar with buttons for common functions
and a series of menus.
A program written with the IDE for Arduino is called a "sketch". Sketches are
saved on the development computer as files with the file extension .ino.
Arduino Software (IDE) prior to 1.0 saved sketches with the extension .pde.
The Arduino IDE supports the languages C and C++ using special rules to
organize code. The Arduino IDE supplies a software library called Wiring from
the Wiring project, which provides many common input and output
procedures.

You might also like