Shop OBEX P1 Docs P2 Docs Learn Events
Microstepping - Smooth & Accurate — Parallax Forums

Microstepping - Smooth & Accurate

JBWolfJBWolf Posts: 405
edited 2013-07-02 10:45 in Propeller 1
Hello,
I am interested in making a small linear actuator and would like to control the motor with the propeller.
I already have lead screws and anti-backlash ballnuts.
I have bi-polar and uni-polar stepper motors that I have used the propeller to control with a ULN2803... but the ULN only allows for full/half/quarter step resolution of the motor which is still too much for my needs.
I would like to find a good, smooth micro-step driver I can run off the prop. I need as many steps as I can get for very small movements.
The stepper motors I use do not take more than 2A max... Though I typically find 1A provides enough torque.

Can someone recommend a driver suitable for my needs?
I would prefer to keep cost low, <$30 per driver.

Also... after this project is done, I would like to learn more about using serv/brushed motors and be able to do the same thing... smooth and accurate control for positioning.
Maybe someone can recommend a driver for this as well?

Thanks!
Jason

PS - I was hoping to order by late tonight or tomorrow morning to possibly receive the drivers by Wednesday.

Comments

  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2013-06-28 19:29
    JBWolf wrote: »
    Hello,
    I am interested in making a small linear actuator and would like to control the motor with the propeller.
    I already have lead screws and anti-backlash ballnuts.
    I have bi-polar and uni-polar stepper motors that I have used the propeller to control with a ULN2803... but the ULN only allows for full/half/quarter step resolution of the motor which is still too much for my needs.
    I would like to find a good, smooth micro-step driver I can run off the prop. I need as many steps as I can get for very small movements.
    The stepper motors I use do not take more than 2A max... Though I typically find 1A provides enough torque.

    Can someone recommend a driver suitable for my needs?
    I would prefer to keep cost low, <$30 per driver.

    Also... after this project is done, I would like to learn more about using serv/brushed motors and be able to do the same thing... smooth and accurate control for positioning.
    Maybe someone can recommend a driver for this as well?

    Thanks!
    Jason

    PS - I was hoping to order by late tonight or tomorrow morning to possibly receive the drivers by Wednesday.

    The absolute easiest way IMO is to use the L6470 with 128-microstep resolution. It's a small TSSOP pack with built-in drivers to handle 3A RMS/channel and you only need an SPI interface, in fact I borrow the SCL & SDA from the I2C bus pins and so I just need 2 others. There's a few threads about this chip and here's one you can look at.
    and another
  • jmgjmg Posts: 15,173
    edited 2013-06-28 20:05
    JBWolf wrote: »
    I would like to find a good, smooth micro-step driver I can run off the prop. I need as many steps as I can get for very small movements.

    micro-step is also motor dependent, so you cannot keep adding precision.
    I recall high end systems which supplied motor+EPROM sets, which calibrated the motor non-linearities.

    Another approach is to make your own, using a DAC and a fast comparator, with hysteresis. (MCP6561/2/4 ?)
    The DAC sets the current reference and the comparator drives a power mosfet, that switches the motor (R+L) about that current level. The L + hyst sets the switching frequency.
    MCP6561/2/4 have fixed Hyst, but you can externally add more.
    This allows you to shape the pole DACS, if you need to for a particular motor's poles.
  • Mark_TMark_T Posts: 1,981
    edited 2013-06-29 06:01
    Perhaps one of the Pololu A4988 boards would be enough (at 1A)?
    http://www.pololu.com/catalog/product/1182

    Yes, microstepping gives a somewhat more resolution (if you have good torque overhead), but primarily reduces
    vibration and resonance (very necessary with real loads). You accuracy is mainly limited by how off-centre the
    motor bearings are w.r.t. the teeth on the rotor, the precision of the teeth themselves, and any backlash in the system.

    Motor rotation angle is also not linear w.r.t. phase of the quadrature current phase feeding the windings, so even with
    massive spare torque you won't get the accuracy you imagine!

    I reckon something like 1/16th stepping will get to the limit of repeatable accuracy of your motor, then further subdivision
    yields only reduced vibration and noise (and some more resulution).

    For some applications repeatability is not so crucial as smooth motion, and finer steps does help with that.
  • LoopyBytelooseLoopyByteloose Posts: 12,537
    edited 2013-06-29 07:02
    This is something I have long suspected. I am working with a fellow that has a stepper motor controller that supposedly goes down to 1/256th or 1/250th.. depending on whether you have screw in binary or decimal divisions. Since the price was right, the additional microstepping didn't seem a bad deal.

    But I never could see how the the stepper controller could do such small steps when the motor was designed for full steps and really only intended for full steps. Coils vary a bit, magnets also vary. It is easy to understand half-steps, quarter-steps, and a bit further. But this seemed way too ambitious.

    I mentioned that I suspected that micro-stepping had become a fad that had gone too far. I have noticed that newer stepper motor devices have rolled back to 1/32nd or so.

    Still, reduced vibration and reduced noise are good things and needed in some situations.
  • Peter JakackiPeter Jakacki Posts: 10,193
    edited 2013-06-29 07:16
    What I find with the higher resolution microstep is that the motor runs smoother but I am not counting on that high resolution for positional accuracy. However I have a choice all the way from full step to 128 microsteps along with manual or automatic modes including acceleration/deceleration and other motor operations as well as full current control. It's a no-brainer as far as I'm concerned as the L6470 includes all the protection and drivers etc and it's up to you to decide how much of it you want or not. I even drive it in manual step mode by supplying a clock directly. All the others only have less and can be more complicated.
  • jmgjmg Posts: 15,173
    edited 2013-06-29 13:55
    But I never could see how the the stepper controller could do such small steps when the motor was designed for full steps and really only intended for full steps. Coils vary a bit, magnets also vary. It is easy to understand half-steps, quarter-steps, and a bit further. But this seemed way too ambitious.

    I think you can buy motors designed for Micro-stepping, so their magnetic hand-over is designed to be better (but, of course, you pay for that )

    I think the transfer is still monotonic, just not always highly linear (steps can vary in size).

    These days, an encoder may be the best way to 'reality check' things, if precision matters.
  • JBWolfJBWolf Posts: 405
    edited 2013-06-29 13:56
    Thanks for all the good info guys.
    I guess I really do not need accuracy beyond 1/32... my motors have 400 steps/rev... so that would give 12,800 positions per rev correct?
    I forget what my ballscrew TPI is, but I believe it is around 1 just from looking at it.. I'll have to look up the specs later, but I did get a heavy TPI as I wanted accuracy more than speed.
    Assuming exactly 1 TPI, this would give a resolution of .000078125" per step correct?
    That is right where I would like to be, a ten thousandths resolution is more than good enough for my needs :)
  • Beau SchwabeBeau Schwabe Posts: 6,566
    edited 2013-06-29 14:09
    Talking to a friend of mine who builds and repairs CNC machines for a living, most of the big CNC steppers are driven with 3-phase sine waves... Some of them are 4, and 5 Phase. By changing the phase relation between steps gives you a infinite resolution between steps. <-- Well, infinite as far as how good your driving electronics are.

    Just my two cents ...
  • SapiehaSapieha Posts: 2,964
    edited 2013-06-29 15:16
    Hi Beau.

    now as you said that.

    One of my proposal to Chip was made timers to be possible give 3-phase (120') control on DAC's.
    That was for that possibility's You describe - and some more ones -- But that ones I will not talk on.



    Talking to a friend of mine who builds and repairs CNC machines for a living, most of the big CNC steppers are driven with 3-phase sine waves... Some of them are 4, and 5 Phase. By changing the phase relation between steps gives you a infinite resolution between steps. <-- Well, infinite as far as how good your driving electronics are.

    Just my two cents ...
  • JBWolfJBWolf Posts: 405
    edited 2013-06-30 19:06
    I would definitely be interested in that!
    Are there drivers that exist and are available with that kind of capability?

    Also, Can I get positional accuracy with a brushed motor / servo motor without using feedback?
    Ideally I would love to use one of the big 2-wire DC motors I have, they are quite strong and I imagine their motion would be much smoother than with a stepper.
    Is there a driver available so I could use this as an alternative?
    Something to run this?
    IMG_3201 - Copy.jpg
    1024 x 571 - 42K
  • kwinnkwinn Posts: 8,697
    edited 2013-07-01 20:36
    JBWolf wrote: »
    I would definitely be interested in that!
    Are there drivers that exist and are available with that kind of capability?

    Also, Can I get positional accuracy with a brushed motor / servo motor without using feedback?
    Ideally I would love to use one of the big 2-wire DC motors I have, they are quite strong and I imagine their motion would be much smoother than with a stepper.
    Is there a driver available so I could use this as an alternative?
    Something to run this?
    IMG_3201 - Copy.jpg

    In a word, no, you need the feedback for positional accuracy. A servo motor is pretty much a brushed motor with the position sensor built in.
  • RickBRickB Posts: 395
    edited 2013-07-02 10:45
    JBWolf
    Take a look at these.
    http://www.piclist.com/techref/io/stepper/linistep/index.htm
    These are linear amp type drivers and as a result generate a bit of heat. A substantial heat sink is necessary. 3 driver kits for $90. Take the time to study all the details about them. Performance vs price for the intended use at 2-3 amps is hard to beat. They were designed by wizard Roman Black.
    http://www.romanblack.com/lini.htm

    Rick
Sign In or Register to comment.