Re: Axis Stall Problems
Posted by
Irby Jones
on 2005-11-14 07:21:53 UTC
--- In CAD_CAM_EDM_DRO@yahoogroups.com, Jon Elson <elson@p...> wrote:
You have infinitely more experience than I do, since I'm just starting out, and are correct on all counts. But here's my reasoning...
I have an IMS (Intelligent Motion Systems) IM483 microstepping controller that I'm playing around with on my little steppers. I have one of these steppers driving a home-built translation stage by a precision ball screw with 2.5mm pitch. I haven't run it at more than 8 or 10 microsteps per step, but the controller can go much higher. I'm sure anyone who's used microstepping knows it isn't very linear or accurate in positioning. In fact, steppers themselves aren't that accurate. I can see just how nonlinear it is by watching an indicator (Starrett electronic gage) while stepping my system. I would like to be able to move this stage fractions of a thousandth and "trust" it. I know if I want that kind of accuracy I should be using servos (I have some, too), but I have these steppers with an encoder attached and wanted to try and make them work just to be cheap (frugal?). IMS has a microstepping indexer that can use an encoder, and from what I've read about it, it actually closes the loop around the encoder. I haven't studied it well yet, but was thinking of trying something like that myself. I realize such a controller must be high speed, so I was thinking of using discrete components instead of a microcontroller like a PIC. The reasoning for 10 microsteps per encoder pulse was to allow for a mismatch in encoder/stepper positions, which certainly will happen, and to allow the stepper to have essentially 1/10th of the encoder pulse as the accuracy in stopping at the encoder pulse. If the stepper moved just one encoder pulse, it certainly would hunt continuously. It turns out the IMS indexer uses steps that are 1/10th the encoder pulse also, if I understand it's operation correctly.
Now whether this will work at all is uncertain, except that it appears the IMS indexer makes it work. I haven't spent much time analyzing such a system, but it the thought of using the attached encoder to give these steppers accuracy comparable to a servo is intriguing. I was planning to use an LSI/CSI LS7082 chip to decode the encoder pulses since it's relatively cheap (about $3.00), I already have a few, and it can use either X1, X2, or x4 decoding and operate up to 16MHz output clock frequency. I figured it could drive a counter that was also driven by the step pulses from the machine controller (I'm running EMC right now), summing them like a servo controller does. The "borrow" and "carry" outputs from the counter could enable clock pulses from an oscillator to generate "step" inputs to the stepper controller (either the IMS483 I have or a home-built microstepper controller) and also determine the "direction" input. I haven't worked on things like the logic to buffer the "step" inputs from the machine controller, so the encoder/counter loop can be top priority, or a slew of other details.
I was thinking of eventually building my own microstepping controller to go with this "encoder feedback" stepper system. That's why this thread on a possible microstepping controller caught my attention. I'd probably use an L298 as the driver, too. I haven't gotten as far as how to current limit or generate the sine/cosine microstep outputs. An L6506 chip can current limit, but is configured for the normal phase controls of the stepper, but something like that chip may be made to work. One day I plan to play around with PIC's, and maybe they can work in this system, but I haven't started yet.
That's my logic so far - as yet unproven...
Irby
>Jon,
> Irby Jones wrote:
> >I like what you're doing with this concept, and have been following
> >this thread. I have been thinking of a similar concept, where I want
> >to be able to microstep at 100 microsteps per regular step.
> >
> What is the purpose of x100 microstepping? Do you really think that
> you can position a stepping motor to 100 x 200 = 20000 discrete
> positions? A small amount of microstepping actually leads to finer
> positioning, but beyond something like 4x microstepping, the friction
> defeats the declining torque produced by ever smaller microsteps.
> I'm quite sure Gecko is right to stop at 10X microstepping. And,
> microstepping finer than that will not improve torque or reduce resonances
> further.
>
> > I have a
> >bunch of steppers that have a 500 line encoder attached - 2000 lines
> >with quadrature. It would seem possible to have a control loop that
> >microsteps the motor until an edge is reached on the encoder inputs,
> >closing the loop around the encoder (at 2000 steps per rev.) similar
> >to a servo.
> >
> OK, so that is the same as x10 microstepping. But, if you try to close the
> loop and position down to the 2000th of a rev, I think you will find you get
> a lot of rumbling and humming. The amount of torque produced by a single
> X10 microstep is very small. So, the control loop will keep adding more
> microsteps until the motor jumps too far, then start working the other way
> until it jumps again. If your encoder only resolves 2000 counts/rev, then
> the 100x microstepping to 20,000 steps/rev doesn't make any sense.
You have infinitely more experience than I do, since I'm just starting out, and are correct on all counts. But here's my reasoning...
I have an IMS (Intelligent Motion Systems) IM483 microstepping controller that I'm playing around with on my little steppers. I have one of these steppers driving a home-built translation stage by a precision ball screw with 2.5mm pitch. I haven't run it at more than 8 or 10 microsteps per step, but the controller can go much higher. I'm sure anyone who's used microstepping knows it isn't very linear or accurate in positioning. In fact, steppers themselves aren't that accurate. I can see just how nonlinear it is by watching an indicator (Starrett electronic gage) while stepping my system. I would like to be able to move this stage fractions of a thousandth and "trust" it. I know if I want that kind of accuracy I should be using servos (I have some, too), but I have these steppers with an encoder attached and wanted to try and make them work just to be cheap (frugal?). IMS has a microstepping indexer that can use an encoder, and from what I've read about it, it actually closes the loop around the encoder. I haven't studied it well yet, but was thinking of trying something like that myself. I realize such a controller must be high speed, so I was thinking of using discrete components instead of a microcontroller like a PIC. The reasoning for 10 microsteps per encoder pulse was to allow for a mismatch in encoder/stepper positions, which certainly will happen, and to allow the stepper to have essentially 1/10th of the encoder pulse as the accuracy in stopping at the encoder pulse. If the stepper moved just one encoder pulse, it certainly would hunt continuously. It turns out the IMS indexer uses steps that are 1/10th the encoder pulse also, if I understand it's operation correctly.
Now whether this will work at all is uncertain, except that it appears the IMS indexer makes it work. I haven't spent much time analyzing such a system, but it the thought of using the attached encoder to give these steppers accuracy comparable to a servo is intriguing. I was planning to use an LSI/CSI LS7082 chip to decode the encoder pulses since it's relatively cheap (about $3.00), I already have a few, and it can use either X1, X2, or x4 decoding and operate up to 16MHz output clock frequency. I figured it could drive a counter that was also driven by the step pulses from the machine controller (I'm running EMC right now), summing them like a servo controller does. The "borrow" and "carry" outputs from the counter could enable clock pulses from an oscillator to generate "step" inputs to the stepper controller (either the IMS483 I have or a home-built microstepper controller) and also determine the "direction" input. I haven't worked on things like the logic to buffer the "step" inputs from the machine controller, so the encoder/counter loop can be top priority, or a slew of other details.
I was thinking of eventually building my own microstepping controller to go with this "encoder feedback" stepper system. That's why this thread on a possible microstepping controller caught my attention. I'd probably use an L298 as the driver, too. I haven't gotten as far as how to current limit or generate the sine/cosine microstep outputs. An L6506 chip can current limit, but is configured for the normal phase controls of the stepper, but something like that chip may be made to work. One day I plan to play around with PIC's, and maybe they can work in this system, but I haven't started yet.
That's my logic so far - as yet unproven...
Irby
Discussion Thread
Wayne C. Gramlich
2005-11-12 15:52:42 UTC
Axis Stall Problems
Paul Kelly
2005-11-12 16:05:38 UTC
RE: [CAD_CAM_EDM_DRO] Axis Stall Problems
Jon Elson
2005-11-12 16:21:01 UTC
Re: [CAD_CAM_EDM_DRO] Axis Stall Problems
Wayne C. Gramlich
2005-11-12 16:29:06 UTC
Re: Axis Stall Problems
KM6VV
2005-11-12 17:05:45 UTC
Re: [CAD_CAM_EDM_DRO] Axis Stall Problems
Paul Kelly
2005-11-12 17:48:20 UTC
RE: [CAD_CAM_EDM_DRO] Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-12 23:12:40 UTC
Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-12 23:28:37 UTC
Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-12 23:34:11 UTC
Re: Axis Stall Problems
Paul Kelly
2005-11-13 00:00:14 UTC
RE: [CAD_CAM_EDM_DRO] Re: Axis Stall Problems
Jon Elson
2005-11-13 10:52:33 UTC
Re: [CAD_CAM_EDM_DRO] Re: Axis Stall Problems
Irby Jones
2005-11-13 14:38:32 UTC
Re: Axis Stall Problems
Irby Jones
2005-11-13 14:47:49 UTC
Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-13 18:14:15 UTC
Re: Axis Stall Problems
Paul Kelly
2005-11-13 18:31:27 UTC
RE: [CAD_CAM_EDM_DRO] Re: Axis Stall Problems
Jon Elson
2005-11-13 19:33:34 UTC
Re: [CAD_CAM_EDM_DRO] Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-13 19:38:32 UTC
Re: Axis Stall Problems
Jon Elson
2005-11-13 19:46:42 UTC
Re: [CAD_CAM_EDM_DRO] Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-13 20:53:38 UTC
Re: Axis Stall Problems
Irby Jones
2005-11-14 07:21:53 UTC
Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-23 17:15:55 UTC
Re: Axis Stall Problems
engravingdave
2005-11-24 20:45:31 UTC
Re: Axis Stall Problems
Wayne C. Gramlich
2005-11-25 11:34:37 UTC
Re: Axis Stall Problems