Monday, August 12, 2013

3D Printing – a Brave New World

This year at //BUILD 2013 in San Francisco Microsoft announced native support for 3D printing. I’ve been thinking about one for a very long time and decided it was time to pull the trigger and pick one up. There are a number of different models out there, but I settled on the Afinia H Series as see in the picture below:

After doing some research, I settled on this model for a number of reasons, the print resolution down to 0.15mm, price, reviews and availability through Amazon Prime also contributed to my decision.

So before I get into what I’ve learned about 3D printing since my purchase, I’ll summarize the two biggest challenges I’ve had. First was getting the model to stick to the platform. For smaller models this wasn’t an issue, for larger ones, it was. Second when printing with PLA, I could it incredibly difficult to remove the support material (more on this later). At this point I’m printing specifically with ABS and it seems to be working fine. Again more on the materials in a bit.

Lessons Learned

After spending about a month with my printer, I can share the following tidbits of knowledge:

Getting/Creating your models

To begin with, you need something two print. Printing is really a two step process, the first is designing your model, the second is printing it. Currently you need a modeling tool to create your model, next you’ll need the software that comes with the printer. The printer specific software just takes your exported model (typically a STL file) massages it into a set of instructions and then sends instructions for each layer that needs to be printed to the printer. This is the part that Windows 8.1 will make easier with native support. Once a modeling program takes advantage of the native drivers you’ll be able to print directly from your modeling program.

The best tool I could to date for creating your models is OpenSCAD, what I really like about this program is the fact that instead of using your mouse to create the 3D models, you program them. This allows for you to very quickly an even more important precisely create your models. You can read more on the programming language here. But here is an example of a mount I created for NiVek using this tool.

And here’s pictures of the end result:

And finally it mounted on the top of NiVek (note the circuit board is sitting on a custom mount that was also printed. This really eliminates most of the vibrations before they hit the Gyros.

Here’s a little more detail on what the programs look like, although it might look a little intimidating to get started, it’s a very natural way of describing the part you want to create.

Once you created your program, you press F5 for a quick preview (a little better than a wireframe) then press F6 to compile a complete version of your model. Once you’ve done that, it’s as simple as clicking on “Design->Export as STL” and you have a file you can pickup with your printer software.

In the case of my printer it comes with their proprietary application that will load up the STL and let you manage your printer:

This software is fairly straight forward to use, you can’t modify the model, however you can adjust the positioning on the platform. It also adds and support material and rafts necessary to make the model adhere to the platform.

Creating the “Print”

First you need to select your material, the two primary choices are ABS and PLA, here’s a decent post that compares the two. So far, I’m starting to get things figured out with ABS and can for the most part get predictable results. Once I master that type of plastic, I’ll go back to PLA, but my initial attempts with it, weren’t very successful.

What do I mean by mastering 3D printing? Well, right now most of the prints I do are fairly large, about 5x5, my print platform is only slightly bigger than that. With smaller prints, most of the time things worked fine, but with these larger prints, I was having a difficult time with the edges coming up and thus warping the model.

There were three things I found that were extremely helpful in getting my models to stick:

Leveling the platform - with my Afinia, I have three leveling screws under the platform. The goal is to use those screws to adjust the platform so the print head is with 0.2 mm on the four corners and the center. This is about the width of a standard piece of paper folder over, or a cover for a CD. I found the best way to do this was to take something a little wider. In my case a circuit board that is 1.6mm then adjust the platform so the circuit board slid just between the platform and the print head with no space. This is much more difficult than it sounds, but once completed, I simply moved the platform up 1.4MM (1.6mm – 1.4mm = 0.2mm as specified) and set that for the platform height.

Preparing the platform – I’ve had good luck with perforated FR4 board (3 of those came with the printer) however they seem to warp and the wholes got filled, in addition in some cases it was difficult to remove the model. Replacements were $24 each, this seemed rather steep. One of the next things I tried was “painting” and ABS/Acetone solution onto a borosilicate glass plate, this actually worked well but was very messy, scratched easy. I’ll probably revisit this since you can print without a raft (support material) What I finally settled on was Kapton tape on that same borosilicate glass plate. So far this seems to be working fairly well. If the tape get’s scratched or small chunks come up, you can simply patch the whole. Also at about $45 for 100 feet, I can replace it fairly simply, well after you know the tricks. I found this method works well for applying the Kapton tape. Also I’ve found starting from one side and using a credit card to press on small areas of Kapton and squeeze out the bubbles seems to work fine.

Preheating the platform – Ok, I probably should have done this sooner, but I’m not very patient. Damn-it if I wanted to print, I don’t want to wait. Pre-heating the platform to about 90 degrees Celsius (takes about 10 minutes) also seemed to help.

Again these were primarily required for larger models, since I’ve been doing the above, all my models have been sticking.

In addition, there is currently no way of controlling the temperature of the extruder nozzle on my Afinia (which doesn’t make sense, seems like it’s just software) so unless you want to purchase premium filament all the time (about twice as much per weight, spools are smaller and more expensive) you need to set the temperature a little lower. This can be done with this switch.

Anyway, the more I use my printer and get it figured out, the more I like it. My only complaint about this model is the smaller platform. At 5x5 I’m somewhat limited on what I can print, but I think this was a good entry level printer and so far have no regrets.