On 1/19/2016 5:19 AM, andy pugh wrote:
> On 19 January 2016 at 07:04, Chris Albertson <albertson.ch...@gmail.com> 
> wrote:
>> I've read that it is hard to use steppers for closed loop CNC.  If this is
>> still true could some one explain the theory.
> This may be a misunderstanding.
> It is hard to do anything useful with an encoder attached to a stepper
> motor. You can tell that the motor is out of position, but unlike with
> a DC or AC servo there is no way to "step harder" to recover the
> error. You can step _faster_ but that will reduce rather than increase
> torque.
>
> (Recently a family of stepper motors with integrated encoders and
> drivers to suit have appeared, but they can me more clearly understood
> as very high pole-count 2-phase brushless motors and are not
> immediately relevant to the question)
>
>> I have a small mill with DRO scales that are good to about .001 inch and
>> I'd like to put them to use with my planned CNC conversion.
> In this case you definitely can do closed-loop CNC with steppers.
>
> What you need to do is to run the step-generators in velocity mode.
> Then, just like any other servo system, you compare the linear scale
> position with the commanded position, and the further you are from
> commanded position the faster you drive the motor.
>
> You do this with the normal LinuxCNC PID controller. The controller
> will need to be tuned just like any other PID loop, but the stepper
> motors behave like almost perfect velocity-mode servos in this
> configuration.

I've done what is being discussed on an actual machine except that I 
used a servo motor in step and direction mode, instead of a stepper.

The application was a material feeder, that feeds a strip into a cutoff 
shear.   I used an encoder to track material movement via a contact 
wheel.   The motor was a servo motor (for more power) setup in step and 
direction mode connected to a LinuxCNC stepgen component and the 
component has a velocity input.   So as Andy says it works just like a 
velocity servo motor-drive except step and direction signals are output 
from the component.     A traditional position control loop component 
(same as the typical LinuxCNC servo setup) is used to control the 
stepgen which drives the motor.  The feedback for the position loop came 
from the wheel encoder that was tracking the material.     The setup 
works fine and the tuning was not difficult.   The machine has been 
running and cutting off strips of material to a programmed length for 4+ 
years now.   If I could have used a stepper motor instead of a servo 
motor I could have lowered the cost considerably.   However we used a 1 
KW servo motor with a gearbox to drive the strip feed rollers.    
Actually I forgot, we actually used two servo motor to drive the strip, 
one driving a top "caterpillar drive" and the second driving a bottom 
"caterpillar drive" to squeeze the strip and move it into the cutoff 
shear. Bottom motor simply spun in the opposite direction via the 
stepgen components.   (Invert the direction signal in HAL. )     Its a 
very nice machine.  Very well made.

Not much I did on that control system was "new".   Several other guys at 
the time made suggestions (thanks guys!) and they obviously had 
experience controlling step and dir drives in closed loop.    So closed 
loop steppers have been done for a long time.    LinuxCNC is super 
flexible for things like this.

The machine runs two shifts - 5 days per week.      That machine paid 
for itself in only a few months.    I thought we would make more 
machines but the company that made it has no ability to sell/market 
anything.

Dave
Cole Controls Inc.


------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to