Motor Stepper Example


Closed Thread
Results 1 to 40 of 135

Hybrid View

  1. #1
    DougB's Avatar
    DougB Guest


    Did you find this post helpful? Yes | No

    Cool Zzstepper.bas

    Mel,

    I see in your program you go to half step.
    How difficult would it be to increase it 1/256th step?

    I am trying to configure o stepper drive system
    that would allow this. I am not sure about the coding tho.

    DougB

  2. #2
    Join Date
    Jul 2003
    Posts
    2,358


    Did you find this post helpful? Yes | No

    Default

    oooohhhh.... let's think about this...

    Do you really mean 1/256th of a single step... or do you mean there are 256 steps in a revolution and you mean 1/256th of a Revolution?

    Most (though not all) stepper motors have four coils. We'll call them A, B, C and D. A step is when we rotate the shaft from one set of coils to the next... Let's also say that coil A is our starting sequence (it doesn't have to be, but for our example it is)...

    A to B = A is energised, then de-energise A and energise B = 1st step
    B to C = B is energised, then de-energise B and energise C = 2nd step
    C to D = C is energised, then de-energise C and energise D = 3rd step
    D to A = D is energised, then de-energise D and energise A = 4th step
    the cycle now repeats from the top.

    This is the conventional way a Stepper Motor rotates. Now the number of steps you have per revolution depends on your actual stepper motor. There's dozens and dozens of variants. Steppers are usually specified in a step angle (eg 1.8 Degrees per Step, or 7.5 Degrees per step), usually a figure divisible evenly into 360 (one rotation). So the 1.8 Degree stepper needs 200 steps for a revolution.

    You can drive most Steppers in half-steps... like so...
    A only is energised = 1st step
    A to AB = B is additionally energised (A+B energised) = 1.5 step
    B only is energised = 2nd step
    B to BC = C is additionally energised (B+C energised) = 2.5th step
    C only is energised = 3rd step
    C to CD = D is additionally energised (C+D energised) = 3.5th step
    D only is energised = 4th step
    D to DA = A is additionally energised (D+A energised) = 4.5th step
    the cycle repeats from the top

    With this 'half-step' arrangement you now double the steps of your stepper making it twice as accurate. So if you had a Stepper that needed 200 steps per revolution (our 1.8 Degree Stepper above), you now can give it 400 half-steps to achieve the same result (which means we've an achieved an accuracy of 0.9 Degrees with our 1.8 Degree Stepper)

    Naturally you can reverse the sequence from any point to drive backwards.

    Now, can we take that 1.8 Degree step and achieve an accuracy of 1/256th of our 1.8 Degrees? - in other words 0.007 Degree micro-steps?... the answer is No. I've not seen a Stepper with such a complex coil phasing arrangement that it allows 256 micro-steps per individual step. But point me to a Datasheet if you know of one. Trust me, if it exists, we can drive it.

  3. #3
    Join Date
    Oct 2004
    Location
    Italy
    Posts
    695


    Did you find this post helpful? Yes | No

  4. #4
    Join Date
    Jul 2003
    Posts
    2,358


    Did you find this post helpful? Yes | No

    Default

    Very clever... using a standard four coil stepper too... must find out more how they've achieved this.

  5. #5
    Join Date
    Oct 2004
    Location
    Italy
    Posts
    695


    Did you find this post helpful? Yes | No

    Default

    A tutorial.

    By Douglas W. Jones
    THE UNIVERSITY OF IOWA
    Department of Computer Science

    Control of Stepping Motors

    http://www.cs.uiowa.edu/~jones/step/index.html


    Chapter 5:

    Microstepping of Stepping Motors

    http://www.cs.uiowa.edu/~jones/step/micro.html

    * * *

    Luciano

  6. #6
    hansknec's Avatar
    hansknec Guest


    Did you find this post helpful? Yes | No

    Default John

    You are trying to compare apples to oranges. Melanies code (or anybodys code) will only be able to get you to half step mode. That's the digital limit. Anybody who talks about microstepping is in reality using a stepper motor as a magnetic voice coil between steps. By varying the amount of current to one energized coil vs the other energized coil you can get the N-S poles of the rotor to line up anywhere between the two energized poles of the stator. This is analog circuitry which is often programmed using an 8-bit DAC and thats where the 256 number fits into the equation as a step size.

  7. #7
    magand's Avatar
    magand Guest


    Did you find this post helpful? Yes | No

    Default

    I agree with hansknec.
    I apologize for my english but..... is the stepper driver that give to the motor the right sequence for microsteps.
    Trickle is to reproduce a sine wave using a current sensor on the motor phase and an AtoD converter (high number of bit = high number of microsteps).
    Usually these devices are inside dedicated drivers for microsteps.
    See ALLEGRO A3972 for 1/16 steps.
    regards
    andrea

Members who have read this thread : 5

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts