Backlash and Slack Compensation [SOLVED]

Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Backlash and Slack Compensation [SOLVED]

Post by Jet »

I'm having an issue with Backlash on the machine, so I'm considering just the X axis for now
First, I've changed the acceleration to 1 and the speed to 1, and small moves speed to 10 to reduce camera movement from inside the casing due to inertia etc., as that's another issue that was compounding the issue.

I've also tried everything from belt very loose to very tight with the same results. Also, there's no slippage on pulleys, belt attachments, everything is tight including the pulley on the stepper. Also, the 4 bottom rollers wheels are tightened to the point where rotating them by hand makes the gantry move with no slippage of wheel.

Slack compensation is enabled, Squareness correction is 0.0002380952

Here's what I'm experiencing, moving just in X from the middle of the axis.

From center X, 100mm Right and 100mm Left = 0 positional error
From center X, 100mm Left and 100mm Right = 0.1mm positional error (i.e. after the 2 moves it's 0.1mm to the left of where it was in the previous move)

Both are repeatable and it returns to the same position, i.e. it's the change moving right from center to left from center that shifts the head by 0.1mm to the left. I.E. What's it's exhibiting is typical backlash.

Do this with 10mm moves, and it's improved, but still has about 0.05mm error. At 4mm, 1mm and 0.1mm moves, there is no error.

I.E. It seems that the 0.4mm backlash compensation built into Slack Compensation X/Y is not enough to undo the backlash for larger moves...

Which indicates that the backlash is not constant, and larger moves introduce larger backlash.

Is there somewhere I can increase the 0.4mm backlash compensation used in the Slack Compensation? Or any ideas on what could be causing such an effect or how to mitigate it?

It's showing up as an issue on positional repeatability on the machine, because different approaches to a position end up with different results. It also shows up a errors in nozzle calibration and positioning.
Last edited by Jet on Tue Nov 27, 2018 6:09 am, edited 1 time in total.
JuKu
Site Admin
Posts: 1110
Joined: Thu Feb 14, 2013 3:06 pm
Location: Tampere, Finland
Contact:

Re: Backlash and Slack Compensation

Post by JuKu »

Hmm. Your values seem to be fine (exept when I tested those I found that very slow acceleration values trigger timeout, but thats another issue and for me to fix).

> to reduce camera movement from inside the casing due to inertia etc.,

Do fix the camera cable, so that machine moves don't cause the (possibly loose) camera electronics to shift inside the chassis. That is all that I can think of right away. Assuming this doesn't fix the issue:

-is the error cumulative? When you do the moves several times, does the error stay the sama or does it increase with the number of repetitions?
-do you see any perioidity in the error? You are looking for errors for 40mm period (pulley revolution) or approx. 72mm (revolution of V wheels, measured by eye).
-does the direction matter, do you get the same error from left-right and right-left moves?

(For reference, my speed settings for X and Y are acc= 4000 and speed= 16, small moves speed 150)
Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Re: Backlash and Slack Compensation

Post by Jet »

JuKu wrote:Do fix the camera cable, so that machine moves don't cause the (possibly loose) camera electronics to shift inside the chassis. That is all that I can think of right away. Assuming this doesn't fix the issue:
Camera cable is attached at a few places, and doesn't move unless touched.
Camera module inside the case moves under fast movement / fast acceleration due to interia. Hence I reduced the speed to a crawl to remove that error for the purposes of isolating to pure backlash.
JuKu wrote:-is the error cumulative? When you do the moves several times, does the error stay the sama or does it increase with the number of repetitions?
Error isn't cumulative. Error is 100% accurate in position and repeatable. I.E. can move to the right and back to center multiple times, and when it returns to the starting position it's perfectly positioned. But then move to the left and back to center and it's positioned 0.1mm to the left of the center. If I then move to the left and back to center multiple times, it's always exactly 0.1mm out. Then move to the right and back again and the error disappears. I.E. It looks like typical backlash.
JuKu wrote: -do you see any perioidity in the error? You are looking for errors for 40mm period (pulley revolution) or approx. 72mm (revolution of V wheels, measured by eye).
Good thought, I'll repeat with 40mm and 72mm moves to see if the issue goes away and report back.
JuKu wrote: -does the direction matter, do you get the same error from left-right and right-left moves?
Lets call 0mm the center (gantry is infact positioned halfway, 0mm is just my arbitrary reference to avoid confusion)
center(0mm) -> right -> center (0mm)
center(0mm) -> right -> center (0mm)
center(0mm) -> left -> center (-0.1mm)
center(-0.1mm) -> left -> center (-0.1mm)
center(-0.1mm) -> left -> center (-0.1mm)
center(-0.1mm) -> right -> center (0mm)
center(0mm) -> right -> center (0mm)

The way the center is approached at the start also matters, i.e. wether I approach the center from the left or right before starting the above sequence.
Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Re: Backlash and Slack Compensation

Post by Jet »

JuKu wrote: -do you see any perioidity in the error? You are looking for errors for 40mm period (pulley revolution) or approx. 72mm (revolution of V wheels, measured by eye).
I've tried moving 40mm and 72mm, the 0.1mm error still persists. Also, thinking about it, as the error is apparent at the center point, the pulleys / wheels would always be in the same place unless they were slipping (which they're not). I've also verified pulleys and v-wheels aren't slipping by marking them, they move and return to the same mark.

Incidentally noticed (maybe) another issue. To move 40mm and 72mm I had to use Relative positioning and pressing GO.

When I move using relative positioning, slack compensation only happens when moving from right to left, it doesn't happen moving left to right. However when using F5 / F6 move left and right, slack compensation happens on both. Is this deliberate?
Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Re: Backlash and Slack Compensation

Post by Jet »

Here's a video of the issue.

Move right and back to center x 2 by 100mm (note it returns precisely to the starting position)
Move left and back to center x 1 (note it's now off by approx -0.1mm)
Move left and back to center x 1 (note, still off by approx -0.1mm)
Move right and back to center (note it's now back to 0mm error)

The white piece of card above the ruler has a knife cut in it to get a finer line to show the error better. Slack Compensation is enabled.

https://www.dropbox.com/s/zd8oxpmouo20r ... e.mp4?dl=0
Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Re: Backlash and Slack Compensation

Post by Jet »

More information on this issue.

I've compiled the Liteplacer code and changed Slack Compensation from 0.4mm to 1mm, 5mm, 10mm and 20mm

Issue is reduced at 10mm, and completely gone at 20mm of Slack Compensation.

I.E. It looks like it's backlash, however it's a considerable about of backlash, and 20mm of backlash compensation isn't a practical solution.

The only possible reasoning I can arrive at for this is that there's a tension build up on the belt on one side or the other depending on which direction the axis is moving in, and it takes 20mm of travel to remove it.

Any ideas, or is everyone exhibiting this amount of backlash? Thanks
JuKu
Site Admin
Posts: 1110
Joined: Thu Feb 14, 2013 3:06 pm
Location: Tampere, Finland
Contact:

Re: Backlash and Slack Compensation

Post by JuKu »

Good diagnosis with the correction amount. I suggest loosing the belt and checking that the gantry moves easily and all idler wheels roll without friction. When putting the belt back on, don’t put it very tight. I’m thinking that maybe a tight belt is flexing something?

> is everyone exhibiting this amount of backlash?

No. I have more than you do, but it is fully eliminated by the slack compensation. I do experiments by targeting the camera over something it can measure and using the measure button on camera setup. My machine is repeatable to the accuracy of the optical system (better than half a pixel).
Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Re: Backlash and Slack Compensation

Post by Jet »

JuKu wrote:I suggest loosing the belt and checking that the gantry moves easily and all idler wheels roll without friction
Checked, no issues.
JuKu wrote:When putting the belt back on, don’t put it very tight. I’m thinking that maybe a tight belt is flexing something?
Tried at a few levels of tightness (apart from the obvious too tight or too slack, error is consistent at all levels of tightness).
JuKu wrote:I do experiments by targeting the camera over something it can measure and using the measure button on camera setup. My machine is repeatable to the accuracy of the optical system (better than half a pixel).
Thanks for that tip, I've now got greater accuracy in measuring the error...
I've replaced the cameras (thanks) and removed belts, checked pulleys, v-wheels check everywhere for flex and can't arrive at an answer.

The actual backlash in the machine (measured with Slack Compensation off) is: X: 0.168mm, Y: 0.227mm

With Slack Compensation on, I'm left with an error that appears similar to Backlash, but varies according to the distance moved in the opposite direction, i.e. Variable Backlash.

X Error: 200/100mm: 0.072mm, 10mm: 0.048mm, 4mm: 0.024mm, 1mm: 0mm
Y Error: 170 / 100mm: 0.071mm, 10mm: 0.024mm, 4mm: (Ctrl-Alt doesn't work in one direction), 1mm: 0mm

Changing acceleration rate / speed makes no difference to the above error, neither does belt tension (within reasonable limits) or stepper current.

What are the specs on the belt? Any chance you have a different belt to me? It's almost like there's some non-linearity of stretch in the belt according to how far moved.

On a side note. Move 100mm right, and left, then left and right, then switch off slack compensation and use Ctrl-F6 to move right 7 times (0.07mm) and it's in the correct position (jumps to the right position on the 7th move). I.E. If I remove the variable backlash manually, it does get removed.
JuKu
Site Admin
Posts: 1110
Joined: Thu Feb 14, 2013 3:06 pm
Location: Tampere, Finland
Contact:

Re: Backlash and Slack Compensation

Post by JuKu »

I'm stumbled with this, I can't think of a probable cause.

> What are the specs on the belt? Any chance you have a different belt to me?

I don't think I have a better spec than "GT2 belt, 6mm". I've always used belts from Robotdigg, but it of course possible that the manufacturer or the product has changed. But talking about belts, any chance that there is looseness at the belt attachment? Far fetched, but could it be that where the belt is fixed there is any play? Maybe the tear drop shape is changing or there is a belt tooth that happens to align on a plate edge or something like that?

> jumps to the right position on the 7th move

By measurement results or does the machine move a bit (you just might see it on the camera)? The 0.07mm is about a pixel in the camera.
Jet
Posts: 100
Joined: Mon Apr 17, 2017 4:13 am

Re: Backlash and Slack Compensation

Post by Jet »

JuKu wrote:But talking about belts, any chance that there is looseness at the belt attachment? Far fetched, but could it be that where the belt is fixed there is any play? Maybe the tear drop shape is changing or there is a belt tooth that happens to align on a plate edge or something like that?
Tooth sits on the plate and is locked in place by the gap between the teeth against the corner of the plate on both corners of the plate. It's also the same on the other attachment. Belt is clamped with 2 cable ties tight, and there's no visible movement detected when manually moving.
JuKu wrote:By measurement results or does the machine move a bit (you just might see it on the camera)? The 0.07mm is about a pixel in the camera.
I do see it move in camera, i.e. the error isn't the estimation, I can see the dot is also not in the correct place, and I can also see the backlash in the positioning of the dot too.

Still stumped. It's almost as if the software isn't compensating, however I've checked the code, it all looks good and approaching from the same direction is a correct way of dealing with backlash.
Post Reply