~ Three dimensional scanning and printing.
~ post date: 2017.2.25, recent update: 2017.2.28

Background

3D printing is an additive process of creation. Not unlike an inkjet printer, a printer head draws a slightly extruded image, steps up one level, draws another, another, and so on until a 3D thing is formed. There are many 3D printing processes including Vat photopolymerisation, material jetting, binder jetting, material extrusion, powder bed fusion, sheet lamination and directed energy deposition (which are rundown here).

Contents
  • Performance testing MakerBot Replicator II
  • Mathematica model..?
  • Three dimensional scanning wildCardboard
  • Jump : Index
  • Project files
  • Download : 3D Print test STL
  • Download improvised mobius STL
  • Performance testing MakerBot Replicator II

    The lab has a many 3D printers. I started with the MakerBot Replicator 2, which is a material extrusion printer which only uses Polylactic acid (PLA) plastic. "PLA is a biodegradable and bioactive thermoplastic aliphatic polyester derived from renewable resources, such as corn starch (in the United States and Canada), tapioca roots, chips or starch (mostly in Asia), or sugarcane (in the rest of the world)." Wikipedia The first operations are testing the limitations of the machine.

    ZhaoWei and I tested two models. The first, Zhaowei had on hand giving us time to draw the second while the machine printed. The simple test model would give us some indication of tolerances and accuracy.

    We used the MakerBot's print software. There are many available 3D print applications, some of which I intend to test in the next few days. The application accepts STL files, which are commonly available for export from 3D applications. STL files can only be mesh type models, not nurbs. This shows the intended paths of the machine head as it deposits layers of material and a hex infill, which can be activated and controlled for density within the application. The infill will help strengthen the model while limiting the density of the unseen material. For this model, infill was set to 10%.

    Following are screenshots of our settings. Number of shells refers to the amount of offset layers from the walls of the model. Each offset is 0.40mm thick. This model used 2. The MakerBot can extrude a raft, which is a small bit of disposable material intended to level the material bed and help prevent a model from snapping when removing it from the acrylic bed.

    Files are exported from the MakerBot application, saved onto a flash memory card and loaded into the machine. The machine bed raises to the top and the printer lays down the PLA plastic, only layer at a time. This time, each layer height was set to 0.10mm.

    The upper most two levels of this cake were too small for the printer. Likely, the printer was moving too fast for such a small area, not permitting proper material cooling time.

    The bottom of this model is the aforementioned raft. I found the easiest way to remove this was with a plaster knife. Slowly work the edge between the raft and the thing until the two release.

    Aside from the problems with the top of the model, we found some inconsistencies in circle diameters on two axes. Measurements are shown below.

    The second test was designed in Autodesk Maya to test a number of printing conditions including rounded objects (sphere), twisty cornery objects, standard dim objects, hollow objects from the top and side, angles, cantilevers, etc. All the tests were anchored to one platform making it easier to keep them all together.

    We used an infill of 20% and layer height of 0.20mm. The time estimate was about four hours for this test. The dimensions of the bounding box are 90mm x 90mm x 39mm. If the setting for layer height had been the same as the previous test, 0.10mm, the print time would have doubled.

    Midway through the print, we can see the infill and offset thicknesses. Also, some temporary scaffolding was built by the printer under the cantilevers.

    On first glance, the print closely resembles the original STL file...

    The "ceiling" of these chambers delaminated before the PLA plastic was able to congeal.

    An extra line of missing material was printed here. The measurements for these alternating zones from left to right: Hole: 0.50mm, 0.80mm, Hole: 1.00mm, 1.20mm, Hole: 2.00mm, 1.60mm, Hole: 4.00mm.

    The wall of this box printed with missing material. The distance from the outside to inside surface (wall thickness) was 1.20mm. Again, the printer made a mistake with 1.20mm thickness which is a multiple of its 0.40mm thickness head.

    Along the folds of this twisty thing, some fuzziness occurred.

    Unlike the first test, this pyramid came to a point. This may be attributable to the fact the machine head had to work through all the other zones on each layer before returning to add the next layer to the pyramid. As such, each layer had ample time to set.

    I will post links to resources I have found helpful here.

  • What is 3D printing? : An introductory blog to 3D printing, types of machines and processes.
  • Introducing Replicator 2 : Blog written by MakerBot about the release of the Replicator 2.
  • MakerBot Wikipedia
  • Mathematica model..?

    I am forever in awe of math derived computer geometries. I would love to learn how to write scripts that generate models in a CAD application soon. For the first draft, I decided it would be much faster to sketch a model based on visual cues and test it in a 3D printer.

    I used Autodesk Maya for this sketch. This little thing fits within a 35mm radius sphere. I am trying to push the tolerances of machine to an extreme here. The first pass I will try 1.2mm wall thickness with some temporary scaffolding.

    The relationships are parametric based on two closed curves and a thickness variable.

    Prior to attempting the first print, I would describe my state-of-mind as nervous. I know that there are some long bridges and extreme angles that will test the machine. Further, I worry that the Makerbot's scaffolding solution leaves too much residue because the connection is overly strong. First, I am going to explore some alternative slicing applications.

    Slicers. While using MakerBot Print for the test print, I sensed limitations in its capability and became curious aobut other applications. After researching online, I found praise for Craftware and Simplify3D. Craftware is free, while Simplify 3D is pay to play following a two week trial period. Starting with Craftware, I was unable to synchronize the application with our lab's Makerbot Replicator 2. Simplify3D conversely made synchronizing with our 3D printer simple. The application prompts for the printer id on first use or from the Tools > Firmware configuration menu, your printer can be selected.

    STL files do not store measurements. Oddly, any model imported as STL or OBJ format from Maya is 10% its size. This was the case with all of the slicers I tried. Simple fix, I setup a parameter to scale a duplicate of the object a factor of ten and re-exported from Maya. Further, I orientated the model so the greatest amount of its surface would be anchored to the bed.

    For this first attempt, I kept the default settings with some data from our test prints. The test print had no problem with a 45 degree overhang and also required more time for drying in tiny layers. One advantage of Simplify3D is that it slows the printer in smaller layers or is capable of setting different rules for different zones of the object. Following are screenshots of settings I am monitoring.

    Ensure this information is adjusted for your 3D printer.

    This visual breakdowns the components of the print. My biggest concern is the amount of support Simplify3D is adding. Frankly, I might have tried doing a separate print with the application to test the detachability of its rafting and scaffolding. I thought because this print was small and relatively brief, it may be in itself an adequate test (this print is projected for half the time of our test model). Simplify3D has extensive support options: distance from the model surface, size, density. Plus, you can delete individual pieces. I expect these capabilities will be useful as I have more experience.

    This visual displays variance in printing speed.

    The first print came out nicely, if not a little rough around some edges. The software time estimate of just over two hours was nearly an hour short of the actual printing time, just over three hours.

    Printing with 0.20mm layer height, makerBot achieved some remarkable cantilevers.

    Slowing down near the peaks preserved their quality in line with the CAD file.

    The scaffolding and raft produced by Simplify3D are significantly better than what was produced by MakerBot Print in the previous tests. Each only gently adhered to most surfaces and rarely left residue when removing. The Simplify3D raft by comparison to the makerBot Print raft is thinner and easily bendable, which helps to pop it off.

    Some of the overhangs delaminated. I can specify the printer to slow down in the specific slices at these spots, add structure, adjust the orientation of the model, decrease the 0.20mm layer height (maybe only specifically in these zones) or modify the mesh with extra material to be cut away post print. It is not difficult to clean up an edges with sandpaper, provided it is reachable. After printing, I read checking the refraction speed is another way to get better edges. Refraction speed is the speed in which filament retracts when the printer comes to an edge.

    The scaffolding is printed in an accordian pattern which I think makes the structure easier to remove, usually as one piece. However, in this type of object design, the scaffolding can become problematic. In many zones, the scaffolding wraps around the ribbon, sometimes on three sides! I had to carefully cut away portions of the structure with scissors to wedge it away from the mobius. Fortunately, Simplify3D is capable of editing the generated structure. Next time I can edit the structure pre-printing to avoid wrapping pieces.

    The scaffolding wrapped over the top of the ribbon near the top left of this photo making a full sectional wrap.

    I will return to tweak the setting further to find how clean I can get this print and to test another application: slic3r in the near future.

    Download project files

    I will post links to resources I have found helpful here.

  • Math artwork : On this page you will find some tessellations, surfaces, and other math stuff along with some basic mathematica code.
  • Wolfram Mathematica
  • About Simplify3D supports : Detailed tutorial about adding and modifying support structures.
  • MakerBot Print : MakerBot's own print software.
  • Craftware : Craftware also has advanced support features and it is free.
  • Simplify3D : Application in this post
  • Slic3r : Open-source slicer.
  • Three dimensional scanning wildCardboard

    I tried to scan one of my previous projects, wildCardboard with the Microsoft Kinnect using the Skanect application. How about starting with an image of the outcome?

    Plug the Kinnect into your computer's USB port then launch the Skanect application. The interface is straightforward. The first tab are variables for the type and size of the 3D scan. This model fits within an 300mmx300mmx300mm virtual bounding box. I will touch on this more later, I found it to work a little better to give plenty of extra space so in subsequent scans I added padding to the size of the bounding box, nearly double the size. As you will read, unwanted parts of the model can be removed later without the help of advanced 3D modeling applications.

    The next tab: Record, is where the important user action takes place. The Kinnect needs to be about 1.5m from the object. The interface helps to locate the scanner in relation to the object while the colorized largest window to the right gives color feedback from green to yellow to red. Green is a good distance for the scanner while red is too close or too far. Once in position, press the record button in the upper left corner.

    I started by mounting the kinnect to a tripod and using a rotating plate with the cardboard model. Skanect was unable to work using this method. I thought perhaps it had to do with the repetitive nature of the cardboard model confusing the software. However, when trying a different objects, Skanect was just as stubborn in its refusal to produce. Skanect recommends using the Kinnect in hand and moving it around the model, so I moved to this method next.

    Now utilizing the kinnect as a handheld scanner, you need to be careful about moving too quickly, getting too close or far from the model, or losing site of the model by obscuring a sensor or misdirecting the kinnect. Keep your computer model in your sightline and be mindful. If any problems happen, you may lose the model and either need to help Skanect find it or start over. I found as long as I was moving slowly, even if Skanect lost the model it was easy to replace becasue I had not strayed far. When I moved too fast, it would be a big problem.

    After recording, Skannect will quickly build a 3D model. Included in the process tab are simple interfaces for cropping undesired mesh, rotating, and adding texture maps. In the first image, I checked the texture maps. The second, I fixed the model alignment and cropped the books and table by moving the blue plane between those things and the model, then "crop to ground". This was my first successful scan. I can see the thicknesses of the material and the resolution between the ribbons has many mistakes. I resolved to try more scans varying my speed, increasing the surface area of my scanning, and adding more lights.

    Two more scans and my results were essentially the same. I was able to get more detail inside the void and along the top and bottom but the wall thickness issues remain.

    Finally, I exported the mesh as an STL file for use in other applications.

    Here, you can see a comparison of the source CAD model and the scanned model. I think Skannect would work better with solid objects but I have trouble thinking of it as a tool for more than rough scans. Of note, the scale of the model was remarkably close to wildCardboard.

    I will post links to resources I have found helpful here.

  • Skanect : Freemium application available here.
  • Jump : Index

    J.travis Russett © 2017
    Creative Commons License All the work contained within is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) License
    You may remix, tweak, and build upon my work non-commercially, as long as you credit me and license your new creations under the identical terms.