Showing posts with label extruder. Show all posts
Showing posts with label extruder. Show all posts

Thursday, August 12, 2021

An Old Project: The Snakebite Extruder

There's recent interest in the forums on different ways to drive the filament through the hot-end, especially as it seems that the teeth in some gear driven extruders result in artifacts visible in the surface of the prints. 

Here's an example of the problem:

The wood-grain looking waviness in the print surface seems to be coming from the gear teeth in the extruder.


There's an interesting thread on the subject at the Duet3D forums here.

Here's one designer's idea about a different way to drive the filament. 

Here's a recent design that looks very interesting- similar to the one above:


Both of those extruders rely on rolling threads into the filament to drive it through the hot-end. I explored that concept in a crude way several years ago.

Back in 2014, 1.75 mm filament was a new thing, and extruder jams were everyone's biggest problem in 3D printing. I thought that what was needed was a very strong push-force extruder that would be able to force filament through the hot-end and nozzle under almost any circumstances, including a partial blockage of the nozzle.

My new design came about when I found myself a little bored at a makerspace meeting and and started fooling around with a piece of filament and a 6-32 nut I found on the table where I was sitting. I noticed that the nut could be threaded onto the 3 mm filament. That got me thinking that I could use that idea in an extruder to drive the filament by spinning the nut with the motor. 

One problem with that idea was that the nut fit tightly on the filament and caused the filament to twist when the nut was turning. I needed something to prevent the filament from twisting. I decided to add a second nut, rotating in the opposite direction, figuring that if one nut twists the filament, the second one will untwist it. The second nut would have to have the opposite (left-hand) threads. Hmmm.

I did a little research and found that one can buy left-hand threaded 6-32 taps very cheaply (about $7 IRIC), so I ordered one and used it to make a left hand threaded 6-32 nut from a small piece of mild steel.

The next problem was the gears to drive the two nuts. A little shopping found sets of plastic gears for about $2 at American Science and Surplus that would do the job. I added some 5mm diameter brass tubing, and some small bearings to fit the tubing and it was almost done.

Total invested funds- about $30, most of which went to the Budaschnozzle hot-end that, believe it or not, was considered one of the more reliable designs available at the time. I can't say enough bad things about that hot-end but that's not what this post is about, so I'll just leave it alone.


The final final snakebite extruder, assembled. The green printed part is 3 pieces, all indexed to each other to ensure proper alignment when they are assembled. The red and blue gears are just press fit onto 5mm brass tubing and there are bearings at both ends of both pieces of tubing.

Did it work? Yes and no. It was fine at driving the filament, but retraction proved problematic. If the threads in the two nuts didn't match exactly and/or the hole diameters were a little different, one nut experienced more friction with the filament than the other. It wasn't enough to allow the filament to twist but it interfered with retraction. Also, the nuts had fixed diameter, and in those days, filament diameter was poorly controlled, so it would occasionally run into a blob on the filament that wouldn't fit through the nuts.

I thought about using threaded collets that would allow adjustment to fit different filament diameters, or even spring loaded collets to allow automatic adjustment, but ultimately abandoned the project when 1.75 mm filament became the standard to allow higher speed printing. 

The first prototype of the snakebite extruder. I went from this to the "final" design in about a week. The nuts are soldered to the ends of the brass tubes running through the two gears on the sides of the extruder. The mechanical force tended to push the two side gears apart, so I redesigned the top cover to help hold them together.



Here is an intermediate version assembled with the hot-end for print testing. I eventually used smaller gears to drive the nuts. With this 1:1 gearing, a full rotation of the motor drove the filament about 0.8 mm, so with 16:1 ustepping and a 200 step/rev motor, it was about 4031 usteps/mm. The result was slow but very smooth extrusion.



Here is the very first test print made using the snakebite extruder. You can see that there were some retraction problems (and ringing which is not the problem that started this post).



The top of the extruder, with smaller filament drive gears, opened so you can see the gears and bearings. The green part is actually two pieces that fit tightly together to capture the bearings.



Comparison of an early version to the final, size-reduced version.



The three printed pieces of the extruder assembled.



Side view of the final extruder showing how the gears mesh. The large green gear was press fit onto the motor shaft and was able to fit through the hole in the printed base of the extruder.


A print made using the snakebite extruder. It had excellent surface quality except for the random loop-blebs scattered over it.



A close-up of the blebs. I suspect it was part of the retraction problem.


Here are some videos I made of tests of the snakebite extruder:


Saturday, January 5, 2019

UMMD Gets a New Extruder.... Again

My experiment with the Chinese made aluminum Titan extruder was interesting, but it didn't last.  While it had great potential, it came up short.  Some of the problems I found:


  • The gap between the feeder tube and the drive gear made loading filament very fiddly, even with my added aluminum extension tube.  I find a similar problem with the original Titan.
  • The pinch roller lever pivoting on the motor shaft wore out quickly, leaving black aluminum dust all over the inside of the extruder.
  • The concavity of the drive gear was not centered over the filament feed tube
  • The screw that passes through the drive gear and holds the extruder to the motor bends the front cover and puts a lot of pressure on the ball bearing that mounts in the cover.  The original Titan has the same problem.
  • The pinch roller spring was much too strong which made printing with flexible filament difficult.
Aluminum Titan clone and XCR3D hot end mounted on UMMD.


After more research I decided to give the Bondtech BMG a try.  I have to say it seems very solidly made and there's no chance that screw pressure will distort the body of the extruder.  Loading filament is super easy- just hold it at the entrance of the extruder and tell the printer to extrude some filament.  The dual drive gears grab the filament and pull it into the extruder without any probing around to find the hole.  The filament path is just big enough for the filament and there is nowhere for the filament to flex out of the path.

The BMG extruder parts.  Very solid construction, and unlike the E3D Titan, tightening the screws doesn't cause any misalignment of bearings.
The filament path has two drive gears.  The pivot arm, on which one of the drive gears mounts, is removed in this photo.

When the Bondtech extruder arrived I discovered that it didn't come with a Bowden adapter, so I printed a fitting that would allow me to mount a hose fitting on the extruder.  Then I discovered that it wouldn't fit on the extruder carriage because the hose fitting interfered with the front of the carriage.  I also discovered that unlike the excellent hose fitting on the input side of the extruder, my hose fitting was junk and didn't grip the teflon tube very well.  I ordered the Bondtech Bowden adapter and it fit perfectly, allowed the extruder to mount on UMMD's carriage, and gripped the teflon tube tightly.

The BondTech BMG extruder mounted on UMMD.


I had one other, minor problem installing the BMG.  Only one set of mounting screws came with it and they were a little too short to go through the 5mm thick mounting plate on UMMD.  Fortunately
I had some longer screws handy and was able to get the extruder mounted.

I set the steps/mm to 415 in the config file and ran some test prints.  I still have more extruder tuning to do in the config file, but it's printing pretty well with the default setting.  I'll report on any problems or failures here.

Note- I'm still using the Chinese made XCR3D hot end.  Other than the crappy fan that I replaced  with a Sunon part that is specc'd to operate up to 70C, it has been performing well.

Update 1/26/19

I had an interesting failure.  Someone at the Makerspace was trying to print with the nozzle smashed against the bed surface (to get better first layer adhesion?! - I'll have to revise my training materials) and the extruder kept pushing filament.  It pushed so hard that it pushed the Teflon tube out of the Bowden adapter at the exit of the extruder.  The BMG extruder can really push, so I reduced the extruder motor current so that when a jam occurs, the extruder motor will skip steps instead of pushing the tubing out of the Bowden adapter.  Reduced current means reduced torque and reduced heat which is good because the chamber goes to 50C when printing ABS.  I guess it also means that if I were so inclined, I could use a smaller, lighter, lower torque motor for the extruder.


Saturday, May 26, 2018

UMMD Gets an XCR3D Hot-End

During some recent hunting for the source of a print quality problem with UMMD, someone posted something about a new hot-end on the Rep-Rap forums.  It looked interesting, and I've started seeing problems with the E3D V6 that was on UMMD, so I decided to check it out.

I ordered an XCR3D hot-end via Ali-express for a whopping $16 shipped and installed it in UMMD and found a few interesting things.

XCR3D Hot-End mounted on the Titan extruder in UMMD.  The heater block started out the same black color as the heatsink.

First, the Good:


It fits tightly into the Titan extruder, much tighter than the E3D V6 did, so it's very secure, no wobble, and no unwanted rotation caused by the heater cartridge wires pulling on it.  It doesn't feel over-sized - it feels like it fits properly.

The fan is absolutely silent- I put my ear within a few cm of it and couldn't hear it running.  We'll see if it lasts...

The fan bracket is metal and screws securely to the heatsink.  No more melted plastic, no more rotating fan.

The stainless steel heat-break is a bit more robust than the E3D part and the Teflon tubing doesn't go as deep into it.

The heatsink end of the heat-break is not threaded- it is held into the heatsink using set screws.  I like that!  I've had the heat-break come loose in the E3D V6 a few times.  Also, if you were setting up a multiple extruder machine, having the heat-breaks held in with set screws would allow you to set the nozzles at exactly the same height.  It also means you can take a jammed heat-break/nozzle assembly out without having to take apart the whole extruder- two thumbs way up!  It also means you can swap in a different heat-break/nozzle assembly without taking the extruder apart.

It comes with a 50 W heater cartridge that heats up quickly- it gets to 240°C in 60 seconds!

It has options for temperature sensors- I got the cartridge thermistor and it seems to be a direct and accurate replacement for the E3D part.

The heater block, heatsink, and fan bracket all have a black coating (anodized?) that looks nice.

You can order the kit with 1 m or 2 m long leads.  I just cut them off and put connectors on to fit UMMD's extruder carriage cable.

The brass 0.4 mm nozzle that comes on the unit appears to be well machined.

It comes with some little, stiff wire tools to clear a jammed nozzle.  I have not tried to use them.

There is a standard lock ring to hold the tubing into the hot-end for Bowden set-up, and inside the heatsink there's a phosphor-bronze (?) part with fingers that are angled downward.  You can slide in the Teflon tube and the fingers grab it and won't let it slide upward.

Now the Less Good:


The black coating on the heater block quickly burns and turns brown.  It doesn't seem to affect operation, just appearance.

The overall length is a few mm longer than the E3DV6 so you lose a little of your Z axis print capacity.  It is actually about the same length as a V6 with a volcano heater block.

The heater and temperature sensor cartridges are held into the heater block with set screws.  E3D's split block and clamp design holds the cartridges without crushing them.  You can always change the heater block.  One concern is that the set screws will fill up with plastic and I won't be able to get a wrench into them if I need to replace either of the cartridges.  We'll see...

Even though photos on the manufacturer's page at Ali-Express show Teflon tubing, none is supplied with the hot-end.  For direct extrusion you need 65-75 mm of tubing (I didn't measure it).  For Bowden you need whatever length your printer needs.

Installation:


It was pretty easy.

I took the heat-break and nozzle out of the heater block, applied anti-seize compound to their threads, and screwed them back into the heater block.

I put a little thermal compound on the heat-break and slid it into the heatsink and tightened the set screws.

Next I pried the black plastic Bowden tube lock ring out of the top of the heatsink,  pushed a piece of Teflon tubing into the heatsink until it stopped at the bottom of the heat-break, then cut it so there were 16 mm of tubing standing above the top of the heatsink.  That extra tubing fits up inside the Titan extruder's guide piece.

I applied anti-seize compound to the heater and thermistor cartridges and their set screws and mounted them in the heater block.

I cut the cables to appropriate lengths and installed connectors to mate with the extruder carriage cable.

I heated it up to print temperature and tightened the extruder nozzle against the heat-break with two wrenches, one on the heater block and one on the nozzle, then let it all cool back to room temperature.

Finally I ran a PID auto-tune on the hot-end and updated the firmware configuration with the constants returned by the controller.  When I heat it up to print it overshoots the set temperature by about 5°C then quickly settles to the set temperature and doesn't move after that.  It gets to 240°C in 60 seconds flat.

Printing:


I have printed both ABS and PLA with it and it seems to work fine.  At some point I may try the volcano hot-end again.


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 it 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.



The original wiring.  Don't do it like this- it has been updated- see update at the end of this post.



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...

Update:  After thinking about it for a while, I changed the fan used for the chamber heater.  In the original design I used a 24VDC fan connected across the input of the SSR that switches power to the heater.  The problem with that scheme is that if the SSR fails "on" (that's how they fail), the heater will turn on even if the fan isn't on.  That could lead to a fire because the heater gets extremely hot without the fan blowing on it.  I have replaced the 24VDC fan with a 208VAC fan wired directly across the heater.  The fan turns silently at 117VAC in, but moves enough air to keep the heater at a safe temperature.  If the SSR fails, both the fan and heater will run, which is much safer than running the heater without the fan.

It's better to wire it this way.  Connect the ground lead of the power input to the frame of the printer.


I still need to add a cover and TCO.

Here's the new arrangement:


The 24VDC fan was replaced by a 208VAC fan wired directly across the heater.  At 117VAC it blows enough air to keep the heater at a safe temperature, and runs very quietly. 


Friday, July 28, 2017

3D Printer Hot-end and Extruder Designs

Back when I started 3D printing, I had all the same problems every noob has.  Prints wouldn't stick and the extruder "jammed" more often than it fed filament.  It took about a year, but I eventually sorted out both problems. This post summarizes what I learned about extruders and hot-ends.

There are a few variations out there, but most extruders work by pinching the filament against a sharp toothed drive gear on a motor shaft.

The jamming I experienced early on was actually the extruder drive gear carving divots into the 1.75 mm filament (which was sort of a new thing, at that time).  Once that happens, the drive gear teeth have nothing left to grab and the extruder can't push filament any more.  I started researching extruders and found something interesting.  The people who used 3 mm filament almost never had problems with extruder jams, and the people using 1.75 mm filament almost always had problems.

I compared filaments.  3mm filament is pretty stiff and it takes some muscle to make it behave.  1.75 mm filament is much more flexible.

Next, I started looking at extruder designs. 3mm extruders all had gears to multiply the motor torque. Very few 1.75 mm extruders had such gears.  That got me thinking that at least part of the problem had to do with motor torque.  The other thing I noticed was that 3 mm extruders usually had some pretty strong springs pushing the filament pinch roller bearing against the drive gear.  The 1.75 mm extruders were usually pretty weak in that regard.

I eventually figured out that if you used strong springs on the pinch roller to push the filament hard against the drive gear, its teeth would bite deeply into the filament and the motor would not have enough torque to carve a divot into the filament.  So I modified my extruder with a stronger spring and preloaded it by compressing it with a screw.  That was the end of my filament divot carving problems, but now I still had problems with filament not extruding, which was either a hot-end problem or a motor torque problem, or both.

At some point during my quest I started experimenting with my own extruder drive concept.  I built a prototype and needed a hot-end to test it.  There was a Taz printer at the makerspace that had a Budaschnozzle hot-end and it seemed to work reliably, and on-line feedback indicated it worked pretty reliably, so I ordered one for my testing.  When it arrived I took a close look at it.  What I found was unbelieveable.

There was a laser cut wood part just a few mm away from the heater block.  Guess how long that part lasted after it charred black!  There was a large, threaded aluminum "heat-break" screwed into the aluminum heater block, impossible to disassemble without destroying the tube or the block, and there were what appeared to be heatsink fins on the body of the extruder, but upon disassembly, I found that the fins were really aluminum discs stacked on a teflon tube.  Teflon is plastic, a thermal insulator.  Why on earth would someone put a heatsink on a piece of plastic?  Those were the days when garage tinkering was sufficient "engineering" to produce a commercially viable product.  The design of the Budaschnozzle truly lived up to the ridiculousness of its name!

Since the 3 mm extruders all had gear boxes and seemed to work reliably with almost any hot-end, I figured that what I needed was more torque, so I started looking for an extruder that had a gear box.  I eventually settled on a BullDog XL, which has a 5:1 gear box.  The BullDog XL can push filament through just about anything going on inside a hot-end.  An additional benefit of a gearbox on an extruder is increased resolution in the filament extrusion which makes for very smooth print surfaces.

In a hot-end that has no real heat-break or cooling above the heat-break, PLA filament can get very sticky as heat creeps up the the hot end and softens the filament inside the tube.  This sort of problem usually shows up about 20 minutes or so into a print.  Everything will be going just fine and then the extruder will suddenly chew a divot into the filament for no apparent reason (if the extruder isn't properly adjusted), or the extruder motor will click as it starts skipping steps because it doesn't have enough torque to keep pushing the filament.

A lot of people think it's a problem to be solved by oiling the filament, presumably so it doesn't get sticky in the tube, while ignoring the problems that oil creates in getting prints to stick to the bed and/or print layers to stick together.  Others attribute the problem to dust on the filament jamming up the mechanism, so they put some sort of sponge or cloth in the filament path to wipe the filament clean before it goes into the extruder.  Neither solution addresses the real problem - heat creeping up the hot-end tube.

That experience got me looking at hot-end designs.  After some research, I came to the conclusion that hot ends should be actively cooled, especially for printing PLA which softens at very low temperatures.  I looked for designs that were actively cooled and otherwise made sense (no heatsinks on plastic, no wood parts, they had to have real heat-breaks, etc.) and found the E3D v6.  I've been using them for a few years and they just work.  The design makes sense (though I think they are as long as they are mostly to accommodate the 30 mm cooling fan- the new Aero version addresses that).

To summarize, reliable extrusion is most easily achieved with:

  • a high torque drive design that uses a gearbox to multiply motor torque (which prints smoother surfaces, too).
  • pinch roller pressure adjusted so that if the hot-end really jams, the extruder motor will skip steps without chewing a divot into the filament.
  • a hot-end that has an actively cooled section above a functioning heat-break.  
I've been operating a BullDog XL and E3D v6 combo on Son of MegaMax (SoM) for well over 2 years of almost daily printing and have had exactly one filament jam that occurred because of a foreign object embedded in the filament.  I don't have anything wiping dust off the filament, and no oil.  None of that sort of stuff is necessary.  If you have dust that's big enough to jam a 0.4 mm nozzle, you had better move to a place that will be safer for your lungs!


Foreign object embedded in the filament produced the only true jam in the hot-end in over two years of almost daily operation.



That extruder has never chewed a divot into the filament.  However, it has one design flaw.  There is a small gap between the bottom of the drive gear and the top of the guide tube that steers the filament down into the hot-end.  If you print with flexible filament, and try to extrude too fast, the filament will buckle in that gap and will then refuse to go down into the hot end, resulting in a failed print and filament wrapped around the drive gear.  The same can happen with more rigid filament if you set the pinch roller pressure so high that it squashes the filament.



This was a new (for me) failure mode for an ABS print.




Hey! That's not how it's supposed to work!






Removing the cover revealed this.  The filament had wrapped itself around the drive gear, but how/why?



This is how the filament was able to wrap itself around the drive gear.  That gap allows the filament to buckle in that space.




And this is why.  If you crank up the pinch roller pressure too high- it crushes the filament!



The crushed filament gets wider at the sides and thinner top-to-bottom, making it want to fold inside the gap between the drive gear and the guide tube.  This problem was fixed by backing off the pinch roller pressure.  There's still a gap between the guide tube and the drive gear making it tricky to set this extruder up for printing TPU filament (though I have successfully done so on several occasions), but it's proven extremely reliable for printing rigid filaments.


If the filament spool runs out during a print, once the end of the filament gets below the drive gear the extruder can no longer push or pull it.  If you try to feed in a new piece of filament, the stub in the gap will bend over and refuse to let you load the new filament.  You have to separate the extruder and hot-end to retrieve the stub of filament that stuck in the hot-end before you can feed fresh filament into the extruder.

The second problem is easily solved with proper printing "hygiene" which involves weighing the filament spool before starting a print to make sure it isn't going to run out, mid print.  That has always worked fine for me because I understand the problem, but Son of MegaMax is at the Milwaukee Makerspace and not everyone prints with the same attention to the process.  The result was a lot of down-time and a lot of extruder/hot-end disassembly.  I fixed the problem by adding a filament run-out sensor to the printer so that if the spool runs dry before the print is finished, the sensor will stop the printer before it pulls the end of the filament down into the extruder.

The run-out sensor created a new problem.  If there's no filament in the sensor and you power up the printer, all you get is a blank LCD screen.  I've had several people contact me reporting that the printer is "broken" because of it.  If you want to see if your 3D printer design is foolproof, leave it at a makerspace - you'll quickly find out all the flaws in your design!

I was updating the Taz and a Solidoodle printers at the makerspace and decided to see if there was an extruder that didn't have the same gap between the drive gear and guide tube.  I saw that E3D had recently released the Titan extruder that seemed to address that problem, so I ordered one to try it out.  It was about 1/2 the price of the BullDog XL and had a few obvious design advantages.  It was much lighter weight, more compact, properly fit on E3D hot-ends, and didn't have that gap between the guide tube and drive gear.  

When I got my first Titan extruder, I deliberately ran the filament out.  Then I tried loading fresh filament and it worked perfectly without any disassembly.  The Titan guide tube extends from the top of the hot-end all the way up to the bottom of the drive gear.  There's nowhere for the filament to buckle.  I like that!  Now I'm in the process of redesigning SoM's extruder carriage for a Titan extruder, and I put one on Ultra MegaMax Dominator.  I've also put one on the Taz printer at the makerspace.  The 3:1 drive gearing seems to have adequate torque when used with a "normal" sized motor.

A lot of people like to put low torque "pancake" motors on Titans to minimize weight so they can push their printer to print faster.  I think you have to make a choice.  You can use a pancake motor and operate at the very limits of performance to make relatively low quality prints, and occasionally lose one when the extruder jams up because it doesn't have enough torque.  Or you can put a more "normal" size motor on it and print a little slower, for higher quality prints that finish more reliably because the extruder has enough torque to keep pushing the filament even when things get less than ideal in the hot-end.