Sunday, January 28, 2018

The Mother of All Print Cooling Fans

I started trying to build a large scale chocolate 3D printer a couple years ago.  That's turned into one of those projects that gets put on a back shelf, but part of it has been making my mind itch for a while, so I decided to conduct some experiments.

The specific thing I am referring to is the idea of using a remote cooling fan for a 3D printer.  The idea is to attach a nozzle to the extruder carriage with some sort of hose transporting the air to it, instead of the more common technique of mounting fan(s) and duct(s) on the carriage.

Why would anyone want to do this?  Hmmm.  It may present less moving mass on the extruder carriage because it only moves the nozzle and the end of the hose around instead of lugging the fan(s) and ducts, it doesn't require any wiring to the extruder carriage, it may deliver more air with the right blower, it may allow a more compact extruder carriage design, and finally, it may be more reliable.  I realize that each of these is a pretty weak argument in favor of remote cooling, but taken together they may add up to a meaningful improvement.

There are several problems with print cooling that make designing print cooling systems a little difficult.  First, how much air flow is enough?  Then how do you get that air flow?  What shape and size of nozzle/duct will deliver sufficient air flow from the chosen source?  How does the shape of the print affect the air flow?  What are the relevant specs on the fan I have?

There are so many variables to juggle at once, and actually calculating or simulating the result so difficult, it ends up being a lot easier to simply experiment until you find something that works (or ask others which of the thousands of duct/nozzle designs that litter thingiverse actually work).

Here's an illustration of the difficulty in predicting how air flow from a ducted fan works.  I took a 120mm 117VAC powered fan and attached a simple duct/nozzle to it:

When I posted that on reddit, a few of people accused me of trickery, so I made another video:

Some folks are skeptical, so here's another video from Mark Rehorst on Vimeo.

Those videos and my suggestion that people test their print cooling fans to see if there's any air actually coming out of them generated so much vitriol and animosity that I decided it was time to delete my reddit account.

The point of the videos is not that I designed a bad duct.  The point is that predicting what a compressible fluid like air will do when you try to move it through a duct and out a nozzle is not intuitive.  You can design the most aesthetically pleasing duct and nozzle in the world, but ordinary mortals can't be sure that air is going to come out of it until they actually check it.  Checking it is as simple as putting your finger, a flame, a piece of string, or trying to blow a ping pong ball across a table to see if there's any air flow.  Once you've established that there is air flow, you can try printing to see if there's enough air flow and if it's going in the right direction.

In a 3D printer there are several things to consider.  The controllers and firmware are able to provide PWM outputs to control fan speed from zero to the fan's rated speed.  You have DC power supplies, typically 12 or 24V, and cost is always a factor.  The ideal print cooler will work with the existing power supply, has a PWM speed control input (or can be switched on and off with varying duty cycle for the same effect), and doesn't cost too much.

The major sources of air are axial and radial fans and pumps/compressors.  Most of the print coolers on Thingiverse and Youmagine use axial fans like the type in the video, only smaller, because they are readily available, small, light weight, cheap, and can be powered by the power supply and the control signals from the controller board in a printer.  Some are using radial (squirrel cage) blowers instead, and I "designed" one of those for UMMD, and it seems to work fine.

UMMD's print cooling fan that uses a small squirrel cage blower.  The bottom of the ring has several holes that direct the air flow down onto the print.

The other side of the blower showing the air intake.  This one has a 24V brushless DC motor and ball bearings.


A few people are using things like aquarium air pumps for remote print cooling.  Pumps can push air against pressure through a tube.  The problem with aquarium air pumps is that they tend to be noisy and somewhat limited in the amount of air they move unless you get a big one, and then the cost and noise level go up.  The most common pumps vibrate a bellows using AC power, and others have pistons, usually with DC motors.  The air flow of the AC powered units is either on or off.  The DC powered pumps can be PWM'ed to control the air flow.

There is another source of air flow through tubes- it is a highly specialized blower that is essentially a centrifugal pump that is designed to move air instead of water.  Such blowers are commonly used in CPAP machines where they raise the pressure in the user's oropharynx to prevent the soft tissues from closing up the airway.  Unlike squirrel cage blowers, the air doesn't pass through the impeller.

Back when I was working on the chocolate printer, I needed a way to deliver a lot of air to cool the chocolate as it came out of the extruder nozzle, just like we do in FDM 3D printers.  I picked up a CPAP blower from a local American Science and Surplus store for $8 and then had to figure out how to drive it.  CPAP blowers, CPU cooling fans, typically use 3 phase brushless DC (BLDC) motors for long life and high reliability.

RC hobbyists typically use 3 phase BLDC motors in electric cars, helicopters and airplanes, so you can use an electronic speed control (an ESC, which is just a 3 phase motor driver) and servo tester to drive almost any 3 phase BLDC motor.  So I got a 25A ESC and a servo tester for about $13 from Hobbyking and hooked it all up.

Blower test video from Mark Rehorst on Vimeo.

Obviously, these things can move a LOT of air, certainly more than needed to cool a print.  But there's a problem.  The ESC and servo tester don't have a PWM input, and the motor won't start turning when you apply power- that's a safety feature to prevent a helicopter blade from chopping you to pieces when you connect a battery to the electronics.

I did some searching and found a different driver on ebay for $13 shipped from Hong Kong.  This driver is rated for 5-36V operation, up to 350W.

$13 BLDC driver purchased via ebay.  This is the whole data sheet!  It came with a main cable to connect the motor and power and a pot to act as a speed control in case you don't use the PWM input.
That black blower I tested used a lot of power, so when someone left a DeVilbiss CPAP machine on the hack rack at the makerspace, I grabbed it and pulled the blower from it.

The bottom if the DeVilbiss CPAP blower.  The motor is a 33ZW3Y36-12240 made by OEM Solutions.  The closest data sheet I can find indicates it is a 12V motor rated for 25W, 22krpm, and peak current of >8A.

The impeller side of the motor with the air intake at the center.  Notice the shape of the ribs on the impeller- if you turn it the right way (CCW) it moves a lot of air quietly, if you turn it the other way if doesn't move much air and makes a lot more noise.  Notice the rat-bites in the impeller disk near the outlet.  Those are there to balance the disk for smooth operation at high speeds.

Side view- the impeller is very thin.  Air comes in at the center (left) of the impeller and gets flung outward.  The shape of the housing steers that air down into the chamber and out the exit port, presumably cooling the motor in the process.

I hooked up the motor, driver, and 12V power supply and made a test video:

CPAP blower test from Mark Rehorst on Vimeo.



CPAP blower test with hose from Mark Rehorst on Vimeo.

In the second video the air inlet is down against the table.  It moves a lot more air when it's open, and actually runs quieter.  In actual print cooling use, it will be running at much lower average current and is almost silent.

I designed and printed a nozzle to accept the end of the hose and fit on UMMD and tested it with the 12V supply.  It moved a lot of air through the nozzle, so I hooked it all up to the printer with the speed control pot attached to the driver board so it could be used to limit the maximum speed of the blower on-the-fly and connected the driver power input to one of the MOSFETs on the SmoothieBoard controller.  It is PWMing the power input instead of connecting the fan to 12V and using the PWM input on the driver, which is exactly how it drives the squirrel cage blower.

Test setup for CPAP blower as remote print cooling fan.  The 12V power input to the blower's driver is connected to one of the MOSFETs on the SmoothieBoard controller.  The 18 mm OD CPAP hose was used to transport the air to the nozzle on the extruder carriage.  The hose is very light weight and very flexible.

This is how the air hose was routed to the extruder carriage for the tests.  It will be arranged a little differently for final installation, if I decide to keep it in the printer.

This is the nozzle and air hose attachment on the extruder carriage.  The nozzle surrounds the heater block and directs most of the air downward.  My extruder carriage design is almost perfect for this sort of thing.  Sometimes you just get lucky.

The bottom side of the poorly printed nozzle showing the 12 air holes that blow the print cooling air mostly down onto the print.


I ran a few test prints and it works well.  The blower is so quiet that the other sounds the printer makes completely drown it out.  No, it isn't running at anywhere near ping pong ball levitating speed.

First test print with CPAP blower for print cooling from Mark Rehorst on Vimeo.

First test print with CPAP blower for print cooling, continued. from Mark Rehorst on Vimeo.


Test print running.  15% rectilinear infill.  Each layer of the infill bridges over the previous layer.

Closer view of the infill.

One of the bridges on the test print- the bottom is a little saggy, but I'm still trying to tune up the volcano heater with 0.8 mm nozzle.  As you can see the rest of the print is pretty hairy.  The fix will be a combo of temperature and retraction tuning.  The volcano heater block with large diameter nozzle is a tricky thing to get working well.  Maybe I'll do a blog post on it when I get it figured out.

A very hairy test print, but you can see that the points of the cone didn't turn into blobs as they would if the print cooler wasn't working.
If you want to try something like this yourself, the hardest part to find is the CPAP blower.  Fortunately (?), a lot of people stop using their CPAP machines because they can't adjust to sleeping with the mask.  That means you probably have an obese uncle with a slightly used CPAP machine under his bed or in a box in the garage somewhere.  Start asking!

Otherwise, you can buy the blowers directly from China in single units for $25 or so.  If you spend $35 you can even get one with a driver board.

I have a few other modifications to the printer planned, including reworking the electronics layout and wiring to make it all look a lot better, redesign the extruder carriage to center the extruder nozzle,  make extruders easily swappable (between volcano and regular heater blocks with smaller nozzles) and finally come up with a good way to mount the blower and its driver with the rest of the electronics on top of the printer.

So after all of this, does the CPAP blower or remote cooling in general, really offer any improvement over simply mounting a small blower and duct/nozzle on the extruder carriage?  Hmmmmm.  Ask me again after I get the hot end settings straightened out.


Sunday, January 21, 2018

3D Printing Filament Storage

First this - according to Merriam Webster:

Definition of absorb


1a to take in (something, such as water) in a natural or gradual way 
  • a sponge absorbs  water
 
  • charcoal absorbs gas
 
  • plant roots absorb water


Definition of adsorption

the adhesion in an extremely thin layer of molecules (as of gases, solutes, or liquids) to the surfaces of solid bodies or liquids with which they are in contact


Some filaments will absorb moisture (PLA and nylon) and others will adsorb (ABS) moisture from the air.  Of the two, absorption is a much bigger problem.  If you've ever had PLA filament hiss and pop while it's being extruded, or crumble into pieces, it's because it absorbed moisture during improper storage.  The result is a poor surface finish and often broken filament before it ever gets into the extruder.

Adsorption (what ABS does) isn't nearly as big a problem.

For those who demand a citation on this, I'm unable to locate one on the web.  My info came directly from an engineer at Coex LLC who came to the Milwaukee Makerspace and made a presentation on plastics and how they manufacture their filaments.  There used to be a copy of the presentation on their web site, but it doesn't seem to be there any more.

In general, it's a good idea to keep all filament cool, dry, out of sunlight, and covered so it doesn't accumulate dust and pet hair, etc.  There are a lot of ways to accomplish all of this.  

Some people use zip-lock bags or even vacuum bags that will seal the spools and keep them dust free.  If you add some sort of desiccant, you can also keep them dry.  This technique works fine but requires a desiccant pack for each bag.

I prefer large storage boxes because I can put multiple spools in each box, and one desiccant package per box keeps them all dry.  The storage boxes I use have gasketed lids that help keep them sealed against intrusion of moist air.

When it comes to desiccants, there are a three common choices.  Some people prefer silica gel, calcium chloride, or even molecular sieves.  Silica gel is moderately expensive but can be reused by drying it in a low temperature oven for a few hours.  Some even has chemical dye that provides an indication of when it has absorbed its limit of moisture.

Molecular sieves and their naturally occurring cousins, zeolite, work better than silica gel, but tend to be expensive.  Like silica gel, some come with chemical dyes that indicate they are "full" and they too can be reused by drying in an oven.

In between silica gel and molecular sieves lies calcium chloride (CaCl2).  It's cheaper than silica gel and zeolite, dries better than silica gel, but isn't readily reusable.  In practice, that doesn't really matter- it works for so long the cost is negligible.  Like silica gel, you can tell when it needs replacement because it absorbs so much moisture it literally turns into mud.  Calcium chloride is sold under different brand names, the most common is DampRid.

Here's what I have been using for the last 3 years or so:


The box is a Sterilite 54 qt. weatherproof storage tote with a gasketed lid and multiple clamps to keep it sealed.  There's a small tub of DampRid (lower left corner in the photo) that has been in the box and working for over 2 years (I replaced silica gel with DampRid 2 years ago) and has plenty of life left in it.  The box costs about $10 and holds at least 10 spools of filament, and the DampRid comes in a 2 pack for <$5.  It doesn't get much cheaper or more effective.  I use one box for PLA/nylon and another for ABS.

You can buy this stuff almost anywhere.  Walmart, amazon.com, Home Depot, etc.  They all sell exactly this same stuff or the equivalent for about the same low cost.

Some people take this type of storage a step further and attach tubes to the boxes to feed the filament from the storage box to the printer.  If you live in a very humid place that sort of thing may help prevent problems.  I use filament up fast enough, and the climate here is dry enough, that the exposure to humid air that it gets while it's out of the box and on the printer hasn't caused any problems.  


"Adsorption." Merriam-Webster.com. Merriam-Webster, n.d. Web. 21 Jan. 2018.
"Adsorption." Merriam-Webster.com. Merriam-Webster, n.d. Web. 21 Jan. 2018.

Thursday, January 18, 2018

Foot Surgery: Excision of Morton's Neuroma - Not for the Squeamish!

Last week I had surgery to remove two neuromas in my left foot.  Since then I've been keeping it elevated, iced, and dry, and wear a boot over it to keep pressure off the foot.  I went back to see the doctor today to have the dressing changed and took my camera.

Here's what my foot looks like today:





The dressing will be changed again and the stitches will come out next week.  I have to wear the boot for two more weeks.

There has been minimal discomfort since the surgery, the worst being when I had cramps in my foot on a couple mornings, which often happens to me in the morning.  I keep my foot elevated, ice it once in a while, and take naproxen or ibuprofen to help prevent swelling.

The central three toes are now numb and will likely have permanent paraesthesia- removing the neuromas involves cutting out pieces of nerves, among other things.

I'll be having the same surgery done to my other foot in March or April.  Woohoo!

A 3D Printed Nespresso Coffee Capsule Dispenser

My wife bought a Nespresso coffee maker when they went on sale last year.  It makes great, but weak coffee, and the best thing about it is the milk foamer.  The only problem was figuring out what to do with the boxes that the capsules come in.  My kitchen is short on storage space, and I'm trying to switch from DesignSpark Mechanical (a great CAD program) to Fusion360 (also a great CAD program), so I designed and printed this storage box/dispenser to kill two birds with one stone.

Printed on UMMD, it takes up almost the full width of the bed.  I could have added one more slot, and the capacity could be doubled by adding an equal number of slots on the back side, but that would not have worked well in my kitchen.  The Fusion360 file, linked below, is modular, so you can make one of these with as many slots as you like with only minor manipulation of the CAD file.

I printed with a 0.8 mm nozzle in 0.4 mm layers and it took about 7 hours to print.  I used copper colored PLA because it seemed an appropriate choice for coffee.

Here it is, loaded and ready to go.  The inside of each compartment is filleted at the back and front to cause the capsules to fall forward and make them easy to take out.  There are stops inside each slot to prevent the boxes from being inserted too far, making for  neat appearance with all the boxes inserted at the same level.

The original CAD file is here.

The STL file is here.

Tuesday, January 16, 2018

3D Printable SSR Cover

I needed a cover for the SSR that switches power to the bed heater in UMMD, so I designed and printed one.  The SSR I used is a Crydom D1225, but they are all pretty much the same size, so this cover should work for most common SSRs.

SSRs can get warm, depending on the load they are switching.  You wouldn't want the cover to melt, so PLA is probably not a good material to use for this.  The body of the SSR appears to be ABS, but it's hard to say for sure.  I used ABS which won't melt until the SSR gets so hot that it fails anyway.  PC would be a good choice of material for this, too.

This is one of the last parts I designed using DesignSpark Mechanical as I am switching over to Fusion360.

The original design and STL files are here
CAD image of the cover.  Walls are 2.4mm thick, holes fit #6 or 3mm screws.  The slots are large enough to fit over lugs, or you can just screw the wires to the SSR's screw terminals.

Photo of the printed cover in the printer.


Sunday, January 14, 2018

Building or Upgrading for Reliable ABS Printing

ABS is considered an "engineering material" because it's cheap, strong, tough, and holds up to moderately high temperatures.  Unlike PLA, it won't soften in a hot car, or near a light bulb or other source of heat, and it doesn't get brittle when exposed to humid air.  But ABS has acquired a reputation of being difficult to print.

Most of us have learned to take on-line product reviews with a grain of salt.  Can the reviewed product really be as good or bad as the reviewer says?  Were they really equipped to understand/test it adequately?  ABS 3D printer filament is one of those things that gets a lot of bad press from well-intentioned hobbyists who are not equipped to render a useful critique, except under the limited circumstances (usually an open-frame printer) under which they have tested it.

Some have said that ABS is no longer relevant with materials like polycarbonate and
PETG becoming more readily available.  PETG does not hold up at high temperatures as well as ABS and right now, PC costs about 2X the price of ABS, so until the price of PC comes down, ABS still has its place in 3D printing.


Building or Upgrading a Printer for ABS



It isn't really difficult to print ABS if your printer is designed and built for it - most are not.  A printer that is designed to print ABS has an evenly and adequately heated bed, an extruder that can operate in a warm environment, a hot-end made to withstand the relatively high melt temperature of ABS, a mechanism that won't self destruct or have other problems when it gets warm, and has a warm enclosure (45-50°C).  Even if your printer isn't made for printing ABS, it isn't too hard to upgrade and modify to do so.

My first printer, MegaMax, was modified to print ABS and my last two printer designs, Son of MegaMax (SoM) and Ultra MegaMax Dominator (UMMD) were intended to print ABS from the start.  This post will use those printers to illustrate the sorts of things you have to do to ensure reliable ABS printing.


The Bed



Many printers have awful bed designs, including under-powered heaters, thin, flexible "heat spreaders", and glass plates to try to fix the problems caused by "leveling screws" located in all four corners of the bed.  The result is uneven heating, unstable leveling and zeroing, and poor print adhesion unless you apply slop like hairspray, glue, sugar water, salt water, ABS juice, or any of the other silly things people try to make ABS stick.  I've already beaten this topic to death, here.

UMMD has a 750W line powered heater that evenly heats the flat, 8mm thick cast aluminum bed to the 100°C first layer temperature in about 4.5 minutes with PID temperature regulation.  It's on a kinematic mount so the bed remains stable when heated.  Molten ABS loves to stick to its PEI print surface without any special elixirs.

Even heating of UMMD's bed at ABS print temperature- just a few degrees of drop off near the edges.
If you're looking to upgrade your printer for ABS, the bed is a good place to start.  You'll find a well built bed will make all your printing, not just ABS, more reliable.  You might find some of the ideas I used in UMMDs bed to be useful.


The Extruder


I prefer geared extruders.  My experience has shown that the extra push they have available due to torque multiplication by the gears helps keep the filament flowing even when things get a bit sticky inside the hot-end.  Motor temperature becomes a concern in a warm enclosure.   Geared extruders let you operate the motor with lower current, and so lower self-heating, than ungeared extruders.

MegaMax used a ungeared direct extruder and I had a lot of the same problems with jamming that others report in the internet forums.  When I rebuilt it as SoM, I replaced the extruder with a BullDog XL that had 5:1 gearing.  That extruder was extremely reliable and almost never had a jam, though I don't recommend it if you ever plan to print flexible filaments.

UMMD has an E3D Titan extruder.  The Titan has 3:1 gearing that multiplies the motor torque, so it  can be operated at relatively low current and still produce adequate torque to push the filament without jamming.  Low current means the motor doesn't run hot, which means it can operate in a warm printer enclosure without danger of overheating.

More on extruders (and hot-ends) here.


The Hot-End



Some of the hot-ends you find on hobby printers have Teflon liners that extend right to the nozzle in the heater block.  Teflon starts to soften and decompose at ABS print temperatures, so such hot-end designs are completely unsuitable for printing ABS.  Usually, the only way to know if you have one of those hot-ends is to take it apart and look.

SoM and UMMD have a E3D v6 hot-ends and UMMD uses a Volcano heater block.  The V6 hot-end has a Teflon insert that stops at the stainless steel heat-break, so unlike some poorly designed hot-ends, the Teflon is never exposed to the high temperature of the heater block.  I've been printing ABS using E3D v6 hot-ends for at least two years and never had to replace a Teflon tube.  The v6 uses a 30W heater cartridge that has no trouble getting up to the required print temperature of the ABS.

There are a lot of all-metal hot-ends available that are well suited to printing ABS (and every other kind of filament).  Look for one that has a fan or water-cooled heat sink.

While we're on the subject, E3D makes great hot-ends, but the fans they provide are just about awful.  I've had two of them fail, possibly due to the heat in the enclosed printer, or maybe because they're just cheesy.  I replaced them with some ball bearing, 30x30x15mm server fans (Elina Fan HDF3020L-12MB, available via ebay for about $7).  They are a little louder and heavier than the E3D parts, but they are far more reliable.

Some people like to use water cooling for the hot-end in a warm, enclosed printer.  It certainly works, and even becomes essential if you want to print at very high enclosure temperatures, but isn't really necessary in a 45-50°C printer enclosure.  The Titan extruder has a lot of plastic parts and is probably not well suited for use inside an enclosure operating at temperatures above 70-80°C, either.


The Printer Mechanism



Most hobby printers have a lot of printed plastic parts in them.  Some are even made of PLA.  I have seen multiple posts on Reddit by people whose PLA part-loaded 3D printers self-destructed when they made the mistake of leaving their machines in hot cars.  Even if you discount the possibility of a hot-car disaster, when printed plastic parts are subjected to torque or tension inside a warm printer, the plastic parts can distort, even if they are ABS.

I have always tried to minimize printed part content in my printers simply because metals behave more predictably and can be cut and finished accurately.  SoM had 3D printed, ABS X axis motor and idler pulley mounts.  They were eventually replaced by metal parts because the motor mount distorted with heat and belt tension, and the pulley mount distorted due to the belt tension.  If your printer has plastic parts, replacing them with metal goes a long way toward improving reliability, especially if you're going to be operating the machine inside a warm enclosure.

UMMD's mechanism was designed using a minimum of printed parts, and those that are there are ABS, and will be replaced with metal or PC as soon as I can get to it.  Most of the printed parts are used in compression, which is the safest way to use plastic parts in a printer.  The stand-out exception is the extruder carriage belt clamps which will be updated to a metal design soon- watch for a blog post here...

Another thing I've read about on a few occasions is high precision, all-metal coreXY mechanisms similar to UMMD's, that work fine when they are set up in the summer, and then bind when the work shop temperature drops a few degrees in cold weather, or the opposite.  The problem is that as the aluminum frame expands/contracts with temperature, the Y axis guide rails move apart/closer together.  Meanwhile, the steel X axis guide rail doesn't expand/contract as much and that puts lateral force on the Y axis bearing blocks, causing the motion to get sticky or bind.

UMMDs mechanism uses linear guides bolted to aluminum plates which are in turn bolted to an aluminum frame.  When heated, aluminum expands about 4x more than steel.  As the frame expands, the Y axis guide rails move apart.  If the steel X axis guide rail were bolted to the two Y axis bearing blocks, the frame expansion would create very large side-loads on the Y axis bearing blocks, maybe enough to stop the motion.  In UMMD only one end of the the X axis linear guide is attached at one of the Y axis bearing blocks.  The other Y axis block has a second X axis bearing block that allows the X axis guide rail to move with the thermal expansion of the frame.  That eliminates any possibility of the mechanism binding due to temperature changes.


This potential mechanism binding problem primarily affects CoreXY designs using linear guides for the Y axis.  Even if your printer wasn't specifically designed to allow thermal expansion, its construction may have enough "give" to let the mechanism keep moving through temperature changes.  The only way to know is to test it...


Warm Enclosure



Most printers come without enclosures, presumably because of a patent held by one of the big, industrial 3D printer makers.  You can print a lot of the more common materials without an enclosure though some protection from drafts, such as side panels, can be helpful.  Printers with adequate bed heaters can print single-walled ABS vases (see the video, below) right up the maximum envelope of the printer, even without an enclosure, and they can sometimes get away with printing small ABS parts (this is what the marketing BS means when they say a printer is "ABS compatible").  But if you want to print bulky ABS parts with infill, straight side walls, etc., reliably, you need a warm, 45-50°C enclosure.  Without it, bulky ABS prints warp and split/delaminate.

Time lapse of MegaMax printing a Koch Snowflake vase from Mark Rehorst on Vimeo.


My first printer, MegaMax, was built with an open frame because I didn't know anything about 3D printing and didn't know I'd need a warm enclosure to print ABS.  I eventually built an enclosure for it using PIR foam panels and was able to print ABS reliably.  If you aren't too picky about the way it looks, a similar enclosure can be assembled in minutes with a straight edge, a razor knife, duct tape, and some foam insulation board.

Two ABS prints.  The one one the left was printed on SoM (45°C enclosure) and the one on the right was printed on MegaMax (open frame).  


An enclosure can take many forms,- a couple plastic trash bags placed over the printer, cardboard boxes, modified Ikea tables, etc., depending on how much effort/expense you are willing to go to and what sort of appearance you or your significant other can tolerate.  One thing to consider is that heat and electronics are a bad mix.  If you're going to use any sort of enclosure on your printer, it is best to move the electronics out of the warm chamber to maximize operating life.

Thermal insulation is a good idea for the enclosure, because if you minimize heat lost through the walls of the printer, you need less heat to get the enclosure up to print temperature.  You may even find that the bed heater alone provides sufficient heat.  The home improvement stores are full of foam insulation panels, but most are polystyrene (pink, blue, and yellow) which may pose a fume hazard in the event of a fire.  I used polyisocyanurate (PIR) foam in MegaMax and SoM's enclosures.  For all practical purposes, the stuff is fireproof.  PIR foam is available in 4'x8'x1" sheets at stores like Home Depot for about $15 per sheet.



My second printer, Son of MegaMax (SoM), was a redesign of MegaMax using some of the same parts, this time with the enclosure planned from the start.  I even put the electronics in a drawer at the bottom of the printer to keep them away from the heat, yet easily accessible.  SoM has a 450W bed heater which is just adequate to get the enclosure temperature up to 45°C when the ambient temperature is about 20°C or so.  SoM reused some of the PIR foam panels that were used to make MegaMax's enclosure.  The bottom and rear panels are simply cut for a very tight fit in the frame- nothing else was used to hold them in place.

ABS print on SoM with enclosure temperature of 45C.  No splitting along the edges or anywhere else.  Print is on clean Kapton tape, which has since been replaced by PEI.

UMMD's frame was designed to allow easy attachment of top, bottom, and side panels, roof mounted electronics (working on my knees hurts), and A and B motors located outside the enclosure (which it turns out, wasn't really necessary).  All but the front side panels provide thermal insulation.  Most of the panels are 8mm thick dual layer (or twinwall) polycarbonate that provides light transmission and thermal insulation and fits neatly into the 8mm slots in the printer's frame.

I wrote a blog post on UMMD's frame and enclosure here.

The enclosed volume of UMMD is about 420 liters, and based on my experience with SoM, I was pretty sure that heat from the bed alone would not be enough to raise the enclosure to ABS print temperature.  Initial tests of the enclosure temperature confirmed my suspicion.


Adding an Enclosure Heater



It's winter in Wisconsin and that naturally leads to dreams of heat and warmth.  What better time than now to add an enclosure heater to UMMD for reliable ABS printing?

I wish I could say that everything was calculated or simulated and I knew exactly how much heat was needed and that guided my heater selection, but that isn't what happened.

A few months ago I put a 100W incandescent light bulb (I still have one or two of those!) inside the printer enclosure and watched the temperature over time.  After about an hour, the temperature inside the enclosure got to be about 8C above ambient, so I knew I needed more power.

Since the bed heater uses 750W, that would limit the maximum additional power I could use to about 750W and still plug into a standard power outlet without blowing any circuit breakers. Someone at the makerspace offered me a 500W heater from a scrapped Stratasys printer, so I decided to give it a try.

I mounted it in UMMD with a 24VDC fan (FCI DA-119B-W24 with ball bearings) to blow air over it.  The fan/heater/SSR reside in the bottom of the printer, mounted on a piece of - wait for it- aluminum tubing!  A generic 100k thermistor is mounted at about the middle of the printer and connected to one of the SmoothieBoard's four thermistor inputs.  Line power to the heater is switched by an SSR (Crouzet 84137180  125A at 660VAC- gross overkill for this application, but it was free) driven by the SmoothieBoard controller.  The fan is powered by the same signal that drives the SSR, so when the heat is on, the fan is on, and when it isn't, it isn't.  The target temperature is set manually using the rotary encoder on the LCD panel, or by selecting an ABS preheat option I added to the custom menu.   The firmware is configured to use PID to regulate the enclosure temperature and even though the enclosure is very slow to respond to input from the controller, it holds the temperature reported on the LCD panel steady.


Rear view of the heater assembly.  24VDC fan, 500W heater bar, SSR, and connectors.  The base is a 1" square aluminum tube I had left over from an early design of SoM's X axis.  The heater bar is mounted using two steel angle brackets.  The fan and SSR are screwed directly to the aluminum tube.  The lips on the ends of the tube are used to mount it on the printer's frame.
Front view of the enclosure heater assembly showing connectors, SSR, 500W heater bar, 24V fan, and my familiar, Ms. Kitty.

Anderson Power Pole connectors used for both AC line and 24V SSR drive/fan power.  These things are great- they are both male and female, handle lots of current, and you can stack them in any configuration needed, though they can be hard to separate if you try to use more than 4-6 of them for a single connector assembly.


Enclosure heater installed in the bottom of the printer.  I may have to add a heat shield for the Z axis motor, and I still need to cover the electrical connections on the heater bar.  I'll also be adding a TCO when I figure out a good way to do it.

The 100K thermistor is mounted at about the middle of the printer's Z axis and plugged into one of the SmoothieBoard's unused thermistor inputs.



Configuring the firmware for the heater was easy:

# Enclosure Heater Configuration

temperature_control.enclosure.enable               true           # Whether to activate this module at all. (UMMD)
temperature_control.enclosure.sensor               thermistor
temperature_control.enclosure.thermistor_pin       0.26           # Pin for the thermistor to read (UMMD)
temperature_control.enclosure.heater_pin          2.7            # Pin that controls the heater (UMMD)
temperature_control.enclosure.beta            3950      #(UMMD)
temperature_control.enclosure.set_m_code          141            # M-code to set the temperature for this module (UMMD)
temperature_control.enclosure.set_and_wait_m_code 191            # M-code to set-and-wait for this module  (UMMD)
temperature_control.enclosure.designator           A              # Designator letter for this module (UMMD)

temperature_control.enclosure.p_factor            304.4          # for (UMMD)
temperature_control.enclosure.i_factor            6.656         # for (UMMD)
temperature_control.enclosure.d_factor            3479            # for (UMMD)
temperature_control.enclosure.pwm_frequency       17         # to drive SSR (UMMD)
temperature_control.enclosure.max_pwm             255         #(UMMD)
temperature_control.enclosure.max_temp             55             #  limits enclosure to a safe temperature (UMMD)
temperature_control.enclosure.runaway_range        20  # Max setting is 63°C  (UMMD)
temperature_control.enclosure.runaway_heating_timeout   900 # 0 disables (UMMD)



Safety

There are two main safety considerations with something like this: electric shock and fire.

Electric shock is protected against by using insulated wire and covering the electrical connections to prevent accidental contact with high voltage.  I'll be covering the electrical connections to the heater bar with high temperature silicone.  The connections at the SSR are covered by the SSR's integral plastic cover, and the covers on power pole connectors.

Fire safety is a whole different problem.  There are five components to consider.  The wiring, the SSR, the fan, the thermistor, and the controller board.

Wiring failure is protected against by using an electrical fuse that will kill power if there is an electrical short.

If the SSR fails off, it isn't a problem, but if it fails "on", and that's how they fail, it's a big problem.  There won't be anything to stop the heater bar from getting dangerously hot.  The only protection for that is a TCO wired in series with the heater that will interrupt power to it (like the one used on the bed heater).

Fan failure, just like the SSR failure, will allow the heater will get extremely hot.  It isn't likely that the thermistor will notice before the heater has done a lot of damage, so the heater bar TCO will have to protect against fan failure, too.

The firmware configuration settings above limit the maximum enclosure temperature to 55°C, and will shut down the machine if the set temperature exceeds that or remains 20°C away from the set temperature for more than 15 minutes (heating the enclosure is a slow process).  Those settings essentially detect thermistor failure, and only help if the controller board is working properly.

Finally, if the controller board loses its mind, there's nothing to tell the heater to turn off, and the heater bar TCO isn't going to work because the fan is blowing air over the heater.  What is needed here is a passive, one-shot TCO that will kill power to the printer if the enclosure temperature gets too high.  Expect another blog post on that once I figure out what to use.  Until then, operating the printer is a gamble...



Sunday, November 19, 2017

Tangle-Free 3D Printer Spool Holder

One of the common problems in 3D printing is filament tangling on spools.  It is primarily a user problem because the filament comes from the manufacturer in an untangled state.  Improper handling of filament spools is the main cause of tangles.  Whether it should be possible to cause tangles through mishandling at all is a subject for another blog post.

Proper handling means keeping the free end of the filament under control at all times when loading and unloading a spool on the printer.  When you take a spool off, you must thread the free end of the filament through one of the holes in the flanges, or secure it some other way.

There is also a mechanical aspect to the problem.  Specifically, stiff filaments like PLA like to uncoil from the spools and will do so any chance they get, especially when they are fresh and the spool is full.  Most spool holder designs will allow the filament to spring over the flanges which easily results in filament tangling and failed prints.

A few months ago I designed a spool holder that prevents the filament from springing over the flanges by pressing rollers against the flanges.  The spool rests on two bottom rollers and a third roller, at the top of the spool, moves down and locks in place with the twist of a nut.  The rollers turn on F608zz bearings that I had left over from the UMMD build.  The rollers are tapered to keep the spool centered in the holder.

Filament spool holder for 3D printer from Mark Rehorst on Vimeo.

I printed and assembled two of the spool holders, one for use on UMMD and one for use on SoM at the makerspace.  After using them for a while I discovered two problems.  First, filament spool flanges aren't always perfectly round (and neither are 3D printed rollers).  I found that adding a couple rubber bands to pull the top roller down against the spool did a better job of keeping the flanges in contact with the rollers and keeping the spool centered.

Rubber bands were added to both sides to ensure that the top roller stays in contact with the spool flanges.


The other thing I found was that as simple as it is, my spool holder design was too complicated for some people.  I have found the spool holder at the makerspace taken apart on more than one occasion, and a couple times I found a spool mounted on the top roller!

I decided to try to fix that problem.  I redesigned the spool holder based on a design I saw on Thingiverse or Youmagine - I can't find the original as there are literally hundreds of design for spool holders on both sites.  It has 4 rollers instead of 3 and they're mounted on levers so that the weight of the spool causes all four rollers to press against the flanges, thus preventing the dreaded spring-off and resulting tangles.

The new design uses bearings salvaged from hard disk drives- the same type I used in the 3D printed Van de Graaff generator.

Typical HDD head lever bearing.


The rollers were printed using single wall vase mode in Slic3r so there would be no seam or little bumps at layer starts/stops.  The printer nozzle was 0.6 mm in diameter and the walls are 0.75 mm thick.  I printed a test piece to get the right size to be a tight, press-fit on the bearings.

Test block used to get the hole sizes to press fit on the bearings.  Holes vary by 0.1 mm in diameter.


One of the rollers in Slic3r.  It used single walled vase mode with inner and outer brims to help keep the part stuck to the bed.  Each roller took about an hour to print.


The lever arms are printed ABS and the roller bearings screw into the plastic.  The pivot bearings press into the levers.



The base was printed using PLA with  10% infill, 2 perimeters, and 3 top and bottom layers.

Here's the base printing.  It used almost the full width of the bed.

And now, here's what you've been waiting to see...





Fits 200 mm spools...
Tapered rollers keep the spool centered.


Fits 160 mm spools, too...

Tapered rollers keep the spool centered.
If you have a printer with a large enough bed, you can print this spool holder.  Here are the design files.