Bowden Calculations and Tweaks

2,745 views
Skip to first unread message

iquizzle

unread,
Jun 30, 2013, 9:50:53 PM6/30/13
to h-bot-and-core...@googlegroups.com
For better or worse, I selected bowden-style extrusion for the "standard" setup of the UConduit. I believe that the bowden setup has a lot to offer including ease of setting up multiple extruders and also a lightweight gantry. This is my first time using a bowden setup, so I'm working through some bugs. I wanted to start this thread to provide information for anyone else who uses a bowden tube.

I'll start by describing the "ideal" case for bowden and then I'll describe a "real" bowden setup, its limitations and how to best overcome them. I'm not a bowden expert, but I'm willing to put in effort to get it working well.


The ideal case

In the ideal situation, the bowden tube is frictionless and the inner diameter is exactly the diameter of the filament. The power transfer is instantaneous -- ie as soon as the extruder starts to retract, the filament pulls back from the hotend instantaneously.


The real case 

The bowden tube has friction that resists the motion of the filament. The bowden tube inner diameter must be larger than the filament diameter. This must be the case since the filament diameter is not constant. As a result of these things, the filament must be pushed with extra force and there is additional backlash between the extrude and retract directions.



Friction: 

To reduce the friction in the tube, I have been wiping down my filament with canola oil. Canola oil is inexpensive and has a reasonably high "smoke point" (http://en.wikipedia.org/wiki/Smoke_point). I have not tested it with ABS, so it may not be suitable for that. Safflower oil would be a better choice, though it is more expensive. If the oil is kept below the smoke point, I believe that it shouldn't create clogging problems with the hotend.

This may not be intuitive to some, but friction should be independent of the length of the bowden tube. According to the "standard" friction model, friction is independent of the area of contact and proportional to the normal force. The normal force is the sum of the force required to push the filament through the hotend and the force required to bend the filament around a radius. The latter force can be reduced by mounting the extruder above the hotend to reduce bending radii -- although in the case of many printers (such as the UConduit), this is not possible. 1.75mm filament bends more easily than 3mm filament, so the frictional force should also be reduced for that diameter filament.


Backlash:

This one is tricky... hopefully some number crunching can help shed some light on this. First, let's characterize the amount of backlash to expect between an extrude and retract move. Let's assume that the bowden tube normally operates in a crescent shape (half circle). In order for the extruder to push the filament through the hotend, the filament pushes against the top side of the bowden tube. During a retract, the filament must pull against the bottom part of the tube. It is the difference in the path length of these two things that quantifies the amount of backlash. (see image below)

Let's define some variables for our calculation:

dD = diameter difference between bowden ID and filament OD

Rb = center radius of bowden tube

Lf =length of filament during a forward push

Lr = length of filament during a retraction

dL = Lf - Lr = backlash


Lf = pi * (Rb + dD/2)

Lr = pi * (Rb - dD/2)

dL = pi * (Rb + dD/2) - pi * (Rb - dD/2) = pi * dD

Interestingly, we find that Rb drops out, so the backlash is independent of the length of the bowden tube. It is related only to the difference in diameter between the bowden tube ID and the filament OD. Using a longer bowden tube under these assumptions does not increase the backlash.

I use 1.75mm filament with a 2mm ID bowden tube. Since dD is 0.25mm, I can expect that the backlash is about 0.8mm. On a non-bowden extruder, I use 1.5mm retraction. Unless there are other sources of backlash, I should increase this number to 2.3mm. I have seen that most people use much more retraction (up to 10mm) for bowden. I can't yet find a reason why this is necessary.

Perhaps an equally important thing to consider is the time it takes to retract the initial backlash amount. If we (for now) neglect acceleration and jerk, the time required to overcome the backlash is:  

time = backlash / retract speed

If I use 20mm/s retraction speed, then 0.8mm/(20mm/s) = 40ms. That 40ms, the filament is being allowed to ooze out the hotend and create a blob on your part. Ideally, we want to retract as quickly as possible! If we use 100mm/s retraction, the wait time is reduced to 8ms. This should significantly reduce the amount of blobbing. At the moment, I can only qualitatively say that with 20mm/s retraction is far too slow.. 60mm/s is better. 

Keep in mind that for retraction speeds around 60mm/s or above, acceleration time becomes comparable to the backlash retraction wait time. Accelerating from zero and using 9000mm/s^2, we find (60mm/s)/(9000mm/s^2) = 6.7ms. We can use e_jerk settings to reduce this. If we set e_jerk to 40mm/s, then the acceleration time is reduced to about (60mm/s - 40mm/s)/(9000mm/s^2) = 2.2ms... but for larger retraction speeds, e_jerk has to be increased to maintain effectiveness.

Another thing to consider is how quickly your stepper motor can actually retract. If we assume a step rate of 40kHz, 200 steps per revolution, microstepping factor M, gear ratio G, and hobbed diameter D, our max speed is:

Smax = (40,000*3.14*D)/(200*M*G*2)

Let's use the following as an example:

M = 16 (1/16th microstepping)

G = 1.67 (it's the gear ratio I've been using 36T small, 60T large)

D = 7mm (approx hobbed bolt diameter)

we find Smax = 165 mm/s. For a typical wade's gear ratio of G = 45:11 = 4.1, Smax = 67 mm/s. Calculate this number for your setup and do not exceed it in your retraction settings. If you are getting close to Smax, then decrease your microstepping to 1/8th to double Smax.


Bottom Line:

The goal is to reduce the wait time caused by backlash. Start by calculating your backlash, then increase your (theoretical) retraction speed. Calculate how long it will take to retract the backlash amount based on that speed. Increase acceleration and/or e_jerk until the time to accelerate becomes comparable to the backlash retraction time. At some point, your motor will stall... keep your settings less than this amount.


Next on my to-do list is to actually test this. Increased retraction speed has helped my prints significantly so far. Unfortunately, I broke my pushtofit connector and I didn't have a backup... so that's why I'm stopping to think about things while I'm waiting for new ones to arrive :)


If you have advice to add, I'd like to hear it. I think that great prints should be possible with the right settings and adjustments.

iquizzle

unread,
Jun 30, 2013, 10:13:23 PM6/30/13
to h-bot-and-core...@googlegroups.com
Oops -- rogue factor of 2 in one of the equations. The numbers I posted for Smax should still be right, but the equation should read:

Smax = (40,000*3.14*D)/(200*M*G)

Josh Cockcroft

unread,
Jul 1, 2013, 2:40:03 AM7/1/13
to h-bot-and-core...@googlegroups.com
This is truly fantastic! I'm in the midst of ordering the various parts for the UConduit, very pleased with the design, but this was one of the only things that had me worried. This is very useful. Thanks!

JohnD

unread,
Jul 1, 2013, 9:50:11 AM7/1/13
to h-bot-and-core...@googlegroups.com
So I'm still looking at your calculations, and the only one I disagree with is that the length of the bowden does not impact backlash.  The difference between the ID of the Bowden Tube and the OD of the filament strand is a constant and the difference is the length of the arc. I also would say that the max arc diameter is expressed by the filament diameter - I think the filament is always "pushed" to the max extend of the tube ID when extruding, and "pulled" to the OD of the filament when retracted.

In simplest terms, if we assume 1.65mm filament OD, and a 2mm ID of the tube, and for simplicity sake use a half arc and assume that both the tube and the filament have zero stretch.

100mm Bowden should have 1.10mm of "backlash", whist a 500mm Bowden would have 1.28mm of backlash - this feels more correct to me based on a couple of lengths of tubing and a piece of filament! :)

I suspect this is a much too simplistic model as well - just using the difference in circumference between the filament vs the tubing - and that the "real" answer is a combination of both. There is more at work here that just the retract distance and speed! :P


iquizzle

unread,
Jul 1, 2013, 10:57:35 PM7/1/13
to h-bot-and-core...@googlegroups.com
Good to hear Josh! Let me know if you have any questions during the build.


John, my calculation was just the path difference between the filament pushed to the top of the tube (during extrusion) and pulled to the bottom (during retraction). The difference in the circumference of those two cases does not depend on the length of the tube since the radius cancels out. I can't quite visualize how you're doing your calculation. In any case, I think we both agree that unless we've overlooked a major component, the backlash is significantly less than 5mm. It would seem there is not much benefit to retracting more than about 3 or at most 4mm.

pokey9000

unread,
Jul 2, 2013, 12:55:25 PM7/2/13
to h-bot-and-core...@googlegroups.com
John got me thinking about this.  The lengths and tube radius cancel out but the angle matters.  Consider the case where the tube goes through no degrees of bend, or as the bend approaches 0 degrees: the filament moves from one extent of the tube ID to the other without undergoing any (or significant) length change.

dL=2pi*dD gives the hysteresis for a full circle Bowden
dL=2pi*dD*(Ab/360) = pi*dD*Ab/180 where Ab is the angle of bend in the Bowden in degrees

Ab can be taken as an average along the tube, and since a fixed extruder with an XY gantry uses a roughly Ab=180 degree arc to the tube as both terminations face the same direction, we can say:

dL=pi*dD

Which is what iquizzle ended up with

JohnD

unread,
Jul 2, 2013, 3:53:19 PM7/2/13
to h-bot-and-core...@googlegroups.com


 Try it with a 10mm and 1m 2mm OD tube with a piece of 1.68mm filament.   The constrained distance of the ID of the tube is proportion to it's length.

You may call this something other than backlash - it's probably better modled as stretching hysteresis, but it's a major problem with my current bowden - as length does matter! :P

iquizzle

unread,
Jul 2, 2013, 8:20:20 PM7/2/13
to h-bot-and-core...@googlegroups.com
Certainly if there is stretching or compressing of the bowden tube or filament (I'd be willing to bet there is some in the bowden tube), then that would increase as the length of the tube increased. In the model, I just assumed a rigid tube (no stretching).

If I had some decent encoders, I'd print something up and put them on either side of the bowden tube and directly measure the hysteresis. Maybe I could set this up with some cheap-o encoders and make it work with enough gearing.. I'm not about to drop $80 on 200 ppr encoders to try this though. :)

iquizzle

unread,
Jul 6, 2013, 3:00:35 PM7/6/13
to h-bot-and-core...@googlegroups.com
Got these in the mail today.. plenty of backups. :)



Will get back to testing soon.


iquizzle

unread,
Jul 7, 2013, 10:08:12 PM7/7/13
to h-bot-and-core...@googlegroups.com
Here's a print I just finished:


Settings were:
4mm retract
120mm/s retract speed (slic3r setting, not actual)
6000 mm/s^2 DEFAULT_RETRACT_ACCELERATION (marlin)
80.0 mm/s E_JERK (marlin)
8x microstepping, 1.67 gear ratio, 137.5 e_steps/mm


My calculations suggest that these settings are reasonable for the calculated backlash and retraction speed.There was still some blobbing at the end of the tentacle. I think some of this may also be helped if I had a fan on the hotend.

iquizzle

unread,
Jul 8, 2013, 12:54:47 AM7/8/13
to h-bot-and-core...@googlegroups.com
same conditions as above, but 0.15mm layer height instead of 0.25mm


Josh Cockcroft

unread,
Jul 8, 2013, 9:06:48 PM7/8/13
to h-bot-and-core...@googlegroups.com
Looking good!

Gayven Lo

unread,
Jul 11, 2013, 11:15:59 AM7/11/13
to h-bot-and-core...@googlegroups.com
Good Work , appreciate your contribution.

iquizzle

unread,
Jul 11, 2013, 9:39:42 PM7/11/13
to h-bot-and-core...@googlegroups.com
Thanks guys. I'm working toward getting dual extruders setup. More updates soon!
Reply all
Reply to author
Forward
0 new messages