Sunday, March 4, 2018

3d Printing Basics

For some time, I've been noodling with a post about what I think it's important to know about 3d printing. Basically, what I would like to have known when I started doing it. And here it is. 

Making and Modifying Models

3d printing starts long before the printing. It starts with the design of a 3d model, just as regular, on-paper printing starts with creating a document or image. There are many CAD tools which can be used to produce such models. In the past year or two, the free tools I've used in the past have moved to on-line applications rather than downloadable local ones, including Sketchup and Tinkercad. For something more heavyweight, there's Blender, which I've tried to use to little avail. The standard file format for use in 3d printing is STL (stands for stereolithography, which ironically is a completely different method of 3d fabrication than what most home 3d printers use).

Of course, you don't have to start from scratch. You don't even have to do any design work at all. There are plenty of places where you can download ready-to-print designs. I usually frequent Thingiverse and Youmagine. Designs downloaded form there can be sent to a printer without any modification on your end, or they can be used as the basis of your own designs.


STL files define a shape but are agnostic about how what you do with it (for example, the same tools you use to build 3d printable designs are also used for architectural modeling and creating items for 3d animation and games), so after the CAD stage of design (computer assisted design), there's the CAM stage (computer assisted machining). There are stand-alone pieces of software which do various parts of this task, but they're typically bundled with the same software used to control the printer. Cura and Repetier are excellent free tools for the job.

In preparation for printing, the shape is analyzed and a series of instructions designed for a specific tool are generated to physically produce it. This is sometimes called "slicing," since one of main operations is to cut the model horizontally into a series of two-dimensional slices. For example, a pyramid is approximately a series of successively smaller squares set atop one another. Most software allows you to change the settings for how your model is sliced and what other instructions are sent to the printer. Important settings include:
  • Temperature. Your hot end (the heating element which melts the filament so that it can be extruded) has to be hot enough to get the plastic soft and flowing, but not so hot as to burn it. Different filaments work in different temperature ranges, and even within recommended temperature ranges, there can be better temperatures for specific brands and hot end designs.
  • Thickness of layers. This determines the resolution of the printed piece in the 3rd dimension. For example, when printing out that pyramid, a 3d printer has to print out layers of finite height, so it can't do an unbroken slope, but it can print out a series of shorter or taller steps. The thinner the layer, or the shorter the step, the more closely it approximates that slope. Small values, measured in hundredths of mm, will give you very nice resolution, but take correspondingly longer.
  • Shell thickness. This may be divided into top, bottom, and side thickness.
  • Fill density. 3d printed items are usually not solid plastic. Rather, they've got an internal grid providing enough substance to hold together.
After some experimentation, I've found some default settings which I use nearly all the time. I print with PLA filament most of the time, which uses relatively low temperatures, so my hot end is usually set around 190-200C, with a layer height of 0.1mm (down to 0.05 mm if I want really high quality, up to 0.15 or even 0.2 if I'm OK with fast but coarse, or if the piece has very little detail and thick layers won't matter much), and 20-25% fill. Shell thickness on the sides is a function of the diameter of the printer's nozzle. That is, if you've got a 0.4mm nozzle, your shell thickness has to be in whole-number multiples of 0.4mm. A double-thick shell (say, 0.8mm with an 0.4mm nozzle) is usually pretty good, with top and bottom to match.

This process (CAM/slicing) generates a set of instructions telling your printer what temperature to heat up to, where to go, when to extrude filament and when to stop, and so forth, based on the design and other settings. These instructions are in a language called gcode. Those commands may look something like this:

G1 F1200 X180.564 Y50.739 E26.57755
G0 F4200 X181.130 Y50.739
G1 F1200 X181.759 Y51.369 E26.62196
G0 F4200 X181.759 Y50.803
G1 F1200 X181.696 Y50.739 E26.62644
G1 F1800 E25.62644
G0 F4200 X141.759 Y50.966
G1 F1800 E26.62644
G1 F1200 X141.533 Y50.740 E26.64239
G0 F4200 X140.967 Y50.740
G1 F1200 X141.759 Y51.532 E26.69827

However, you don't actually have to know anything about gcode to do 3d printing. The software handles it all for you, just as your printer drivers handle encoding data to send to your printer without you needing to understand the language in which it handles that conversation.

The Printer and Printing

At last, we look at the hardware itself. Most home and hobbyist printers do FDM (filament deposition model), which uses a plastic filament as its raw material (there's also DLP and SLA printing, which use a tank of photosensitive resin and various methods of exposing them to UV; these printers tend to be faster and more detailed, but the process is vastly more expensive). You'll almost always find filament in 1 kg spools at with a diameter of 1.75mm or 3mm. Be sure to get the right size for your printer!

This filament is drawn through an extruder at a metered rate. A heating element in the extruder assembly heats the filament to a semi-liquid state, and it's forced through a nozzle onto a print bed.

I have no recommendations for specific models of printer. That landscape changes too quickly. But I do have some recommendations on what to avoid, what to get, and what to consider.

Things to be wary of include:
  • Cheap kits. It's possible to get a very inexpensive DIY printer on Amazon and other retail outlets. They're not necessarily bad, but they do tend to be made by no-name overseas manufacturers. Some are perfectly good, but instructions may be incomplete or poorly translated, and if you've got a bad part, customer support may be weeks away. That may be tolerable for a second printer, when you've got a good idea of how and why things work and can potentially source replacement parts yourself, but it's a really good idea to go brand name for your first.
  • Proprietary filament. Some manufacturers follow the inkjet printer model: sell you an inexpensive printer and make it back on the printing medium. The printer won't work with third-party filament. Instead, you have to use cartridges they sell at a substantial markup over "open source" filament.
Things to get:
  • A heated bed. A common problem with 3d printing is bowing or curling. As the first few layers of filament cool, they shrink and peel away from the print bed, resulting in a print with a curved bottom. There are a variety of dodges around that, but by far the most effective is a heated bed. If the print bed maintains a temperature around 50-60C, those bottom layers don't cool to the point of shrinkage. Curling vanishes. No matter what it costs in addition to a basic model of printer, you'll more than make it back in savings on ruined prints.
  • Accessories. There are a few consumables and other bits and pieces you'll need for good printing. You want kapton tape, for example. This is a plastic which stands up to high temperatures well. A layer of this tape provides a protective layer to your print bed, preventing gouges when you have to chisel off prints which are really stuck on, as happens some times. You'll also want an offset spatula, bench scraper, or similar thin metal item to do exactly that. Finally, you'll want some material to help prints stick to the print bed. Exactly what you need depends on the material you're using. If you're using PLA (see below for more discussion of filament materials), that's cheap hairspray. I use AquaNet or its generic equivalent. If you use ABS, probably the second most common filament, you need a bit of a slurry of acetone and some ABS dissolved in it. Nylon wants a porous surface like paper or cardboard. Check manufacturer's recommendations. And it can't hurt to have a few craft basics like an Xacto knife and fine sandpaper and the kinds of drivers, wrenches, and other tools you'd use on a computer.
Things to consider:
  • Temperature range. A basic FDM printer can at least get up to the low 200s C, which is good enough to print in PLA. PLA, which is short for "polylactic acid," is the cheapest and most common 3d printing filament. It's a plastic made from corn. It's nontoxic and biodegradable and it's perfectly good for miniatures, game pieces, art pieces, and the like. It is not, however, either particularly durable or flexible, so it's not great for a good many practical applications. ABS, or acrylonitrile butadiene styrene, is what Legos are made out of. It's a much stronger, but it puts off an unpleasant odor when printing (so you don't want to be around), wants a heated bed (above) and higher temperatures, starting around 230C, if not hotter. And there are a variety of also-rans (nylons, polycarbonates, etc.) which print as hot as or hotter than ABS. Something that goes up to 230 is certainly good enough for PLA and maybe ABS. Up to 250 is good for ABS and potentially some other exotics, and something that goes up to, say, 280 can print in pretty much anything. If you're just want a starter printer, you don't need a seriously hot hot end, but if you're going into it knowing that you'll want to work in industrial-grade materials, then higher temperatures are a must.
  • Extra nozzles. The nozzle on your printer can and eventually will get clogged up and need to be replaced, so it's a good idea to start out by getting one or two extra for when you need it. What's optional is buying nozzles in different sizes. Most printers come with a nozzle with a diameter of around half a millimeter. That's essentially the size of the "line" it draws when it prints. A different nozzle, then, effectively changes the "resolution" at which the printer prints. For very fine work, you may want to use an 0.3mm or 0.2mm nozzle (I've worked with nozzles as small as 0.1mm, but it was painful to work with), while for large pieces, a larger nozzle can get the job done faster (I printed parts for what was ultimately an 18" tall sculpture with a 1mm nozzle and it came out just fine).
  • Print volume. This is one of those "get what you pay for" things. Smaller printers are cheap, and bigger printers are more expensive.

Friday, September 8, 2017

Her Own Private Themyscira

When the recent Wonder Woman movie came out, just about every woman I know wanted to go to Themyscira right now (except my mom, who doesn't go in for movies), and I suspect a good many of them would have wanted to stay. But, of course, it's difficult to get plane tickets to places that don't exist, so none of them got to make the trip.

But I got to thinking about how I could get my lovely and talented spouse as close to Themyscira as I could. The answer was a 3d-printed frame. It was back to the Classical architecture of my grad school days: fluted Doric columns, a simple entabulature (those are Ws instead of triglyphs, of course), and so on. Finished, of course, with a little paint to give it an aged look and some terra-cotta-colored "roof tiles."

 From behind, it's hollow.

And there are cutouts on the top and right side.

They're sized to snugly fit a small digital picture frame while leaving the ports and controls open.

It contains a memory card with screen shots from the movie as well spots on the Amalfi coast on which the movie Themyscira was based. The result:

A slideshow providing a window to the island of the Amazons. It's not a one-way ticket to a mysterious island, but it does fit nicely on a table or desk. And certain persons to whom I am married seem to like it.

And it just now occurs to me that I could do the same thing for her on a Rivendell theme...

Saturday, June 17, 2017

Secretary Desk: Gettin' Jiggy With It

One of the many items of furniture we have that doesn't hold enough is a cheap, unfinished wood secretary desk, which we've had for somewhere between 15 and 20 years. It's not bad as such things go, but it is too small. So certain persons to whom I am married suggested that I could build a bigger one. And so I did. I pulled out all the technology for this project, since I am a terrible carpenter if left to my own devices.

Peg Jig

I wanted to used dowels rather than screws to hold the structure together. So how do I get all of those peg holes lined up? 3d printer to the rescue. I worked up a little t-shaped piece the same width as the thickness of my boards and evenly spaced 1/16" holes in it. With that in place, I could drill pilot holes in the edges of the upright boards and matching holes down through the thickness of the horizontal ones. Those were followed by a 1/4" bit and then matching dowels.

Adjustable Router Template

I decided to cut dado joints for the internal shelves in the lower cabinet. But how? That requires absolutely straight grooves cut at exactly the same height across the boards for both sides. I started by clamping the boards together side-by-side and penciling lines where I wanted the shelves to slide in. Now, if you're a competent carpenter, you just need to set a fence in the appropriate spot and use that to semi-freehand a groove with your router.

I am not a competent carpenter. Back to the 3d printer, but for something more elaborate. I've got router guides and I've used router templates with some success in the past, but how to make that work for what I'm doing? And here's where I decided to make a multi-purpose device. I modified the design for a set of micrometer calipers with "feet." Then I ripped a four-foot piece of quarter-inch plywood into strips about six inches across. By screwing the calipers to the ends of the plywood strips, I could very precisely adjust the separation of the strips, which were thin enough to make a very good template for the router. In this case, the gap needed to be no wider than the template guide, but I could adjust the gap to rout out a much larger area if need be.

(And fortunately, this worked out in practice about as well as predicted in theory.)

Roll Top

The really fancy part of this is a roll top for the top section. In theory, it's pretty easy. For the opening top, you get a bunch of thin slats of wood (which was a piece of thin plywood run through the table saw a quarter inch at a time) and glue them to a piece of fabric. Not too difficult. But then I need to cut mirror-image curves for the top part of the cabinet and parallel mirror-image grooves inside their radius for the flexible front cover to move through. Yeah, no way I'm doing that. CNC work.

The black lines cut all the way through. The gray lines are grooves a half-inch deep in the 3/4" lumber. The top curve is for the roll top, the horizontal bit in the middle is to keep cubbyholes in place. A little trimming the ends of the slats and sanding the inside of the groove and it fits together surprisingly well.

So Finally

Assembly (with 3d printed elephant heads as hardware to open the roll top), some stain, and a zillion coats of shellac later, it looks like this.

But the important thing is that it contains about 50% more than the old one.

Saturday, June 3, 2017

Dice Trebuchet

I blame John Kovalic.

(Go read the strip now before I ruin the joke any farther. Back now? OK.)

I've got a few dice towers, but a dice trebuchet? Not so much. So clearly, I needed to make one.

The frame, made from 3/4" birch plywood, is easy. A little CNC work for the supports, routing out spaces for 22mm bearings at the top, cutting through all the way in the center to make room for the axle to move freely, and some sockets in the base for the uprights. A little sanding and it all fits together nicely

The other wooden parts are mostly made from standard stock. At the center of everything is a short section of solid 3/4" square birch. It has 5/16" holes bored at the ends and all the way through the middle. Why 5/16"? Because that's almost exactly the diameter of the 8mm holes in the centers of the bearings. A 5/16" dowel for an axle fits very snugly. Since I've got it around, more dowel forms the throwing arm and the counterweight arm. I'm increasingly using the 3d printer to create jigs and other placement aids, and this project was no exception. All drilling was performed with the use of a jig with a 5/16" bore and a small frame allowing it to be centered on a 3/4" width.

Then it's off to more 3d printing. The basket at the end of the throwing arm is 3d-printed and presents a vastly easier solution than cobbling together a more realistic but teeny sling and release mechanism. It's big enough to accommodate 3d6 for any reasonably sized dice if you're playing GURPS. I assume it'll hold die for other games, but why would you want to play those?

The counterweight is, appropriately, a small dice bag, so it can serve as an ammunition supply as well. There's a small hook on the counterweight end of the arm to hang it off of, but it can be taken off to add or remove dice, changing the force of the projectile. If dice aren't heavy enough (and, to be honest, they probably aren't), those little glass stones can be used which double as level markers for games like Munchkin. 

And how effective is it? It's not bad:

That's a fairly standard d6 being propelled across the length of a fairly standard dining table. With a bit of a backstop and/or a smaller counterweight (this was using a stone icosahedron), the trebuchet could actually be used to roll dice. Or to destroy your enemies.

UPDATE: For the benefit of those with CNC machines, I've published the Easel design on Inventables, so you can make your own.

Sunday, March 26, 2017

Steampunk Nautilus Stylus

More stylus sillyness in the style of the iPlume. To reiterate: a stylus for a touchscreen device is basically a conductive stick. It needs a conductive tip to touch the screen and a conductive body to carry the current through you. Anything conductive which touches you anywhere will do.

I saw this rather nifty design for a finger-mounted pen and figured I could capitalize on that. The styling was rust paint (I do enjoy that stuff, don't I?), a couple of fins and some gears, which just happen to fit on the mountings for the screws holding the parts together, and if they weren't glued in place, they'd rotate just fine. Too late, I thought of ways to preserve that motion. Oh, well; maybe some other time.

The way this works is by replacing the ink cartridge with a copper wire. The twist of wire at the front is ground down a bit, providing the necessary quarter-inch surface required for the screen to read it.

But rather than directly touching the wearer's finger, the wire passes through the body of the housing and touches the back of the wearer's hand. And it does, indeed, work. Not well, though. I may fit some spongy conductive rubber over the end or something so that the tip smushes a bit on the touchscreen, both for increased area and to protect the screen from scratches.

Yes, More Furniture

The additional bookshelves we need apparently aren't going to build themselves, even though I've given them every opportunity, so here and there, I have to take action myself. Certain persons to whom I am married require more immediate access to unread books, keeping the queue of stuff to read close at hand and not confounding them with books already read. Solution? Combination footstool/bookcase.

Unlike the game cart, I went to the CNC for this. I used an awful lot of dado joints, but in a far more sophisticated way. The basic structure is simply a cube open on two faces, but internally, it's more complex

One side has two shelves sloped at a 10 degree angle to improve visibility from above, just tall enough to hold regular paperbacks. The other has a large shelf sloped shelf and a small horizontal one to hold whatever else needs holding. Going much larger than I usually do, I used a 1/4" bit on the router, which meant I could slide in the 1/4" boards used for the shelves, using a little glue and some tiny nails to secure them.

As ever, it's a couple of days for finishing the wood, some tiny wheels on the bottom, and some foam and velvet for the top.

It doesn't hold nearly enough books. Nothing ever does. But at least it holds most of the books she's currently hoping to read.

Tuesday, February 14, 2017

Crisis on Infinite Mirrors

Certain persons to whom I am married like DC comics and those infinitely-reflecting mirror things. This suggests certain Valentine's Day presents.

Infinity mirrors, it turns out, are pretty simple. You need lights around the inside edge of a box, which is really easy to do these days with LED light strips. The ones I got could even be snipped to desired length. The bottom of the box is mirrored (I used inexpensive glass mirror tile). The top is half-mirrored. That's a little trickier, but there's inexpensive window insulating film for that. The only innovation on my part was firing up the CNC machine to engrave a bunch of superhero logos on a sheet of acrylic to use as the top. That was a delicate operation. The carving required very, very shallow cutting, so it was very sensitive to the slightest bend in the material. Sandwich the semi-mirrored film between two sheets of acrylic (one engraved), assemble, and: