Showing posts with label PLA. Show all posts
Showing posts with label PLA. Show all posts

Tuesday 4 August 2009

More PLAying

Way back in April last year I tested a sample of PLA and got as far as making a test block with it and establishing that the warping was much less than the other plastics and you don't need a raft. I finally got round to making some objects with it last week.

The first bed material I used was balsa wood. That works well without a raft. The only downside is that when the object is peeled off it takes a few fibers from the wood with it. No big problem for functional objects, but it does spoil the aesthetic appearance a bit. The top and sides of the object are nice and shiny, but the base is cloudy.

I tried MDF, that gives a smoother finish, but I could not get it to stick reliably. Vik suggested 3M blue masking tape, but I didn't have any to hand, so I tried some sticky back plastic instead. That made objects with a nice glossy base but I could not get the outline to stick reliably.



The lid on the left was made on balsa. I think the black flecks are bits of black ABS which was the last plastic I used in the extruder. The one on the right was made on sticky black plastic. It looks much nicer, but on the top right you can see a bit of missing outline.

I also made this screw-able jewelry box, which looks nice in PLA.



PLA is very nice to extrude. It has a higher melting point than the other plastics but it viscosity falls rapidly with temperature so you can extrude it at lower temperatures. I did the first outline at 210°C, the first layer infill at 200°C and the rest of the object at 180°C. It does not seem critical.

I run the fan after the first layer to make it set quickly. I also needed a fan blowing on the heatsink of my extruder. Otherwise it can heat up past the glass transition of the PLA, which is only about 70°C. When that happens it jams fast and has to be drilled out.

Not needing a raft saves a lot of machine time and also my time removing it.

Even larger objects don't show any warping. I made this contraption to hold a scope probe in place for a job I am doing at work.



Vias are so small nowadays that attaching a wire is difficult and risks ripping the tracks off. Here it is in operation: -

Wednesday 16 April 2008

Python & Beans make object

Having got bored of making rectangular blocks for months I decided it was time to hook up my machine to the RepRap host software so that I could make arbitrary 3D objects from STL files. My original plan was to hack the host code to replace the serial comms with Ethernet and cope with the differences of my machine from the RepRap Darwin. Zach Smith added a G code back end so I decided to just add a G code parser into my Python to save me having to modify the host.

In the meantime Enrique Perez published a plug-in script called Skeinforge.bsh for ArtOfIllusion that also converts 3D objects to G code extruder paths. It is written in the Beanshell script language, which is Java like. I decided to try both approaches, as in theory a G code parser would allow me to use either.

Enrique posted some new scripts that process G code and drive the RepRap hardware using a Python SNAP protocol driver written by greenarrow, so I didn't even need to think about writing a G code parser, I just cut and pasted a few lines from Enrique's.

Before letting it drive my machine I thought it would be a good idea to look at the paths on screen. I knocked up a little script which used my HydraRaptor simulator to draw them. The script is just a few lines of Python that use TkInter.

It was soon apparent that Enrique's code had a bug that left off some of the outline, but apart from that it looked very promising because it has the ability to do sparse infill. That speeds up building objects, saves plastic and reduces warping so it is very worth while. Not only that, it had a novel infill pattern. Instead of parallel lines like this: -



He moves the ends together so that the outer wall is stronger: -



This looks like a good idea because it makes the outer wall effectively two layers thick but probably gives a bit less warping than a second continuous layer would give.

In order to communicate the results to the forums I came up with the idea of making an animated GIF showing all the layers in sequence. This turned out to very easy using Google and Python. The Python Image Library (PIL) can make GIF files and I found a script called gifmaker.py which takes a list of images and uses PIL to calculate the deltas and write out an animated GIF.

Enrique fixed the bug very quickly, here is the sliced extruder pump body: -



The red lines are moves without filament flowing (ideally) and the each new section of filament is a different colour.

And here is the same object sliced by the reprap host :-



A side effect of Enrique's algorithm is that the corners get rounded, however I don't think that matters too much because the filament has a minimum bend radius anyway. The main downside is that beanshell script is very slow, so it takes longer to slice than it does to extrude at the moment. A faster PC will probably sort that.

The first object I tried to make was this opto mounting bracket from the RepRap Darwin: -

I choose it because it is small, so does not take too long, but reasonably complex with a horizontal hole. Here is the sliced path from Enrique's script: -



And here is my first attempt at making it: -



This is PCL extruded onto MDF, 0.625mm filament extruded at 10mm/s with the fan on, no interlayer pauses.

A bit hairy due to the extruder not being able to stop the filament flow quickly, but I was quite pleased with it for a first attempt. It is too tall due to a bug in my code and its not the latest version, which has teardrop shaped holes to make the overhangs less than 45°.

Here it is cleaned up a bit: -



It is 50% filled which is probably not appropriate for this size object in PLA but that part is fully functional I think.

Enrique was pleased to see it as he doesn't have a machine to test his code with. A perfect partnership, he writes all the hard bits in beanshell script and I write the easy stuff in Python!

Thursday 10 April 2008

More PLAying

The tweaks I made to my extruder dramatically improved its ability to extrude PLA. I am not sure which one made all the difference or whether they are all needed. I can now extrude at my target 0.5mm filament 16mm/s with about 75% motor PWM duty cycle. That is less than I needed for ABS before the tweaks.

I can also extrude at lower temperatures. I think 180°C is a bit on the hot side as the plastic is very runny at the temperature. It will flow out of the extruder under gravity and has negative die swell. At 140°C it behaves more like the other plastics and swells to 0.6mm, which is very low.

In a previous article I stated that I could not make sparse filled objects because the filament slumped too much. With the reduction in temperature and increase is speed I now can. Here is a 50% filled block: -



It is still very strong. I expected the warping to be less but I have switched from MDF to balsa and I think that increased it. The balsa I have is only 2mm thick and was only stuck down with masking tape. I might try gluing two pieces back to back with the grains at right angles to get it stiffer.



So now with a slightly tweaked extruder I can do PCL, PLA and ABS at 0.5mm @ 16mm/s. I had to slow down for HDPE to prevent thermal damage to the extruder.

To get good definition at high speed I extrude with a fan running. The fan cools the nozzle which causes more heater power so the barrel temperature rises to the point where PTFE goes soft and the JB Weld turns to dust. PCL and PLA are no problem because the temperature is less. ABS does not seem to need the fan.

I plan to make a PTFE cover for the nozzle which will probably insulate it well enough and hopefully stop filament sticking to it and burning.

Sunday 6 April 2008

A day with PLA

Adrian Bower has kindly given me a small sample of polylactic acid (PLA) filament to evaluate and some parts to make the new geared extruder are on their way. Being a bit too impatient I decided to try extruding it with my current extruder.

Each polymer I have tried so far (HDPE, PCL and ABS) has had very different characteristics and PLA is very different again. At room temperature it is very hard and brittle and is completely transparent. At somewhere between 50-80°C it has a glass transition temperature above which it becomes a rubbery jelly. If you put it in boiling water and then pick it out with tongs you can bend it as much as you want and when it cools it will set in that shape. These are the two bits of 3mm filament I showed earlier when I had bent a 150mm piece double and it snapped :-



After dipping them in boiling water I could tie knots in them but I had to be quick because it hardens in seconds. If I return them to boiling water they untie themselves and return to being a straight rod.

PLA melts at about 175°C, the highest of all the polymers I have tried so far, where it transitions from jelly to a liquid with the consistency of a thin syrup. If you extrude it quickly into mid air it sets almost instantly and forms a filament, but if you extrude it slowly it forms drops that drip from the nozzle like water from a tap, but are solid when they hit the deck. Very different from HDPE and ABS which extrude more like a paste. Like PCL, PLA is sticky when molten so it sticks to MDF quite well, unlike HPDE and ABS.

Getting it to extrude from the original extruder is next to impossible, I really should have waited for the gears. The problem is that the extruder pumps the filament by cutting a thread into it. PLA is so hard that it needs an enormous force to press the thread into its surface. That is no problem with the springs I have, but it also seems to have a high coefficient of friction, so the torque required to turn the thread is then too much for the GM3 gearmotor and its clutch slips.

Recently I had an idea to cut the torque requirement by shortening the thread. The reasoning goes like this: -

A substantial part or perhaps most of the force required to push the polymer is not the extrusion pressure but the lateral friction of pushing the filament through the filament guide and the tangential friction of cutting the thread. Both of these are equal to the respective coefficients of friction multiplied by the force exerted by the springs. But the force required to achieve enough pressure to push the thread into the plastic must be proportional to the length of contact. So once you have enough thread to push the filament without shearing off, any more is counter productive. It requires more spring force, which creates more friction, which makes the filament harder to push, a vicious circle.

Ian Adkins put the theory to the test and reported he could still extrude PCL with only 7mm of thread. The motor current dropped from 240mA to 190mA. The no load current was 62mA so that indicates about a 50% reduction in torque required. Not being as brave as Ian, I reduced mine a bit less radically to start with. I roughly halved it: -



I used a couple of washers at the top set of screws to space the pump halves apart, to keep them parallel, and just tightened the bottom pair of springs. That did reduce the torque required but even with plenty of oil the GM3 clutch was still slipping. It is a good modification because you save two springs, hence two less adjustments, and the extruder is quicker to strip down and rebuild. Plus future versions of the pump can be made much shorter.

All the adverts for the GM3 say the clutch can easily be locked but don't say how. I opened the gearbox and found the clutch is inside the last gear wheel. I tried putting some bits of thick wire into it to stop the springy bits from compressing.



That worked for a while until one fell out. I thought they would be trapped by the lid but seemingly not. My next attempt was to stick them in with super glue. That worked but the clutch still slips somehow.

Another issue with PLA is that the filament likes to rotate in the pump. Other polymers do that as well, but if you hold them so they can't rotate they still extrude. With PLA, if you don't let it rotate it slows down the motor. Presumably by letting it turn it removes the tangential friction leaving only the sliding friction. The problem with letting it rotate is that I think it means the forward motion is less so the extrusion rate is not what it should be.

When the clutch slips it jumps one notch. Because my shaft encoder is on the output shaft the firmware makes up the difference. If it does not happen too often I still get the right volume extruded. It does however cause a shock wave which makes a blob in the extruded filament. I decided to try and make an object anyway with it slipping occasionally.

Because I only had 8m of filament I decided to try a sparse filled object first. That does not work with PLA because the unsupported filaments sag: -



However, this messy object has a perfectly flat base so shows some promise.

Next I tried a 100% filled block, extruded at 180°C (at the nozzle) 0.75mm filament at 8mm/s, layer height 0.6mm, pitch 0.9mm, fan on continuously. A bit slow and course compared to my other tests but I always start slow and move up in speed.



During this build the clutch started slipping once or twice per revolution causing the warty surface. Near the end it started slipping continuously so this is only about 18.5mm high rather than my standard 20mm test. Never the less, it only has 0.19mm warping after more than 24 hours making it the least warping yet for a solid object. Added to that it is probably the hardest material of the four.

PLA's main downside is the low temperature at which it goes soft, not much better than PCL, even though it has a much higher melting point. In this respect it is very like PVC which also has a high melting point and a glass transition around 80°C.

Here is my warped league: -



I think I can explain why plastics are good and bad for warping. It is simply how much they contract between the point they go solid and room temperature.

HDPE has a high freezing point and high thermal coefficient.
ABS has a slightly lower freezing point and a low thermal coefficient.
PCL has a very low freezing point.
PLA has a glass transition point not much higher than room temperature.

If the object can be stuck to a rigid base while it is cooling then the warping is reduced.

My theory of needing to extrude at twice the melting point minus ambient certainly does not hold for PLA, otherwise I would need to extrude it at 330°C. I get very good bonding at 180°C. It may be that if I extrude very fast it would need to be hotter but I expect it would decompose at 330°C. It may be that the glass transition makes the theory invalid or maybe it is plain wrong. It does seem to be true for polymers which are paste like and not sticky, i.e. ABS and HDPE. PCL and PLA are both sticky when molten. I.e. they will stick to things like glue does whereas HDPE will only weld to things like itself. It has no adhesive quality.

I haven't entirely given up with making the non geared extruder work with PLA. The problem with the geared version is that it can't keep up with my extrusion speeds. I can try reducing the thread even more. I can try sharpening it as Vik Olliver has done. I can find a solution to locking the clutch. The motor does get quite hot so it probably won't last long. I do have three more to burn through before I find a better motor. They only seem to last a couple of weeks in my machine anyway.