Closed loop steppers

Same underlying technology - the servo motor also increases torque with current, it’s just that the current is basically regulated based on position - if off position (overshoot or undershoot) the current increases in the correct direction to bring it back into the correct position. Put force on it to bring it out of position and the current increases to bring it back into position. In a CNC application like this, they’re usually “overdamped”, which prevents the overshoot case as long as you aren’t actually hanging onto the spindle and trying to drag it around.

This had some promise, but I guess never really got traction:


1 Like

Back to steppers. ShopBot has options for both open and closed loop steppers on their more expensive machines. For the closed loop option: “With constant positional feedback to the drivers, if an obstruction is hit or cutting too fast the drivers will attempt to correct the position of the motors before activating an alarm, stopping the machine and displaying an alarm on the monitor. Once reset and homed, cutting should be able to be resumed.” But, isn’t “positional feedback” likely just motor shaft position feedback from an encoder?

1 Like

Wouldn’t rails like these enable to accurately define machine’s position?


That’s more like what I think of as “position feedback”, but the position sensors would need to be fast and accurate enough for the feedback loop. Torque control of the drive motors would then provide the ultimate machine! Does anyone do that?
OOPs - the controller would need to monitor spindle power too!

1 Like

Adding some sort of absolute linear encoder (like BartK’s linear slides, above) would be cool, but integrating the inputs from those and motors is way above GRBL’s abilities. I think some people have done similar with LinuxCNC, but a minimal LinuxCNC controller with modern hardware is around $500. In theory that could drop to ~$200ish with a RPi 4 as a controller, but I don’t think it’s really stable enough yet.

I have no idea how much those HiWin encoders cost, but I’d be amazed if a full set of them could be had for under $1k. I’d guess that they’d be closer to $1k each. I’m not really sure what that’d buy you in an aluminum-extrusion CNC, given how flexible the frame is. There’s no point in being able to measure axes to the nearest micron when the whole frame can flex 50-100 microns.

They’d be a great solution for the “my homing switches aren’t accurate enough,” though.

Monitoring spindle + drive power is probably interesting, though. I’m in the middle of moving my HDZero from GRBL to LinuxCNC, and I’ve included spindle and individual stepper power monitoring in the build. I should be able to collect power stats at ~1 kHz (although I’m not sure how useful that is with AC). That should be enough data to detect things like burying a 1/4" endmill in aluminum before the motor completely stalls and breaks the endmill, but I’m not sure what I can really do with that data without creating a false-alarm problem that’s bigger than my broken-endmill problem. It’ll certainly be useful for monitoring and optimizing cutting performance, though.

Based on this, I doubt that those types of encoders are accurate enough over the required X and Y spans to be of much use anyway. Some sort of optical or independent mechanical sensors are likely necessary.

IMO it would be difficult to measure stepper motor power and there’s likely little value in measuring it. But, there’s lots of value in measuring and monitoring spindle power and it’s easy to do.

If you used the linear magnetic encoders from AMS you can get 14 bit positional accuracy for every 2mm. That’s a lot of accuracy. Even with the ± 2 lsb claimed on the data sheet that’s .02 thou! It uses a magnetic strip that has individual magnets bonded together into a long strip of alternating magnetic poles.

Interesting devices. Any thoughts on where to get magnetic strips meeting the length and accuracy requirements?

Basically, yes. There are a few ways to do it, but yes. If you look at the kickstarter above it shows how they do it.

This is why linear scales (optical and magnetic) are used for DRO’s. Even so, 600 pulse/r degree optical encoders really cheap ($15) and more than adequate enough across the distances we’re talking about, but difficult to use in these circumstances. Buying a “closed loop stepper driver” and an appropriate stepper with an encoder is a cheap way to get what you want. If you’re driving for absolute maximum productivity, makes more sense than a stepper systems…but honestly if you’re into needing maximum productivity to the point of not being able to slow down a little to avoid skipped steps, you should probably be using a difference machine.

DRO’s use scales like these

The issue is that there is no means of feedback to simple cnc controllers like GRBL. You can either do it at the stepper/servo, or do it at the controller. It’s easier at the servo with a controller like GRBL.

Makes sense to me (and apparently @Vince.Fab). Interesting discussion though - thanks! Here’s a DRO system for mills. Do you know of anyone who uses them on CNC machines for position feedback?

That’s the problem really - the GRBL software can’t do anything with that feedback. You could hook one of these up, but it would only be as a monitoring tool (and a really slick way to calibrate), but not a integral part of of the control systems.

Do all CNC machines use GRBL software?

Many of the machines use Mach2/3/4 instead of GRBL and there are many proprietary systems too. When I look at the processors available for VCarve there are dozens.

1 Like

No, but SO, SO2 and SO3 does. Many home machines use Mach3 and 4.

When you get to commercial machines, basically think of each one as bespoke - they all “speak” g-code, but often have significant enhancements for a given machine to drive toolchangers, 4+ axis, sometimes multiple spindles, modern machines are pretty amazing.


Awesome - I want one of those! Does anyone use position feedback?

The LoboCNC did (use positional feedback).

1 Like

After googling lobocnc, it amazes me how far technology and industrial-quality parts availability for the hobby market got in the past decade.

1 Like

Yeah, I think the next two big advances will be:

  • sensor technology — someone is going to work up an elegant way to use sensors to markedly improve reliability of steps/cutting
  • 4th axis — the PocketNC is amazing, but I think a 4th axis is the sweet spot for functionality — the problem is, lathes are heavy and expensive
1 Like

I’d think that improvements in rigidity would be a better improvement for our machines. If position is lost, it’s typically while cutting and the damage may be done.
I think those positional sensors are best suited for fast, low load machines like pick and place machines, where positional corrections make all the difference (before material is affected).