I have a classic C-Beam XL build. It has Tr8*8-2p lead screw and given the micro stepping and steps per rotation of the motor, in theory I have have a steps / mm of exactly 200. However, it is actually much closer to 198.23. I can't figure out why it would be off by nearly 1%. What do other people have ? It is not backlash in that I measure this over a large distance and the backlash is less than .2 mm. I don't think I am loosing steps or anything - if I do lots of short moves in one direction then a large cumulative move back, I get to the same spot. If I move to the same location many times it is exactly repeatable. All my cuts are coming out well and seem the right size - I'm just really confused on why I would have this 1% error. When I look at specs on ACME lead screws, I don't know exactly what i have other than they came from open builds but it does not seem like any of them should have this much lead error. Few more details I'm using the DQ542MA Stepper Motor Driver stepper motor driver. Stepper motors are NEMA 23 Stepper Motor - High Torque Series and driving it from Arduino running a not too old version GRBL. Thanks for help.
Once I calibrated my Lead, it ended up being just under 199 steps/mm. I don’t think the screws are dead on the listed spec, which is why you see the slight difference. The important part is that it moves exactly as much as you tell it to move.
These are 'consumer' leadscrews, made by rolling usually. With this process there is always some slippage which means the pitch is not exact. This is ok, what we do need is the same pitch all along the rod so that 1 turn = 7.9mm (for example) all the way along the thread, we can easily calibrate for that. Industrial machines use ballscrews which are ground to shape, but they are still only as accurate as the machine that made them. And that is why industrial controllers (and LinuxCNC which is free but very good ) there is the facility to calibrate all along the length of the leadscrew. So if the first few inches are a bit short and the next few a bit long and so on, the software compensates on the fly so that the tool moves (closer to) the desired distance. There is not enough processing power nor memory for GRBL to do this. Mach3 might be able to do it. So we are left with just adjusting steps/mm to give the most accuracy over the longest distance we can measure on our machine and that will have to be good enough. I tried calibrating using a dial indicator. Mine only has 10mm of travel but is accurate to 0.01mm . Do not do this, it gave me some very strange results with terrible repeatability. Just measuring along a standard steel rule gave me the best results. I also use a spring balance to tension my belts so they are all the same and a known value, and this also helps to have a consistant amount of belt strech.
Thank you guys - very useful and I had no clue that things like LinuxCNC had the compensation files for this.