Monday, July 21, 2014

Obligatory 3D printer

Sometime, about half a year ago, I decided that it was finally time to make a 3d printer. Not because I had a real need for one, nor because it would be revolutionary in any way, and not because I found them particularly interesting. To be honest, the internet had just shamed me into making one because apparently everyone else already has already done so.

My other problem with many of the 3d printers on the internet was how fragile and finicky they were. Everyone was trying to outdo each other building progressively cheaper and more flimsy machines. I don't have a problem with innovation, but after seeing 10 "new" dream schemes on Kickstarter each claiming to be the next cheaper printer that would finally bring mainstream 3d printing into our homes, I started to get sick of the obsession.

Thus began the design of my Obligatory 3d printer. It would not be designed from trash I found in a dumpster and some duct tape to keep it under a hundred dollars. It won't require me to buy sketchy 3d printed fittings from some guy on eBay. Most importantly, I won't (hopefully) need to spends months going crazy trying to figure out all the quirks and tweaks needed to make it work well. I'd rather pay for something reliable, robust, and simple to use. I also wanted the learning experience associated with designing a machine like this.

Having decided this at the start of winter break, I then realized I'd have about 2-3 weeks to design, order parts, and built it before classes started again. I would also lack the many nice automated and manual machine tools at my disposal at college. In retrospect, it wasn't the greatest idea to try and pull off a reliable and robust machine with those constraints. I tried it anyway however:

Obligatory printer Mk. 1
This was the first (incomplete attempt). Everything could be put together and manufactured with hand tools and the Shapeoko. Many parts were also very much homemade. Custom coupling from the z-axis stepper, custom brackets holding the frame together, complicated custom 3d profiled bearing holders made on the Shapeoko all existed in this version. I ordered all the parts, and started building.

An early picture of the build process

2 weeks later, I was out of time and about halfway along. I was also very unhappy with it. Tolerances on sliding parts were off, the frame held together with those unfortunate custom brackets was slightly out of alignment, and sloppy design choices were causing numerous problems. I am fairly confident that it could have been made to work with the investment of  more time, but I never would have been satisfied with its operation. So the project sat in storage for a few months while I dealt with other priorities.

Now I'm back for round 2. This time featuring a thought-out design process, automated machinery, fewer time constraints, and the knowledge of all the things I disliked about the last one. I will be salvaging almost all of the parts from the previous attempt, because they were not inexpensive. 

Obligtory printer Mk. 2

Here is the design so far. A tribute to abrasive waterjet cutting, laser cutting, and a little bit of 3d printing, I aim to eliminate as much manual manufacturing as possible. Design started with the frame. I generally like the idea of building a machine in its natural free form shape, then giving it an enclosure if necessary. However, a feature I was dead set on having was a somewhat evenly heated atmosphere around the printed part. Using a heated cabinet reduces stress in the part from areas cooling at uneven rates. This enclosure is not explicitly heated by anything other than its heated bed, but at least it should prevent drafts and breeze from people walking by from affecting the part. Many of the panels as well as a top are obviously still missing. The other big choice was to use both waterjet cut aluminum plate and aluminum angle for the structure. Waterjet cutting gives me good tolerances without any extra effort, and allows me to create any custom shape, hole, or slot I need. I can also abuse tab and slot t-nut joining methods, and easily tap or make any modifications with easy machining. Aluminum angle in the corners gives me an easy way to join the perpendicular plates. I'd also like to point out the awesome friction hinges on the front door, which allow it to remain in whatever position it is opened to. Thanks, Mcmaster, for supplying things I should have known existed for a long time.

Before going into the z-axis design, I should probably go through my thought process on the fundamental mechanics of the printer. Many inexpensive printers use a printing bed that moves laterally rather than print head. I dislike this for a number of reasons. First, it dramatically expands the footprint of the machine, making it harder to contain in a enclosure. Secondly, it involves shaking your precision printed part around at the same time as it is trying to cool and stay bonded to the surface below it. While it can simplify design in a couple ways, I don't think that outweighs the disadvantages for my situation. 

A design that takes the static bed and moving machine idea to the extreme is the x,y, and z moving nozzle. This makes sense from a part quality point of view, but it does sacrifice some elements of machine simplicity. Namely, machines of this style often feature an additional stepper motor to lift the entire nozzle assembly in the z-axis from 2 sides. I'd prefer not to deal with the additional motor, but there are ways around that. The cantilever solution is to just lift the nozzle assembly from one side, but this seems like a recipe for vibration. I suppose that you could mechanically link 2 lead screws to one motor with additional timing belt and pulleys, but then we return to the increase in complexity.

A design that is perhaps as simple as possible uses 1 or 2 motors to lift the z-axis, moves the part on the x or y axis, and then moves the nozzle on the remaining horizontal axis. I admire the elegance of this design, but now we've compounded the downsides of both of the previous designs.

Finally, we have the fourth and very common solution: to only move the part in the z-axis. Given the slowness with which the bed descends and its lightness, we can assume that vibration effects will be trivial. We now only have to deal with two linked axes, and the entire assembly is well suited to fit into an enclosure. I feel like a little bit of a sell out going with the boring solution featured in so many existing machines...but being a sell out with a reliable machine beats the alternative.

So, having spent far too much time comparing these possibilities, here is the new z-axis design:


Both the support structure and the carriage are made of waterjet cut 1/4" aluminum plate held together with tab and slot t-nutting. The 2 outside rods going down the center of the assembly are 3/8" precision ground shafting. Oil infused bronze bushings interference fit into the top and bottom of the carriage. A precision 3/8"-16 lead screw runs directly between them. Misalignment is the biggest worry with a system like this. Ideally, one shaft would constrain the carriage in x and y axes while still allowing movement along and around the z-axis. The other would only constrain the carriage in the y-axis (to prevent the carriage from rotating about the other shaft) and do nothing else. If this second shaft constrained it in both x and y axes, we would have an over-constrained, statically indeterminant solution. This would be bad, because any minute tolerance difference in the two shafts would cause the carriage to seize. In some cases this may not be a problem, because the surrounding support material can naturally yield enough to make up the difference, or the bearings are designed to be a little loose. This is unlikely to happen with 1/4" aluminum plate and bronze bushings. For this reason, some flexibility must be intentionally built into the carriage.

An excellent solution to this problem was featured on this build thread (one of the coolest engineering project websites I know of). At the risk of blatantly copying the great information on that page, I'll just try to briefly describe the idea. Flexure mounts make any misalignment in the two guide shafts introduce a bending moment across a small cross section of material. This cross section is designed to flex to an appropriate degree such that the bushings are relieved of excessive lateral pressure and do not bind. They look something like this:



I'm still investigating how to calculate the exact dimensions of these, so this image is  subject to change. Detail oriented readers may notice that there is no mechanism for mechanically linking the lead screw to this carriage. This is the result of another unhappy discovery I made on the first version. It turns out that the Mcmaster lead screw nut mount appeared to be off dimension, causing terrible wobble when the screw attempted to turn. This could probably have been solved by some better thinking on my part, for example not milling the holes for the adapter mount until the lead screw was centered to negate any eccentricity issues. For this version, however, I am doing away with the adapter mount all together and just tapping carriage to match the outer thread of the lead screw nut. Once I can verify proper operation, I'll Locktite and tighten it in for good.

The last line of defense in my paranoia of binding parts will be a flexible coupling between the end of the z-axis stepper shaft and lead screw. This is pretty much standard operating procedure on most machines like this, so I don't have anything to add. 

This post has gotten long enough, so next time I'll go over the other axes and electronics selection.





No comments:

Post a Comment