looking to tweak a working system for more accuracy

More
01 Dec 2025 02:05 #339540 by dog
Hello all.  It's been a couple of years since I got my machine, a 3 axis knee mill with steppers and linear encoders, working and I'm now finally getting around to something I've been wanting to do for a long time but I've probably forgotten most of what I learned while setting up this system and would rather not break it so I thought I'd ask first before I start tweaking the cfg/ini files. 

The goal is to increase the accuracy.  When I command it to go to a position it gets close (within .001) but I'd like to halve that if not better.  Do I remember correctly that this is the DEADBAND value in the .ini file?  It's presently set to .001 (at each joint), I have 5um encoders which my notes say corresponds to .0002" so I'm thinking I could go to a DEADBAND value of .0005 and maybe all the way to .0002.   My stepper controllers are presently set at 200 steps/rev, I can increase that by A LOT with DIP switch settings.  I have .200"/rev leadscrews and 1:2 pulleys (big one on the leadscrew) so one motor rev is .100" of movement.  At 200 steps/rev that corresponds to 2000 pulses per inch which is what I have for the STEPGEN_SCALE value.  That means I have .0005" per step.  So that has me worried that changing the DEADBAND value to .0005 might cause it to start oscillating since I'd be requiring that it gets withing one pulse.  Does it make sense to change the stepper controller DIP switches to 1000 steps/rev  and the STEPGEN_SCALE to 10000 to avoid this?  That would change it to .0001"/pulse which is smaller than the encoder.  Does the position feedback handle the situation where it sends multiple pulses before it sees a change in the encoder?  If I change the DEADBAND and STEPGEN_SCALE values in the .ini file do I have to change anything in the other files to correspond with this? 

Am I correct that this likely changes the max speed I can run at.  What breaks it I try to jog it too fast.  I'm presently using these values:

STEPGEN_STEPLEN = 2000
STEPGEN_STEPSPACE = 2000
STEPGEN_DIRSETUP = 2000
STEPGEN_DIRHOLD = 2000
STEPGEN_DIRDELAY = 4000
STEPGEN_MAXVEL = 0.25
STEPGEN_MAXACCEL = 0.25

BTW, all three axis are the same.

thanks in advance for any input
 

Please Log in or Create an account to join the conversation.

More
01 Dec 2025 13:36 - 01 Dec 2025 13:37 #339581 by langdons
Perhaps increasing the driver supply voltage will improve high speed performance and ensure lost steps don't happen.

If you want the accuracy to be greater than that of the encoder, I don't think your encoder will be of much help.

High-precision stuff is metric, please use mm, even if you are in the US, though if your whole system is imperial, I guess you have no choice.

A picture might be nice.

Please also post some system info (LinuxCNC version) and your HAL and INI files.
Last edit: 01 Dec 2025 13:37 by langdons.

Please Log in or Create an account to join the conversation.

More
01 Dec 2025 20:13 #339608 by unknown
Regarding Imperial vs Metric for accuracy.
Since Mr Johansson decide to use 25.4mm as the standard for 1 inch when producing his blocks, around the 1930's 16 countries started to use this as standard conversion, including the USA and UK. This was officially adopted world wide in the 1960s.
So basically an inch is defined as 25.4mm. Therefore it matters not whether one chooses metric or imperial to work with. As long as the machine is up to the task, ie in a state mechanically and to be pendantic tested and calibrated via a NIST certified testing facility you will get the required accuracy.
Another thing to consider whilst microstepping is great for smoothing movement it does not guarantee any linearality over a complete revolution. Another thing is the linearality of the lead screw it self, the stew itself may require mapping to help with commanded position and actual position reported by your scales.
Rolled ballscrews may not give the accuracy you are seeking.
So much to consider when aiming for um accuracy, without even thinking of thermal expansion of the cast iron vs lead screw material and all the boffin subjects.
But first port of call would be to assess the machine mechanically, check linearality and this should give you a baseline of what is realistic, then attempt progressive changes with much testing.
Your ideas do seem like a good starting point and only testing will confirm.
The following user(s) said Thank You: langdons

Please Log in or Create an account to join the conversation.

Time to create page: 0.109 seconds
Powered by Kunena Forum