Overview
The
MakerBot 3D printer is an inexpensive machine that can be either put together or purchased preassembled and allows anyone to participate in
personal fabrication and
rapid prototyping. Using a digital design, it
prints objects by melting layers of plastic, one on top of the other, to form three-dimensional objects.
The Process
Once you have a
.stl file, the 3D model needs to be sliced into layers in order to be printed. The software that slices a model is called
SkeinForge, and it is incorporated into
ReplicatorG, which translates the 3D information into
G-code, the common name for the widely used
computer numerical control (CNC) programming language). The
G-code tells the
MakerBot how to print the object.
The Choices
There is no shortage of free or commercially available software at your disposal. Your choice of software tool(s) for use with your students will depend on a variety of factors:
The content/theme of your class or program
Ability level of students
Student interest
Budget constraints
We'll be covering the free and/or open source options that are available:
- 3DTin
- Tinkercad
- Google SketchUp
- OpenSCAD
- Blender
- Wings3D
However, if your budget permits you may wish to consider commercial options (read: expensive) such as Rhino 3-D and SolidWorks.
Here are the basic steps involved in printing:
- Start with an .stl file
- Open ReplicatorG
- Open the .stl file in ReplicatorG
- Generate the G-Code file
- Either use an SD card or connect your computer to the MakerBot
- Print!
.stl Files
.stl or
STereoLithography files describe the surface geometry of a 3D object and are used to build physical 3D Cad Models.
.stl files are created using a mesh made of triangles that represents the physical part of your object. The
.stl file is a complete listing of the xyz coordinates of the
vertices and
normals,the vectors perpendicular to a surface that determine the orientation for the triangles, that describe the 3D object.
A good
.stl file size is between .5MB for a simple file to 10MB for a large complicated one. Generally, if your part is outside of these parameters, you'll need to resize it. A good
.stl file must also conform to two rules.
- Adjacent triangles must have two vertices in common
- The orientation of the triangles (what side of the triangle is in and what side is out) as specified by the vertices and normals must agree
Minor gaps and inconsistencies can usually be fixed by specialized
STL-handling software. If you have more significant problems, you'll have to go back to your original CAD model.
A
.stl file can be termed
bad because of translation issues. In many CAD systems, the number of triangles that represent the model can be defined by the user. If you are using too many triangles, the
.stl file size can become unmanageable. If you're using too few triangles to describe your object, your curved areas will not be properly defined and your cylinders might look like hexagons.
3DTin
3DTin is a free, simple to use, 3D Modeler that runs in your browser's window. It works best with WebGL support, but unlike
Tinkercad, another web-based 3D modeler, it can also use HTML5 Canvas.
You can use
3DTin to
- Design models by placing cubes and other primitives on top of each other.
- Convert 2D images to 3D models
- Save your artwork in the cloud. (You'll need a gmail account)
- Smooth a model
- Export models in standard 3D file formats (OBJ, STL) and use them for 3D printing or import in other CAD tools.
- Run some preliminary checks to prepare your model for 3D printing (Manifold violations).
The 3DTin Interface
3DTin Controls
Tinkercad
tinkercad.com
Tinkercad is a web-based 3D modeler that has only three basic tools:
Add,
Subtract and
Workplane. It requires WebGL support, so you'll have to use at least Chrome 10 or Firefox 4.
While
Tinkercad is simple to use and allows you to build models quickly and share them with Thingiverse and Twitter, what you cannot do is move or rotate your model or forms once they are created. Tinkercad is also in beta and is continually changing. The last update was at the end of July. While new shapes were added, some keyboard shortcuts were eliminated.
To get
Tinkercad to run on Mac with Firefox you'll have to do the following:
- Type about:config in the Firefox 4 URL bar
- Type webgl in the search box
- webgl.force-enabled = true
- Go to https://tinkercad.com and refresh the page
Background: Driver support on older OS/Graphics card combinations is bad so the browser vendors have blacklisted a number of devices. All of Mac OS X 10.5 is blacklisted in Firefox, what you did above is circumvent this blacklisting.
There are a number of keyboard and mouse shortcuts in
Tinkercad that allow you to work smarter and faster.
Keyboard shortcuts:
- a switch to add mode
- s switch to sub mode
- w switch to workplane mode
- m switch to measure mode
- esc cancel current drawing operation and remove the reference point
- shift after starting a drawing operation you can press shift to make the operation axis aligned.
Mouse shortcuts:
Right click is the same as CTRL+click.
- right click/CTRL+click make selected face new reference face for the workplane
- left drag draw a line with the current tool shape
- shift-left drag change tool extrusion depth
- right drag/CTRL+drag rotate the camera
- shift-right drag/CTRL-shift drag pan the camera,/li>
- mouse wheel zoom in and out
OpenSCAD
OpenSCAD is software for creating solid 3D CAD objects. It is free software and available for Linux/UNIX, MS Windows and Mac OS X.
OpenSCAD focuses on the CAD aspects of 3D modeling and is good for creating 3D models of machine parts.
OpenSCAD is not an interactive modeller. Instead it reads in statements that describes the object and renders the 3D model from that code. This gives you full control over the modelling process and enables you to easily change any step in the modelling process or make designs that are defined by configurable parameters.
OpenSCAD provides two main modelling techniques:
- Constructive solid geometry
- Extrusion of 2D outlines
The numbers in
OpenSCAD are in millimeters. So
circle(5); or
circle(r=5); draws a circle with a radius of 5mm.
Netfabb
So you have your model and your
.stl file, but how do you know if it is a good file?
Netfabb provides two free ways to fix your files:
- Netfabb's Cloud Services
- Netfabb's
Studio Basic
Netfabb's cloud service will repair your file for you by removing duplicates and ensuring that your mesh is manifold and oriented.
- Open a browser window and navigate to http://cloud.netfabb.com
- Upload your file
- Go to 3D view and Download the fixed file
Netfabb's Studio Basic (Netfabb) allows you to repair your models on your desktop. You'll need to register online in order to obtain the key to run the software.
SketchUp
Google SketchUp is a free 3D modeler.
Your SketchUp file must be one continuous, solid object. The printer must be able to clearly distinguish between the inside and outside of the object it is printing. There cannot be holes or gaps in the model, because the 3D printer will not be able to tell what is inside the object and what is outside-the exterior of the building must be sealed. There are tools that can help identify an close holes and gaps, but the majority of these areas should be found and closed within the original CAD model for best results.In order to print your sketchup models, you'll have to convert your files to
stl .
You have a few options for converting:
Convert SketchUp SKP files to DXF or STL
This
plugin is freeware and it works for Windows and Macintosh.
It allows you to export your SketchUp model as a DXF or STL triangular mesh or as DXF lines, which should be readable by most CAM software.
To use the plugin, download the skp_to_dxf.rb file to the SketchUp plugins folder on your computer:
On a Windows PC. If you have installed SketchUp on the C: drive then this folder will be at C:\program files\google\google sketchup [VERSION]\plugins.
On Mac OSX. The sketchup plugins folder is /Library/Application Support/Google SketchUp [VERSION]/SketchUp/Plugins
After copying this file, start SketchUp and you should now have an extra menu option (Export to DXF or STL) in the SketchUp Tools menu.
There are five export options, you want the last one:
- DXF polyface mesh (recommended). This will give the most faithful reproduction of your original SketchUp model.
- DXF polylines: exports the outlines of each face as a polyline, sometimes useful for CAM toolpaths.
-
DXF triangular mesh: breaks all the faces up into triangles
-
DXF lines. This option exports the edges in your model as lines.
-
STL triangles. The stereolithography triangular mesh format, useful for some CAM programs.
Just be aware that these options do not always work for every model.
A fix for some problems is the
flipped face.
SketchUp doesn't care if a surface is on the outside or inside of your model, but this can create problems in your
stl files when it comes time to printing.
If you see a darker face, CTRL+click on it and select
Reverse face from the menu.
Just to be sure open the
stl file in one of the programs that will fix the model.
Meshlab
You'll use Meshlab to fix scanned 3D images
MeshLab is an open source, portable, and extensible system for the processing and editing of unstructured 3D triangular meshes.
The system is aimed to help the processing of the typical not-so-small unstructured models arising in 3D scanning, providing a set of tools for editing, cleaning, healing, inspecting, rendering and converting this kind of meshes.
The system is heavily based on the VCG library developed at the Visual Computing Lab of ISTI - CNR, for all the core mesh processing tasks and it is available for Windows, MacOSX, and Linux. . The MeshLab system started in late 2005 as a part of the FGT course of the Computer Science department of University of Pisa and most of the code (~15k lines) of the first versions was written by a handful of willing students. The following years FGT students have continued to work to this project implementing more and more features. The proud MeshLab developers are listed here.
(from http://meshlab.sourceforge.net/)
Download MeshLab
Blender and Wings 3D
Blender and
Wings 3D are two free subdivision modelers available for downloading.
Thingiverse
What is Thingiverse?
Thingiverse is two things:
-
It's a place to share your digital designs with the world.
- It's a community of people who create and share designs freely, so that all can benefit from them.
To save your own digital designs, you need to
register at Thingiverse. All the information that is required is a username, email, password and human status.
Once you've registered, you can choose to fill out your profile or not.
By clicking on the
Tools Tab, you can share with others.
By hitting the
Email Tab, you can request emails
- Whenever someone posts a new comment on something you've designed.
- Whenever someone posts a new comment on something you've made.
- Whenever someone creates a derivative from of one of your things.
- Whenever someone physically makes of one of your things.
- Whenever one of your things has been featured.
ReplicatorG
ReplicatorG is the software that you need to make your Makerbot print. It will process
GCode or
.stl files. It's cross platform, easily installed, and is based on the familiar Arduino/Processing environments.
The current version is
ReplicatorG 25
module head(){
union(){
difference(){
union(){
sphere(r=20);
for ( i = [1 : 1 : 2] ){
rotate( i * 360 / 6, [1, 0, 0])
translate([-4, 20, 0])
sphere(r = 5);
}
color([1,1,1])
for ( i = [1 : 1 : 2] ){
rotate( i * 360 / 6, [0, 0, 1])
translate([0, 16, 10])
sphere(r = 5);
}
}
intersection(){
translate([-10,0,-2])
sphere(r=11);
translate([-10,0,-2])
sphere(r=10);
}
}
}
}
module body(){
translate([20,0,0])
sphere(r=25);
translate([45,-2,0])
sphere(r=10);
translate([30,10,-22])
sphere(r=5);
translate([30,-10,-22])
sphere(r=5);
translate([10,-10,-22])
sphere(r=5);
translate([10,10,-22])
sphere(r=5);
}
head();
body();