Why not simply FIX your machine? A properly designed, properly operated stepper system will NOT lose steps. Encoders are totally unnecessary, and are nothing more than a band-aid to hide the real problem. Lost steps are ALWAYS a direct result of attempting to operate the motors beyond their capability. Either slow down to stay within the machines capability, or improve your stepper system (bigger motors and/or better drives and/or higher voltage) to make it perform the way you want.
Regards,
Ray L.
Thanks for the feedback. I agree that fixing the machine is the best option but ignoring a tool that I could use to help learn more about machine limits is just as stupid as adding a bigger spindle to a cheezy eBay machine in hopes it will cut faster. I have been continually tuning things as I go, learning what this machine can and cannot do but I have no clear way to determine what effect the changes produce without ruining work, which I can't really afford any more. I have a cncrouterparts 24x48 kit machine with R&P drives on X and Y and lead screw on Z. I've checked and re-checked rail bearings to make sure they are zero play but aren't binding, varied acceleration and max IPS values in motor tuning, changed pulse widths and even experimented with Sherline mode. What I've determined is that even with fairly high accel and max IPS values I don't loose position just jogging around or under light load, even when rastering, so it has to be router kickback and/or too high a feedrate for bit/material combination that is overloading the drive motors. I started my tuning by following chip load charts and quickly discovered that with larger bits (3/8">) I cannot even begin to approach the feed rates necessary to stay within recommended chip loads for larger bits so my concern now is to find a feed rate that cuts without bit burning. Especially on hard to cut materials like plywood. I toasted a brand-new router motor and a good 3/8" compression bit, and even got a small fire going while learning about heat build up. But, to do that I need a way to accurately determine exactly which moves are causing lost steps and I need to determine that limit
before the work is ruined. Is accel set too fast, pulse width wrong for my controller, router RPM too low feed rate too high? Would an air blast to clean out deep cuts be helpful? All questions that the information an encoder can provide will help answer. If I do upgrade motors I'll probably get away from Mach3/Windows altogether and go to a Linux solution so I can install and use feedback steppers. But I don't really see that happening.
Finally, I agree that closed loop is not a way to overcome poor machine setup and/or tuning. But encoders can also be a very a useful tool to help one learn and explore machine limits without destroying work in the process. And that is what I'm after. The pseudo offset-update-regen process I noted would only work if there were only very occasional positional losses, if the machine were already tuned and running at its limits. For one thing the machine would continue to run till the buffer were empty so any correction would come as much as 8 seconds after the error was detected. If the machine jammed that process could actually cause machine damage, especially if it continually updated the offset and kept retrying to move. And, the first move after a regen would need to be only a very few steps to be useful, otherwise it would destroy the very work I'm trying to save. It could prevent continual positional drift in a long run though. But it definitely won't make the machine cut any faster.
I guess what I was asking is if there is a way to get inside the Mach process and set breakpoints or triggers on events etc. Most software like this has some kind of built-in API hooks so one can add subroutines to the main processing loop and trap different conditions or insert loops at various logical break points. Mach must have some kind of facility like that.
Tom