This week, we were asked to both 3D Scan and 3D Print. 3D Scanning is where an object or person is measured and analyzed and reconstructed digitally in a 3D form. 3D Printing starts with a 3D computer model which turned into a physical form, using a process called additive manufacturing. Laser cutters and mills form designs by starting with a larger block of materially and subtractively removing undesired parts, revealing a final design. In contrast, 3D printers add material to the design to create a final result. There are some affordances that additive manufacturing provide which allow for fabrication of objects that cannot be made subtractively. For example, 3D printers can make hollow parts that laser cutters and mills would not be able to reach.
For 3D scanning, there were several options for scanners to use in the CBA shop. Those tools included the Sense 3D scanner (two generations) and the NextEngine 3D scanner. I chose to use the first generation Sense 3D scanner because Tom and John had build a rig that was ideal for scanning small to medium object quickly. The NextEngine 3D scanner generates higher quality meshes, but takes several hours to scan. The Sense scanner has an extremely intuititve and friendly interface. First, it asks if you are scanning a person or an object. Then, it asks if you are scanning something small, medium or large. After, I velcro-ed the sense scanner onto the rotating rod. I determined the position to place the scanner by visually inspecting what the scanner could see through the user interface. If the object appeared in the frame, then it was in range for scanning. I rotated the scanner around the y-axis to scan. After rotating the scanner around the object and visually inspecting the interface for missing sections, I carefully lifted the scanner off the velcro. If you pull the scanner off the velcro too quickly, the scanner might not register the new orientation correctly and the scan might need to be redone. By taking the scanner off the velcro, however, I was able to scan the top of the object.
I chose to scan three pairs of heels made with materials that covered a spectrum of reflective properties. I wanted to see how the Sense scanner would perform when attemping to scan materials that might interfere with its optical sensor.
Figure 1: Matte Heel IRL
Figure 2: Matte Heel Scanned
I fully expected the matte heels to scan easily and was pleasantly surprised by how painless the process was. It took maybe 2 minutes to scan the entire heel and another few mintues to clean up the model. I chose to remove sections of the base plate which was picked up during the scanning process. The Sense scanner also scans color and maps it onto the 3D model which was pretty cool to see. There were only a couple of smaller sections that couldn't be reached inside the heel which I closed using Sense's close mesh tool.
Figure 3: Shiny Heel IRL
Figure 4: Shiny Heel Scanned
The shiny rainbow heels actually had no problems scanning. The process was very similar to the matte heels. This time, John recommended I raise the level of the heels, which I did. This made it easier to remove the noisy bits at the bottom.
Figure 5: Sparkly Heel IRL
Figure 6: Sparkly Heel Scanned
The sparkly heels actually scanned much better than I expected. I was able to achieve similar results to the matte heels and the shiny heels, especially when you consider that the scanner is stitching together the mesh using information from various perspectives. Because of that feature, the scanner was fairly successful at reducing noise in the model, despite reflections that would've been distruptive from a single vantage point. With the color scanner however, it became fairly obvious that some detail was lost. With this scan, I was unable to properly capture the inside of the heel, so used the close mesh tool. When I did that, some of the detail was lost, but ultimately, I was pleasantly surprised by how well the Sense scanner did.
Figure 7: Sparkly mesh from above with holes
Figure 8: Sparkly mesh from above with hole correction
For the 3D printing section of this weeks assignment, I wanted to create something using OpenSCAD. OpenSCAD is a software for creating solid 3D CAD objects that leverages boolean operations accross a wide variety of primatives to create complex geometries programatically. I chose to make something simple using the difference boolean, spheres, cubes, cylinders and a for loop. In only a few lines of code, I was able to create something that was parameterized and easy to adjust based on our printers tolerances. We had several options for printing, ranging in equiptment price and printing quality. My piece was printed on the Stratasys Objet Eden printer.
Figure 9: OpenSCAD Model
Modeling in OpenSCAD is a ton of fun. It's fairly light weight though, so it can take some time to compile and render complex operations. They have extremely detailed documentation and a concise cheatsheet to help you get started. Below you can visually inspect the operations I did to create my 3D object. It is very easy to modify values in openSCAD and to revert operations. I also found it appealing for creating precise models, as I could simply pick primitives and numerically describe their orientation, size, and position using the programming shell.
Figure 10: Creating the cube
Figure 11: Creating the inner sphere
Figure 12: Adding holes
Figure 13: Removing excess material
Figure 14: Print with Support Material
Figure 15: Print Oriented with Hole Mismatch
Figure 16: Print Oriented with Holes Matching
I picked up my print that Tom so graciously ran for me over the weekend and was able to clean off all the support material fairly quickly. It was relaxing washing off all of the soft support material using the power washing hose. I was pleasantly suprised to discover that the spacings I decided on were ideal for the size of this print. The inner piece can move around without getting stuck in the cube and the size of the holes are big enough to not trap my finger in. It's also pretty fun to play with! I would like to try to make something that moves using linkages or gears in the future, but for now, I'm satisfied manually manipulating my object.