Welcome! Log In Create A New Profile

Advanced

Missed steps on x+y only at layers with holes

Posted by bobwomble 
Missed steps on x+y only at layers with holes
January 07, 2013 11:27PM
Hello,
On layers with a hole I always get shifted steps by 1 perimeter in the x and y axis that correct at the top of the hole?
It always happens at the same place and always where there is a hole or gap in the layers.
It makes no difference at all what speed I print at, or what my acceleration/Jerk settings are? I ve tried;
1,2,3,4 perimeters
Sprinter and Marlin
Slic3r and Skienforge
Pronterface, Repetier host and Cura
1/8 and 1/16 microstepping
different arduino boards
Checking the mechanical frame- all sturdy and axis run freely
Combinations of all the above.

In the photo looking at the nut trap you can see the shift starts at the bottom of the round hole and corrects at the top of the hole only on 1 side, but it extends all around that side,It also squashes the hole to make it oval, then on top veiw you can see a gap in the perimeter on the opposite side????Argh

some help on this would be appreciated as Ive spent weeks trying to fix it with no luck.
Attachments:
open | download - skipped steps_self correcting.JPG (92.2 KB)
Re: Missed steps on x+y only at layers with holes
January 08, 2013 12:47AM
Are you running backlash compensation?

I'm running Mach3 so I have no idea how to correct for backlash with Marlin or Sprinter firmware.

There is a Lash module in Skeinforge for backlash correction.

Edited 1 time(s). Last edit at 01/08/2013 12:50AM by Dirty Steve.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 05:15PM
Hello Dirty Steve,
Thanks for your feed back,
Ive checked out backlash mechanicly and tightend the belts a bit more, now very tight no slack anywhere, No luck still same problem, ive had a look through marlin and havnt found anything to correct for backlash, but to be honest I dont really know what Im looking for.
According to various web sites, backlash shows up well on circles, however I can print circles with no problems.
Also if backlash why would it only show up at the exact same place everytime?

After printing dozens of the same object, I am pretty convinced It has to be either firmware, mechanical or electronics.
If mechanical I would have thought it would be intermittent or less exact?
If electronics, No idea , could stepper drivers cause this? again i would think intermittent?
Leaves me with firmware?

Sorry I forgot to say im running mendal90, ramps 1.3 with cooling fan directed at stepper drivers, 0.9 deg step motors, t5 belts with alloy 8 tooth pullys, lm8uu bearings,

s/w of preffrence is repetier host v0.82-slicer v0.9.7-marlin, but as mentioned above have tried other s/w with same result?

This problem has consumed way too much time, and now my brain is going all mushy.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 05:33PM
I don't know what is causing the problem, but as a sanity check its worth using this webpage just to make certain your gcode is flawless:

http://www.buildlog.net/gview/index.html

Also a mechanical check that's easy to forget is to check your hotend is completely rigid to your extruder (get it to temperature and try wobbling it, it shouldn't have any play). In fact this would make a lot of sense as the root cause of your problem.

Edited 2 time(s). Last edit at 01/08/2013 05:37PM by konwiddak.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 05:54PM
It's backlash. That is why it shows up in the same place reguardless of slicing software. Tighter belts will not eliminate it.

I fought the same problem for about a month trying to print a Wade's extruder. Backlash compensation corrected the problem.

It shows up because one side of the hole is approached moving in a positive axis direction, while the other side of the hole is approached in a negative axis direction.

A self contained circle will not nessicarily show backlash.

I calculate backlash using a dial indicator, but there is a Lashmaze on Thingiverse. [www.thingiverse.com]

With instructions on [www.woodsmokeworkshop.com]

Takes a little time to measure, but will get you close.

If you do have a dial indicator, I can tell you how to measure your backlash.

Edited 1 time(s). Last edit at 01/08/2013 06:02PM by Dirty Steve.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 06:01PM
thanks Dirty Steve,
I do have a dial indicator- how do i use it to fix this problem.
Just tried thingiverse but page wont load, overloded at moment i guess.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 06:34PM
Don't know about Marlin backlash compensation, sure it's in the forum some where.

You can generate gcode from Skeinforge with backlash correction using the Lash module.

Set up your dial indicator to measure your X axis. In Repetier host go to manual control. You want to pre-load the axis by moving in the meassurement direction before zeroing your dial indicator.

For example: manual send gcode X75, then X80. Zero your dial indicator at X80, then move to X90. If your axis steps/mm is correct, your dial indicator should indicate 10mm, now send X80. The dial indicator will show the negative move (90 to 80) by not completely returning to zero at X80, like 0.03,0.1 ect. The offset from zero is your backlash for this axis.

Do the same for your Y axis. The X position values (75,80,90) are just values where I meassure my machine from.

Z axis backlash is not as important since Z is always moving in a + direction during printing.

I would search for Marlin backlash and try to correct with your firmware, but you can get your prints going with SF Lash.

I'm at 0.07 X and 0.02 Y. They are small values but make the whole difference.

Here is a link about firmware backlash correction at Solidoodle forum. [www.soliforum.com]

Edited 3 time(s). Last edit at 01/08/2013 11:07PM by Dirty Steve.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 08:43PM
Backlash compensation also slows down the feed rate around the corners, because it needs to offset for x/y backlash. I think you should disable backlash and lower your x-y jerk settings. Something like 10 or 15. Move up /down from there. This prevents rapid direction change, as well as limits start speed. I think backlash just hides the issue is all. You really don’t want backlash enabled . x-y jerk speed settings are in firmware configuration.h
Re: Missed steps on x+y only at layers with holes
January 08, 2013 08:53PM
Thanks for that Dirty Steve, I will test it out and let you know the results.

jamesdanielv, thanks for the input, I have tried altering acc and jerk settings and have exactly the same result on every test print. Also makes no diff at 20mm/s or 50mm/s. So I am at a total loss.
By the way jerk settings Ive tried range from 20 down to 8, 8 produces rough prints though and the slipped perimiters are always at the same spot and the same size?.

Edited 1 time(s). Last edit at 01/08/2013 09:06PM by bobwomble.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 10:46PM
@jamesdanielv
Backlash doesn't hide anything, it is a compensation for slack in a reversing mechanical system. Backlash correction does not slow when approaching a corner.

Backlash correction only happens when an axis reverses direction, not when approaching a maximum axis position.

Example: gcode square move

G1 X0 Y0
G1 X0 Y10
G1 X10 Y10
G1 X10 Y0 (backlash takes slack out of Y)hidden Y -.02 but Y position value is still 10 before moving to 0
G1 X0 Y0 (backlash takes slack out of X)hidden X -.07 but X position value is still 10 before moving to 0

Skeinforge Lash compensates with X Y position values. Mach3 corrects backlash by seeing an axis reversal in the gcode and takes up backlash before reversing the axis.

In a stairstep gcode backlash never comes into play as the moves are all in one direction and neither axis ever reverses like this code:

G1 X0 Y0
G1 X1 Y0
G1 X1 Y1
G1 X2 Y1
G1 X2 Y2
G1 X3 Y2
G1 X3 Y3

@bobwomble
You really DO want to have backlash enabled.

Edited 2 time(s). Last edit at 01/08/2013 10:48PM by Dirty Steve.
Re: Missed steps on x+y only at layers with holes
January 08, 2013 11:00PM
It is also possible your acceleration is too high. I think the defaults are x/y 9000. If you have a heavy extruder then set it for 5000 or less. Also max speed needs to be considered as well. Safe max speed should be around 60 mm/s or 3600 to 4000mm/ minute from 12v system.

Here are some other things to check

motor current settings

motor pulleys make sure they are tight and not loose.
Change firmware to disable homing switches after homing. (Prevents parasitic noise from confusing firmware position)
make sure your firmware supports absolute positioning and that the gcode parser uses it too.

Use a slicer like repeiter that shows you a preview from gcode output, so you can be sure the object is not being generated that way by default.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 01:53AM
What kind of belts and pulleys are you using? More flexible belt like t2.5 gt2 or mxl with machined pulleys can help reduce backlash. Printed pulleys are great for inducing backlash as is t5 belt particularly with the original Mendel x axis.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 05:11AM
Dirty Steve: backlash in 3d printing slows down the print around corners because before changing direction, the axis must stop, over compensate for the new direction, then move back, then in the new direction.

algorithms are less advanced for 3d printers concerning backlash. mach3 which has planning and trajectory algorithms built into it still can not properly do circles either with backlash enabled. the only way i can get it to work is with advanced planning from a gcode parser specifically for cnc milling.

With a mill it does not matter that the bit moves away from your cut, and tolerances are close enough to be within 10% over bit size, allowing room to do backlash compensation, and tool paths can be modified because cutting is within tolerance from about any angle cut. with 3d printing, you always have the filament to worry about. It is not as easy to change the tool path to minimize backlash and direction change. infill for example does not always work with concentric cuts, or x/ vs y raster cuts (the type that minimize backlash moves ). typically infill is a zig zag motion, requiring constant x,y direction changes. again backlash compensation never works well with circles.

bottom line you are better off negating backlash rather than dealing with it in a print. sometimes backlash is useful but not for its intended purpose. it causes a slow down of the axis when direction is about to change. pressure builds up from the extruder and a deeper pressure and amount of filament is left in a corner. this allows corners to be more defined with lower resolution 3d printers. but approaching 0.2mm, and 0.15mm printing heights pressure is higher anyways to keep plastic squished, and flow rate precision is a must at these resolutions.


so backlash is only good for low resolution 0.3 and higher, and compensations of 0.1 or less and just for slow down to allow more filament to be squished down.

backlash in this case would be covering up the issue: there is something causing a motor to loose a step or two with the current settings.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 05:16AM
+1 for getting metal pulleys. This will at least eliminate the possibility of poor precision pulleys. you can find them on ebay for cheap.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 10:46AM
jamesdanielv Wrote:
-------------------------------------------------------
> Dirty Steve: backlash in 3d printing slows down
> the print around corners because before changing
> direction, the axis must stop, over compensate for
> the new direction, then move back, then in the new
> direction.

It doesn't go that way at all, maximum +X position, backlash correction, -X move. Backlash does not correct when approaching a maximum, only when reversing direction.

It's backlash..........if you don't believe me, try printing a Wades extruder without it. I've got a scap bin full of unusable ones.

There is not a single CNC shop where a 10% tolerance is acceptable in any way.
Backlash absolutely does not slow feed rate.
Wiki backlash, it is 100% impossible to eliminate backlash mechanically.

I ran a file thru SF with Lash enabled, at no point in the code is there a change in feed rate, backlash is corrected for by adding or subtracting lash values from XY position values.

No backlash is fine if you're printing Yoda heads, but you will get unacceptable results in mechanical parts.

Besides, bobwomble has already tried EVERYTHING else chasing this problem, just as I did.

@bobwomble

I'm betting you can print cubes without dropped stepps and that your infill on circles doesn't guite meet your perimeters all the way around? Backlash......

I print at .1mm and .05mm layers, absolutely no excess material in corners and perfectly round circles WITH backlash.

Edited 1 time(s). Last edit at 01/09/2013 11:02AM by Dirty Steve.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 11:00AM
I'm talking about software that compensates for backlash and the smallest path it makes is for a bit size +10% the program is here [www.grzsoftware.com] and it is called meshcam.

I'm not talking about 10% part tolerances. I'm talking about room for backlash compensation.
I'm keeping the reply short as to free up this thread for its intended purpose.

@bobwomble : do you have a picture of your machine you could post. it will help us understand the mechanical layout, where springs are, how the motors are mounted, types of pulleys, type of extruder, bed, for example.

Edited 1 time(s). Last edit at 01/09/2013 11:10AM by jamesdanielv.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 12:01PM
I have a prusa, with crap lm8uu bearings, crap XL belts, and it's not highly tuned.

I've yet to see any noticable 'backlash' in my prints. Parts that are tricky and meant to be press fits, come out perfect every time. I've done about 3/4 of my extra prusa parts already, no issues with holes. I suppose I'll try the x-carriage next.

So while he may have backlash, to me that looks like too much of a shift in position, like there is something else going on.

Edited 1 time(s). Last edit at 01/09/2013 12:04PM by xclusive585.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 04:55PM
Hello all, thanks for the feed back,
As requested I have added some photos,
Carrige Pic shows the off set at the holes/slots, Bearring shows Circles, all prints at 0.25 layers with 0.38 nozzle

Ive spent a few hours measuring for backlash as per Dirty Steves instruction and I am getting some very strange results,
X75
X80 zero DI
X90 DI reading 9.9 (I asume when I tightend the belt it put my calibration off a bit)
X80 DI reading -0.3 WTF

Repeate proccess several times, same result, The axis is moving further in - than in + or am I screwing something up here?

One thing that has always been in the back of my mind is that there is tension on the belt side of the x ends due to the belt being firm with no compensation on the opposite side. I cannot see any detectable movement but it could be there?
So Temp experiment, Tie Builders line across x ends opposite side to belt. Result No change, But you can see it in the photo.
So today I am going to try changing belts to some old photocopier belts Ive got lying around, but that gonna take a while as they are wider (9mm) so will require a bit of a rearanging.

At this point I really have no idea what the problem actually is, Still willing to try anything.
Attachments:
open | download - Carrige.JPG (70.5 KB)
open | download - Bearing.JPG (73.2 KB)
open | download - printer.JPG (115.7 KB)
Re: Missed steps on x+y only at layers with holes
January 09, 2013 05:36PM
You should get 10mm on your dial indicator moving from X80 to X90. If not, your steps/mm is off. This makes calculating backlash more complicated. Don't know what would cause more indicated movement from X90 to X80. Make sure your probe on your dial indicator is parallel to your axis. A few degrees of angle can throw off measurements or slightly bind your dial indicator.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 08:20PM
Place a tensioner on the x/y belts. You can print out one here [www.thingiverse.com] or search for belt tensioner. There are several kinds. You want all the slack out of the belts to prevent skips. Also I don’t see the top of the printer, a picture of that may help as well so we can see z support up top.

Also when you set up your printer did you right angle everything perfectly? is x and y axis 90deg from each other for example, are the bars strait all the way down, and is z angled at 90deg from x/y upwards? Since this is a custom built M90 machine, or so it looks like, I would guess that the y axis is slightly off angle as well.

Edited 1 time(s). Last edit at 01/09/2013 08:25PM by jamesdanielv.
Re: Missed steps on x+y only at layers with holes
January 09, 2013 11:11PM
Hello All, Here's an update-Success I think, Still printing at 60mm/s too fast for my machine but I am really impatient now.

I think its the belt or pully or combination,I bought them both from same reprap supplier, so I never suspected them,
For any one interested heres the process I went through,
Using Dirty Steve's dial Indicator method I checked the distance traveled looking for backlash, however I discovered that the carriage travel was fractionaly more in the negative direction, thats towards home, but always spot on in the positive direction. for example,
X95
X100 DI reading 0
X110 DI reading 10 (after re-calibrating firmware steps)
X100 DI reading -0.3 ???? that means its traveld back by 10.3mm when I would have expected say 9.9mm or something.
X30
X100 DI reading 0
X110 DI reading 10
X100 DI reading -0.3 as above
I re-tested and re-calibrated everything several times with the same result.

Then I replaced the alloy pully with an old plastic one just too see what would happen
The results turned out just as Dirty Steve suggested showng a 0.08 backlash. Repeat test several times same result.
I then tried a test print, however the plastic pully wasnt up to it and died.
So then I repaced the belt and pully with ones I had scavenged out of an old photocopier as shown in the attached photo.
Test print looks good so far, still printing,
If this print works out ok I will have to replace the y belt and pully and re-calibrate the machine.

Now that I think about it I do recall reading a post somewhere about some alloy pullys not matching belts 100%?

JamesDanielv, I can assure you that everything is square solid straight and the y rods and z screws are perfect etc, That was one of the first things I double checked when I noticed this problem. Yes you are right about the custom build though.
Also I have a belt tensioner built into the x carriage.
Thanks for your input guys, will keep you posted.
Attachments:
open | download - belts.JPG (86.3 KB)
Re: Missed steps on x+y only at layers with holes
January 09, 2013 11:48PM
I had a set of T5 aluminum pulleys, they were kind of junk, switched to GT2 belts, and printed my own pulleys.

No idea at all on the extra negative move travel, could be a bad match between those pulleys and belts.
Re: Missed steps on x+y only at layers with holes
January 11, 2013 12:58PM
Any luck Bob?
Re: Missed steps on x+y only at layers with holes
January 12, 2013 11:35PM
Ok after 3 days of getting the old belts and pullys on, calibraiting, re calibrating and re-checking everything, I can report total success, jump for joy etc etc..

The problem was definatly with the alloy pully, comparing them to the plastic printed one I could see no difference at all, however when I set them up on a bench jig and ran them very slowly the belt wasnt 100% meshing up with the pully teeth after 3/4 turn causing the belt to lift a little bit before meshing back on to the pully, No Idea why it showed up in one direction more than the other.

Having tested for backlash with the new setup I get a consistent 0.02mm on x and 0.03mm on y and I am very happy with that

Big thanks to Dirty Steve and Greg Frost re belts, I havnt tried a test print using SF lash yet, but I plan to try it and see what difference it makes.
Has anyone come up with a good use for all that extra plastic from failed prints yet??

Now back to the never ending task of making my printer better,
Bob.
Re: Missed steps on x+y only at layers with holes
January 13, 2013 02:03AM
Glad to hear that Bob.

I think SF is the only slicer with backlash compensation. Didn't research much about firmware backlash.

With the alloy pulleys, the belt would actually tighten and slack as it would align and mis-align with the pulley. I would imagine you would get different numbers if measuring from a different axis position. When I had T5 belts on mine, I could see the belt humping up as a tooth would contact or pass from the idler pulleys, and the belt to pulley profiles were not very accurate.
Re: Missed steps on x+y only at layers with holes
January 13, 2013 12:18PM
Repetier has firmware level backlash compensation.
Re: Missed steps on x+y only at layers with holes
January 18, 2013 10:01PM
Years ago I worked for a small robot manufacturer. The robots were timing belt drives on all axis with steppers and encoder feedback. One day I was looking at the timing pulleys and I asked my boss if we had problems with position being off a few counts on occasion. He said yes and they hadn't figured out why. I pointed to the time pulleys and noted that the tooth profile on a tiny 15 tooth gear was exactly the same as the tooth profile on the 100 tooth gear. It turns out they sent one of the little gears to their Russian manufacturing partners and they reverse engineered the tooth shape on the 15 tooth and used it on the 100 tooth. Because of the different radius the teeth have to be a very different shape to account for the way a belt wraps around the pulley.
Sorry, only registered users may post in this forum.

Click here to login