Friday, January 27, 2012

Makerbot Upgrades Part 1

The company I work for has, over the last few years, ordered many parts from rapid prototyping shops. We frequently have need for one-of-a-kid jugs and fixtures, custom trays to hold parts for automated assembly, and prototypes for enclosures and other mechanical parts. This year we purchased a Makerbot ThingOMatic printer kit, as the cost of parts we've ordered in the last year alone exceeded the cost of the ThingOMatic. Since we've bought it, after the initial setup and tuning time, we've had it running nearly non-stop, as we've been constantly finding new uses for it. It's amazing how after you buy a 3D printer, you start to realize how many uses it has beyond what you originally bought it for. It's been a very worthwhile investment.

As useful as the Makerbot has been at the office, it took a lot of tweaking and adjustment to get it to work. As initially delivered, the ThingOMatic has a lot of mechanical and electrical deficiencies that needed to be corrected for it to print accurately and reliably.

Makerbot Upgrades Part 1
Axis tensioning

The Makerbot ThingOMatic uses two belts for positioning the build platform. Both X and Y carriage movement use a continuous belt stretched between the drive and idler pulleys, with the movable platform clamped to the middle of the belt. You adjust the belt by loosening the motor mount screws and shifting the motor along oval mounting slots till the tension is right. This does not work very well. It's tricky to get the tension right while simultaneously pushing the motor sideways and tightening the screws to clamp it down. The plastic base plate of the Y axis flexes enough to make it hard to tell how much tension the belt will have when you let it go. The belt tension is only held by the friction of the mounting screws and motor face plate. Inevitably the motor slips out of position. If you clamp the motor down enough to make sure it never slips, the screw heads dig into the wood or plastic structure, making permanent indentations that will make it hard to properly adjust the tension in the future.

Slack in the belt shows immediately as uneven lines, circles with flat sides, and gaps in the finished printed parts. A way to properly set and hold the belt tension is the most important improvement to make to the machine. There are a lot of items on Thingiverse designed to fix this flaw, typically by capturing the motor bolts and anchoring them to a nearby structural element with a bolt that can be turned to precisely set the belt tension. Thingiverse item 14098 was the one I chose to fix my printer. First up was the X axis tensioner. This was the first functional part I made on the machine, and it was pretty ugly.

Gaps in the print, irregular lines, non-round holes that I couldn't fit screws through without lots of trimming. It was still good enough to correct the X belt tension, improving the print quality for the next belt tensioner. This one was still crude, but better than the first one. This one went on the Y axis.

Another cause of poor belt tension is the lack of support for the X axis idler pulley. As supplied the pulley is supported on a bolt screwed through the plastic base plate. It's really not very rigid – the base plate can flex under the belt tension Thingiverse item 12528 fixes this by securing the top of the bolt to the printer frame. This also helps to prevent the loose cable from the heated build platform from getting caught on the protruding bolt.

With the X and Y belts holding proper tension, the quality of the build is much improved: the machine can print solid surfaces without gaps and can make reasonably round circles.

The Z axis has its own tension problems. The Z axis is driven by a screw rather than by a belt, s there are no problems with belt tension. The problem with the Z axis is that the print head is mounted quite far out from the screw, on a not very rigid wooden platform. Tension on the plastic filament being pulled into the print head lifts the entire print head, as the filament drive motor has more than enough torque to bend the Z platform upwards. If the filament feed snags and pulls irregularly, the up and down movement of the print head leaves irregular-width layers on the printed objects. In the worst case, a sudden upwards bending of the print head – caused by a snag in the filament feed – results in the layer being printed detaching from the object being printed, ruining the part.

At first, I just looped the filament on the desk next to the machine and periodically unwound more filament from the loose coils. Later, I propped up a metal pole behind the machine and placed the spool on that. This still required me to check the filament every few minutes as the machine printed. As my goal was to have this machine run mostly unattended in a back room eventually, this wasn't acceptable. I needed the filament to feed into the machine by itself.

Thing number 12974 was one solution for this.

This was the largest thing I'd printed on the machine so far, taking several days for all the parts. It didn't print perfectly, with one part failed due to layer detachment after the filament snagged and I didn't catch it in time, and other failed due to static electricity induced lockup of a stepper motor driver.

The spool holder helped with the filament feed issues. It still wasn't perfect – the plastic-on-plastic rolling of the spool on the holder had enough friction to pull the print head up, leaving uneven layers in the printed objects. It was still good enough at this point for us to start using the machine for production use at the office.

I later found some ball bearings in my junk box, and printed inserts that allowed me to mount the filament spool on some metal rod also from my junkbox. Now the spool rolls with very little friction, and the filament unwinds freely. It spins almost too easily at this point – the slightest tug from the extrusion motor starts the spool turning for a while, resulting in loose loops of filament around the spool. Not a big problem yet, but I do worry about the loose filament getting caught in the Z axis movement.

The next step would be to make a tension sensor for the filament and attach a motor drive to the filament spool, unwinding it so that the print head never feels any significant upward pull while printing. I probably won't be bothering with that – there are still a lot of other things I can do to improve this machine.

No comments:

Post a Comment