This is a build log of my first 3D printer machine, but first a little background about what these things are. If you already know about these, you can skip to the next section.
The kind of machines I am referring to are the plastic filament type 3D printers that are like a CNC mill, lots smaller than my CNC router table, but with a kind of hot glue gun pointing down where the router would be. Software controls the flow of the glue as well as moves the glue nozzle a round, extruding the melted material, building up the part, layer by layer. Actually, it doesn't use a glue gun, but a more specialized device whose temperature is controlled by the computer with a mechanism to force material into the heated nozzle, also under the computer's control. So - a computer controls the nozzle position in three dimensions, as well as the flow of the material on to a surface - that's the basic idea.
In general, this kind of process is called additive machining, because you add material to make the part, while CNC mill operations are referred to as subtractive machining, since you remove material to make the part. This melted plastic filament machining is also referred to as Fused Deposition Modeling (FDM) or sometimes Fused Filament Fabrication (FFF), but it is more commonly just called 3D printing. (There are several other types of 3D printers, like laser sintering or stereolithography for instance, but that is for further reading.)
The filament material used is typically either PLA (polylactic acid), or ABS (acrylonitrile butadiene styrene) although I have heard of folks trying nylon, weed wacker line, wax, or even pewter on these type of machines. PLA and ABS comes in 1 kilo (2.2 pound) reels of filament and right now they cost roughly the same, about $20-$30 or so for a reel. The filament is usually 3mm or 1.75mm in diameter. They make motorcycle helmets out of ABS, but more about these plastics later.
There are many 3D printer designs now, some are ready to use, others are kits, and some that are just open source designs that you can read about, order the materials, and go from there. The amount of information to sift through is large. One place that tries to catalog these designs is on this page, but this stuff is moving very rapidly, and it is very hard to know when or where to dive in. I decided it was time, and this webpage is a build log of making one of these that fits my situation.
This whole idea took off with the idea of making these machines from parts made by other 3D printers - a replicating rapid prototyper, from which the name "reprap" derives. Adrian Bowyer of the University of Bath, UK, deserves a lot of the credit for getting this started in 2005. Since then, Reprap has grown as a community of users and a repository for open source hardware and software designs on these things. Also, there is a large repository of designs for things you can make with these, called Thingiverse, and its fun to browse the designs there. That's the dream - browse through the calalog, download the design for what you want to make, and let your machine make it.
So, the work flow for making a part starts with a digital 3D model or design, which typically takes the form of an .stl file, which name is derived from STereo Lithography. You can either download the .stl file from Thingiverse, or make your own part with a commercial 3D drawing program, like AutoCAD, Solidworks, Edgeworks, etc. or use a free open source version, like OpenSCAD, FreeCAD, Sketchup, etc. Even if you design your own, you might find it easier to start with one or more designs that are close and modify or blend those rather than start from scratch. In any case, the result is a 3d model in the exact measurements of what you want in the form of an .stl file.
The second step is to convert the .stl file to g-code, the same code used on CNC milling machines. This is usually done with a CAM program like Slic3r or Repetier that slices the object, layer by layer and generates the g-code needed to position the extruder nozzle to lay the plastic layer over the part, and then moves the nozzle up to do the next layer, and so on.
Once you have the g-code file, the third step is to print the part by starting the controller software to read the g-code, line by line, which sends pulses to the stepper motors on the printer to position the nozzle, as well as control the temperature and feeder of the extruder. Each of these three steps may be done on the same or separate computers. However, the third step is timing sensitive and somewhat compute intensive, so typically that computer can not be doing anything else while printing, and some models take several hours to print.
Well, that is a very brief introduction to the idea of 3D printing. If you click on some of the above links, you will find there is a lot more to it, but if you are new to it all, this description should help some of the pieces fall into place.
(Note about using this website - if you want to see any of the photos on this website in a larger format, you can. If you are using Firefox or Internet Explorer, right-click on the photo and select "view image..." If you are using Chrome, right-click on it and "open image in new tab...")
As mentioned above, one of the most significant forces for the popularity of these is machines is the Reprap community, who became enamoured with the idea that these machines could make themselves - at least kind of, as you still need many metal and electrical parts to build any of the reprap designs. In reprap lingo, the non-replicated parts are called vitamins. Much of reprap lingo is taken from biology - most of the printers are named after evolutionary biologists, like Darwin, Huxley, Mendel, etc. - taken after the idea that biological life is self-replicating and evolving. I guess the term vitamin is taken after the idea that some vitamins are not replicated in the body, but are needed from the environment. Most of the designs, however, are still over 50% vitamins, including the heart of the machine, the microprocessor and control board running the software. I think we are a long way off from being able to print a stepper motor, but I may be wrong about that someday.
How one got started was to build a repstrap machine (a derivation of reprap and bootstrap) which, according to their website, is "a 3D printer cobbled together from whatever parts you can find, which will eventually allow you to print the parts for a reprap machine." When you are starting out, it's a chicken or egg problem - you need a machine to make one, but you are making one because you don't have one. It is a frustrating kind of circular reasoning, like when your wife asks you what you are going to do with it and you reply, "well, make more parts for the machine" and she walks away, shaking her head, muttering to herself.
I can appreciate a design that uses simple, commonly available tools in order to make the machine, but that is not the case for me. I have a modded metal mill and a CNC router table, so I am interested in a design that utilizes the abilities of those, and one that will be the final build, not just something temporary to be replaced with the plastic. It just seems like a lot of work the other way. What I want is kind of like the alla prima method of oil painting - no re-working the brush strokes, just get it right the first time. So, I am going to survey machine designs looking for ones that lend themselves to using a CNC to make most of the fittings. Perhaps I should call this build the "Vitamax" - naahh - that sounds too much like a kitchen juicer.
There are printer designs that are driven by a PC, and there are designs that use a dedicated microcomputer board. Since I have familiarity with using and programming some microcomputers (here is an example), the idea of NOT having to provide and maintain yet another PC to drive this thing is pretty appealing, so I want to go with one of the those. Also, since this area is developing quickly, a machine that I can build, modify, and adapt sounds more like my style - of course, you might decide differently.
Looking around at some of the machines, they all look a bit small for my taste, with a 6 or 8 inch cube for a build volume being normal. This sets the size of the largest object you can make in one piece. I would like something more like 12 by 12 by 12, a nice round cubic foot. In order to print with some kind of plastic, like ABS, the base platform to print on must be heated or the part might warp, so having a heater of this size also constrains the size a bit.
I decided to start with the computer and electronic side of things first, working my way out to the motors and bearings. After a lot of reading, I decided to go with the open source RAMPS 1.4 using a Mega 2560 Arduino microprocessor clone running the Marlin code base. (RAMPS is an acronym for Reprap Arduino Mega Pololu Sheild.)
Figure 3 shows the result of an order for a "multivitamin" I placed on Ebay (seller was reprapdiscount), and what I received just 45 hours later. The package came from Hong Kong, and shipping was $15. I am pretty familiar with the aviation industry, but I still find this to be a modern wonder - how would you react if someone gave you a box and said "You have less than 2 days to take this to China - oh yeah, here's fifteen dollars to cover your expenses!" It costs me three times that just for a cab ride to my local airport!
There are several reasons I picked this particular RAMPS package, but the main one is that this particular Arduino clone (called a "Taurino") has the ability to run on 24 volts. Since there are heaters and stepper motors involved, higher voltages will be more efficient, but other Arduinos only go up to 12 volts. Plus, I already have a 24v supply. Hopefully, this one is also compatible the the Marlin code base I want to use.
In top left of Figure 2, the big red board is the heater base. It is a MK2B, which is only 8x8 inches (actually, 210mm x 210mm - this is going to be a metric animal) and is simply a PC board with a trace pattern on the back used as a resistor to get some measure of even heating. The B indicates there are two connections, one for 12 volts, and one for 24. I will probably swap this out for a larger one later.
To the right is a wiring bundle with Arduino type header connectors. Under that are containers for both the Hall effect limit sensors, as well as the microswitch type limit sensors. To the right of those is some GT2 timing belt, and three GT2 pulleys to match a NEMA17 stepper shaft, and some set screws and hex wrench to go with them. They also threw in a tiny screwdriver.
On the left, the display with the ribbon cable is the smart LCD controller, compatible with the open source Marlin software that allows status information and menus to be displayed and selected. It also accommodates an SD card socket, and it comes with its own 4 gig SD card shown on the right. Above it are some header pins, with a small 40x40mm fan and the heater board thermistor on the right.
Below those is the main RAMPS 1.4 shield already populated with the A4988 Pololu stepper drivers, and the Arduino is already mated under it. To the right are the heat sinks for the stepper drivers, and the SD card adapter. The unit arrived with controller software alrerady loaded on it, but the first thing you need to do is install the Arduino IDE, the serial to USB driver on your computer, and get the Marlin source, compile it, and load into the Arduino since you will have to modify some of the parameters to fit your printer's specs. If you plug the LCD card into the Arduino with its shield on just as it ships, and plug the unit into your computer's USB, the USB can power the unit enough to load an run the Marlin software. However, an external supply will be need to power any steppers or heaters.
The Mendel type printer needs 5 steppers - one for X and Y axes, two for the Z, and one for the extruder. You can use a variety of stepper motors on these things, but the sweet spot seems to be the NEMA 17 size, shown above next to a quarter. The ones above are KL17H248-15-4A with a 1.5amp current per phase, holding torque of 5.5Kg.cm (76 oz-in) and an inductance per phase of 4.8mH and a shaft of 5mm. These are a little on the beefier side for a 3D printer, so it should give me some room to select various linear slide methods if I want to upgrade.
These machines are different from CNC mills in that there is very little force involved in positioning the extruder. On a CNC milling machine, rigidity is everything. On these machines, light weight to support rapid movement using small steppers is more like it. One design in particular I looked at was the OB1.4 design by Simon (wired1 in New Zealand) that calls for the use of Openbeam type aluminum extrusions. However, a cheaper alternative is the 15mm x 15mm Misumi extrusion, whose use for this was demonstrated to me by Hossmachine's Dan Kemp. The design seems to lend itself to machine at least some of the beam connectors out of aluminum. The key to making these is to be able to accurately position the holes, at which my CNC and mill is very able .
Above in Figure 4 is a design layout sheet for many of the connector plates to fit the 15mm Misumi extrusion, to be drilled out on the CNC or DRO'ed on the mill. On the right is some of those connectors, milled out of some 6061-T6 aluminum .062 thick. What is important here about the plates is not the outside shape of the pieces, but proper alignment of the 3mm holes, which my mill did very quickly using the DROs, and I cut the edges with a simple sheet metal shear.
This definitely reminds me of an Erector set I had many, many years ago! (or a Meccano set to my friends in the U.K.) Perhaps I should call this build the "Gilbert", after A.C. Gilbert who invented the Erector set! He may not be an evolutionary biologist, but he did inspire countless engineers and scientists - the A.C. Gilbert Co. also sold chemistry sets that intoduced many kids into the mysteries of litmus paper, crystal growing etc.
Above shows some lengths of the 15x15mm Misumi extrusion, part number HFS3-1515. This stuff is quite reasonable - only $7.40 for 2 meters of it out of Chicago. The center hole can be tapped for 3 mm threads (its 2.5mm in diameter), but having a 4-40 tap and screws on hand, they worked as well - there is only a .009 in. difference in the drill hole size. Just make sure you use an appropriate tapping fluid for aluminum and keep the tap straight. (Now, if they had just perfected a way to extrude threaded holes, I would have been really impressed!)
The plate shown above on the left (two rows 25mm apart of three evenly spaced holes) is used to create the sides, which are two extrusions 10mm apart to allow the 10mm linear motion rods to pass through. The main thing is that after you slide the 3mm nut into the track, there isn't much clearance for the threads on the far side of the nut - you don't want the bolt to bottom out into the track - so you have to pick the length of the bolt with care.
All of the bolts in Figure 7 are 6mm in length - you need a couple of hundred of those. Don't even think about getting the bolts and nuts at a big box store - you can get 100 nuts for $1.39 (McMaster Carr # 90591A121) and 100 bolts are $2.56 (McMaster Carr #92005A116) but if you want to spend more money for a more "machine like" look, you can get some cap head bolts instead. I got a few other lengths as well to accommodate thicker pieces.
Above shows the corner of the base being made from the extrusion and the plates that were made in Figure 5. This forms a very rigid structure, as the nuts seem to "dig in" when tightened, but once this design is complete, I will go over everything with some temporary (blue) Locktite threadlocker. One could argue that three bolts to secure a plate to an extrusion might be one too many, but they are very cheap and easy to use.
When assembling, I found it was at times much easier to insert all the screws into the plate and turn the nuts on just far enough to fill the nut with threads. Then, the plate can be slid onto the extrusion while jiggling the extrusion a bit to allow the nuts to enter the tracks. Other times, it was better to slide the nuts in the track, position them under the holes of the plate, and then screw the plate on. In the tracks above you can see some "spare" nuts in the track so that I can make attachments in the future without having to take the frame apart.
The two slightly smaller screws on the corner are the 4-40 screws whose threads go into the ends of the front extrusions. All the rest are 3mm bolts and nuts.
Assembling this thing brought back memories of Christmas morning!
Here is the base with upright plates for the X and Z axes. (It seems a convention that on Mendel or cartesian type reprap machines, front-to-back is the Y axis, left-to-right is the X axis, and up-and-down is the Z axis.) All the extrusions above are 360mm long - the size inside the base is 360mm x 325mm (about 14 x 12.75 inches, well within my 1 cubic foot print volume goal.)
I thought about making some leveling feet from four flat head bolts and cutting board plastic, but I saw the feet shown in the middle of Figure 8 while at a big box store (Lowe's, I think) and for $2.50, the problem was solved.
Figure 9 shows some Lexan (polycarbonate) linear rod holding brackets drilled out to the 10mm diameter of the O1 tool steel rod (McMaster #88625K69) and a matching aluminum cover.
Figure 10 shows the LM10UU (10 for $16.50 on ebay) linear bearings that fit onto the 10mm rod in Figure 9. I've cut some UHMW polyethylene to cause a press fit for the bearings. If there is ever any slippage, I can just add some snap rings because the plastic is .75 in thick, the same distance between the snap ring grooves on the bearings. They fit very tight for now, though, as I had to press them in place with a vise. These standoffs will be drilled and threaded on top for mounting screws to attach the base table to the linear rods.
Above shows the base with the feet on, the uprights in place, and the Y axis tool steel rods mounted with the end brackets of Figure 9, also with the linear bearings in place. This forms a very rigid base for the macnine.
Above left shows one of the GT2 20 tooth timing pulleys that came with the RAMPS kit, but its diameter is too small to span the 15mmm extrusion, so a 36 tooth GT2 pulley will be used, shown on the stepper motor. A motor mount bracket was made, shown on the right, that follows the 31mm square bolt pattern of the NEMA 17 standard. Mounted in the middle are two brackets cut for a 5/16 bolt to hold the ball bearing that serves as the Y axis belt idler. The motor will mounted on the rear such that the center of the motor axis and the center of the idler axis line up with the center of the lower extrusion, allowing the belt to go around the front and rear extrusions.
Above the Y axis is nearly complete - the white bearing holders have been tapped to attach the table base, and the Y stepper is mounted in the rear with the Y idler mounted on the front. The belt will wrap around the stepper pulley, under the base, around the idler bearing, and be attached to the base of the table.
Figure 14 shows the end of a 3/8 Acme threaded rod that I turned down on a lathe to 8mm. I chose Acme rod because I have had poor luck with the allthread rod you get from a big box store. You can make allthread work smoothly by running the whole rod through a die first, but I'd rather just spend a few dollars more for something that's ready to use. Perhaps some stainless steel allthread would work, but then the difference in cost between stainless and Acme is small. (the needed 3 ft of Acme 3/8-12 shown above was $18.97 from McMaster) The shoulder created by turning this down rests into the 8mm flanged bearing shown on the right, which will also serve as a thrust bearing to support the weight of half of the X axis carriage and extruder. Since this is not a lot of weight, a regular roller skate type bearing can serve as a thrust bearing as well. The rest of the rod end goes into the 8mm side of the adapter, shown on the left, whose other 5mm end goes onto the shaft of the Z stepper.
You don't need to remove much to reduce the rod to 8mm - if you don't have access to a lathe, you could chuck one end of the rod into a drill, and push the other end through the flanged bearing into a hole to hold the bearing in a piece of supported wood, and carefully hold a file across the area to be reduced as the drill spins the rod.
In any case, a flat is created with a file while the rod is stationary to give a place for the set screws of the coupler to land.
On the left shows the MG Plus J-head hot end, sold by RP One Labs on ebay, as it came unassembled. It did have the thermistor glued into its brass fitting, with insulation and a connector on the leads. The heater is for 24v, but make sure you specify 12 or 24 when you order. The nozzle is .5mm, but is easily replaceable with another size. The heater leads also have a heat tolerant sleeve over them.
On the right is the hot end assembled and ready to install on the filament feeder and wire up to the RAMPS board.
Comments may be addressed to gary at liming daught org.