Aiming for high precision - adjusting steps per mm and my squaring method

Hi,

Here is my build: Toolmaker build from germany

My machine travel is 50x115cm, so the X-belts are pretty long. When I tightend these, I noticed that they easily expand a few mm.

I aim for high precision or at least good repeatability.
But my parts dimensions at the first test cuts where all a bit too large, in both direction (X/Y) and on outside and inside contours.
To exclude the flexing of the tubes in my tests, I did a roughning pass first with 0.3mm extra and then a finishing pass. So I got a minimum deflection of the machine
I also played a bit with reducing the tool diameter, but I didnt get better.

Then I got it: Actually the stretch of the belt needs to be compensated.

So I recalculated the steps per mm and came out at around 199 steps per mm. Since then I got really precise parts, tolerance lower then 5/100mm at a length of 200mm.

The formula is: new steps/mm=(desired length/actual length)*actual steps/mm.
Works perfect now, even on my big machine and with high cutting forces.

The next days I will test the accuracy at longer distances.

I also got the core of my machine perfectly square. At least in the area I made my tests I got perfect 90° cuts.

I did the squaring of the machine as following:
I put the 2 tubes in the core but did not put it on the frame, yet.
I adjusted the angle as described in the squaring section with the help of a precise 90° tool square. Because I could move the rails freely, this gives much better feeling of the tension and you can set the angle without the influence of the trucks.
In my understanding, having the core rails perfectly perpendicular is much more important then having them parallel to the frame.
With the described method in the manual, I did not get it that good.

@vicious1 what do you think, maybe this can be updated in the manual? The only thing you need is a 90° angle, but this doesnt need to be a tool sqare at all. Because of the offset of the tube its not so easy to check, but if you aim over the square and move your head in a position that only a small lightgap is visibible between rail and square, you can get this really accurate. Good backlight helps.

Another thing is, I checked the bow of every tube and put the bend up, so this does not influence my XY-accuracy.
Also my very rigid frame helps a lot.

Is that common to adjust the steps per mm? I havent found anything similar.
I read its not recommended to use steel reinforced belts…for what reason? I think these flex less then the fiberglas ones.

Ciau,

Stefan

The steel inside fractures due to wrapping around the pulleys.

1 Like

okay, I can imagine, the pulleys are quite small. But did this actually happen at a mpCNC somewhere?

1 Like

Yes! After cutting several cribbage boards the cholesterol cause 3mm movement several thousand move in on spot in the belt just like strssing a electric w>re by had

Just for interest, how does it look? Do you have a photo?

It has, there’s been some mention of it in the forum. Not sure what search term(s) would lead you there. I believe the problem is the steel work hardening wrapping around those small pulleys.

I don’t it just left a strechy spot in the between the wires broke

1 Like

My primo is just few centimeters larger than yours in each direction. My steps/mm were spot on at the rail with no load, exactly what I calculated they should be.
I used a dial indicator clamped to the rail pushing against the core. Others have used a bamboo skewer or something else sharp and point it at a ruler (not touching, though).
There is a difference between part accuracy and machine accuracy. I prefer the machine to be as close to dead - nuts as I can get it, then compensate for the part with cam. Otherwise, it’s easy to make adjustments that delivery correct results on one scale, but are overcompensations on another scale.

1 Like

Not common at all. Did you get your belts from me? Fiber reinforced belts at the tension we are supposed to be using should show very little stretch. ~7lbs

If anything your parts should always be too small. I suspect you over stretched your belts, extremely. Slight slack, machine flex, router/collet/tool run out should add to smaller parts (larger holes).

They break, every single time they are used on either of the V1 CNC’s typically in under a few hours use. This is not the right application for them. At the correct tension there should be no difference, and the forces we use on them fiber is the correct choice.

If your trucks are sitting well, on a build your size I can’t imagine how my method would not be much more accurate that any square measurements on offset tubes. Unless your bearings are too tight and not moving freely. As for the instructions I tried both ways, I have a small square and a large square, the truck measurements where far more accurate for me. Leaning your head changes the light gap. (how we used to do it)

Little, but more than nothing. Maybe my belts where a bit tighter then needed, but I did not overstretch them. Today I loosened them a bit, just that they dont hang down and then a bit more extra.
Then I made a exact measurement with a long ruler to exclude all other factors like cutting forces or deviating tool diameter.
With 200 steps i get 0,1% more travel and 0,1% bigger parts I want. With 199,8 steps per mm its fine.
That means the belt expands 1mm per meter at “normal” tension.
I got the belt from China, I doubt that its very different to yours.

I think its an easy thing to adjust and a little help for better precision!

I say it depends. If you mill outsidecontours CCW, the resulting force on the cutter goes inwards → smaller parts.
Going CW its the opposite. That happens even on heavy duty industrial steel milling machines, but sure the effect in wood tends to zero.
Look at this graphic. The small long arrow shows the resulting force: Sandvik Coromant

With belt stretch parts get always bigger, respectively it can compensate other effects.

Good to know that steel inforced belts are not suitable.

As for the instructions I tried both ways, I have a small square and a large square, the truck measurements where far more accurate for me. Leaning your head changes the light gap. (how we used to do it)

My thought was with your method, you have many sources of measuring errors:
You have to get the frame to a nice rectangle first (at least 6 measurements), then you go for parallelism between frame and core rails (at least 4 measurements).
Just if all of it is measured right, the 90° angle results at the core rails.

I want to mention that reading a absolute measurement on a pipe with just a ruler is a pain, (if you cant measure at the end) because the reading depends on the angle you look at. No problem for me, because I have big calipers, but maybe hard for beginners.

If the frame is not perfect rectangular or one measurement gets wrong, the error gets reproduced at the core.

With “my” method, I just need to get the outer rails parallel.
I dont even need to read an absolute value from the ruler, cutting a piece of wood or sth. as a spacer will do it even better. If the frame is a slight parallelogram, that does not matter.
Then I make the core rails 90°, fix it on the trucks. Finish.
To control a angle or distance (and than adjust it) its much better then measuring. Thats a thing I always respect as a toolmaker.

Maybe this accuracy discussion is not relevant for the majority, but I wanted to figure out how far I can get with this relatively flimsy machine.
Its also fun for me to chase the fractions of a millimeter.

I usually work on old milling machines or lathes that are between 1 or 2 tons weight :slight_smile:
Same problems there actually with deflection, thread pitch slightly off, vibration, play in the guides or axis not perfectly alingned.
But either with much higher cutting forces or higher precision <0,01mm.

1 Like

In fairness, you kinda want to get the other stuff right anyway. And isn’t most of the core squareness moot once you put dual endstops on it? I adjusted my trucks until they were close, then dialed in the endstop offsets in about ten minutes. I also spent about an hour adjusting my miter saw, and the primo still gives me squarer cuts.

On a machine as large as yours (and mine) no matter how square you get the core at rest, if you bump it even a little while it’s not powered on one truck will move and the other side won’t. This was true for me even without the belts and stuff on holding the other side still. The trucks just can’t be THAT rigid. I’m not saying you shouldn’t pursue this, just that many of us take the easier route and end up where you want to be.

RE CW/CCW, I’m not sure what counts as vanishing, but I have to cut an extra 0.015 inches on climb milling for finish vs 0.005 extra for conventional. That’s about 0.25 mm different, stacked for 0.5mm from side to side. You mentioned percents, but I didn’t see how big the part is. And this is with my primo that moves as exactly as I can measure with my dial indicator over an inch, my calipers over 6 inches, and my tape measure over the working area.
Hope the hard numbers help.

1 Like

Also, with series wiring the motors on each end of each gantry will ‘cog’ to the nearest 1/50th of a revolution, which is about 0.6 mm, meaning each end will jump up to plus or minus 0.3 when the steppers are energized. If you are trying to dial in squareness better than this, you would need to take it into account. It is a non-issue for dual-endstops. Even hard stops are not 100% foolproof IMO because it takes extra care to truly guarantee that the motors are not off by one ‘cog’ relative to each other.

1 Like

As long as you can measure it and adjust it, we have a winner.

I will keep an eye out for more people seeing this adjustment as an issue and take a look at mine when I have some free time. I actually test mine with the parts output and ~+/-0.5mm has always been way better than I have ever needed so you could very well be right.

Jamie did some belt stretch tests and it does happen. If you want to account for this I would suggest measuring each side to assure they are even or Marlin lets you adjust each step count individually. I don’t really have the means to measure all that accurately. I have a 150mm caliper or a tape measure, but I will rig mine up and see if I run large by 0.15mm/150, it would be good to know.

Well shoot. Jamie am I reading this wrong or are the numbers roughly the exact same? Double-Belt for LR2 0.17% stretch…6mm belts tested though not 10mm.

Maybe we do need to adjust the default steps/mm.

I have a feeling I’m about to learn something…

Adjusting the defaults is interesting. I assume the 10mm belt is less deflection?

I feel like I am always the one arguing against adjusting the steps/mm. Mostly because it should be the last step in adjusting for precision and it makes everything harder to diagnose when you have it offset.

The actual error is often in the form of y=mx+b, where m is things like belt stretch and b is things like backlash or bit deflection. Steps/mm only adjusts m, and if you take only one end point (by measuring the size of a 100mm square you cut in wood), then you will be compensating for b as well, without knowing it.

It is similar to a 3D printer where you adjust your steps/mm for a perfect 20mm cube, but you haven’t calibrated your extrusion yet. You will end up with a 20mm move being 19.8mm, but you’re over extruding 0.1mm on either end.

If someone does adjust the steps/mm and then tries to adjust the extrusion, the error in steps/mm affects the distance between lines and that ends up with the wrong extrusion adjustment, and now you’re two layers deep and you can’t make a 20mm cube or a 50mm cube.

2 Likes

That is exactly how I felt about it.

Then I looked at Jamie’s test again. linear (wait…linear by load, not necessarily length). I really need to see if I can measure this accurately first. I am against this as a default but this might need to be noted somewhere. On the other hand if it is linear with load and length, wouldn’t we be doing a disservice by not setting them correctly?

Uhhgggg, I am not sure what is right.

The only way I have to test this is rigid mount my longest calipers to the axis and do some moves. Feels weird to think I have not tested this very much. I am only ever concerned with square. I have measured the crap out of diagonals (with a tape measure).

2 Likes

The total stretch should be proportional to length and to tension. Steps/mm also is related to distance, so I think tension is the only variable. I am sure you can change the steps/mm to 100.5. I am not sure if that is more accurate for every build.

The “system” we have now is basically to not encourage anyone to tune the steps/mm and then if someone knows what they are doing, they hopefully can find out what to do about it themselves. Stefan found this out. But not everyone will and some will figure it out at the wrong time.

It isn’t a very friendly system. I would rather be more clear and honest, but it does strike me as something that you should only do after you have a bit of experience. Just to make sure you’ve found the other sources of error. I also think Jamie’s web ruler tool is a good way to measure it. Maybe we need to group these things together in a doc and make the whole picture more clear.

1 Like

Agreed. Thanks for bolstering my confidence in the current system.

I think its the opposite. If the core should travel 1000mm, but it goes 1001mm like mine, you have a built in error in the positioning system.
Reducing the steps per mm 0,1% was a good value for me and might work for others as well. If you want the exact value, use the formula above.
The deviation is linear, it was allover (on long and also on short axis) 0,1% more travel then it should be.

Thats why I adjusted it with no load, just bare movement.
All other part deviation, you usually adjust with tool diameter or contour offsets in the CAD/CAM.

I did it on both sides. Either you have a firmware that support different steps/mm for one axis, or, better:
Adust one trucks steps/mm in the firmware first, check the result, then bring the other truck to the exact same distance by adjusting the belt tension. If the belt tension is very different, I would split the difference (or get new belts).
On my machine, I did not had to do this, because it was the same on both truck pairs.

If you measure with your calipers, I expect you will read roundabout 150,15mm real travel instead of expected 150mm

Sorry, I disagree. If I want to drill 2 holes 500mm apart, and its always 500,5 or more, there are primarly no other errors then non compensated belt stretch.
A small note somewhere in the documentation would not hurt. The rookies has to set the steps per mm anyhow.

I figured out after the second part, that there is something wrong in general, but this is with years of experience in machining parts.
A beginner would usually start to adjust the wrong parameters to get the desired result, but this is not replicable and different for every part.

Jepp, I would like to contribute with my measurement and tests.