26 (edited by spapadim 2013-07-16 16:01:24)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

adrian wrote:
BRIGHAMVALDEZ wrote:

Also are you guys aware that solidoodle z axis values are incorrect in the firmware?.

What specifically ?

Not sure what OP is referring to, but I had also noticed that Z-steps are rounded up (and there is no reason to, since Marlin allows float values).

However, the effect due to rounding is minimal, ~0.4 microns sawtooth:

http://img33.imageshack.us/img33/7140/lhbd.png

Matlab output of (hope I didn't mess anything):
steps = 2268;
steps_true = 3200*18/25.4;
mm = 0.1:0.1:10; pos = round(steps.*mm)./steps_true; plot(mm, abs(pos-mm));

I tried changing the value, not sure I see a difference (maybe, but maybe I'm imagining things -- theoretically, steps = 2267.72 instead would remove bias but sawtooth amplitude would still be ~0.2microns , so I'm probably imagining smile )

Edit: Still haven't gotten around to measuring wobble with laser pointer method.. There is something that bothers me about error regularity (if it was just backlash, why not random? any obvious reason I'm missing for "slip" happening at the same point in rotation?), but since banding isn't too bad now, it's low priority (there are other things w/printer that are less of an academic curiosity smile ).

27 (edited by adrian 2013-07-16 16:03:26)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Yup... but a float for a step value is sorta-redundant since you can't have a partial (micro)step - it will just fall back to the nearest full step anyway of a random forward-or-reverse nature...

Combine that with the fact that Microstepping is arbitrary to the specific motor - you can't tell the exact position of the rotor between steps, it all comes down to voodoo magic in your specific motor.. so there is a margin of error for every step in between full-steps that is not linear - means I'm not sure which is the greater evil here... Margins-of-positional-error based on Microstepping or the fractional loss of fidelity by converting to a whole integer..

Interesting...

28

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

adrian wrote:

Yup... but a float for a step value is sorta-redundant since you can't have a partial (micro)step - it will just fall back to the nearest full step anyway of a random forward-or-reverse nature...

Agreed, but rounding (should) happen just before the stepper is driven, not earlier.  Which is what Marlin does: https://github.com/ErikZalm/Marlin/blob … r.cpp#L534 .  Otherwise, if you round too early, the rounding error accumulates for every step, which is what the previous plot shows (this would amount to the lround being before the multiplication in the code above, not after -- so rounding error is multiplied by number of steps, hence bias, but also slight increase in sawtooth amplitude because rounded and true steps are "mutually prime" -- if I may abuse the term here... but still, effect is too small I think, so more of an academic curiosity perhaps).

For reference, here is the same plot with steps correct up to two decimal digits (i.e., precision of two more digits):
http://img19.imageshack.us/img19/1650/c6ch.png

29

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

And, for completeness, here is the same plot for steps = steps_true  = 3200/.5 (.5mm pitch, which has a finite decimal representation in the chosen unit of measurement):

http://img13.imageshack.us/img13/2590/pcxo.png

Note that the 10^-4 became 10^-16 in the plot's y-axis (probably the limits of IEEE precision).

Anyway...

30

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Regardless, I commend you on your use of science and Matlab. I never learned to drive it, so tend to just make stuff up as I go along smile

We need more people with your attention to detail in this world...

31 (edited by spapadim 2013-07-16 16:45:53)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Thanks but, actually, patience in doing precise experimental measurements isn't really my strength, to put it mildly (I still have traumatic experiences from the Cavendish pendulum in undergrad physics... a bruised head from bumping into table, pissed off classmates in other sections who couldn't do anything for the rest of the day because the oscillation took forever to dampen and, of course, random results... but I digress) and I do often get carried away with "academic details" that turn out to be irrelevant in practice, so pls double check everything I say/write (which is why I post smile ).

32

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

spapadim wrote:

I do often get carried away with "academic details" that turn out to be irrelevant in practice, so pls double check everything I say/write (which is why I post smile ).

I did the same calculations as you did and came to the same conclusion, that any periodic error due to roundoff or microstepping issues would be very small if visible at all.  Furthermore (and perhaps more tellling) any such issues should result in banding that exhibits a period of about .5-.6mm, not the 1.411 mm (=1/18" thread pitch) banding that everyone reports.  Lastly, I agree there doesn't seem to be any reason why roundoff/stepping-based banding could be affected by anti-backlash devices or helical beam couplings.

My theory is that the primary source of banding is due to the fact the z axis uses a nut loosely resting on a rod, both cut with a standard triangular cross sectioned threads.  This means the nut--when centered--effectively sits at the base of a conical hole, but that any lateral force on the nut (such as from a bent rod) causes the nut to rise up out of the cone once per rotation, limited by how much movement the backlash will allow.  This would explain why the banding period matches the thread pitch, why bent rods exaggerate banding, while anti-backlash devices, flexible couplings, ball screws, and finer threaded rods all minimize or eliminate it.

As such, switching to a ball screw is probably a perfect (but expensive) solution as it removes the source of the problem (loose nut resting on angled threads).  However, I've found that switching to a very fine threaded rod (I use an M3) is enough to make any banding--if present--undetectable.  That's good enough in my book, and cheap to boot.

33 (edited by spapadim 2013-07-16 18:47:11)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Off-axis rod, that makes sense, thanks!  So... did I just get lucky, offsetting the well nut by close to 1/2 revolution by chance (provided thread_depth*sin(tilt_angle) < backlash, or thread_pitch*cos(tilt_angle) < backlash, or something like that)?  Hm... just off the top of my head, not sure...

Edit: paying close attention, the rod seems to trace a conical surface -- I think.  Which would imply that banding should improve at the top of (really tall) prints (all else equal: perhaps a big "if")..?

Edit2: Just noticed that my well nut holder has developed a stress crack.  Perhaps I was not imagining that banding has recently changed slightly, after all.  Should have marked its angular position, dammit... (Rubber is still slightly compressed, so it should still be doing it's job with backlash, I think).  Anyway.

34

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

spapadim wrote:

So... did I just get lucky, offsetting the well nut by close to 1/2 revolution by chance (provided thread_depth*sin(tilt_angle) < backlash, or thread_pitch*cos(tilt_angle) < backlash, or something like that)?  Hm... just off the top of my head, not sure...

My guess is that the more you tighten down any anti-backlash device, the more it pushes downward on the nut forcing it to stay centered around the rod.  The cone I was referring to was the contact surface between the nut an rod made by one revolution of threads:

http://www.soliforum.com/misc.php?action=pun_attachment&amp;item=2705

From the image, I think it's clear that sufficient lateral force on the nut will cause it to rise up on the rod due to the inclined contact surface between the nut and rod.

Regarding the effect of wobble relative to bed height, that's an interesting question.  One one hand, when the bed is all the way up (bottom of model) any deflection in the rod would be at its maximum, however, the leverage the nut would have to flex the motor in its mount would be highest here too, countering that effect.  However, if the motor is at all off-center, it will also exert a lateral force on the nut, but this effect would be highest when the bed is at its lowest.

Post's attachments

RodNut.jpg
RodNut.jpg 19.54 kb, file has never been downloaded. 

You don't have the permssions to download the attachments of this post.

35 (edited by spapadim 2013-07-17 05:51:01)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Interesting and informative, thanks! 

And, yes, not sure what I was thinking about angular offset of nut pair (probably wasn't smile ). First, it would seem that only the nut attached to platform is relevant to its motion. Even if not, a linear combination of same-period(=thread pitch) functions (z = f(rod rotation), with phase=initial nut rotation) can change phase but not period (plenty of handwaving and circuitous thinking here...). Anyway..

36

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

i have the aluminum carriage i dont understand how this connects to the bed? its just a nut it will screw onto the rod sure, but how is it anchored to the bed?

37

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

MolecularConcept wrote:

i have the aluminum carriage i dont understand how this connects to the bed? its just a nut it will screw onto the rod sure, but how is it anchored to the bed?

This might help: http://www.thingiverse.com/thing:100053
(After several months, its developed tiny stress cracks -- hole distance parallel to X axis might be a fraction off? -- but still does job, so haven't bothered replacing)

38

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

thanks im going to pick one of those up! what size is the nut? 5/16? and what size screws?

39 (edited by gettingbored 2013-08-09 20:36:04)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

I just did this to my printer, and installed it upside down from how you pictured it. However I think this causes a problem at the beginning of the print since there aren't enough threads in contact with the rod. I'm going to do a test print now.

https://dl.dropboxusercontent.com/u/8410101/IMG_6042.JPG

40

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Damn, looks like there's still an issue with banding after installing this fix.

https://dl.dropboxusercontent.com/u/8410101/IMG_6090.JPG

41 (edited by spapadim 2013-08-10 00:37:01)

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

gettingbored wrote:

I just did this to my printer, and installed it upside down from how you pictured it. However I think this causes a problem at the beginning of the print since there aren't enough threads in contact with the rod. I'm going to do a test print now.

No, that's how it's installed on mine as well (brass nut at top, which is opposite than with the older platform), but my rod is long enough so the nut doesn't come off when Z is homed. Guess I was lucky...?

Also, seeing your other pic on Thingiverse, the plate should be tightened flush onto aluminum platform (file the inset for rubber rim, if you have to, it's intentionally tight) -- but if the rod is shorter, doubt that will help.

42

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

I did this fix and although it seems to help, after awhile it seems the grease or something else is dissolving the rubber and the z axis starts to jam.  When I take the wellnut off the grease (white lithium grease) is black.

Guess I continue to search for a solution.

43

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

gettingbored wrote:

I just did this to my printer, and installed it upside down from how you pictured it. However I think this causes a problem at the beginning of the print since there aren't enough threads in contact with the rod. I'm going to do a test print now.

https://dl.dropboxusercontent.com/u/8410101/IMG_6042.JPG

from looking at your picture, I'm not sure you got this built right.

Is the original nut still on, under the well nut?  If not you got it all wrong.

The idea is to have 2 nuts, the one already attached to the print bed, and the well nut which has the threaded insert.  When you install the well nut, and screw it on tight, the rubber compresses and pushes against the original nut, so you now have an assembly with two nuts pushing away from each other and pushing against the threads of the rod to take up all the slack, thereby reducing backlash.

To print or, 3D print, that is the question...
SD3 printer w/too many mods,  Printrbot Simple Maker Ed.,  FormLabs Form 1+
AnyCubic Photon, Shining 3D EinScan-S & Atlas 3D scanners...
...and too much time on my hands.

44

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

pirvan wrote:
gettingbored wrote:

I just did this to my printer, and installed it upside down from how you pictured it. However I think this causes a problem at the beginning of the print since there aren't enough threads in contact with the rod. I'm going to do a test print now.

https://dl.dropboxusercontent.com/u/8410101/IMG_6042.JPG

from looking at your picture, I'm not sure you got this built right.

Is the original nut still on, under the well nut?  If not you got it all wrong.

The idea is to have 2 nuts, the one already attached to the print bed, and the well nut which has the threaded insert.  When you install the well nut, and screw it on tight, the rubber compresses and pushes against the original nut, so you now have an assembly with two nuts pushing away from each other and pushing against the threads of the rod to take up all the slack, thereby reducing backlash.

Strange, I flipped the nut and twisted it on good, then added a dab of super glue to make sure it wouldn't move. Still looks like I'm getting banding though.
https://dl.dropboxusercontent.com/u/8410101/IMG_6646.JPG

45

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

gettingbored wrote:

Strange, I flipped the nut and twisted it on good, then added a dab of super glue to make sure it wouldn't move. Still looks like I'm getting banding though.
https://dl.dropboxusercontent.com/u/8410101/IMG_6646.JPG

What is your layer height set to? That looks like the periodical round off error that occurs if you don't set the layer height to a a number equal to a step/micro-step.

Because you're still using the 5/16" rod, your layer height should be:

.1   =    0.09878   or   0.1058
.2   =    0.1976     or   0.2046
.3   =    0.2963     or   0.3034

you can use the RepRap calculator for other layer heights:
http://calculator.josefprusa.cz/#steppers

To print or, 3D print, that is the question...
SD3 printer w/too many mods,  Printrbot Simple Maker Ed.,  FormLabs Form 1+
AnyCubic Photon, Shining 3D EinScan-S & Atlas 3D scanners...
...and too much time on my hands.

46

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

That's too bad to be rounding error (in my experience). The aluminum platform has a self-clinching nut at bottom side (quite different from old platform), so I don't think he has it wrong. Just the rod seems to be shorter than necessary to keep nut on in that orientation.  Perhaps you can make a retainer to hold it the other way around, but then I see no reason to use a well nut (vs. a plain nut).

47

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

pirvan wrote:

What is your layer height set to? That looks like the periodical round off error that occurs if you don't set the layer height to a a number equal to a step/micro-step.

Because you're still using the 5/16" rod, your layer height should be:

.1   =    0.09878   or   0.1058
.2   =    0.1976     or   0.2046
.3   =    0.2963     or   0.3034

you can use the RepRap calculator for other layer heights:
http://calculator.josefprusa.cz/#steppers

spapadim wrote:

That's too bad to be rounding error (in my experience). The aluminum platform has a self-clinching nut at bottom side (quite different from old platform), so I don't think he has it wrong. Just the rod seems to be shorter than necessary to keep nut on in that orientation.  Perhaps you can make a retainer to hold it the other way around, but then I see no reason to use a well nut (vs. a plain nut).

Hummm well I got a regular spring that fit the rod, and tighten the nut onto it when the Z was homed. Looks like about half the nut is threaded when homed. I'm not sure why my Z rod seems shorter than other peoples. The spring is crazy compressed too. See here:
https://dl.dropboxusercontent.com/u/8410101/IMG_6658.JPG

Then I used a nut hugger https://dl.dropboxusercontent.com/u/841 … G_6658.JPG to hold it in place. See here:
https://dl.dropboxusercontent.com/u/8410101/IMG_6662.JPG

so I'm going to see if that will work. If not then I'll try changing the layer height to try to accommodate for the potential rounding problem. I'm gonna start a test print now and then I'll post back.

48

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

I really like this ease of this solution, easy to find parts and a self printed nut hugger, but isn't that nut adding a significant amount of friction to that screw action?

49

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

Gomisan wrote:

I really like this ease of this solution, easy to find parts and a self printed nut hugger, but isn't that nut adding a significant amount of friction to that screw action?

The collective "we" have been using this type of a solution for a long time. It has been thoroughly tested. Generally though, add grease to the system to keep friction down.

SD3 w/ mods:
Glass bed with QU-BD heat pad upgrade, threadless ballscrew w/ 8mm smooth rod, spectra line belt replacement, lawsy MK5 extruder, Lawsy replacement carriage, E3D hotend, Ramps 1.4 w/ reprap discount controller, DRV8825 drivers, 12v 30A PS, Acrylic case, Overkill Y-idlers, Filament alarm, Extruder fan + more.

50

Re: Poor Man's Anti-Backlash Nut - No Assembly Required

gettingbored wrote:

I'm not sure why my Z rod seems shorter than other peoples.

Actually, I was wondering why the rod is longer than it absolutely needs to be. How recently did you get printer? Mine was first batch with new platform, I think (May-ish). Perhaps now that SD switched to the new platform for good, they've made all other parts match (and if that's the case, I should probably post a caveat on that thingiverse page).