Welcome! Log In Create A New Profile

Advanced

Closed-loop stepper controller progress

Posted by LoboCNC 
Re: Closed-loop stepper controller progress
June 22, 2014 12:16PM
Clarification: If you are interested in getting one of the pilot production units, e-mail me directly lobocnc@gmail.com and include your shipping address. I can then send you a request for payment through Paypal.
Re: Closed-loop stepper controller progress
June 23, 2014 12:30AM
Quote
LoboCNC
Right now, I'm trying to decide if I want to make the boards available as a product or not. There is also the possibility of just selling the pre-programmed PIC-SERVO S3 controller chip. (Unfortunately, I can't open-source the controller chip firmware because it is based on proprietary code not owned by me.) Hopefully, I'll have my plans sorted out early next year and will make an announcement if the board or controller chip become available.

Well its an open source community. The stuff that is closed is then probably dead in the water, at least for me.
Re: Closed-loop stepper controller progress
June 23, 2014 01:58AM
Quote
NoobMan
Quote
LoboCNC
Right now, I'm trying to decide if I want to make the boards available as a product or not. There is also the possibility of just selling the pre-programmed PIC-SERVO S3 controller chip. (Unfortunately, I can't open-source the controller chip firmware because it is based on proprietary code not owned by me.) Hopefully, I'll have my plans sorted out early next year and will make an announcement if the board or controller chip become available.

Well its an open source community. The stuff that is closed is then probably dead in the water, at least for me.

I'd say that most open-source projects actually contain a mix of open and closed source stuff. I mean, nobody refuses to program Atmel processors because their designs are proprietary. I can only make open what I am free to make open (schematic, PCB layout, etc.), as well as documenting the use of the PIC-SERVO S3 controller chip. Everyone will have to decide if that's open enough for them.
Re: Closed-loop stepper controller progress
June 23, 2014 02:54AM
Yes, you are right, there is a degree to the "open" term. The capacitors and resistors we use are not technically open either, but we use those too.

But that is not what i meant. What i meant was specifically that without the firmware being open, the success chances are probably null. At least that is my opinion, ofc.
Re: Closed-loop stepper controller progress
October 19, 2014 11:27AM
I'm definitely interested in testing your solution out. Does this cut down on resonance quite a bit?
Re: Closed-loop stepper controller progress
October 19, 2014 12:58PM
Quote
thews
I'm definitely interested in testing your solution out. Does this cut down on resonance quite a bit?

There are two main resonance issues that people deal with in printers. Probably the bigger one is mechanical resonance within the printer structure caused by the moving mass interacting with various sources of flexibility (in the structure, belts, etc.). Closed-loop control can help with this a little bit if you "soften" the servo gains a little. Steppers are obliged to move where they are told to within +/- one full-step, so if you change directions abruptly, the motor will very sharply jerk your mechanism in the new direction, exciting all sorts of resonances. With closed-loop control, you can allow more than one full-step of error, so the transitions will be much smoother. Of course, this also means that you are not longer exactly following the desired path.

The second resonance issue is within the motor itself - the mass of the rotor interacting with the magnetic "detents" which act like springs. In this case, it is possible to have a completely unloaded motor stall out at certain stepping rates that match the rotor resonant frequency. However, on most printers with microstepping drives and belt drive transmissions (which add a little damping), you rarely run into this problem. You are more likely to run into motor resonance with a very stiff ball-screw drive. In any case, the closed-loop control pretty well eliminates this problem all together because the motor current is constantly being modulated by the servo, and there is really no longer a magnetic detent for the motor to resonate within.
Re: Closed-loop stepper controller progress
October 20, 2014 11:07PM
I suspect that you might get a lot more demand for this product in CNC milling circles where there is a lot more mechanical load on the moving head and in less-predictable ways. It would be particularly attractive if you can make a version that supports high power PMDC/BLDC motors properly. Closed-loop PMDC seems to be about the highest performance CNC motion stage that one can construct at the moment and it's typical on very high end and/or powerful machines. Bringing that to DIY CNC mills would be quite a coup at anything like the prices you've stated here, especially if you can get high speeds from your controller, i.e. an ability to operate at >=72V and a few thousand RPM.

I don't see a huge value for this with 3D printers because the forces are low and predictable, so it's easy to just put in a slightly bigger motor and ignore the problem. Once you start cutting things though and needing accurate true positional feedback, this becomes basically a necessity.

A single commercial PMDC servo can run to many many thousands of dollars, and people pay that. $100 for a channel is nothing, if the performance is there.
Re: Closed-loop stepper controller progress
October 21, 2014 12:24PM
polyglot: For the most part, I think you are right. CNC is a more demanding application for which servo control is a bigger benefit. And for 3D printers, you can usually just slap on a bigger motor if you have problems losing steps. The one exception, though, is for non-Bowden extruders where you want to minimize the mass of the motor. Also, the load on the extruder motor varies considerably making it a good candidate for servo control. As a potential bonus, it would be really nice to monitor the servo error of a closed-loop controlled stepper - you could detect stalling (very large error), stripped filament (very small error) and also loss of filament altogether (zero error).
A2
Re: Closed-loop stepper controller progress
October 29, 2014 02:11AM
Quote
LoboCNC
As a potential bonus, it would be really nice to monitor the servo error of a closed-loop controlled stepper - you could detect stalling (very large error), stripped filament (very small error) and also loss of filament altogether (zero error).


Minimizing slip without crushing the filament presents an
interesting system design problem. More important is
accounting for this slip in a closed-loop control algorithm.
[forums.reprap.org]
Re: Closed-loop stepper controller progress
October 29, 2014 01:15PM
A2: Thanks for the link. I agree, motor feedback alone does not address the additional case where the filament has not stripped altogether, but it is still feeding albeit with slippage. Perhaps a better solution would be an encoder on the idler bearing to measure the actual filament feedrate.
Re: Closed-loop stepper controller progress
December 03, 2015 11:03PM
Did this ever became a reality?

If so - where can i get some? smiling smiley
Can it be used with any stepper driver?

I'm building a fairly larger printer, and this would be nice for a week long print smiling smiley
Re: Closed-loop stepper controller progress
December 04, 2015 11:58AM
Quote
PulsedMedia
Did this ever became a reality?

If so - where can i get some? smiling smiley
Can it be used with any stepper driver?

I'm building a fairly larger printer, and this would be nice for a week long print smiling smiley

I built a handful of controller boards and ended up selling them all, but in general, there hasn't been enough interest to make it worth producing more of them. I'm happy to provide design files to anyone who want to make or sell their own versions. The only thing not open-source is the PIC-SERVO S3 firmware which I do not have complete rights to - I'd have to sell anyone wanting to make boards the pre-programmed controller chips.

Here's a link to the board documentation, again:
lobocnc.com/ps3.pdf

It is designed for use with the Allegro A4982 driver chip.
Re: Closed-loop stepper controller progress
December 04, 2015 03:37PM
That is shame!

There is only a few examples of DC motor closed loop as well, and those are very poorly documented.
Someone should go ahead and demonstrate it simply what are the benefits - such as think about running LONG jobs much faster because you don't have to fear skipped steps as much - it will autocorrect itself.
Or with DC motors you could achieve much greater speeds too from cheap 15$ motors, think RC, 15-20$ buys you a motor that can do 100W+ @ 20k RPM, tunable advance, easily swappable brushes and many types. Add a planetary gearbox and you have huge torque inexpensive stepper! winking smiley

PIC-SERVO S3 Firmware: You could release just the modification bits source code, and everyone could modify their firmware themselves?
I'm not sure how it works, but assuming since you have modified it, the source code can be acquired and hence modified by any interested party perhaps?
If not then this is a dead end sad smiley
Re: Closed-loop stepper controller progress
December 04, 2015 07:47PM
Quote
PulsedMedia
PIC-SERVO S3 Firmware: You could release just the modification bits source code, and everyone could modify their firmware themselves?
I'm not sure how it works, but assuming since you have modified it, the source code can be acquired and hence modified by any interested party perhaps?
If not then this is a dead end sad smiley

Unfortunately, it's not that simple - you pretty much need the full source code to re-assemble it with the modifications. (Yes, it is in PIC18 assembly.) If someone wanted to go into production and buy the chips form me, that would work, but for individuals, you are right - probably a dead end.
Re: Closed-loop stepper controller progress
December 04, 2015 10:02PM
Damn. Such a shame.

What was the final price for this at the end if buying from you ready to be put onto a stepper motor set?
Using Nema23s dual shaft on quite a rigid frame and drive train, and potentially prints lasting a week so these would come in handy - if it saves a print even once it has pretty much paid itself back smiling smiley

Tbh, ultimately i'd like to see full closed loop design, such a shame i don't have time nor the electronics know how to do this. Code probably sure, but not the electronics.
Basicly, measure constantly the X Y Z position of the print head using the guides as reference point, and use that data to do closed loop and have independence of having stepper motors or DC motors that way - and always be assured you are not going to skip and ruin the print.
But i guess that's just damn hard to do in high enough precision at low enough cost - somekind of laser sensors could do it, but at what cost.

This should be done on a smoothieboard or another with more processing power than the Mega2560 provides.
Sorry, only registered users may post in this forum.

Click here to login