Download presentation
Presentation is loading. Please wait.
1
3D Printing for TVIs and Transcribers
A “How-To” Guide Michael Cheverie Educational Specialist, Visual Impairments
2
Motivation for 3D Printing
Expanded Core Curriculum for visually impaired students: “Your child needs to study the same basic academic subjects that sighted children do, from how to tell time to how to write a persuasive essay. But in order to master these subjects (often known as the "core curriculum") and complete their schoolwork—as well as to eventually live and work independently—children who are visually impaired usually need to learn an additional set of skills known as the "expanded core curriculum." They are sometimes also referred to as "disability-specific skills" or "vision-related skills" because they are useful specifically for individuals who are visually impaired.” (Taken from: 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
3
Motivation for 3D Printing
Expanded Core Curriculum: “Compensatory academics—critical skills that students need to be successful in school, such as concept development, organizational skills, speaking and listening, and communication skills such as braille or print reading and writing.” [Emphasis added.] (Taken from: 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
4
Motivation for 3D Printing
Expanded Core Curriculum My Opinion: Text descriptions and tactile diagrams are often not sufficient to convey the type of understanding that sighted students can obtain by just looking at a diagram or artist’s representation in a textbook. Specially designed objects that illustrate concepts add factors of orientation and even proprioception to understanding that sighted students grasp intuitively when they see an illustration. 3D printing is an essential tool that teachers of the visually impaired (including general education subject area teachers) can use to convey understanding of concepts to their visually impaired students. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
5
Affordable 3D Printers https://all3dp
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
6
OpenSCAD Overview From OpenSCAD Site:
OpenSCAD is not an interactive modeler. Instead it is something like a 3D-compiler that reads in a script file that describes the object and renders the 3D model from this script file. This gives you (the designer) 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: First there is constructive solid geometry (aka CSG) and second there is extrusion of 2D outlines. [Emphasis added.] 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
7
OpenSCAD – Download http://www.openscad.org/downloads.html
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
8
Cura - Overview From Cura Site:
Cura prepares your model for 3D printing. For novices, it makes it easy to get great results. For experts, there are over 200 settings to adjust to your needs. As it’s open source, our community helps enrich it even more. Quick-Start Guides: start-guides Cura 15.04 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
9
Cura – Download (Version 15. 04. 2) https://ultimaker
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
10
OpenSCAD - Cylinders cylinder(r= , h= , $fn= , center= );
Starts with the word “cylinder”, followed by left parenthesis. “r” is the radius of the cylinder, measured in millimeters. “h” is the height of the cylinder, measured in millimeters. “$fn” is the number of sides, or facets, of the cylinder: Imagine that the cylinder is like a barrel made of slats of wood. As the number for $fn increases, the width of each slat decreases, and the surface of the cylinder becomes more rounded. “center” can be either “true” or “false” : “true” means that the geometrical center of the cylinder will occur at the origin of the three-dimensional coordinate system in OpenSCAD “false” means that the geometrical center of the base of the cylinder will occur at the origin of the three-dimensional coordinate system in OpenSCAD Ends with a semicolon, following by right parenthesis. The semicolon is of critical importance. To make the cylinder appear in the OpenSCAD rendering window, push the F5 key on your computer. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
11
OpenSCAD - Cylinders cylinder(r= , h= , $fn= , center= ); Try this: r = 30, h = 40, $fn = 3, and center = false Type this in the OpenSCAD editing widow: cylinder(r=30, h=40, $fn=3, center = false); Then push the F5 key on your keyboard. (The F5 key in OpenSCAD compiles the object and provides a preview of what it will look like. Later, we will be using the F6 key to “render” the object for printing.) 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
12
OpenSCAD – Cylinders You should see this:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
13
OpenSCAD - Cylinders cylinder(r=30, h=40, $fn=3, center = false);
Now try changing the $fn value (for example, change it to 4, then 5, then 6, etc.). Be sure to push the F5 key after each change of the $fn value. You’ll notice that these aren’t really cylinders, but are prisms. To make something that looks more like an actual cylinder, try changing the $fn value to 300. Push F5. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
14
OpenSCAD – Cylinders You should see something like this:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
15
OpenSCAD – Cylinders ... or something like this:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
16
OpenSCAD - Cylinders OpenSCAD allows you to make cylinders with a different radius at the top and the bottom. The script will look like this: cylinder(r1= , r2= , h = , $fn = , center = ); Try making a cylinder with the following parameters: r1 = 30, r2 = 10, h = 40, $fn = 3, and center = false r1 is the radius of the bottom, and r2 is the radius of the top. Try a second time making r1 = 30 and r2 = 0. You should get a triangular pyramid. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
17
OpenSCAD – Cylinders You should see something like this:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
18
OpenSCAD - Cylinders In the last slide you saw the “cylinder”:
cylinder(r1 = 30, r2 = 10, h = 40, $fn = 3, center = false); Try making r2 equal to zero, like this: cylinder(r1 = 30, r2 = 0, h = 40, $fn = 3, center = false); The result is shown in the next slide... 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
19
OpenSCAD – Cylinders Triangular Pyramid:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
20
OpenSCAD - Difference OpenSCAD allows you to subtract one 3D object from another. This is a very powerful tool for making educational objects! The difference script will look like this: difference(){ cylinder(r1=30,r2=0,h=30,$fn=3,center=false); cylinder(r1=28,r2=0,h=28,$fn=3,center=false); } 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
21
OpenSCAD - Difference Notice the script for the ‘difference’ function:
First is the word “difference”. Next there is a set of parentheses (open and close). The parentheses are followed by an open (curly) brace. (Please note that every opening parenthesis, bracket, or brace must be accompanied by a closing parenthesis, bracket, or brace.) The “outside” object is the first cylinder listed, which is the larger of the two cylinders. The “inside” object is the second cylinder listed, which is the smaller of the two cylinders. Note: OpenSCAD always removes the second listed object from the first listed object. Last, the difference script ends with a closing brace. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
22
OpenSCAD – Difference You should see something like this:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
23
OpenSCAD - Translate In the last screenshot, notice the fuzziness on the bottom of the triangle. This fuzziness occurs because OpenSCAD is confused: the “outside” pyramid has the same bottom face as the “inside” pyramid. Consequently, OpenSCAD can’t tell if you want the bottom there, or if you don’t want it there. To get rid of this, let’s move the “inside” pyramid down so that its bottom face is one millimeter lower than the bottom face of the “outer” pyramid. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
24
OpenSCAD - Translate To move objects in OpenSCAD, we “translate.”
Add a translate statement like this between the two pyramids (cylinders) in the difference: difference(){ cylinder(r1=30,r2=0,h=30,$fn=3,center=false); translate([0,0,-1]) cylinder(r1=28,r2=0,h=28,$fn=3,center=false); } Note that translate does not require a semicolon. Also note the square brackets inside the parentheses. Translation can occur in the x, y, and z directions. The numbers in the square brackets correspond to translations in each of these directions, respectively. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
25
OpenSCAD – Translate Now you should see this:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
26
OpenSCAD - Rotation OpenSCAD can rotate objects around any axis of rotation. Most rotations will be around the x, y, or z axes. The rotation command looks like this: rotate([45,0,0]) cylinder(r=5,h=50,$fn=300); This command tells OpenSCAD to make a cylinder of radius 5 mm and height 50 mm, rotated about the x-axis by an angle of 45 degrees. Note that there are three numbers separated by commas in the square brackets. The first number is the amount of rotation about the x-axis, the second number is the amount of rotation about the y-axis, and the third number is the amount of rotation about the z-axis. The next few slides show the rotations of the cylinder about the various axes. For comparison, the original cylinder is left at the “home” position. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
27
OpenSCAD – Rotation Rotation about the x-axis by 45 degrees:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
28
OpenSCAD – Rotation Rotation about the y-axis by 45 degrees:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
29
OpenSCAD – Rotation Rotation about the z-axis by 45 degrees (can you explain why there seems to be no rotation?): 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
30
OpenSCAD – For Loops In OpenSCAD there is a way to make the same object over and over again (possibly with some regular changes). This is called the “For Loop.” You can use this for any series of objects in which any measurement can be incremented (added to, subtracted from, multiplied or divided by the same value over and over). Here’s an example: for (i=[0:4]) translate([i*10,0,0]) cylinder(r=i+1,h=i+1,$fn=300); 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
31
OpenSCAD – For Loops Here is the way that OpenSCAD interprets this command: For the value of i = 0, make a cylinder with radius = 1 mm, height = 1 mm. Move the cylinder to the right by i * 10 mm. Then add 1 to the last value of i. For the value of i = 1, make a cylinder with radius = 2 mm, height = 1 mm. Move the cylinder to the right by i * 10 mm. Then add 1 to the last value of i.” Keep doing this until the cylinder for i = 4 has been made. A total of five cylinders of increasing radius, height, and distance from the origin will be made. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
32
OpenSCAD – For Loops Putting this into OpenSCAD and pressing F5 will give you:
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
33
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
Let’s make a button! A button is a large “outside” cylinder from which four smaller “inside” cylinders are subtracted. We will use the difference function to remove the smaller cylinders from inside the larger cylinder. We will use a combination of the for loop and rotate function to make the four smaller “inside” cylinders. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
34
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
The “outside” cylinder can be written like this: cylinder(r=15,h=7,$fn=300); The “inside” cylinder can be written like this: cylinder(r=2.5,h=11,$fn=300); The result of these two cylinders is shown in the next slide. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
35
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
36
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
In a real button, the “inside” cylinders are holes, rather than posts. Let’s use the difference command to make the “inside” cylinder a hole: difference(){ cylinder(r=15,h=7,$fn=300); translate([0,0,-1]) cylinder(r=2.5,h=11,$fn=300); } The result is shown in the next slide. (Note that I’ve added a translate command for the “inside” cylinder so that we can avoid the fuzziness mentioned earlier.) 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
37
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
38
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
Also, in a real button, the holes are not at the center, but are offset from the center by a certain amount. We can add the offset for the “inside” cylinder by changing the x-value of the translation to the offset amount: difference(){ cylinder(r=15,h=7,$fn=300); translate([6,0,-1]) cylinder(r=2.5,h=11,$fn=300); } Note that we have changed the offset by 6 mm. The result is shown in the next slide. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
39
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
40
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
Of course, most buttons have more than one hole. If the button has two holes, they are diametrically opposed to each other, on either side of the center of the “outside” cylinder. This means that we want to make the first “inside” cylinder, but then rotate a copy of it by 180 degrees about the z-axis. The for loop part of this command will look like this: for(a=[0:180:360]) rotate([0,0,a]) Inside the square brackets we see “0:180:360.” This means, “perform the following rotation from 0 degrees to 360 degrees in increments of 180 degrees.” The “0-degree” cylinder is the original “inside” cylinder. The “180-degree” cylinder will be a copy of the original “inside” cylinder at an angle of 180 degrees from the original. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
41
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
Putting it all together, we get the following: difference(){ cylinder(r=15,h=7,$fn=300); for(a=[0:180:360]) rotate([0,0,a]) translate([6,0,-2]) cylinder(r=2.5,h=11,$fn=300); } The result of this script is in the next slide. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
42
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
43
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
Some buttons have more than two holes. To get additional regularly-spaced holes we need to review some geometry. To get three holes, we need to divide 360 by 3: 360/3 = 120. If we change the middle number (the “increment” number) from 180 to 120, we should get three holes. The next slide shows the result. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
44
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
45
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
To get four holes, divide 360 by 4: 360/4 = 90. Change the increment number from 120 to 90. To get five holes, divide 360 by 5: 360/5 = 72. Change the increment number from 120 to 72. These results are shown in the next slide. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
46
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
47
OpenSCAD – Difference, Translation, Rotation, and For Loops Combined
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
48
OpenSCAD – Preparation for Printing
Making objects is fun and interesting, but the point is to print them. Most 3D printers recognize objects that are saved in the .stl format. OpenSCAD provides a two step method to put objects in .stl format. Step 1 is to “render” the object... 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
49
OpenSCAD – Preparation for Printing
Rendering an object for printing in OpenSCAD is similar to the method you used to make a picture of the object – You pressed the F5 key. To render the object for printing, press the F6 key... (and wait ... this sometimes takes a while ...) In the lower right corner of the OpenSCAD window, you will see a progress bar. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
50
OpenSCAD – Preparation for Printing
HERE! 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
51
OpenSCAD – Preparation for Printing
When the rendering is complete, then we want to export our model to STL. To do this, go to file, down to “Export,” and then over to “Export As STL.” Then we save the STL file with a name. This is the file that the printing software will look for. Please see the next two slides... 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
52
OpenSCAD – Preparation for Printing
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
53
OpenSCAD – Preparation for Printing
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
54
Cura – Preparation for Printing
Open the STL file for the object in Cura. Click on “File,” and go down to “Load Model File.” Or, click on the file-loading icon in the upper left of the Cura window (one of the three icons that appear in the upper left). Notice that Cura tells you how long the print will take, and how much plastic the print will use. Please see the next three slides... 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
55
Cura – Preparation for Printing
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
56
Cura – Preparation for Printing
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
57
Cura – Preparation for Printing
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
58
Conclusion – Cura and OpenSCAD
Of course, there are a lot of things that Cura doesn’t tell you... things that you will learn only through experience. For example, we haven’t discussed how to set up Cura for the particular brand of printer you will be using – for that you will have to read the documentation for the printer you use. Also, there are several capabilities that OpenSCAD possesses that we haven’t discussed. For example, the “module” function is very useful. It allows you to make a basic structure that can be used in several related models. An example of this is in the next slide. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
59
Conclusion – Cura and OpenSCAD
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
60
Conclusion – Cura and OpenSCAD
Daisy is holding a model she “discovered” on her own: a version of Buckminster Fullerene, a compound consisting of 60 carbon atoms in the shape of a soccer ball (aka a truncated icosahedron). Actual Fullerenes are far more complicated, but it’s pretty cool that Daisy was captured with a passion for this unique molecule , which is formed in lightning discharges in the atmosphere, and which, in 2010, were found in the cosmic dust surrounding a star 6500 light –years from earth. Daisy didn’t stop until she came really close to composing a reasonable model of the molecule. Three chemists were awarded the Nobel Prize in 1996 for the actual discovery of this class of molecules. 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
61
OpenSCAD Cheat Sheet This can be accessed from the “Help” dropdown menu in OpenSCAD
3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
62
Conclusion Use the Cheat Sheet in OpenSCAD – it really helps!
The Cheat Sheet is interactive – you can click on the items you would like to know more about, and it takes you to the documentation on that item. In the Cheat Sheet documentation, experiment by copying the “code” for objects or methods you are interested in. Paste these into the OpenSCAD editing window and push F5. You will be amazed at what you will learn! Have your students try this with the Cheat Sheet – they will learn many things they can teach you! Have fun – Get your students to use this! Practice makes perfect! 3D Printing - Michael Cheverie Educational Specialist, Visual Impairments
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.