Yes. I was hoping that Marlin would have support for closed loop steppers, but it appears it doesn’t. I’m thinking about using a Teensy 3.5 (120 MHz 32 bit ARM cpu) to read the signals from the encoders and tell Marlin the actual position. Or, hook up the stepper drivers to the Teensy as well, intercept the step/dir signal from Marlin, and then command the stepper with the Teensy. Low latency and accurate timing is going to be key though.
The tape measure pulleys would be fixed in position (aside from being able to swivel around to follow the movement direction of the belt). You’d need to know the exact distance between them. I think that’s all. (In contrast to the reverse-delta idea, where there are a lot of parameters you’d need to know). Three (non-colinear) points always form a plane. Make sure the router always stays on one side of that plane. Pick a point on that plane as your origin, and the coordinate system is fully defined. Now, use a probe to find the workspace coordinate system. You can then translate back and forth between the two.
Making the machine much more rigid would cost lots of money. If my idea works, you can built it for $50-$100 depending on the components you pick. Like Jamie, I’d like to see how far I can go with low-ish stiffness using a closed-loop solution.
Very good point. I’m not sure. I do know that squareness can be a lot better than what you can measure manually. I also know that belt stretch is real, especially on bigger machines. Perhaps the light load of a finishing pass makes it less of an issue.
Skipping steps is not my main concern, but it would be nice to catch issues like I had with my Z axis falling 20mm. It would be best to just kill the job automatically (and remember how far it got so you can restart later). It would make me feel a lot safer.
Also, a moving stepper is always lagging the ideal angle. The more torque it needs to use, the larger the lag angle. If the lag angle gets too big it “jumps” to the next full step and that’s what skipping a step is. Skipping shouldn’t happen, but the lag angle will definitely vary depending on the load. One 1/32 microstep with a 1.8 degree stepper and 16T pulley is 0.005mm. If it can lag up to 16 microsteps before skipping, that would mean max 0.08mm of lag before a skip. It’s a small effect, but lots of small effects add up.
I’m thinking of two possibilities: 1) Mount each tape measure in a different corner of the MPCNC but at a decent height above the workspace. Or, 2) mount two in adjacent corners more or less at workspace height and mount the third high above the center of the workspace. I think I’ll try option 1 first.