About a year ago I backed a Kickstarter project for a 3-D printer. A few months after some typical Kickstarter delays (production trouble – etc), I received my shiny new printer in a big box. After setting it up I realized one thing: I had no education in this method of fabrication – and I was about to invest the inevitable amount of time suffering (learning through failure) that any such new field requires of the neophyte. In addition, I was reminded that advertising is just that – advertising. The sales pitch of 3-D printing is at it’s base level this: “Anyone can make a part, and have that part fabricated at home or at the office, using a 3-D printer.” Of course, like all sales pitches, this is true with several qualifiers! I’ve only begun what I know will be a months long or years long journey into learning this technology, but I thought I’d list a few observations for anyone considering stepping into this world:
You can’t make what you can’t design.
Printing parts is one thing – designing parts is another. Fundamentally, I’m not a mechanical engineer, but to make a proper part, I need to have some experience in mechanical engineering, i.e. will the thickness of a part based on it’s material sustain the forces to which it will be subjected? How about when it’s 110 degrees F outside? How about vibration? Will the part warp? What is the tolerance for usage? For manufacturing? Now, some of these questions are easily addressed – when in doubt overdo it. Use 2x thicker construction, use aluminum when plastic would suffice. For research work, this is acceptable practice, as only one part usually needs to be made, and typically the part only has to last for a series of tests. Now designing a part to be mass produced? That’s a whole nuther animal. So before getting super excited to print stuff, one must ask, can I make what I’ll print? And that leads me to CAD software.
CAD is King
Before you print, you’ll need to obtain a part file. This can be done using a variety of programs, but I have come to enjoy the open source OpenSCAD program. The software is cross platform, parts can be designed using parametric relationships, and is basically a “code written” part design tool. I.e. you call out an object and it’s properties (a cube would have XYZ dimensions for instance) and as you add, modify and intersect parts you can form more and more complex shapes. Others use programs like solidworks, which is from my understanding one of the best programs available for the in depth engineer, or autocad. With both programs the barrier to entry is high as each costs quite a bit to purchase a license. My work is simple, so I don’t need super awesome rendering tools, and I was looking for something which I could quickly learn, which led me to openSCAD, and I’ve been very happy with it.
CAM Processing, or Slicing
Once you have a design, you’ll need a tool to figure out how to lay down filament in order to build that design – this is where things can get quite technical. For instance, I kept having failed prints, because my filament would stop feeding halfway through a large print run (5 hour for example). I found after much experimentation that the error was caused by a lengthy filament retraction – on- move command inside of my CAM program. Addressing this has resolved the issue, but this is where quality, reliability and success can be greatly impacted. I use a program called Slic3r, which has IMHO some of the best documentation I’ve ever seen for explaining various buttons and knobs in any software package. Slic3r and other CAM packages generate toolpath commands, referred to as GCode languace or sometimes NC (numeric control) language. This language is somewhat verbose, so you can write or edit it – i.e. G01 x100 would send the machine to x position 100. Relatively simple. Different CAM programs will provide various levels of user control of all sorts of things, so you can go as easy or as controlled as you like for your personal taste.
GCODE Control
Once you have a gcode set, or rather a toolpath, you’ll need to control your printer and feed the toolpath commands to it. Several freeware open source applications exist for this, of which I use Repetier. Repetier software is great as it has a CAM processor built in, so I can go from a model file, to sliced gcode commands, to machine control, all in one program. 3D printing is really a great example of a field where high quality professional software is available for free – but if you do use it please find a way to support the community – either by buying products (like filament) from companies who fund these programs, or by adding to the program or community yourself.
Results
Aren’t easy at first – I had issues with prints not sticking to the print bed, filament jams, delamination, warping – each problem was an investment of hours, coffee and brain time to figure out – along the way I’ve learned a lot about how much I don’t know about 3-D printing, but it’s been a very worthwhile education. Now what can one do with such a device? Well in my case I’ve long wanted to CNC convert my mill, so I’ve designed some gears in OpenSCAD, and printed them, and attached them to my mill…..
Comments
One response to “3-D Printing – Reality vs. Advertising”
so cool. that’s on my list of things to learn!