Sunday, April 22, 2012

Road to better paste extrusion, episode 1: Recap

Hello all, an awful lot of time past since the last meaningful post at Unfold Fab but fear not we have continued experimenting and printing lots of ceramics.

In a series of posts I will try to recap and document all the experiments we've done in the last 2 years in order to try and get a reliable and usable paste extruder. I just never found the time to put the notes, sources and thoughts on virtual paper, you know that feeling don't you? Ed. took me again couple of weeks to wrap this one up :)

A year ago I started documenting this process also on the RepRap wiki (after a friendly push from Adrian B.) so I will try to update that page also as much as possible. Some content from that page will also be recycled here. You can find the Ceramic_Extrusion page on the RepRap wiki. But anyone, feel free to also jump in and edit that page.

So why 'better' paste extrusion? Whats wrong with the method we used here in our studio (Unfold) since day one and in fact are still using most of the time today?

It might be good to revisit the beginning...

When I started researching methods to print clay with DIY 3d printers in late 2008 there where basically two printer options, Fab@Home or RepRap. The Fab@Home was ready for my intended use since its default extrusion method used a syringe to extrude silicone. But it was, and still is, a rather expensive machine (close to 3000$ in early 2009). The choice for RepRap was based on price and maybe more importantly on its community. RepRap had a vibrant community, that exploded exponentially over time while Fab@Home didn't (well, doesn't) feel like moving a lot. I got into contact with Erik de Bruijn (now Ultimaker) and he kindly introduced me into all things Reprap at the fantastic Protospace Fablab, there he showed me his darwin machine made from cast parts manufactured by Bits from Bytes. I was never interested in building a machine from scratch because I wanted to work WITH, not ON a 3d printer and so decided to go for a kit. Bits from Bytes had just announced their Rapman kit, to my knowledge the first complete RepRap derived kit which included everything to start immediately, so I instantly pre-ordered one of the first handful.

And because clay doesn't come in 3mm filament, so the quest for an extruder started.

Claystruder 0 (Stepper Driven Plunger)
This extruder is based on the principle of a plunger being driven down a syringe barrel using a (stepper) motor. Since Fab@Home used this principle it sounded smart to start here. This can be done either with an expensive linear stepper motor like on the Fab@Home Model 1 Syringe Tool or with a more standard motor and gears. Examples of the later are the Fab@Home Model 2 Syringe Tool, a very early Syringe Pump Prototype by Adrian Bowyer, Zach Hoeken's Frostruder MK1 or Viktor's (VMX) Syringe Tool.
This design never left my drawing and cardboard mockup phase because around that time I met with Bre Pettis in New York right after they launched Makerbot. He described that the Frostruder MK1 was a dead end for Makerbot and that they did some experiments with air pressure to frost cupcakes which looked rather promising. Also around that time Unfold got a commission from Art Centre Z33 to create an installation (L'Artisan Electronique) in which a ceramic printer would play a major part.
So I skipped the Stepper Driven Plunger and jumped straight onto the air pressure wagon. So we actually never had any experience using this 'direct drive' type of extruder on clay paste. Something I feel I need to revisit, even just for the sake of comparison. But more on that in a later post I am sure.

Advantages
-This system is compatible with most software, firmware and electronics in use on Rep(st)Raps due to the use of a stepper motor. With some calibration and fiddling with Skeinforge settings this could be a drop in replacement for the plastic extruder.
-It extrudes a fixed and predictable quantity of paste with each revolution of the stepper.
Disadvantages
-The mechanical bulk and size of the system, assembly height is at least double of syringe length making it rather impractical for larger volumes especially if your printhead is on a moving XY carriage.
-Rather inflexible in syringe sizes.
-According to some sources who tried this system, issues with start/stops and oozing I believe.
-Generally its also not really a good idea to control your extrusion by pushing the whole stock of material from behind, this becomes especially hard when trying to scale this system up to the >100cc syringe range. Also if you go to larger syringes the diameter of your plunger gets larger and it becomes harder to extrude the same small amount as precisely as in a system with a small diameter plunger.
-A rather large force is needed when extruding really viscous clay.


Claystruder 1.x (Time-Pressure Valve)
Based on Zach Hoeken's Frostruder MK2, the time-pressure valve based Claystruder 1 (and 1.5) is the printhead that we used extensively for almost two years to successfully print earthenware and porcelain ceramic objects and is still the tool for no fuss printing but it has major drawbacks, especially one… But first the basic of this system. Instead of a mechanical plunger, you use timed pulses of air pressure to drive the material out of the syringe hence in the industry this is called a Time-Pressure Valve. Mechanically its a dead simple system (apart from the needed source of compressed air). With the use of one double action 3/2 solenoid valve or two 2/2 single action ones you can switch the air pressure on and off from your controller if it has a free port for it. Our Rapman controller has two AUX ports switchable via Gcode but on the software side there is no real support for it in Skeinforge.



Because we where initially a little to lazy to figure out how to add all the M-codes in the Gcode file automatically we evolved into continuous single line printers (more poetically: 'one liners'). I added an ON Gcode in the beginning and an OFF at the end, for the rest of the print it's actually continuously extruding. On later extruders we completely omitted the solenoid and just plug-in the air at the right moment. KISS all the way :). For someone handy with scripting this should be easily solvable and I think it should be rather easy to customize Makerbot's frostruding scripts that post-process Gcode but we just found interesting ways to design around the issue and work with continuous prints and somehow it feels more natural to do this for me and actually design for the process (works nicely for plastics too when printing at 0,5mm). Will post more on that in the future. This also makes sense because clay prints are much more sensitive towards start/stop actions and the speed/direction of non printing moves. The print stays highly plastic during the whole print job and some ooze on your nozzle can easily disrupt a print when the head travels over already printed lines. Switching air pressure behind a body of clay does also not result in reliable repeatable material flow rates.

But there are also designs for objects on the drawing board at the moment that really need an extruder that can be turned on/off reliably so therefore we keep on searching for one.

In the meanwhile I made some improvements to the system since the Claystruder 1.1 version I posted on Thingiverse. The main one being the decoupling of the nozzle (a polyprop tapered tip) and the syringe. This simple change solves the issues with swapping syringes on long prints. If you have the nozzle attached to the syringe directly, like on the Frostruder, each time you want to swap a syringe you also remove and refit the nozzle with it and its very hard to get that syringe+nozzle back in the exact same spot again. Your nozzle is not often straight so even a slight rotation can put it a millimeter off. So if you continue your print (on Rapman its fairly easy to pause and restart a print) it will continue in a different spot. The solution is easy, make sure your nozzle stays in its place on the print head carriage when you remove the syringe. I use a small luer-lock male-female extension bit (from my favorite source) that is glued in the printhead (a simple mount). The nozzle is fixed to one end and the syringe screws in the back. This feature should be part of any paste extruder that uses syringes since it solves a lot of trouble with multi-syringe prints.

Luer-Lock Syringe + Female/Male adapter + Tapered Tip

Claystruder 1.5, bottom and top halves 

There is also a set of windows in the barrel holder that allow you to guard the level better.

Claystruder 1.5, paste level window 

Claystruder 1.5, tip mount

For this extruder I also designed a syringe adapter head that can be easily twisted on syringes and can withstand (depending on print quality) pressure up to 6 bar by adding bolts and washers as reinforcement. This file can be found on thingiverse here and is usable for many applications, it's also a much better replacement for the awkward system with screws on the Frostruder. Warning! I have operated this part and standard medical syringes at pressures up to 6 bar without issues but I guess this is close to the limit. Your millage may vary and I am not responsible if stuff explodes and harms you, your family, your dog or anything else.

Syringe Adapter Head on Makerbot

Syringe Adapter Head

This Claystruder is simpler than the quick and dirty first version and also more modular so that the parts like the adapter head can be used in other applications/ extruders. You can find the files here: http://www.thingiverse.com/thing:21788. At the moment there is no place for a solenoid because we don't use them but maybe I find time to add it in the same modular fashion.


In older BfB firmware one was able to on-the-fly adjust the print speed (not extruder RPM), this was very handy to adjust for material flow changes but unfortunately that feature has gone in recent BfB FW and my pleas to add it again are not heard. The old firmwares were too buggy in SD card reading etc, some machines refused to run on old FW without dreadful resets. So now the only way to compensate is to adjust pressure which is not as easy, especially when lowering the pressure it can take a few minutes for the pressure to lower in the system. I bought high quality pressure regulators which are much better than the ones on most (cheap) compressors. You can also place them much closer to your machine and it allows (the reason I got them in the first place) to run multiple printers from one source of compressed air. By the way, you use so few air that we managed to do a whole one week workshop with 15 students on a single charge of a large compressor.


Pressure Regulators


Two machines printing (nr 3 visible on the left)

Large print

So the good and bad points of the time-pressure method:

Advantages
-Simple straight forward design, the ease of construction of the extruder.
-Nearly instantaneous start/stop capability.
-Easy to clean.
-The extrusion is pulsation free in contrast with many other potential systems that use a pump.
Disadvantages
-Incompatibility with most RepRap electronics, Gcode processors etc which is a big issue but not impossible to solve.
-Air compressor or other source of compressed air needed.
-On/off control of the extruder by switching the air pressure is unreliable, a solution here would be to instead of switching the air pressure behind the material to control the material flow at the nozzle and leave pressure constant. In industry various valves are available that do just this and these could be easy to replicate. F@H's valve tool has a simple method to do this by using an off the shelf valve between the syringe and the nozzle (added bonus is the decoupling that I mentioned earlier), also the vintage RepRap Support Extruder 1.0 uses a similar method.
-Non-metered, the big issue. The problem with a Time-Pressure Valve system is that it depends on many variables to keep a repeatable and predictable flowrate. The main variables are pressure and material viscosity and the combination of both (in addition to friction of plunger, changing material level in the syringe etc etc. Read here for example) gives you certain flow rate. Flow rate = Material Viscosity + Air Pressure. So if your materials viscosity changes only slightly you need to compensate that with higher or lower pressure. We tried many things and found many ways to improve it one way or another and one could even program some of the parameters in the system to compensate for some known effects. But this would also mean that you need virgin syringes each time because a plunger acts differently in a used syringe, that the consistency has to be exactly the same each time and throughout the entire batch etc etc. Conditions you can get in an industrial setup but not really RepRap style. Other solution I thought of could be to meter your flow rate at the nozzle and adjust the air pressure based on that, one could use various types of flow meters but digital air pressure regulators that would need to act on those readings are rather expensive parts. You could also alter the print speed based on the flow rate within a certain 'workable' range, not to fast/slow. But basically we never found a way to get metered flow rates and from all my reading I think that it is impossible to solve this elegantly in an air pressure controlled system. Therefore unguarded operation is no option and one needs a trained eye and hand to get to the results that we have here, this is a serious drawback when you want to do production like we do.

Next episode: Auger Valves, learning from industrial solutions... I'll promise to make it shorter than this one :)

ps. you can also follow our design studio Unfold on Facebook: http://www.facebook.com/pages/Unfold/138586236204562