Jump to content
Ultimaker Community of 3D Printing Experts
Sign in to follow this  
donmilne

Minimum extrusion amount?

Recommended Posts

I'm not entirely sure I'm in the right place. Marlin is the standard firmware used in the UM2, right?

Anyway, I was printing out sneakypoo's filament dust filter thing from thingiverse -

http://www.thingiverse.com/thing:190118

... because I'd seen mention of it hereabouts. The print went well with my most reliable PLA right until the last couple of minutes: the print ends with a thin (~1.2mm?) wall that extends up several mm. I didn't get to the top of the wall before I started seeing signs of underextrusion. Now this was unexpected, because this thing is the size of a postage stamp - filament demand can't be excessive. Also I had set the feeder current limit to 1500mA, and the min layer time to 5 secs (from memory - long time since I set this).

I looked round the back, where I have Robert's feeder, previously working well... and no gouge in the filament. However the feeder motor didn't seem to be moving much, if at all.

It crossed my mind to wonder... does the gcode advance the feeder motor in n discrete steps based on a calculated filament volume? If so, what does it do if it requires <1 step? Does it round down to zero (underextrusion), round up to 1 (stringing?), or accumulate the residual until it reaches >= 1? (latter sounds good to me).

 

Share this post


Link to post
Share on other sites

Can someone with a knowledge of the UM2 firmware comment on this? Does the feeder advance filament in discrete steps, and if so, how does it cope with fractional steps? Particularly, a long sequence of fractional steps.

Or is the question misplaced? Should I view the printer as a simple robot and refer the question to whatever generated the gcode, i.e. Cura?

 

Share this post


Link to post
Share on other sites

There are 282 steps per mm of filament.

If you have the motor power on 1500mA you are running the motor out of spec, generating more heat on the axis, and potentially damaging the feeder motor. Also wondering how you did this, as the default limit is set to 1300.

 

Share this post


Link to post
Share on other sites

... because I'd seen mention of it hereabouts. The print went well with my most reliable PLA right until the last couple of minutes: the print ends with a thin (~1.2mm?) wall that extends up several mm. I didn't get to the top of the wall before I started seeing signs of underextrusion.

wow - sounds complicated - a picture will help as it is normally something much simpler.

James

 

Share this post


Link to post
Share on other sites

I gave you a link to the object on thingiverse, you can judge the complexity from that I suppose. Thanks for offering to look, but note that I didn't ask for help with the object itself, my question is about the inner workings of the firmware. I think I've done enough prints now to recognize underextrusion when it happens, I'm trying to get at why... especially since the same printer with the same filament had just got a perfect result with the cylinder extrusion test available elsewhere on this site.

@Daid: the 1500mA setting is recommended in the feeder replacement discussion. It's done using a manually placed gcode. The proposition being that the present limit is too conservative and causes skipping and hence underextrusion. I assume the current limit was not relevant here since it's at the opposite end of the extrusion rate spectrum.

I note your implied statement that 282 steps/mm is fine enough - I'll do some volume calcs on that tomorrow, however I notice that the question is still open: if <1 step was needed, would this be rounded down to 0?

 

Share this post


Link to post
Share on other sites

282 steps/mm means that (if I'm doing this right) a single step is 0.02262mm3 or (according to Wolfram Alpha) less than half the volume of a grain of sand. I'm struggling to come up with a scenario where that little filament would be asked for.

I'm "sneakypoo" btw ;)

 

Share this post


Link to post
Share on other sites

Well, that explains why I thought I remembered you claiming the design on these forums, but the only thing similar I could find was by some guy called Sneakypoo! :) Thanks for the design, and btw one reason I tried it was because I'd never printed an articulated object before. Very interesting!

Anyway, regarding what you're saying about each feeder step being a ridiculously small volume. I agree that intuitively that seems correct. However there are details I don't have. For example, at what point is the volume requirement calculated and transferred to the motor function? I can imagine that for each "pen move" I can easily calculate a volume of filament required, but some of those will be ridiculously small volumes too. So I guess they must be aggregated somewhere. ISTM that if any short move is rounded down to 0 filament, and the same move cycle is repeated long enough, you will run short of material, and eventually won't have enough.

Also, does Cura do these calculations to the same resolution as the feeder motor?

 

Share this post


Link to post
Share on other sites

Ok, if I have the calculations right then one mm of filament is about 6.3794mm3. Divide by 282 gives about 0.0226mm3 per step of the feeder motor. If the layer thickness is 0.1 and the nozzle diam is 0.4 then one step of the feeder motor provides enough filament to lay down a 0.56555mm line. You might see rounding errors if the line is any small multiple of that length.

I guess there isn't much further to take this. I just found it odd that the UM2 could print out a large object with no extrusion problems at all, and then right after that fail on the small fiddly bits of this tiny thing I asked it to make.

 

Share this post


Link to post
Share on other sites

Can someone elaborate on where this 282 steps/mm filament comes from?

I've been trying to dig up the specs of the UM2 feeder motor, and basically have not found anything explicit. I did find specs for the z axis motor which says it's 1.8deg/step. Are all 4 motors the same? Elsewhere I find that the feeder knurled wheel is around 7.95mm diameter, so is the following calculation not correct?

One step = 1.8 deg, so a full rotation is 360/1.8 = 200 steps.

One full rotation pushes pi*7.95mm filament, ~=25mm.

So steps/mm = 200/25 = 8.

That's a bit different from 282. Where am I going wrong? Normally I would look for some kind of gear reduction, but if the motor includes a gearbox I see no mention of it.

 

Share this post


Link to post
Share on other sites

The stepper is a 0.9deg one, so 400 full steps/rev. But it's not doing full steps, it's doing microstepping. I'm not sure but I think it's doing 1/16 microstepping which means that for each full step it's doing 16 tiny ones. Then you have to take into account the compression on the filament as well.

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Our picks

    • How to 3D print with reinforced engineering materials
      Ultimaker is hosting a webinar where we explain how you can achieve and maintain a high print success rate using these new reinforced engineering materials. Learn from Ultimaker's Product Manager of Materials and top chemical engineer Bart van As how you can take your 3D printing to that next level.
      • 0 replies
    • "Back To The Future" using Generative Design & Investment Casting
      Designing for light-weight parts is becoming more important, and I’m a firm believer in the need to produce lighter weight, less over-engineered parts for the future. This is for sustainability reasons because we need to be using less raw materials and, in things like transportation, it impacts the energy usage of the product during it’s service life.
        • Like
      • 12 replies
×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!